Skip to content

0.4.3 - #65

Merged
Pavlo3P merged 7 commits into
masterfrom
0.4.3
Sep 12, 2026
Merged

Pavlo3P merged 7 commits into
masterfrom
0.4.3

Conversation

@Pavlo3P

@Pavlo3P Pavlo3P commented Sep 12, 2026

Copy link
Copy Markdown
Owner

What this PR does

0.4.3 release

Pavlo3P and others added 7 commits July 25, 2026 16:15
The jit audit still built its context with `Context(..., enable_checks=False)`.
Validation policy moved off the context onto the bound object in this release,
so that keyword now raises TypeError and the audit step failed. Drop it and
lower the ambient default instead -- argument validation would otherwise add
non-traced Python work that muddies the retrace counts the script measures.

Separately, the lint configuration named no `select`, so `ruff check .`
enforced whatever ruff's implicit default happened to be. That default has
grown between releases -- 0.16 folded I, UP, B, S, SIM, PL and RUF into it --
so an unpinned `pip install ruff` in CI silently turned a green tree red
without a single source edit (569 findings on master, which last ran CI against
an older ruff). Name the rules explicitly; the result is now identical under
0.15.8 and 0.16.7, and widening the set becomes a deliberate commit rather than
a release surprise.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Two CI gates were failing on documentation rather than behaviour.

`ruff check --select D` found five regressions from the submodule refactors:
the newly *public* `spacecore.contextual` package needed a module docstring
(the old `_contextual` was private, so D104 never applied), two summaries were
not in the imperative mood, one ran its summary into its description, and
`functional/_realified.py` carried LaTeX in a non-raw docstring.

`scripts/docstring_audit.py` reported 36 numpydoc issues. These predate the
branch -- master reports the identical set -- but they only became a CI failure
now that numpydoc 1.10 is what gets installed, and they block this PR either
way. Most are the `check_level` constructor argument going undocumented across
the spaces, operators and functionals that gained it; the rest are summary
placement, documented parameter order that no longer matched the signature,
section ordering, and missing Returns/Yields on the ambient-state helpers.

Also fix two Sphinx warnings introduced by this branch: the `[Conway]`
citation on `LinOp` was defined but never cited, and `SumFunctional`'s summary
put `F_1 + ... + F_n` inside an inline literal, where autosummary cuts the
sentence at the ellipsis and leaves the literal unterminated.

Documented behaviour was verified against the runtime rather than the type
hints -- notably, a boolean `check_level` is annotated but rejected, so the
prose describes the four literals only.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The version, the changelog heading and the public-API version assertion were
already at 0.4.3, but an `[Unreleased]` section had since accumulated on top of
the dated 0.4.3 section. Fold it in, redate to the actual release day, and keep
the empty `[Unreleased]` placeholder the file has always carried.

The docs still described the API this release removes, which would have shipped
examples that raise:

* README and the checking-policy design note both built contexts as
  `Context(ops, dtype=..., check_level=...)`. The level is now a property of the
  bound object, so both are rewritten around per-object levels and the ambient
  `set_check_level` / `use_check_level` helpers. The corrected README example
  was run; it prints the output the page claims.
* `api/context.rst` pointed autodoc at `spacecore.backend.Context`, which no
  longer imports, and still described the context as carrying validation
  policy. It now also lists the scoping helpers.
* README advertised `SpectralLpNormFunctional`, removed here in favour of
  `spectralize` / `SpectralFunctional`.

Release notes had no 0.4.3 entry, and no 0.4.2 entry either -- the page jumped
from 0.4.3's predecessor straight to 0.4.1 -- so both are written up.

Sphinx now builds with no warnings, matching master.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…atory-comments

63 review the code and add explanatory comments
@Pavlo3P
Pavlo3P merged commit e84caf6 into master Sep 12, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant