Repository navigation
fix(release): keep the protocol's extras when the release pins it - #364
Merged
Merged
Conversation
The release pinned the framework's requirement on agentenv-framework-protocol with a sed that rewrote the whole quoted requirement, so "agentenv-framework-protocol[computer]>=0.1.0" shipped as "agentenv-framework-protocol==<version>". Wheels from 0.9.1363 on lack the computer extra. Since 0.9.1367, core imports av through the protocol's recording module, so on a bare `pip install agentenv-framework`, `agent-env --version` fails with "No module named 'av'". `shipped_bundles.py pin-pyproject` now pins the requirement, keeping its extras, and the release runs it in place of the sed. The clean-install gate builds the framework with the same pin, so it installs what a release ships. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <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.
What's broken
Every published
agentenv-frameworkfrom 0.9.1367 on fails to start on a bare install:pyproject.tomlrequiresagentenv-framework-protocol[computer]>=0.1.0. The release's pin step inpublish-pypi.ymlis asedthat rewrites the whole quoted requirement, so the extra is dropped and the wheel shipsagentenv-framework-protocol==0.1.383.[computer]joined core's requirements) lack the extra.avthrough the protocol's recording module (teardown_sandboxes→computer_recording→agentenv_protocol.computer), soimport agent_env.taskand the CLI fail.CI didn't catch it because the clean-install gate builds from the unpinned
pyproject.toml, which keeps[computer].Fix
.github/scripts/shipped_bundles.py pin-pyprojectpins the framework's one quoted requirement on the protocol and keeps its extras. It's the same rulepinalready applies to the shipped bundles' requirements files. The release runs it in place of thesed.pyproject.tomlafterwards.tst/unit/test_release_protocol_pins.py:pyproject.tomlpins toagentenv-framework-protocol[computer]==<version>;-tools-style names, the sdist include list or[tool.uv.sources];sed.Verified
pin-pyprojectapplied, then installed into a fresh venv from public PyPI:agent-env --versionprintsagent-env 0.9.1369, andagent_env.task,avandPILimport.tst/unit/test_release_protocol_pins.py: 14 passed.The
bump-versionlabel is set so that merging ships a working release.🤖 Generated with Claude Code


Confidence Score: 5/5
The PR appears safe to merge.Summary
The release now pins the protocol version without dropping its extras. The clean-install check builds with that same pin and restores
pyproject.tomlafterward.Reviews (2) · Last reviewed commit: "test(release): count the pin command apa..." · Reviewed by Greptile