Publish a py3-none-any wheel (bump 1.1.4)#30
Merged
Conversation
The release workflow built only an sdist (`build --sdist`), so every pyzag release on PyPI is source-only. pip therefore has to *build* pyzag from source at install time -- which fails under --no-build-isolation when `wheel` isn't present in the environment (e.g. neml2's Windows/MSVC build: "error: invalid command 'bdist_wheel'"). pyzag is pure Python, so a py3-none-any wheel is universal and installs on every platform with no build step. Build both sdist and wheel (`build` with no --sdist) and publish both. Building on every push/PR also keeps the wheel build under CI. Bump 1.1.3 -> 1.1.4 so the wheel ships as a new release. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
hugary1995
added a commit
to applied-material-modeling/neml2
that referenced
this pull request
Jul 9, 2026
pyzag 1.1.4 is the first release with a py3-none-any wheel on PyPI (applied-material-modeling/pyzag#30). Bumping the pin means pip installs pyzag from that wheel instead of building the sdist -- which failed under neml2's Windows --no-build-isolation build ("invalid command 'bdist_wheel'"). Bumped via dep_manager (dependencies.yaml + pyproject.toml + compat.yaml). Also de-versioned the donated_buffer filterwarnings comment (reference pyzag by name, not a pinned version) and clarified the Windows CI step installs build deps only (runtime deps, incl. pyzag, are resolved by pip). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
hugary1995
added a commit
to applied-material-modeling/neml2
that referenced
this pull request
Jul 9, 2026
pyzag 1.1.4 is the first release with a py3-none-any wheel on PyPI (applied-material-modeling/pyzag#30). Bumping the pin means pip installs pyzag from that wheel instead of building the sdist -- which failed under neml2's Windows --no-build-isolation build ("invalid command 'bdist_wheel'"). Bumped via dep_manager (dependencies.yaml + pyproject.toml + compat.yaml). Also de-versioned the donated_buffer filterwarnings comment (reference pyzag by name, not a pinned version) and clarified the Windows CI step installs build deps only (runtime deps, incl. pyzag, are resolved by pip). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The release workflow builds only an sdist (
build --sdist), so every pyzag release on PyPI is source-only (1.1.3 has justpyzag-1.1.3.tar.gz). pip then has to build pyzag from source at install time, which fails under--no-build-isolationwhenwheelisn't in the environment:This is exactly what blocks neml2's Windows/MSVC build (
pip install . --no-build-isolation), and it slows/roughens installs everywhere.Fix
pyzag is pure Python, so a
py3-none-anywheel is universal — pip installs it on every platform with no build step.buildwith no--sdist) and publish both on release.1.1.3 → 1.1.4so the wheel ships as a new release.Verified locally:
python -m buildproducespyzag-1.1.4-py3-none-any.whl+pyzag-1.1.4.tar.gz.After merge
Publish a 1.1.4 GitHub release (auto-triggers the PyPI publish via the existing trusted-publishing job). Then neml2's pin can move
pyzag==1.1.3 → 1.1.4to pick up the wheel.🤖 Generated with Claude Code