Skip to content

release: 1.2.0 — Taking to water - #18

Merged
Xof merged 1 commit into
mainfrom
release/1.2.0
Jun 30, 2026
Merged

release: 1.2.0 — Taking to water#18
Xof merged 1 commit into
mainfrom
release/1.2.0

Conversation

@Xof

@Xof Xof commented Jun 30, 2026

Copy link
Copy Markdown
Owner

Prepares the 1.2.0 release ("Taking to water"). Version bump + lockfile + changelog only — all the actual code already merged (#14, #16) and is on main.

Contents (since 1.1.0)

New features:

Docs (#15, #17) — ARCHITECTURE/THEORY notes and a refreshed cross-ORM benchmark table with a 1000-row bulk row — are already on main.

Validation

  • version = "1.2.0" (single-sourced in pyproject; uv.lock updated, uv sync --locked clean).
  • PyPI preflight READY: metadata valid, 1.2.0 not yet on PyPI (no collision), uv build produces clean sdist + wheel, twine check --strict PASSED.
  • just check green (523 tests, 95% coverage, ruff + mypy clean).

Release trigger (human-gated)

After this merges, the PyPI publish fires when a GitHub Release is published (publish.yml, trusted publishing / OIDC — no stored token). That's the irreversible step (PyPI is append-only), so it's yours to pull:

git tag v1.2.0 <merge-commit> && git push origin v1.2.0
gh release create v1.2.0 --title "Cygnet 1.2.0 — Taking to water" --notes-from-tag   # or --notes "..."

Creating the release publishes cygnet-orm==1.2.0 to PyPI.

New features:
- cygnet.follow_many: batched foreign-key navigation. Resolves a whole
  collection's FK targets in one WHERE pk = ANY($1) round-trip instead of
  N (the classic N+1), aligned to the inputs.
- Faster bulk INSERT: the row-invariant column derivation is hoisted out
  of the per-row render loop (~1.64x faster bulk-INSERT rendering),
  byte-identical output.

Bumps version 1.1.0 -> 1.2.0 and refreshes uv.lock + CHANGELOG.
@Xof
Xof merged commit 0eb25e1 into main Jun 30, 2026
10 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