Overview
This version gets a major version bump because the schema for the sqlite database has some improvements, that involved changing the schema, so this is a "breaking change". If you have SQL queries or other integration based on analyze databases then you may need to update them when you upgrade from v1.X to v2.X versions.
This version does not itself contain major new features, but it has some important fixes and prepares for upcoming work on analyzing content directory builds. The change in #44 is a substantial size improvement n the analyze database. There are also improvements to how scenes dependencies are represented. And the code is better generalized for representing non-AssetBundle content. It is recommended to upgrade even if you are only analyzing AssetBundle builds.
What's Changed
- [#44] Normalize refs table to deduplicate property strings by @SkowronskiAndrew in #80
- [#82] Rename assets/asset_dependencies tables to reflect AssetBundle/PreloadData origin by @SkowronskiAndrew in #84
- [#81] Fix scene/preload dependencies for Player and Scriptable Build Pipeline builds by @SkowronskiAndrew in #87
- Document project structure; split Archive and SerializedFile into their own libraries by @SkowronskiAndrew in #88
- [#68] Generalize AssetBundle to Archive in analyze schema and code by @SkowronskiAndrew in #89
- [#55] Show type name in build_report_packed_asset_contents_view by @SkowronskiAndrew in #90
Schema differences
If you have queries or tooling built on a pre-2.0 analyze database, use the rename maps below to update them.
1. Table / view renames
Archive generalization (issue #68)
UnityDataTools now analyzes more than AssetBundles (Player, Content Archive, ContentDirectory builds), so AssetBundle-centric names for the generic archive concept were generalized. Names genuinely specific to the AssetBundle object were intentionally left unchanged.
| Before | After |
|---|---|
asset_bundles (table) |
archives |
serialized_files.asset_bundle |
serialized_files.archive |
object_view.asset_bundle (and *_asset_bundle aliases: material_/shader_/texture_/dep_) |
object_view.archive (and *_archive) |
in_bundles |
in_archives |
build_report_archive_contents.assetbundle |
build_report_archive_contents.archive |
build_report_archive_contents.assetbundle_content |
build_report_archive_contents.archive_content |
AssetBundle/PreloadData table clarification (issue #82)
The vaguely-named assets/asset_dependencies tables were renamed to reflect what actually populates them (the AssetBundle object's m_Container/m_PreloadTable and PreloadData). They are mostly empty for Player/ContentDirectory builds.
| Before | After |
|---|---|
assets (table) |
assetbundle_assets |
asset_view (view) |
assetbundle_asset_view |
asset_dependencies (table) |
preload_dependencies |
asset_dependencies_view (view) |
preload_dependencies_view |
index asset_dependencies_object |
preload_dependencies_object |
index asset_dependencies_dependency |
preload_dependencies_dependency |
Unchanged (genuinely AssetBundle-object-specific): assetbundle_assets, assetbundle_asset_view, preload_dependencies, AssetBundleHandler.
2. Human-readable types in build reports (issue #55)
build_report_packed_asset_contents_view.typenow shows the type name (e.g.Texture2D) instead of the numeric Class ID.- The underlying
build_report_packed_asset_info.typecolumn still stores the numeric class id.
Full Changelog: v1.3.6...v2.0.0