OpenAssetIO / OpenAssetIO-TraitGen

A code generation tool that produces OpenAssetIO Traits and Specifications from a simple YAML description.
Apache License 2.0
5 stars 3 forks source link

Versioning generation behaviour. #80

Open elliotcmorris opened 2 months ago

elliotcmorris commented 2 months ago

Add functionality to generate versioned traits in trait-gen.

All of the trait-view versions for a particular trait should be generated into the same file.

Json schema will need to be updated.

Acceptance Criteria

Follow the structure outlined in https://github.com/OpenAssetIO/OpenAssetIO-MediaCreation/pull/90

Apart from these changes:

The unversioned default trait should be an identical copy of the v1 trait. The unversioned default trait should have a deprecation warning. In C++ this is via the [[deprecated]] attribute on the class. In python it's on the constructor, and use the pythons warnings module.