Repository navigation
MetalNX v2.1.1 — Hermetic uv Python Runtime & Zero-Friction Engine Setup
What's Changed in MetalNX v2.1.1
This release delivers comprehensive architectural resolutions for the most critical community-reported friction points:
-
Hermetic Python Environment (
uv):- Bundles native static
uvdirectly insideMetalNX.app/Contents/Resources/bin/uv. - Executes port pipelines hermetically (
uv run --python 3.12 --with lz4 --with capstone --with fonttools --with zstandard), completely bypassing PEP 668externally-managed-environmentblocks, Homebrew/system Python confusion, and missing modules.
- Bundles native static
-
Full .NET Independence:
- Bundles pre-compiled self-contained single-file ARM64 binaries of both
nx_extractanddmsh_xlate. - Users do not need .NET 10, .NET 9, or any SDK installed on macOS; eliminates exit codes 131/134.
- Bundles pre-compiled self-contained single-file ARM64 binaries of both
-
Read-Only App Bundle Protection & Dynamic Auto-Bootstrap:
MetalNX.appstrictly avoids mutating its internal bundle.- Automatically bootstraps a writable clone of the porting engine inside
~/Library/Application Support/MetalNX/engineif no workspace is present, eliminating Stage 2/7 repository root errors under macOS App Translocation.
-
Architectural Pre-Build Static Linting:
- Integrated
ruff check --select F821,F822,F823,E9,F63directly into the pre-build workflow and GitHub Actions CI. - Automatically prevents unexecuted error-handling branches from containing undefined variable references (such as
collections.deque).
- Integrated
-
Diagnostic & Crash Reporter Integrity:
- Fixed RFC 3986 percent-encoding in one-click GitHub issue reporting to preserve logs across all URL query delimiters.