Packaging
Main package
python -m pip install -U build
python -m build
This produces dist/*.whl and dist/*.tar.gz for the main package.
Extension demo package
cd src/new_year_2026/examples/extension_pkg
python -m pip install -U build pybind11 wheel
python -m build
Notes:
The extension demo builds native binaries (.so/.pyd).
A C/C++ compiler is required on the build machine.
Release tagging
When you create a git tag (for example, v1.0.0), the CI workflow builds
packages and publishes them to GitHub Packages.
GitHub Packages
This project publishes to GitHub Packages (PyPI registry) on tag builds. You can also publish manually:
python -m pip install -U twine
python -m twine upload --repository-url https://upload.pypi.pkg.github.com/<OWNER>/ dist/*
Use a GitHub token with packages:write permissions for authentication.