Skip to content

Migrate to pyproject.toml and towncrier fragments#23

Merged
MaxGhenis merged 9 commits intoPolicyEngine:masterfrom
MaxGhenis:migrate-to-towncrier
Feb 24, 2026
Merged

Migrate to pyproject.toml and towncrier fragments#23
MaxGhenis merged 9 commits intoPolicyEngine:masterfrom
MaxGhenis:migrate-to-towncrier

Conversation

@MaxGhenis
Copy link
Contributor

Summary

  • Migrates from setup.py to pyproject.toml (hatchling build backend)
  • Replaces changelog_entry.yaml with towncrier fragments (changelog.d/<branch>.<type>.md) to eliminate merge conflicts
  • Each PR gets its own uniquely-named fragment file instead of all editing the same file
  • Simplifies PR CI: lightweight check that a fragment exists (no Python install needed)
  • Push workflow uses towncrier for version bumping and changelog generation

Fragment format

echo "Description." > changelog.d/<branch-name>.<type>.md
# Types: added (minor), changed (patch), fixed (patch), removed (minor), breaking (major)

🤖 Generated with Claude Code

MaxGhenis and others added 9 commits February 23, 2026 12:55
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
pyproject.toml requires >=3.10 but CI was using 3.9, causing installation failures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace `jb clean docs && jb build docs` with `myst build docs` to use
Jupyter Book 2.0 (MyST-NB). Replace old pinned sphinx/furo/mypy deps with
`jupyter-book>=1.0.4` and `mystmd>=1.3.17` to match other PE repos.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@MaxGhenis MaxGhenis merged commit 70cd235 into PolicyEngine:master Feb 24, 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