Skip to content

Refine PyPI packaging and source distribution contents#13

Merged
davidkfoss merged 4 commits into
mainfrom
chore/packaging-cleanup
May 10, 2026
Merged

Refine PyPI packaging and source distribution contents#13
davidkfoss merged 4 commits into
mainfrom
chore/packaging-cleanup

Conversation

@davidkfoss

Copy link
Copy Markdown
Owner

Summary

This PR cleans up the packaging configuration for pulseopt and clarifies how repository examples are distributed and used.

Changes

  • Add MANIFEST.in to control source distribution contents.
  • Exclude local development files and build artifacts from the PyPI source distribution.
  • Include runnable example scripts in the source distribution.
  • Keep examples out of the wheel so normal installs remain minimal.
  • Update README wording around examples, PyPI source distribution, and repository layout.
  • Update pytest configuration for the src/ layout.
  • Update stale tests to match the current context logging schema.

Packaging behavior

Expected artifact split:

  • sdist: includes source files, tests, and examples.
  • wheel: includes only the installable pulseopt package and metadata.
  • development files such as uv.lock, .python-version, .venv, caches, and CI metadata are excluded from published artifacts where appropriate.

Validation

  • uv build
  • uv run pytest
  • uv run ruff check .
  • Verified that examples are included in the source distribution.
  • Verified that examples are not included in the wheel.

@davidkfoss
davidkfoss merged commit 6a8533d into main May 10, 2026
3 checks passed
@davidkfoss
davidkfoss deleted the chore/packaging-cleanup branch May 10, 2026 19: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