Skip to content

Migrate packaging to pyproject.toml with hatchling - #40

Draft
endolith wants to merge 1 commit into
masterfrom
cursor/pyproject-hatchling-d3df
Draft

Migrate packaging to pyproject.toml with hatchling#40
endolith wants to merge 1 commit into
masterfrom
cursor/pyproject-hatchling-d3df

Conversation

@endolith

Copy link
Copy Markdown
Owner

Closes #32.

Summary

  • Add pyproject.toml with PEP 621 project metadata and [build-system] using hatchling as the build backend (per current PyPA guidance on moving away from setup.py).
  • Declare runtime dependencies (numpy, scipy) and a dev extra (pytest, pytest-cov, flake8) so pip install -e ".[dev]" matches prior CI behavior without a separate requirements.txt.
  • Remove setup.py and requirements.txt to avoid duplicated dependency sources.
  • Update the GitHub Actions workflow to install the project and dev tools in one step.
  • Refresh the README installation section for the new install paths.

Verification

  • python3 -m build (wheel and sdist) succeeds locally.
  • python3 -m pytest passes (104 passed, 9 skipped) after pip install -e ".[dev]".
Open in Web Open in Cursor 

Replace deprecated setup.py with PEP 621 metadata and hatchling as the
build backend. Runtime dependencies (numpy, scipy) and dev tools (pytest,
pytest-cov, flake8) live in pyproject.toml; CI installs via pip install -e ".[dev]".

Co-authored-by: endolith <endolith@gmail.com>
@endolith
endolith force-pushed the cursor/pyproject-hatchling-d3df branch from 177bf76 to a4c9742 Compare August 24, 2026 00:14
@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codecov

codecov Bot commented Aug 24, 2026

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

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.

Switch to pyproject.toml

2 participants