Core compliance checker (UsdValidation rewrite, stacked on #1)#5
Open
zakmat wants to merge 13 commits into
Open
Core compliance checker (UsdValidation rewrite, stacked on #1)#5zakmat wants to merge 13 commits into
zakmat wants to merge 13 commits into
Conversation
Signed-off-by: Maciej Majek <maciej.majek@robotec.ai>
Signed-off-by: Maciej Majek <maciej.majek@robotec.ai>
Signed-off-by: Maciej Majek <maciej.majek@robotec.ai>
Mechanically convert all test files to use the UsdValidation-style API (run_validators, GetName, GetMessage, GetSites) while keeping the old framework intact via a compatibility shim in conftest.py. Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
What this enables: - Validators are discoverable by keyword (rep0158, rep0158:1.1, etc.) - Free usdchecker integration path via plugInfo.json (future) Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
* Reduce bloat from the class→function conversion: Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
* Follows the Pixar validatorTokens pattern from usdPhysicsValidators. Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Generate codeless plugin from core/ros/schema.usda register it at checker startup. Plugin layout separates library and resource modes: - resources/generatedSchema.usda - shared schema definitions - library/plugInfo.json - for C++ build (Type: library) - resource/plugInfo.json - for Python checker (Type: resource) Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Move the extended-physics validators and their tests out of the active checker. Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
* declare validators under a new "usdRosValidators" entry * make the checks discoverable with usdchecker --includeKeywords Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
Signed-off-by: Mateusz Żak <mateusz.zak@robotec.ai>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR stacks on #1 since it depends on schemas introduced there.
It directly supersedes #3.
The checker ships its validators in two interchangeable forms that share the same
plugInfo.jsonand the same implementation modules:usd-check— a pure-Python CLI installable from PyPI. Works in any Python 3.12+ environment with no OpenUSD build required (usd-corebrings theUsdValidationframework along on pip). Suited to quick local checks and lightweight CI workers.usdRosValidators— a USD plugin discoverable via standard plugin loading. Studios with a full OpenUSD install can run the same validators through stockusdchecker. Suited to integrating with an existing USD asset pipeline.Py-pi package was not republished as part of this PR - @maciejmajek let's sync how to approach that
Defers §4 extended-physics checks to a separate branch and until #2 .
Closes #3 once merged.
Demonstration of new validators integrated into usdview 26.05:
