Joe
3cf452cb7b
Refactor property extension in finalize_patch_application for improved readability
2026-01-20 21:12:31 -06:00
Joe
a1e270949d
Add support for external references in RojoTree and syncback process
...
- Introduced REF_EXTERNAL_ATTRIBUTE_PREFIX for attributes pointing to external instances.
- Enhanced PatchApplyContext to track external references and apply them during patch application.
- Implemented get_instance_by_path method in RojoTree for resolving paths to external instances.
- Updated collect_referents function to handle external references and preserve their paths during syncback.
- Refactored link_referents to include external reference handling in the linking process.
2026-01-20 21:05:28 -06:00
Joe
9e270bd847
Refactor get_best_middleware function by removing static JSON model classes and simplifying middleware selection logic for improved clarity and maintainability.
2026-01-20 20:56:34 -06:00
Joe
2dfcac4ef7
Refactor code for improved readability by consolidating multi-line statements into single lines across various modules, including JSON serialization, snapshot middleware, and file name validation.
2026-01-20 20:48:52 -06:00
Joe
d0f7dffd2e
Expand GUI element support in get_best_middleware function by adding various UI components and layout classes for enhanced middleware selection.
2026-01-20 20:23:23 -06:00
Joe
d1ea2feed7
Update dependencies in Cargo.lock and Cargo.toml; adjust rbx-dom paths and versions for improved compatibility and functionality.
2026-01-20 20:15:35 -06:00
Joe
7453dfdbe4
Enhance middleware selection in get_best_middleware function to include additional GUI types (ScreenGui, SurfaceGui, BillboardGui, AdGui) for improved directory handling.
2026-01-20 20:10:55 -06:00
CoderJoey
c36421626d
Merge branch 'rojo-rbx:master' into master
2026-01-20 20:10:14 -06: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
Joe
033dec4e18
Refactor metadata file name generation in syncback_lua and AdjacentMetadata to strip known script type suffixes (.server, .client, .plugin) for improved compatibility. This change ensures accurate base name extraction for meta files while maintaining handling of Windows-invalid characters.
2026-01-15 16:08:53 -06:00
Joe
5ad50e65d4
Enhance syncback error handling by including full instance paths in duplicate name error messages. Updated the syncback_project function to provide clearer context when instances with duplicate names are detected.
2025-12-29 00:40:13 -06:00
Joe
f6dc37e400
Enhance syncback functionality by implementing tree filtering based on ignoreTrees patterns. Added support for glob pattern matching to filter instances during serialization in both rbxm and rbxmx. Updated SyncbackSnapshot to compile and utilize these patterns efficiently.
2025-12-29 00:02:40 -06:00
Joe
978dd41047
Refactor metadata file name generation in syncback_lua to utilize the file stem from the script path, ensuring proper handling of Windows-invalid characters while maintaining compatibility with existing naming conventions.
2025-12-28 23:24:41 -06:00
Joe
f54367e5e0
Refactor metadata file name generation in read_and_apply_all to use the file stem from the actual path, ensuring correct handling of encoded characters for Windows-invalid filenames.
2025-12-28 23:04:59 -06:00
Joe
8c776c09b3
Implement encoding for Windows-invalid characters in syncback metadata file names across CSV, Lua, and TXT handlers. Updated file name generation to conditionally encode names based on the presence of invalid characters.
2025-12-28 22:43:21 -06:00
Joe
88beb1d8d7
scriptsOnly mode
2025-12-20 20:44:35 -06:00
Joe
6d8c85682d
Implement encoding and decoding for Windows-invalid characters in file names
...
- Added `encode_path_name` and `decode_path_name` functions to handle encoding and decoding of invalid characters.
- Updated `SyncbackRules` to include an option for encoding Windows-invalid characters during syncback.
- Modified `name_for_inst` to conditionally encode invalid characters based on the new option.
- Adjusted `ServeSession` and `InstanceContext` to support the new encoding feature.
- Updated tests and snapshots to reflect changes in encoding behavior.
2025-12-19 22:50:53 -06:00
Joe
db87fa010f
ignore classes feature
2025-12-19 01:15:14 -06:00
Joe
929bc254fa
Sorted keys
2025-12-09 00:28:13 -06: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
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
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
Micah
ea70d89291
Support .jsonc extension for all JSON files ( #1159 )
2025-11-18 18:47:43 -08: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
Micah
441c469966
Release Rojo v7.6.0 ( #1125 )
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
Micah
0056849b51
Put Rojo version in crash message ( #1101 )
2025-08-13 15:46:08 -07:00
ffrostfall
2ddb21ec5f
Add option for emitting absolute paths to rojo sourcemap ( #1092 )
...
Co-authored-by: Micah <micah@uplift.games>
2025-08-04 11:33:35 -07:00
Micah
a4eb65ca3f
Add YAML middleware that behaves like TOML and JSON ( #1093 )
2025-08-02 20:58:13 -07:00
Micah
9598553e5d
Normalize paths in sourcemap generation ( #1085 )
2025-07-31 09:19:57 -07:00
Micah
3bac38ee34
Re-add the hack to write NeedsPivotMigration as false for models ( #1027 )
2025-04-16 15:03:09 -07:00
Parritz
7dee898400
Add place ID blacklist config ( #1021 )
2025-04-03 08:37:40 -07:00
Micah
4c4b2dbe17
Add legacy and runContext script sync rule middlewares ( #909 )
2025-04-02 12:47:27 -07:00
Sasial
73ed5ae697
Add Support for Plugin Scripts ( #1008 )
2025-04-02 11:37:49 -07:00
Micah
833320de64
Update rbx-dom ( #1023 )
2025-04-02 11:32:27 -07:00
Jack T
55a207a275
Fix clippy lint warnings ( #1004 )
2025-01-13 10:07:53 -08:00
Kenneth Loeffler
80c406f196
Fix returning NoProjectFound for any project load error ( #985 )
...
In #917 , we accidentally changed ServeSession::new's project loading
logic so that it always returns `ServeSession::ProjectNotFound` if the
load fails for any reason. This PR fixes this so that it returns the
right error when there is an error loading the project, and moves the
`NoProjectFound` error to `project::Error`, since I think it makes more
sense there.
2024-11-08 08:40:32 +00:00
Micah
34106f470f
Remove maplit dependency and stop using a macro for hashmaps ( #982 )
2024-10-31 11:56:54 -07:00
Micah
d9ab0e7de8
Support $schema in JSON structures ( #974 )
2024-10-24 10:55:51 -07:00
Micah
5ca1573e2e
Correct mistake in build command docs ( #977 )
2024-10-18 14:08:58 -07:00
Micah
c9ce996626
Update workflow and tooling versions ( #910 )
2024-09-03 15:36:36 -07:00
Micah
5e1cab2e75
Actually include attribute-defined properties in patch computation ( #944 )
2024-08-19 15:41:02 -07:00