Blender Git Commits

Blender Git "temp-asset-browser-catalogs-ui" branch commits.

Page: 2 / 6

September 21, 2021, 14:15 (GMT)
Asset Catalogs: read new on-disk catalogs before saving to disk

Before saving asset catalogs to disk, the to-be-overwritten file gets
inspected. Any new catalogs are loaded to memory.

- Changed catalog path: in-memory data wins
- Catalogs deleted on disk: they are recreated based on in-memory data
- Catalogs deleted in memory: deleted on disk as well
- New catalogs on disk: are loaded and thus survive the overwriting
September 21, 2021, 14:15 (GMT)
Asset Catalog tests: initialise the tempdirs

Call `BKE_tempdir_init("")` to have non-empty tempdirs.
September 21, 2021, 14:11 (GMT)
Cleanup: refactor asset catalog definition file loading

Change the API for loading asset catalog definition files, by moving the
file/line parsing code into the `AssetCatalogDefinitionFile` class.

This separates the parsing of these files from handling the parsed data.
The caller of the `parse_catalog_line()` function has to provide a callback
that stores the `AssetCatalog` in the desired place.

No functional changes.
September 21, 2021, 14:10 (GMT)
Remove remaining C++ filesystem file & CMakeLists entries
September 21, 2021, 14:07 (GMT)
Merge remote-tracking branch 'origin/master' into temp-asset-browser-catalogs
September 21, 2021, 14:06 (GMT)
Remove ghc::filesystem files
September 21, 2021, 14:02 (GMT)
Use existing C-APIs for path and filesystem handling

The `ghc::filesystem` we wanted to use for a platform compatible
replacement of `std::filesystem` (see D12197) doesn't behave as we
expect or want to. We could probably find a solution, but it's not worth
the extra time. To move this forward, we can switch the asset catalogs
to use Blender's C functions for path and filesystem handling.

Differential Revision: https://developer.blender.org/D12538
September 21, 2021, 10:35 (GMT)
Asset Catalogs: implement catalog deletion

Asset catalogs can now be deleted by providing their UUID. This marks the
catalog for deletion, which causes it to be hidden from the UI and not
saved to disk.

The catalog is not immediately deleted from memory, to make it possible
to later merge on-disk data with in-memory data. This is envisioned to
support multi-user edits to the same catalog definition file (for example
when synced between machines with SyncThing).
September 21, 2021, 10:32 (GMT)
Cleanup: asset catalog tests, move tree testing code into separate function

Move `AssetCatalogTree` verification code into its own function, so that
it can be called from other places as well.
September 21, 2021, 10:23 (GMT)
Cleanup: asset catalogs, move "only for test" code into test

Move the "for testing only" function `get_catalog_definition_file()` from
`AssetCatalogService` to a new class `TestableAssetCatalogService` that's
only available in the unit test file that needs it.

No functional changes.
September 21, 2021, 09:49 (GMT)
Cleanup: Asset Tests, rename Elly to Ellie

The test character names come from the Sprite Fright production, and
there the girl is named Ellie, not Elly. Once seen cannot be un-seen.

No functional changes.
September 21, 2021, 09:15 (GMT)
Cleanup: asset catalog, add note about path cleanup

No functional changes.
September 21, 2021, 08:55 (GMT)
Merge remote-tracking branch 'origin/master' into temp-asset-browser-catalogs
September 21, 2021, 08:30 (GMT)
Asset Catalogs: move from string identifier to UUIDs

Move from a string `catalog_id` to a UUID. This avoids having to keep
the ID of the catalog in sync with its semantics (so renaming from X to
Y can keep the UUID the same).

Since UUIDs don't communicate any human-readable information, the
mapping from catalog UUID to its path (stored in the Catalog Definition
File, CDF) is critical for understanding which asset is stored in which
human-readable catalog. To make this less critical, and to allow manual
data reconstruction after a CDF is lost/corrupted, each catalog also has
a "simple name" that's stored along with the UUID. This is also stored
on each asset, next to the catalog UUID.
September 21, 2021, 08:23 (GMT)
Asset Catalog tree test: add array boundary check

This makes it easier to figure out what's going on when the test isn't
updated for new test data in the file it reads.

No functional changes to Blender itself.
September 21, 2021, 08:22 (GMT)
Cleanup: asset catalog test, add explanatory comment

No functional changes.
September 20, 2021, 22:17 (GMT)
Ensure unique catalog name when adding

Without this, adding multiple catalogs would always add them with the
same name. The first duplicate name would cause an assert to fail.
September 20, 2021, 17:40 (GMT)
Merge branch 'master' into temp-asset-browser-catalogs-ui
September 20, 2021, 10:16 (GMT)
Merge remote-tracking branch 'origin/master' into temp-asset-browser-catalogs
September 19, 2021, 22:08 (GMT)
Merge branch 'temp-asset-browser-catalogs' into temp-asset-browser-catalogs-ui
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021