asdf-format/asdf

Add schema manifest providing package version to asdf metadata and check schema packages on read

Opened this issue · 0 comments

Description of the problem

Currently many asdf extensions (gwcs, asdf-astropy, roman_datamodels) rely on manifests and schemas provided by a different package (asdf-wcs-schemas, asdf-transform-schemas, rad, etc).

However, the versions of these schema packages are not included in the metadata written to an asdf file that was validated against the schemas and use tags from the manifests.

Consider options for adding information about these schema packages to the asdf metadata including:

  • when a manifest exists (checked using the uri) for an extension used to create an ASDF file, include the version of the manifest-providing-package in the metadata
  • when validating a file, log which schemas are used for validation and include the packages that provide these schemas in the metadata

This new schema-providing-package metadata can be checked on read (similar to how extensions are checked) to provide (hopefully) useful messages to users that open files that expect resources that are not installed.

System information

asdf version:
python version:
operating system: