Skip to content

Release 0.24 - #803

Merged
derrynknife merged 8 commits into
masterfrom
develop
Oct 9, 2026
Merged

derrynknife merged 8 commits into
masterfrom
develop

Conversation

@derrynknife

Copy link
Copy Markdown
Owner

Release 0.24: develop into master.

0.24 is a breaking release. The names 0.23 deprecated are removed and now raise. docs/changelog.rst lists everything under v0.24 (9 October 2026), starting with an Upgrading from 0.23 list. The release covers #730, #746, #760, #769 and #777, the CI changes (#791, #792, #793) and the changelog fix (#789), on top of what #790 brought to master.

This pull request runs the one automated test, the full check on its merge result:

  • lint;
  • conformance;
  • the test suite on 3.11, 3.12 and 3.13, each split into four parts that run at once, with the doctests. 3.12 adds the calibration studies and scenario cards, and measures coverage;
  • the wheel check;
  • the docs build (sphinx -W).

Once it is green and merged, tagging v0.24 on the merge commit publishes to PyPI. publish.yml first checks that this pull request's run passed, every job.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TRhKL2fJBiAAfNo9rihwts


Generated by Claude Code

claude and others added 8 commits October 9, 2026 11:14
Nothing runs on pull requests into develop or on pushes. The pull request
into master (the release) runs lint, conformance, the test suite on three
interpreters with the docstring examples, the wheel check and the docs
build, on the pull request's merge result, so a failure is found and fixed
on develop before master changes. Contributing.rst's CI table follows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TRhKL2fJBiAAfNo9rihwts
…uatqe

CI: one run, the full check on the pull request into master
The one automated run is the full check on the pull request into master.
The nightly workflow is removed; the calibration studies and scenario
cards run only when asked for (--run-calibration, --run-scenarios), and
the docs and comments that said they ran nightly now say so.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TRhKL2fJBiAAfNo9rihwts
… scenarios; publishing checks it

The suite on each interpreter runs in four parts at once (--shard K/4 in
the root conftest.py: a test belongs to the part its id hashes to). 3.12
also runs the calibration studies and scenario cards, and measures
coverage, which a coverage job combines; 3.11 and 3.13 no longer measure
it. The doctests run in part 1.

publish.yml runs no tests. It checks that the tagged commit is the merge
of a pull request into master whose full run passed, every job, before it
builds and publishes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TRhKL2fJBiAAfNo9rihwts
…uatqe

CI: split the one run four ways per interpreter, add calibration and scenarios, and gate publishing on it
Bump the package version to 0.24 and date the changelog (9 October
2026), with an 'Upgrading from 0.23' list of the changes most likely to
need a code change or to change a result, one line each with what to
do: the names 0.23 deprecated now raise (the existing 'Removed' list),
the survival tree and forest pairing rows with times (grid=True for the
old grid), alpha_ci refused outside (0, 1), the Crow-AMSAA BC-mode
projection on the bias-corrected shape, the regressions' one row order,
the Cox and Fine-Gray run-off verdicts, the new refusals (no events,
covariate counts, Celsius stresses, recurrent events at tl), the offset
bounds' warning and bootstrap, the renewal fits' tr and gradients,
quantile_cb's NaN, import * without np, and the names deprecated for
0.25. A bold heading that held an inline literal, which docutils prints
with its backticks, now keeps the literal outside the bold.

The README's tables gain what 0.24 added: CompetingRisks' confidence
bounds, CompetingRisksProportionalHazards' standard errors and
summary(), MixtureModel's standard errors and Wald bounds, the Wiener
and gamma processes' standard errors, bounds and AIC, qf on the
semi-parametric and frailty regressions, and bootstrap bounds for
offset models. The assistant skill (.claude/skills/surpyval/SKILL.md)
says it describes 0.24, not 0.22, and its notes on se, the v0.21
fit_from_df names, ARI's dist= and the old lfp p say they are removed.

Checked locally: flake8p, black (default and py311 targets) and isort
on surpyval/__init__.py; docs/changelog.rst parsed by docutils with no
warnings but Sphinx's own roles and directives (and Pygments' absence);
README.md and SKILL.md parsed by markdown, their tables' columns
counted. No test suite was run; the full 3.11/3.12/3.13 matrix and the
docs build run on the release PR.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TRhKL2fJBiAAfNo9rihwts
@derrynknife
derrynknife merged commit 1e7afb9 into master Oct 9, 2026
17 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.

2 participants