Skip to content

release: pin guarded MLX 0.32.1.dev and 0.6.4b1 macOS 26-only DMG - #3

Open
jonathan308 wants to merge 4 commits into
feat/cluster-v2-dflash2from
cursor/fusion-0.6.4b1-macos26-dmg-pin-086d
Open

jonathan308 wants to merge 4 commits into
feat/cluster-v2-dflash2from
cursor/fusion-0.6.4b1-macos26-dmg-pin-086d

Conversation

@jonathan308

@jonathan308 jonathan308 commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Summary

Packaging/version follow-up for the first Fusion cluster DMG beta. Base is feat/cluster-v2-dflash2 at 3a82bd2743fcc89608e629a7fa1888d8545c93a1. This does not merge Fusion into main and is not for jundot#3118.

File-level must-fixes (vs Fusion 3a82bd2)

  1. DMG name is oMLX-$APP_VERSION-macos26-arm64.dmg in scripts/release_macos_dmg.sh, docs/release-public-checklist.md, and docs/dev-prerelease-notes-template.md. Not macos15-26.
  2. Updater selects the exact -macos26- asset. A macos15-26 range is not a macOS 26 match, even if it is the only DMG.
  3. packaging/build.py --macos-target no longer queries PyPI or pip downloads mlx/mlx-metal. Only 26.0 is accepted; guarded 0.32.1.dev20260825+26421e953 cp311 wheels must already be in packaging/_wheels/guarded. [tool.uv] override-dependencies is that pin, not stock mlx==0.32.0. ops/install_mlx_variant.sh installs with --no-deps --no-index.
  4. App + kernel deployment target is 26.0 (setup.py, build.sh, Xcode). NAX metallib min stays 26.2.
  5. CUSTOM_KERNEL_DIRS / metallib checks include bonsai and decode_fast as well as glm_moe_dsa, minimax_m3, qwen35_prefill.
  6. Version 0.6.4.dev10.6.4b1. build.sh still copies it into CFBundleShortVersionString.

Hobs constraint (live DS4)

The Studio is serving live DS4. Do not run Metal/native wheel builds, setup.py build_ext, or apps/omlx-mac/Scripts/build.sh on that machine.

Not done (operator)

  1. Do not create or push tag v0.6.4b1 until the guarded cp311 pair exists and is reviewed. No wheel bytes in this PR.
  2. GitHub Environment macos-release still does not exist (API create 403). Create it empty in the UI, protected, required reviewer jonathan308. No secrets at create time. Do not copy secrets from jonathan308/omlx-fusion. Do not approve or revive omlx-fusion run 32676126995.
  3. Later, in the GitHub UI only: secrets APPLE_DEVELOPER_ID_APPLICATION_P12_BASE64, APPLE_DEVELOPER_ID_APPLICATION_P12_PASSWORD, APPLE_NOTARY_API_KEY_P8_BASE64, APPLE_NOTARY_KEY_ID, APPLE_NOTARY_ISSUER_ID, and env var APPLE_TEAM_ID.

Validation

  • python3 -m pytest tests/test_packaging_guarded_mlx_pin.py --noconftest (12 passed)
  • Did not compile Metal, invent wheels, create a tag, or open a PR into main
Open in Web Open in Cursor 

cursoragent and others added 4 commits August 25, 2026 14:38
Tighten the Fusion DMG packaging pin to mlx/mlx-metal
0.32.1.dev20260825+26421e953 (jonathan308/mlx@26421e953, nanobind
2.13.0, cp311). Block stock PyPI 0.32.0 and 0.32.2. Bump version to
0.6.4b1 and name the artifact macos26-arm64, not macos15-26.

Do not create tag v0.6.4b1 until the matched cp311 wheels exist.

Co-authored-by: Jonathan Spangler <jonathan308@users.noreply.github.com>
Refuse self-hosted cluster-coordinator runners in the signed DMG
workflow and require an explicit idle-Mac override before compiling
guarded cp311 mlx-metal wheels. The Studio serving live DS4 stays up.

Co-authored-by: Jonathan Spangler <jonathan308@users.noreply.github.com>
Fusion 3a82bd2 referenced this --no-deps install path but the file was
missing, and [tool.uv] override-dependencies still pinned mlx==0.32.0.
Install only the guarded cp311 pair from packaging/_wheels/guarded with
--no-index so a fresh resolve cannot land stock 0.32.0 or 0.32.2.

Co-authored-by: Jonathan Spangler <jonathan308@users.noreply.github.com>
Path B updater must pick oMLX-*-macos26-arm64.dmg, never a 15-26 range
asset. --macos-target other than 26.0 is refused so Fusion's pip-download
swap cannot land stock mlx from PyPI.

Co-authored-by: Jonathan Spangler <jonathan308@users.noreply.github.com>
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.

2 participants