14 Commits over 28 Days - 0.02cph!
Add ability to write back instance changes to prefab
Allows for in scene editing of prefabs
https://files.facepunch.com/lolleko/2025/March/27_13-41-DimwittedTilefish.mp4
Rename OwnerType -> ParentTyp
Mark some prefab variable stuff as obsolete, to find out what is depending on it
Get rid of more prefab variable code, build is working again
Stop cloning prefabvariables
Mark scene as edited on undo/redo
Add undo for dropping resources onto the inspector
Initial pass on prefab instance overrides
https://files.facepunch.com/lolleko/2025/March/27_12-55-TrainedSpidermonkey.mp4
More variety in test generator
Some more tests parsing
Parse JSON into custom data structure (tree) for diffing and patch application
All gameobejct tests passing
Add MovedObject patch operation, this operation tracks objects that have been reordered or moved to a different container.
Basic tests are passing now
Add complex generated GameObject diff/patch roundtrip tests
Most of them are passing, ordering seems to break sometimes
Add JsonPointer (RFC 6901) implementation and tests
Add RFC 6902 compliant JSON diffing / patch generation
Use JsonNode instad of JsonDocument in pointer
Add ApplyPatch functionality
Generate roundtrip tests
Add Test Generator for GameObject hierarchies
Remove Copy & Move operations
I can't make it work there are extremely rare edge cases for enormous diffs (thousands of objects and operations).
The code to support these edge cases was becoming more and more unhinged and illegible.
Can still tackle it later if we really need it.
Add tests for LCS
Work around .net runtime bug in Json.DeepEquals
dotnet/runtime/issues/112769
Clone/Move attempt 2
Move optimization still fails for very large diffs -> disable for now
Cleanup some debug code
Simplify Json Pointer
Object/Pattern detection in json
Smarter pattern matching; Added Patch Generation & Application
Improve handling of nested objects
Prefab Instance Overrides PoC
Remove old version of Json patch (RFC 6902)
Simplify ObjectContext collection
Simplify ObjectContext collection
Remove old version of Json patch (RFC 6902)
Prefab Instance Overrides PoC
Improve handling of nested objects
Smarter pattern matching; Added Patch Generation & Application
Simplify Json Pointer
Object/Pattern detection in json
Add JsonPointer (RFC 6901) implementation and tests
Add RFC 6902 compliant JSON diffing / patch generation
Use JsonNode instad of JsonDocument in pointer
Add ApplyPatch functionality
Generate roundtrip tests
Add Test Generator for GameObject hierarchies
Remove Copy & Move operations
I can't make it work there are extremely rare edge cases for enormous diffs (thousands of objects and operations).
The code to support these edge cases was becoming more and more unhinged and illegible.
Can still tackle it later if we really need it.
Add tests for LCS
Work around .net runtime bug in Json.DeepEquals
dotnet/runtime/issues/112769
Clone/Move attempt 2
Move optimization still fails for very large diffs -> disable for now
Cleanup some debug code