-
Notifications
You must be signed in to change notification settings - Fork 63
New "serialized-file" command with docs and new test data #47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Simple player build including build report
Importers shouldn't make it into the build so remove them from the list. Also add a todo as the place that can use the TypeIdRegistry
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a new serialized-file command for quick inspection of SerializedFile metadata, complementing the existing analyze command with a lightweight alternative for examining object lists and external references without database generation.
Key Changes:
- New
serialized-filecommand withobjectlistandexternalrefssubcommands supporting both text and JSON output formats - TypeIdRegistry utility class mapping Unity TypeIds to human-readable type names for files without TypeTree data
- Comprehensive test suite validating command functionality against new Player build test data (with and without TypeTrees)
Reviewed changes
Copilot reviewed 10 out of 23 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| UnityFileSystem/TypeIdRegistry.cs | Registry mapping common Unity TypeIds to type names as fallback when TypeTree unavailable |
| UnityDataTool/SerializedFileCommands.cs | Command handlers for listing external references and objects in SerializedFiles |
| UnityDataTool/Program.cs | CLI integration for new serialized-file command with text/JSON format options |
| UnityDataTool.Tests/SerializedFileCommandTests.cs | Test suite covering command output formats, cross-validation, and error handling |
| TestCommon/Data/PlayerWithTypeTrees/README.md | Documentation for new test data containing complete Player build with TypeTrees |
| TestCommon/Data/PlayerNoTypeTree/README.md | Documentation for test data variant without TypeTree information |
| Documentation/unitydatatool.md | Updated main docs with serialized-file command examples |
| Documentation/command-serialized-file.md | Complete command reference with use cases and examples |
| Analyzer/SQLite/Handlers/PackedAssetsHandler.cs | TODO comment for future TypeIdRegistry integration in BuildReport importing |
| AGENTS.md | Updated architecture documentation reflecting new command and TypeIdRegistry |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Regenerate type id registry from the raw ClassIDReference.md file - the original list had some errors
| // TODO: Ideally we would also populate the type table if the content.Type is | ||
| // not already in that table, and if we have a string value for it in TypeIdRegistry. That would | ||
| // make it possible to view object types as strings, for the most common types, when importing a BuildReport | ||
| // without the associated built content. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#55 tracks this "todo"
discovered by code review Co-authored-by: Copilot <[email protected]>
Uh oh!
There was an error while loading. Please reload this page.