Skip to content

v0.24.1

Choose a tag to compare

@haalfi haalfi released this 30 Apr 06:18
· 274 commits to master since this release
Immutable release. Only release title and notes can be modified.
1393fdf

What's Changed

Fixed

  • S3 botocore Config collision (BUG-185) — S3Backend(client_options={"client_kwargs": {"config": Config(...)}}) raised TypeError: got multiple values for keyword argument 'config' because s3fs's set_session() always passes its own config= to aiobotocore.create_client(). Fixed by routing every botocore Config option through opts["config_kwargs"]; pre-built Config objects in client_kwargs now fail fast with ValueError. Migration guide updated.

Changed

  • Diátaxis docs reorganisation (ID-174) — prose moved into docs-src/<bucket>/ (how-to, explanation, reference, further); the intermediate docs/ layer was collapsed and removed. Bookmarks to specific guide URLs may need updating.

Added (graph IR foundation)

  • CAPABILITIES: ClassVar[CapabilitySet] on every backend and ABC (ID-159) — class-level capability set; the capabilities property delegates to it. Custom backends should follow the same pattern.
  • _GATING dict in _store.py (ID-159) — single source of truth for the method → capability mapping read by Store._gate().
  • __mirror__: ClassVar[type[...]] on async backends (ID-159) — points at the sync peer for static graph extraction.
  • RFC-0012 — Documentation Graph Model (ID-159, accepted)
  • Documentation graph IR generator (scripts/gen_graph.py, ID-159, ID-163, ID-164, ID-162) — emits docs-src/_data/graph/graph.json (107 nodes, 222 edges); schema 1.2.
  • FEATURES.md projection from graph IR (scripts/gen_features.py, ID-163, ID-169) — auto-regenerates the mechanical sections, alphabetised.
  • API-docs verifier (scripts/check_api_docs.py, ID-170, ID-171) — flags missing ::: directives or capability-admonition drift in store.md / backend.md.
  • Interactive graph visualisation (scripts/gen_graph_viz.py, ID-165) — D3 v7 force-directed HTML at docs-src/_data/graph/graph_viz.html.

Internal

  • Test subpackage placement enforced via scripts/check_test_placement.py (ID-166–ID-168).
  • Context7 indexing fixes (ID-160).
  • AsyncAzureBackend.__del__ extracted helper (CodeQL alert #55).
  • tla2tools.jar pinned to v1.7.4; em-dash CI guard added.
  • Async backends moved to aio/backends/ subpackage (mirrors sync layout); public imports unchanged.

Links