Skip to content

chore: cut v0.3.0 + decouple lint/test CI jobs - #4

Merged
emcramer merged 2 commits into
mainfrom
chore/prep-v0.2.1
Jul 23, 2026
Merged

chore: cut v0.3.0 + decouple lint/test CI jobs#4
emcramer merged 2 commits into
mainfrom
chore/prep-v0.2.1

Conversation

@emcramer

@emcramer emcramer commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Cuts v0.3.0 and makes the lint/test CI jobs independent siblings. Supersedes the earlier v0.2.1 framing of this branch.

Why 0.3.0, not 0.2.1

Raising the Python floor 3.8 → 3.10 (shipped in #3) drops supported platforms. Under semver that's a minor bump, not a patch — so 0.3.0 is the correct number. Maintainer's call, made after the earlier 0.2.1 draft.

Contents

Release

  • pyproject.toml: version = "0.3.0" (single-sourced; __init__.py reads it via importlib.metadata, and a test asserts they agree — verified 0.3.0 at runtime)
  • CHANGELOG.md: [0.3.0] - 2026-07-23 heading + compare link; recorded the lint-gate repair and Python-floor raise from fix: PhysiCell reader orientation and label handling #2/chore: make the ruff lint gate pass #3; fixed a self-referential bug — the microenvironment "Known gaps" note said "Planned for v0.3.0", which is now this release and doesn't include that wiring, so it's retargeted to a future release
  • tests/test_physicell_labels.py: docstring version reference

CI decoupling

  • .github/workflows/tests.yml: dropped needs: lint from the test job. Lint and test now run as independent siblings. Previously a lint failure skipped the entire test matrix — exactly how the fastmcp install incompatibility stayed hidden until the gate was fixed. Merge-gating for both is left to branch protection.

This PR self-validates the CI change: it runs under the new workflow.

After merge

Tag the merge commit on main:

git tag -a v0.3.0 -m "Release v0.3.0: PhysiCell reader fixes, lint gate, py3.10 floor, CI decoupling"
git push origin v0.3.0

Not in this PR

  • CLAUDE.md is gitignored; its update (now reflecting 0.3.0 and the CI decoupling) lives only in the working tree.
  • The untracked tutorial WIP (docs/tutorials/14_morans_autocorrelation.marimo.py) is left alone; lint already fixed on disk.

Note

Branch is still named chore/prep-v0.2.1 — not renamed, since it has this open PR. The name is cosmetic; the release it cuts is 0.3.0.

emcramer added 2 commits July 23, 2026 13:22
Bump version to 0.2.1 and finalize the changelog.

Renames the [Unreleased] section to [0.2.1] and records the two changes
that shipped via already-merged PRs but were not yet in the changelog:
the CI lint gate repair (#3) and the Python floor raise to 3.10. The
PhysiCell reader fixes (#2) were already drafted under [Unreleased].

Version is single-sourced in pyproject.toml; __init__.py reads it via
importlib.metadata, so no code change is needed for the bump.
Retarget this release from 0.2.1 to 0.3.0. Raising the Python floor from
3.8 to 3.10 drops supported platforms, which is a minor-version change
under semver rather than a patch, so 0.3.0 is the correct number.

- pyproject.toml: version 0.3.0
- CHANGELOG: [0.3.0] heading, compare link, and fix the microenvironment
  "Known gaps" note that previously said "Planned for v0.3.0" (this is
  now that release) — retargeted to a future release
- tests/test_physicell_labels.py: docstring version reference

Also decouple the CI jobs: drop `needs: lint` from the test job so lint
and test run as independent siblings. A lint failure previously skipped
the entire test matrix, which is how the fastmcp install incompatibility
stayed hidden. Merge-gating is left to branch protection.
@emcramer emcramer changed the title chore: prep v0.2.1 release chore: cut v0.3.0 + decouple lint/test CI jobs Jul 23, 2026
@emcramer

Copy link
Copy Markdown
Owner Author

Approving this PR

@emcramer emcramer self-assigned this Jul 23, 2026
@emcramer
emcramer merged commit f805bf0 into main Jul 23, 2026
5 checks passed
@emcramer
emcramer deleted the chore/prep-v0.2.1 branch July 23, 2026 20:48
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