Repository navigation
Prepare 0.3.0rc1, check release tags, backfill the changelog, test Python 3.15 - #91
Merged
Merged
Conversation
Set the version to 0.3.0rc1. pyproject.toml stays the only place the version is set; the build workflow now refuses to publish a release whose tag is not v<version>. Point the Unreleased changelog link at v0.2.2, as pre-releases get no changelog section. Add ryan-kipawa and ecomodeller as code owners. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
Author
|
Downstream MIKE IO suite (mikeio |
Collaborator
Author
|
MIKE IO run result: failed on all 4 jobs, but the failures predate this PR. The same tests fail on the earlier runs, including
Other tests: 1057–1157 passed per job. |
Add a section for each final release on PyPI. Pre-releases get no section. Untagged releases are matched to the commit whose source equals the PyPI wheel, and their links compare those commits. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Run the test and MIKE IO workflows on 3.15 instead of 3.14, add the 3.15 classifier, add 3.15 to the ADR 0001 end-of-life table, and note the supported range (3.11 to 3.15) in the changelog. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Prepares the first release candidate of 0.3.0.
pyproject.tomlis still the only place the version is set (mikecore.__version__reads it from the installed package metadata). Publishing now fails if the release tag doesn't match it.The changelog doesn't list alpha, beta or rc releases, so
[Unreleased]now compares against the last final release, 0.2.2.The changelog now also has a section for each past final release, 0.1.0 to 0.2.2: 0.1.0, 0.1.2, 0.1.3, 0.1.4, 0.2.0, 0.2.1 and 0.2.2. There was never a final 0.1.1. Dates are PyPI upload dates. Only v0.1.0 and v0.2.2 were tagged. The other releases were matched to the commit whose
mikecore/*.pyequals the PyPI wheel exactly, and their links compare those commits.Python 3.15 replaces 3.14 as the newest version tested in CI (
full_test.yml: 3.11 and 3.15,test_mikeio.yml: 3.12 and 3.15). It is also added to the classifiers and to the ADR 0001 end-of-life table. The CHANGELOG now says mikecore supports Python 3.11 to 3.15.requires-pythonstays>=3.11, with no upper limit.Starting with this release, tags use the exact package version:
v0.3.0rc1. Earlier tags used a different form (v0.3.a1).Evidence
Before: a release tagged
v0.3.rc1would publish whatever versionpyproject.tomlheld.After: the tag check, run locally against this branch:
uv run pytest: 342 passed, 1 skipped, 8 xfailed, on Python 3.11 and 3.15.2 locally. The PR's test jobs pass on Ubuntu and Windows × 3.11/3.15. This includestests/test_version.py, which checks that__version__equals the metadata version.MIKE IO downstream suite (run on cd85019, MIKE IO
main, Ubuntu/Windows × Python 3.12/3.15; earlier run with 3.14 failed the same way): failed on all 4 jobs, but the failures predate this PR. The same tests fail onmaster(d2048e6) and every other branch run since.test_eum.py::test_eum_conversionValueError: <eumItem.eumICarbonEmmisionFactor: 110321> is not a valid EUMType. The bundled 2026 EUM has items MIKE IO'sEUMTypedoesn't know yet. Needs a MIKE IO fix.test_dfs2.py::test_select_area_rotated_UTM_2-22.238790239263466 == -22.238790239263462. The test needs a tolerance.Other tests: 1157 passed (Ubuntu), 1057 passed + 101 skipped (Windows).
Merge Danger
Door: two-way
Merging publishes nothing. 0.3.0rc1 reaches PyPI only when someone publishes the
v0.3.0rc1GitHub pre-release after this merges. That step can't be undone: a PyPI version can't be uploaded again.Blast Radius: releases
The tag check runs only on release events. A wrongly named tag stops the publish; nothing else is affected. The new code owners will be requested to review every PR.
🤖 Generated with Claude Code