diff --git a/.issueflows/03-solved-issues/issue802_original.md b/.issueflows/03-solved-issues/issue802_original.md new file mode 100644 index 00000000..17d2fca5 --- /dev/null +++ b/.issueflows/03-solved-issues/issue802_original.md @@ -0,0 +1,7 @@ +# Issue #802: Update history + +Source: https://github.com/jepegit/cellpy/issues/802 + +## Original issue text + +The HISTORY.md file seems not to have gotten properly updated. Could be other docs things also stale. Check. Fix. Post release (2.1.1.post1) diff --git a/.issueflows/03-solved-issues/issue802_plan.md b/.issueflows/03-solved-issues/issue802_plan.md new file mode 100644 index 00000000..9685f37f --- /dev/null +++ b/.issueflows/03-solved-issues/issue802_plan.md @@ -0,0 +1,88 @@ +# Issue #802 — Plan + +## Goal + +Backfill `HISTORY.md` for the already-shipped **2.1.0.post1** and **2.1.1** +releases (and clear the stale Unreleased stub), then do a light pass for other +obviously stale public docs. Prep the tree so a docs-only **`v2.1.1.post1`** +can be cut after merge if desired. + +## Constraints + +- Keep a Changelog shape at repo root (`## [Unreleased]` then + `## [x.y.z] - YYYY-MM-DD`) — see `iflow-history-update`. +- Match tone/density of existing `HISTORY.md` bullets (user-facing summary + + `(#NNN)`); prefer the published GitHub release notes over inventing detail. +- **Docs-only** change set — no runtime/API edits. +- Do **not** create the `v2.1.1.post1` tag/release in this PR; that follows + [`release-procedure.md`](../04-designs-and-guides/release-procedure.md) on + `master` after merge (same pattern as `v2.1.0.post1`). +- Scope of “other docs stale”: quick public-facing check only (README / docs + index / getting_started version or `v2-docs-stable` leftovers). No deep docs + rewrite. + +### Prior art + +- Toolbox: no HISTORY helper in `.issueflows/00-tools/` (none applicable). +- `.cursor/skills/iflow-history-update/SKILL.md` — Keep a Changelog append / + promote conventions for per-issue close; this issue is a **retroactive + multi-release backfill**, so apply the same heading/bullet style manually. +- GitHub releases `v2.1.0.post1` and `v2.1.1` — authoritative bullet source + (already written). +- `git log v2.1.0..v2.1.0.post1` / `v2.1.0.post1..v2.1.1` — PR inventory to + cross-check the release bodies. +- Graph: skipped (docs/HISTORY-only; no code graph needed). + +## Approach + +1. **Inventory (already done in planning)** + - `HISTORY.md` has `[Unreleased]` (only the #768/`v2-docs-stable` retirement + note) and jumps to `[2.1.0]` — **no** `[2.1.0.post1]` or `[2.1.1]`. + - Tags/releases exist: `v2.1.0.post1` (2026-07-28), `v2.1.1` (2026-07-29, + tip of `master`). + +2. **Rewrite the top of `HISTORY.md`** + - Keep an empty `## [Unreleased]` (or only truly unreleased items — none + expected on tip). + - Insert `## [2.1.1] - 2026-07-29` with bullets distilled from the GitHub + 2.1.1 release notes (#785, #787, #790, #789, #788, #786, #791 / #798). + Skip Dependabot-only noise unless the release notes mention it. + - Insert `## [2.1.0.post1] - 2026-07-28` with bullets from that release + (#771/#777 docstring cleanup, #775/#776 RTD / docs-on-master). Move the + current Unreleased `v2-docs-stable` retirement bullet into this section + (merge with #775 — do not duplicate). + - Leave the existing `## [2.1.0]` block intact (including its historical + “synced to `v2-docs-stable`” line — that was true at 2.1.0 ship). + +3. **Stale-docs skim** + Grep README / `docs/` for leftover “edit on `v2-docs-stable`” instructions + or wrong “latest is 2.1.0” claims. Fix only clear public falsehoods found; + do not churn issueflow archive text. + +4. **Verify** + Head of `HISTORY.md` reads Unreleased → 2.1.1 → 2.1.0.post1 → 2.1.0 → … + No code tests required beyond a quick visual check. + +## Files to touch + +| Path | Change | +|------|--------| +| [`HISTORY.md`](../../HISTORY.md) | Add `[2.1.1]` + `[2.1.0.post1]`; clear/move Unreleased stub | +| Public docs (only if skim finds a clear falsehood) | Minimal fix | + +## Test strategy + +- No pytest — changelog/docs only. +- Manual: `git log` / `gh release view` vs `HISTORY.md` headings and bullets + match; `rg` for leftover stale `v2-docs-stable` edit instructions in + `README.md` + `docs/`. + +## Open questions + +1. **Tag after merge?** After this PR lands, cut `v2.1.1.post1` as a + docs-only post-release (like `v2.1.0.post1`), or leave HISTORY corrected on + `master` without a new tag? + **Recommended:** cut `v2.1.1.post1` after merge (out of band of this PR). +2. **Dependabot bumps in 2.1.0.post1?** Those commits sit on the post1 tag but + are not in the GitHub release notes. + **Recommended:** omit from HISTORY (match the published release body). diff --git a/.issueflows/03-solved-issues/issue802_status.md b/.issueflows/03-solved-issues/issue802_status.md new file mode 100644 index 00000000..e14136a0 --- /dev/null +++ b/.issueflows/03-solved-issues/issue802_status.md @@ -0,0 +1,22 @@ +# Issue #802 — Status + +- [x] Done + +## What's done + +- Plan accepted on `cursor/802-update-history-143c`. +- Backfilled `HISTORY.md`: `[2.1.1]` (2026-07-29) and `[2.1.0.post1]` + (2026-07-28) from GitHub release notes; moved Unreleased `v2-docs-stable` + retirement into post1 (#775); left `[2.1.0]` intact; Dependabot omitted. +- Stale-docs skim of `README.md` / `docs/`: no clear public falsehoods to fix. +- Close: promoted Unreleased → `[2.1.1.post1]`; planned tag `v2.1.1.post1`. +- Essential tests green (`uv run pytest -m essential`: 606 passed). + +## Remaining work + +- None (release tag created after merge). + +## Notes + +- PR: https://github.com/jepegit/cellpy/pull/803 (#803) +- Planned tag: `v2.1.1.post1` (git-tag derived; create on `master` after merge) diff --git a/HISTORY.md b/HISTORY.md index b9e98797..7377789c 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,8 +2,44 @@ ## [Unreleased] +## [2.1.1.post1] - 2026-07-29 + +Docs-only post-release of 2.1.1 — no API, schema, or runtime changes. + +* Backfill `HISTORY.md` for the already-shipped 2.1.1 and 2.1.0.post1 + releases. (#802) + +## [2.1.1] - 2026-07-29 + +Patch release — app-builder fixes and conveniences (gathered while building +on 2.1.0.post1). Additive, no breaking changes. + +* **Bug fix (collect):** group-averaged collected summaries plot again — + `Collection.plot()` / `plot(spread=True)` render group-keyed `mean`±`std` + frames instead of raising `KeyError 'cell'`. (#785) +* `cellpy.collect.from_cells()` (+ `Batch.from_cells`): build a batch from + already-loaded in-memory `CellpyCell` objects. (#787) +* `Collection.is_grouped` / `meta.grouped`: whether group-averaging actually + happened. (#790) +* `Collection.save()` supports `xlsx` and `json` (was parquet/csv only). (#789) +* `CurveOptions` gains `mode` / `method`, forwarded per cell to `get_cap` + (parity with the single-cell call). (#788) +* `cellpy.list_instruments()`: quiet app-facing listing → + `[{"id", "label", "models", "suffixes"}]`, no per-module warnings. (#786) +* App/agents guide: note on the polars/pandas frame boundary and quieting + cellpy's logger/warnings. (#791) + +## [2.1.0.post1] - 2026-07-28 + +Docs-only post-release of 2.1.0 — no API, schema, or runtime changes. + * Retire `v2-docs-stable`: docs land on `master`; RTD stable tracks release - tags (e.g. `v2.1.0`). (#768) + tags. (#775) +* Strip issue-tracker references and migration narrative from package + docstrings so the API reference reads cleanly. (#771) +* Document Read the Docs header release-badge behaviour (badge shows the live + GitHub latest release; the RTD version switcher is the source of truth). + (#776) ## [2.1.0] - 2026-07-28