pypi pymetadata 0.8.1

3 hours ago

Release notes for pymetadata 0.8.1

pymetadata

Dependencies

  • pydantic>=2.12 instead of pydantic>=2.13.5 (#105). The lower bound was the newest release when the bounds were pinned, not a requirement: the tests pass with pydantic 2.12.0 on python 3.11 and 3.14. The strict bound made pymetadata uninstallable with pip next to pydantic-numpy 9.0.2 (which requires pydantic~=2.12.5, and is the only release pip can install on python 3.14), e.g. in sbmlsim[sciml] through petab-sciml.

Fixes

  • Processes which load the identifiers.org registry into the same empty cache at the same time, e.g., the workers of pytest-xdist, no longer fail on Windows with PermissionError: [WinError 5] Access is denied (#102). A cache file which another process has open is retried for about a second, and a cache file which cannot be written is a warning instead of an error, the query returns its result anyway. Registry uses the namespaces it downloaded instead of reading them back from the cache.
  • Reading a cache file which another process replaces at the same moment is retried on Windows.
  • Cache files have the permissions of a regular file again (0o666 minus the umask) instead of being readable only by their owner, so a cache directory can be shared.
  • A corrupt cached registry is downloaded again instead of failing.

Development

  • The lock of the development environment, uv.lock, is tracked, and continuous integration installs it (#101).
  • Continuous integration runs with less load (#104).

Your pymetadata team

Don't miss a new pymetadata release

NewReleases is sending notifications on new releases.