95fe993de3
feat: auto-resolve init-name conflicts during syncback
...
When a child instance has a Roblox name that would produce a filesystem
name of "init" (case-insensitive), syncback now automatically prefixes
it with '_' (e.g. "Init" → "_Init.luau") instead of erroring. The
corresponding meta.json writes the original name via the `name` property
so Rojo can restore it on the next snapshot.
The sibling dedup check is updated to use actual on-disk names for
existing children and the resolved (init-prefixed) name for new ones,
so genuine collisions still error while false positives from the `name`
property are avoided.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-24 01:05:31 +01:00
a6e9939d6c
Merge branch 'master' into name-prop
2026-01-20 01:10:20 +01:00
5957368c04
Remove redundant code
...
Can't remember why I added this one
2026-01-20 01:08:59 +01:00
78916c8a63
Revert 2 semantic changes
2026-01-20 00:59:34 +01:00
791ccfcfd1
Remove addition of 'Actor' to json_model_classes
2026-01-20 00:55:03 +01:00
3500ebe02a
Update CHANGELOG.md
2026-01-20 00:54:18 +01:00
Ivan Matthew
2a1102fc55
Implement VFS Path normalization for improved cross-platform tree synchronization ( #1201 )
2026-01-19 15:04:59 -08:00
Ken Loeffler
02b41133f8
Use post for ref patch and serialize ( #1192 )
2026-01-19 22:44:42 +00:00
0e1364945f
Avoid clone in src/syncback/file_names.rs
2026-01-12 14:41:12 +01:00
3a6aae65f7
Avoid clone in src/syncback/file_names.rs
...
Co-authored-by: krakow10 <krakow20@gmail.com >
2026-01-12 14:35:46 +01:00
d13d229eef
Avoid clone in src/snapshot_middleware/json_model.rs
...
Co-authored-by: krakow10 <krakow20@gmail.com >
2026-01-12 14:35:18 +01:00
9a485d88ce
Avoid clone in src/snapshot_middleware/lua.rs
...
Co-authored-by: krakow10 <krakow20@gmail.com >
2026-01-12 14:35:06 +01:00
020d72faef
fix: improve middleware selection for actor and other container classes
2025-12-18 05:10:53 +01:00
60d150f4c6
feat: optimize name handling for leaf scripts with invalid names
...
Prefer slugified filenames + adjacent meta files for scripts without children instead of forcing directory creation
2025-12-18 04:43:47 +01:00
73dab330b5
test: remove oudated json_model_legacy_name test
2025-12-15 20:32:28 +01:00
790312a5b0
fix: lack of .model.json support
2025-12-15 20:26:25 +01:00
5c396322d9
fix: name prop not properly syncing
2025-12-15 19:08:18 +01:00
37e44e474a
feat: support name property in meta and model jsons
2025-12-15 18:45:59 +01:00
Micah
d08780fc14
Ensure that pruned Instances aren't treated as existing in syncback ( #1179 )
...
Closes #1178 .
2025-11-29 21:21:48 -08:00
Micah
b89cc7f398
Release memofs v0.3.1 ( #1175 )
2025-11-27 12:32:57 -08:00
Micah
42568b9709
Release Rojo v7.7.0-rc.1 ( #1174 )
v7.7.0-rc.1
2025-11-27 12:10:57 -08:00
boatbomber
87f58e0a55
Use WebSocket instead of Long Polling ( #1142 )
2025-11-26 19:57:01 -08:00
Micah
a61a1bef55
Roundtrip schemas in syncback ( #1173 )
2025-11-26 16:11:39 -08:00
Micah
a99e877b7c
Actually skip .gitignore if --skip-git is passed to init ( #1172 )
2025-11-26 13:59:12 -08:00
Ken Loeffler
93e9c51204
Fix rojo plugin install by adding Vfs::exists ( #1169 )
2025-11-21 07:04:34 -08:00
Ken Loeffler
015b5bda14
Set crate and plugin versions to 7.7.0-prealpha ( #1170 )
2025-11-21 07:02:09 -08:00
Micah
2b47861a4f
Properly support EnumItem variants in hashing and variant_eq ( #1165 )
2025-11-19 19:18:14 -08:00
Micah
9b5a07191b
Implement Syncback to support converting Roblox files to a Rojo project ( #937 )
...
This is a very large commit.
Consider checking the linked PR for more information.
2025-11-19 09:21:33 -08:00
boatbomber
071b6e7e23
Improved string diff viewer ( #994 )
2025-11-18 20:26:44 -08:00
quaywinn
31ec216a95
Remove pairs() and ipairs() ( #1150 )
2025-11-18 18:49:52 -08:00
Micah
ea70d89291
Support .jsonc extension for all JSON files ( #1159 )
2025-11-18 18:47:43 -08:00
quaywinn
03410ced6d
Use buffer for ClassIcon EditableImages ( #1149 )
2025-11-07 13:07:19 -08:00
Micah
825726c883
Release 7.6.1 ( #1151 )
v7.6.1
2025-11-06 18:49:05 -08:00
boatbomber
54e63d88d4
Slightly improve initial sync hangs ( #1140 )
2025-11-06 00:06:42 -08:00
boatbomber
4018c97cb6
Make CHANGELOG.md use consistent style ( #1146 )
2025-10-28 19:26:48 -07:00
boatbomber
d0b029f995
Add JSONC Support for Project, Meta, and Model JSON files ( #1144 )
...
Replaces `serde_json` parsing with `jsonc-parser` throughout the
codebase, enabling support for **comments** and **trailing commas** in
all JSON files including `.project.json`, `.model.json`, and
`.meta.json` files.
MSRV bumps from `1.83.0` to `1.88.0` in order to
use the jsonc_parser dependency.
2025-10-28 17:29:57 -07:00
Sebastian Stachowicz
aabe6d11b2
Update default gitignores to include sourcemap ( #1145 )
2025-10-28 17:28:55 -07:00
boatbomber
181cc37744
Improve sync fallback robustness ( #1135 )
2025-10-20 20:13:47 -07:00
boatbomber
cd78f5c02c
Fix postcommit callbacks being skipped ( #1132 )
2025-10-14 12:13:59 -07:00
Micah
441c469966
Release Rojo v7.6.0 ( #1125 )
v7.6.0
2025-10-10 19:17:55 -07:00
Micah
f3c423d77d
Fix the various lints ( #1124 )
2025-10-10 13:00:56 -07:00
Micah
beb497878b
Add flag for skipping git initialization to init command ( #1122 )
2025-10-07 17:12:22 -07:00
Micah
6ea95d487c
Refactor init command ( #1117 )
2025-09-30 14:38:38 -07:00
Micah
80a381dbb1
Use SerializationService as a fallback for when patch application fails ( #1030 )
2025-09-21 15:09:20 -07:00
KAS
59e36491a5
Fix a grammar error and a typo ( #1113 )
2025-09-16 11:00:34 -07:00
Micah
c1326ba06e
Add Arm64 builds to CI/Releases + build on ubuntu 22.04 ( #1098 )
2025-08-30 14:10:59 -07:00
Micah
e2633126ee
Change Foreman to Rokit in CONTRIBUTING.md ( #1110 )
2025-08-30 13:42:52 -07:00
Micah
5f33435f3c
Move to using Rokit, update tools, and don't install unnecessary tools ( #1109 )
2025-08-29 18:45:15 -07:00
boatbomber
54e0ff230b
Improvements to sync reminder UX ( #1096 )
2025-08-28 17:15:34 -07:00
wad
4e9e6233ff
fix: apply gameId and placeId only after initial sync ( #1104 )
2025-08-15 18:12:36 -07:00