fix(install): sandbox-safe Homebrew formula + Python 3.14 orjson fix (v9.33.6)#36
Merged
Merged
Conversation
β¦n fix - pyproject.toml: requires-python >=3.11,<3.15; orjson>=3.11.9 (drops <3.11 cap that blocked cp314 wheels on macOS Tahoe); version 9.33.6; add Python 3.13/3.14 classifiers - squish/__init__.py: __version__ 9.33.6 - Formula/squish.rb: replace live pip install with virtualenv_install_with_resources and 39 pre-built resource blocks (macOS arm64 / Python 3.13 wheels) so Homebrew sandbox never needs network access during install - publish.yml: add formula auto-update step that computes sha256 post-PyPI and commits updated Formula/squish.rb on each tag push - README.md: accurate install instructions for macOS Tahoe / Python 3.14 users - tests: update EXPECTED_VERSION to 9.33.6 https://claude.ai/code/session_011n4BGhTMEgNyRdL32rSpoZ
requires-python is now >=3.11,<3.15 (mlx dropped 3.10 in 0.20). Replace the 3.10 slot with 3.13 to keep coverage on the newest stable release. https://claude.ai/code/session_011n4BGhTMEgNyRdL32rSpoZ
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.
Summary
<3.11cap removed βorjson>=3.11.9is the first version withcp314macOS arm64 wheels; the old>=3.9,<3.11cap blocked it and forced source compilation on Python 3.14 (macOS Tahoe default), which failed without a Rust toolchainpip install(blocked by macOS sandbox) withvirtualenv_install_with_resources+ 39 pre-built resource blocks covering all transitive deps (macOS arm64 / Python 3.13 wheels); no network access needed duringbrew installFormula/squish.rbon every tag push--python python3.13workaround for older releasesWhat broke and why
orjson>=3.9,<3.11in pyproject.tomlpipx install squish-aion Python 3.14 fell through to Rust source compilation β failureinstallblock calledpip install squish-ai==Xlivebrew installhangs/fails β macOS sandbox blocks all outbound network during installChanges
pyproject.toml: version9.33.5β9.33.6,requires-python = ">=3.11,<3.15",orjson>=3.11.9, add Python 3.13/3.14 classifierssquish/__init__.py:__version__ = "9.33.6"Formula/squish.rb: full rewrite βvirtualenv_install_with_resources, 39 resource blocks.github/workflows/publish.yml: formula auto-update step after PyPI publishREADME.md: updated install section with Python version guidancetests/test_version.py,tests/test_wave79_startup_inference.py: updateEXPECTED_VERSIONto 9.33.6Test plan
python -m pytestβ 2672 passed, 98 skipped, 0 failedruff check+ruff format --checkcleanpip install squish-ai(9.33.5) in fresh venv: 16s, orjson 3.10.18 resolvespip install squish_ai-9.33.6-*.whlin fresh venv: orjson 3.11.9 resolves (confirms cap removal works)squish_ai-9.33.6.tar.gz,squish_ai-9.33.6-py3-none-any.whlbrew install squishβ requires macOS arm64 machine; formula resource block sha256s verified against PyPI JSON APINotes
Resource blocks in the formula are pinned to squish-ai 9.33.5 deps. After this PR merges, tag
v9.33.6to trigger the publish workflow. The formula auto-update step will bump the URL/sha256 to 9.33.6. Then manually regenerate resource blocks (orjson changes from 3.10.18 β 3.11.9):pip install squish-ai homebrew-pypi-poet && poet squish-aiSee
results/release/RELEASE_DIAGNOSIS.mdfor full root cause analysis.https://claude.ai/code/session_011n4BGhTMEgNyRdL32rSpoZ
Generated by Claude Code