Skip to content

2.15.1

Compare
Choose a tag to compare
@braingram braingram released this 07 Aug 21:48
· 1128 commits to main since this release

The ASDF Standard is at v1.6.0

  • Drop Python 3.8 support [#1556]
  • Drop NumPy 1.20, 1.21 support [#1568]
  • Convert numpy scalars to python types during yaml encoding to handle NEP51 changes for numpy 2.0 [#1605]
  • Vendorize jsonschema 4.17.3 [#1591]

jsonschema vendorization

Asdf 2.15.1 includes internally a version of jsonschema 4.17.3. This inclusion was done to deal with incompatible changes in jsonschema 4.18.

Many libraries that use asdf import jsonschema to allow catching of ValidationError instances that might be raised during schema validation. Prior to asdf 2.15 this error type was not part of the public asdf API. For 2.15 and later users are expected to import ValidationError from asdf.exceptions (instead of jsonschema directly).

To further ease the transition, asdf will, when possible, use exceptions imported from any installed version of jsonschema. This means that when the asdf internal jsonschema raises a ValidationError on a system where jsonschema was separately installed, the internal jsonschema will attempt to use ValidationError from the installed version. This should allow code that catches exceptions imported from jsonschema to continue to work with no changes. However, asdf cannot guarantee compatibility with future installed jsonschema versions and users are encouraged to update their code to import ValidationError from asdf.exceptions.

Finally, asdf is temporarily keeping jsonschema as a dependency as many libraries expected this to be installed by asdf. We expect to drop this requirement soon (likely in 3.0.0) and this change might occur in a minor or even patch version.

The above text is also available in the updated docs under What's New.

Full Changelog: 2.15.0...2.15.1