Changelog

[0.3.3] - 2023-03-28

Added

  • Enable pyCoverage.

  • Add validation check + fix for dangling material bindings.

Fixed

  • Add missing lines to Tutorial scripts. Tutorial script samples must be self-sufficient.

[0.3.2] - 2023-03-09

Fixed

  • Adjusted test data for new validation Warnings issued by USD 22.11

[0.3.1] - 2023-03-07

Fixed

  • combine_urls changed behavior, use pathlib.Path instead.

[0.3.0] - 2023-02-07

Added

  • Added a Rule to detect ASCII USD layers containing large array data.

  • Added a new “Usd:Performance” category for optimization based rules.

[0.2.4] - 2023-01-31

Fixed

  • Updated to build with Kit 104.2 by default

  • Fixed unittests when running with Kit 104.2

[0.2.3] - 2023-01-26

Added

  • Asset Validation Tutorial and updated documentation.

[0.2.2] - 2023-01-23

Added

  • UsdGeomSubset and MaterialBindingAPI validators

  • For Python 3.8 and newer add CARB_APP_PATH with os.add_dll_directory()

[0.2.1] - 2022-11-21

Fixed

  • String representation of Issue

[0.2.0] - 2022-10-28

Added

  • Rules can include at to describe the layer/prim/attribute that has been flagged for a particular Issue

  • Rules can can include suggestion callables to fix layers/prims/attributes for one or more Issues

  • Added Suggestions to fix non-relative MDL pathing issues

  • Added Suggestions to fix some OmniDefaultPrimChecker issues

  • Added a rule for UsdLux schema changes, with a Suggestion to create inputs: prefixed attributes matching all known UsdLux attributes.

    • For backwards compatibility with current/older USD libraries, the non-prefixed attributes will be maintained.

    • Note Assets already containing prefixed attributes (eg created in a modern USD application) will not be flagged or modified by this rule.

Fixed

  • Improved asynchronous logic to avoid blocking the primary application (eg Create) & to fix crashes on some larger stages

  • Fixed KindChecker logic, which was previously flagging false issues with assemblies

[0.1.2] - 2022-09-15

Fixed

  • Fixed documentation build & publish.

[0.1.1] - 2022-09-14

Fixed

  • Updated extension registry details and documentation.

[0.1.0] - 2022-09-13

Added

  • ValidationEngine runs a set of rules on a given USD layer file, folder/container URI, or live Usd.Stage

    • Results captures any Issues for post-processing

  • ValidationRulesRegistry enables new rules to be registered with the engine

  • BaseRuleChecker defines an interface to validate a Usd.Stage

    • Derived classes may be registered with the ValidationEngine via the ValidationRulesRegistry

  • IssueFixer automatically fixes Issues where possible, using suggestions provided by the BaseRuleChecker classes.

  • ValidationRuleTestCase (in the tests submodule) simplifies testing of individual rules

  • Python script for initiating commandline validation runs