From 111540eb4dd53d555cd67e546ae6f99572a0f457 Mon Sep 17 00:00:00 2001 From: Polichinl Date: Sat, 19 Sep 2026 04:39:29 +0200 Subject: [PATCH] =?UTF-8?q?release:=201.3.0=20=E2=80=94=20views-frames=202?= =?UTF-8?q?.0.0=20and=20pipeline-core=203.3.0,=20bytes=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps 1.2.0 -> 1.3.0. MINOR: two dependencies cross a major version and a statistics fix on tied draws comes in; no new failure modes, no behaviour change to the delivery, delivered bytes identical. The changelog entry leads with "no new failure modes" because that is the sentence a launcher needs — 1.2.0's entry led with three, and a consumer reading the next one should learn in one line that this is not that. Why this release exists now rather than later: the launcher in views-models installs from a git TAG (tools/launcher/postprocessor.sh:57), not from PyPI and not from poetry.lock. Everything merged since 1.1.1 is invisible to a server until a tag exists that a pin can name. 1.2.0 exists but was never pinned; this tag is what views-models#439 will ask for instead. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01ANY1CCy9Xo7zjMY4XJ69v9 --- CHANGELOG.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ pyproject.toml | 2 +- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c0aeb8e..021c90b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,50 @@ This file exists because the version number was the only signal a consumer got (register C-111). Releases before 1.2.0 are summarised from their tags rather than reconstructed in detail. +## 1.3.0 — 2026-09-19 + +**No new failure modes.** A launcher that ran 1.2.0 sees nothing new stop. This release +moves two dependencies across a major version and picks up a statistics fix; the delivered +bytes are unchanged. + +### Dependencies a launcher will resolve differently + +- **views-frames `>=2.0.0,<3`** (was `<2`). views-frames 2.0.0 is that package's first + MAJOR: its frame constructors now type-check `index` and raise `TypeError` on a non-index + where they previously constructed silently. This repository passes real indexes and is + unaffected. **Delivery bytes are identical** — shards emitted through `views_frames.io.arrow` + hash the same under 1.10.2 and 2.0.0 at the pinned toolchain, and the ADR-013 §10 + byte-parity fixtures pass under 2.0.0 in CI. Not a contract change. +- **views-pipeline-core resolves to 3.3.0** on a locked install (was 3.0.1). The declared + range `>=3.0.0,<4.0.0` did not change; 3.3.0 is what lifted its own `views-frames <2` cap + and made the move above possible. A `pip install` from the tag already resolved the newest + 3.x, so a launcher installing from git sees no difference here. +- **pyarrow stays at 16.1.0.** The `<17` ceiling is deliberate and owned by #174. + +### Fix picked up from upstream + +- views-frames 1.11.0 corrected the published MAP-containment law, which was wrong on + **tied draws** — failing roughly 6% of rows on zero-inflated integer count posteriors, + this platform's primary data shape. Moving past 1.10.2 brings it in. This repository + volunteered to take that fix first. + +### Documentation a reader of the code will notice + +- Both products' `UPLOAD_ENABLED` docstrings previously named a precondition that had + already been met — faoapi's C-161 closure notice (delivered 2026-07-20) and the + views-crafdapi selection guard (deployed 2026-08-12). They now name the gate that actually + holds: the non-production Appwrite decision, views-appwrite#171. **The interlock itself is + unchanged and still closed.** Nothing uploads. +- `CRAFDPostProcessorManager` has an intent contract (`docs/CICs/`), stated as a delta + against the UN-FAO one. The README and `docs/architecture/role_and_seams.md` list every + `delivery/` module again, and a test now keeps them complete. + +### Upgrading + +Nothing to change in a launcher. Environments that hold `views-frames <2` for another +reason — views-evaluation's `[frames]` extra caps it — will refuse to resolve; this +repository requests neither that package nor that extra. + ## 1.2.0 — 2026-08-26 **A previously-passing delivery can now fail in three new ways. All three are diff --git a/pyproject.toml b/pyproject.toml index 16fd2e4..04cc622 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "views-postprocessing" -version = "1.2.0" +version = "1.3.0" description = "" authors = [ "Dylan Pinheiro ",