Skip to content

v0.1.4

Choose a tag to compare

@armagankaratosun armagankaratosun released this 24 Jul 11:48
· 306 commits to main since this release
v0.1.4
3f71d41

What's Changed

New Contributors

Full Changelog:

[0.1.4] - 2026-06-29

Added

  • Project governance docs: CONTRIBUTING.md (contributor workflow, lint/test
    gates) and CODE_OF_CONDUCT.md.

Changed

  • The tensogram optional dependency (and the test extra) now requires
    tensogram, tensogram-xarray, and tensogram-zarr >=0.22,<0.23
    (previously >=0.21,<0.22). Reinstall the extra (uv sync --extra tensogram)
    after upgrading.
  • Container image now carries an org.opencontainers.image.vendor="EUMETSAT"
    label.

Fixed

  • Concurrent slot-index model negotiation on a local filesystem no longer
    intermittently fails with slot-index record is not valid JSON: ... (char 0).
    The local control-plane atomic write (current.json, write-claim locks) now
    publishes content atomically via a temp file plus os.link instead of an
    exclusive-create open("xb"), which on local disk made only the filename
    appear atomically and left a zero-length window a concurrent reader could
    observe. Create-if-not-exists semantics are unchanged (os.link still raises
    on an existing target); S3 and obstore backends were already content-atomic
    and are unaffected.
  • Generated Intake catalogs now reference the registered zarr driver short
    name instead of the non-resolvable module path intake_xarray.zarr.ZarrSource,
    which made intake.open_catalog(...).read() fail at open time with "No plugins
    loaded for this entry". Parquet entries are unchanged.
  • firecube plugins install --editable now verifies the installed plugin in a
    fresh interpreter. An editable install writes a .pth file the current
    process has not loaded, so the post-install check could spuriously report a
    successfully installed plugin as missing.
  • The CLI table formatter accepts any Iterable of rows, not only a
    materialized list, so generator-backed command output renders correctly.

Stats

  • pytest: full suite green under -W error::DeprecationWarning (2273 tests
    collected, 0 failures); not slow and not s3 lane green at 82% line coverage.
  • pyright: 0 errors, 0 warnings.
  • ruff: check and format --check clean.
  • docs: mkdocs build --strict succeeds.
  • package: uv build produces the 0.1.4 wheel + sdist; twine check PASSED.