| Field |
Status |
Value |
| mxcli version |
✅ |
v0.10.0-dirty (2026-05-13T20:04:50Z) |
| Mendix version |
✅ |
11.10.0 (Studio Pro 11.10.0 Beta) |
| Host |
✅ |
macOS 24.6.0 (Sequoia), Apple Silicon (arm64) |
| Scenario |
✅ |
mxcli docker run -p Foresight.mpr |
| Expected |
✅ |
MxBuild completes, runtime starts in Docker |
| Experienced |
✅ |
MxBuild aborts when the web-extensions runner crashes the bundled Deno |
Summary
On Apple Silicon Macs, mxcli docker run (and any other path that
invokes Studio Pro 11.10.0 Beta's bundled mxbuild) fails because
MxBuild's web-extensions runner launches the x86_64 Deno binary
under Rosetta 2 instead of the native arm64 Deno that ships in the
same Studio Pro bundle. Deno 2.7.5 then panics with
Check failed: 12 == (*__error()) (errno 12 = ENOMEM, a known
Rosetta-2 / V8 init issue), MxBuild times out waiting for the
component host, and the build never produces a PAD package.
The bug is in Studio Pro, not mxcli — mxcli is doing the right
thing by delegating to Studio Pro's bundled MxBuild. We're filing this
here for visibility because every mxcli user on an Apple Silicon Mac
with Studio Pro 11.10.0 Beta installed will hit it, and mxcli is
positioned to detect / warn / auto-patch.
Output
Using Studio Pro installation: /Applications/Mendix Studio Pro 11.10.0 Beta.app/Contents
…
Checking project for errors...
Project check passed. ← project itself is fine (0 errors)
Running MxBuild (target=portable-app-package)...
…
Preparing the web extensibility environment...
[WebExtensionsRunner] > Deno has panicked. This is a bug in Deno.
[WebExtensionsRunner] > Platform: macos x86_64
[WebExtensionsRunner] > Version: 2.7.5
[WebExtensionsRunner] > Args: [".../modeler/tools/deno/osx-x64/deno", "run", …]
[WebExtensionsRunner] > thread 'main' (8496192) panicked at cli/lib.rs:565:5:
[WebExtensionsRunner] > Fatal error in :0: Check failed: 12 == (*__error()).
ERROR: System.Exception: Component Host failed to start within the expected time.
Error: docker build: mxbuild failed: exit status 1
Studio Pro bundle layout
$ file "/Applications/Mendix Studio Pro 11.10.0 Beta.app/Contents/MacOS/studiopro"
… Mach-O 64-bit executable x86_64
$ file ".../modeler/mxbuild"
… Mach-O 64-bit executable x86_64
$ ls ".../modeler/tools/deno/"
osx-arm64
osx-x64
$ file ".../modeler/tools/deno/osx-arm64/deno"
… Mach-O 64-bit executable arm64 ← native, unused
$ file ".../modeler/tools/deno/osx-x64/deno"
… Mach-O 64-bit executable x86_64 ← gets selected, panics under Rosetta
The native arm64 Deno is right there. The web-extensions runner just
picks the x86_64 path based on the calling process's architecture
(which is x86_64 under Rosetta) instead of the hardware architecture
(arm64).
Confirmed root cause via workaround
Pointing mxcli docker run at a patched copy of MxBuild — same
binary, except the arm64 Deno is copied over the x86_64 path —
succeeds:
DEST="$HOME/.mxbuild-patched-11.10.0"
cp -R "/Applications/Mendix Studio Pro 11.10.0 Beta.app/Contents/modeler/" "$DEST/"
cp -a "$DEST/tools/deno/osx-arm64/deno" "$DEST/tools/deno/osx-x64/deno"
mxcli docker run --mxbuild-path "$DEST/mxbuild" -p Foresight.mpr
After the swap, MxBuild completes and the Docker stack comes up
cleanly. So the panic is not a real Deno bug, not a project bug, not
an mxcli bug — it's Studio Pro pointing at the wrong Deno on ARM.
Modifying the Studio Pro bundle in-place fails on Sequoia 15+ even
under sudo because of macOS App Management protection — the
out-of-tree mxbuild copy + --mxbuild-path was the only viable fix.
Filed upstream with Mendix
- Mendix support ticket: 278610
- Ticket is the canonical bug report; we attached the full failing
output, the bundle architecture audit, and the workaround.
Suggestions for mxcli
This is upstream, but mxcli is closest to the user pain. A few options
ranked from cheapest to most invasive:
- Detect & warn: when running on
arch == arm64 and the auto-
selected mxbuild has an osx-x64/deno that is x86_64 alongside an
osx-arm64/deno, log a clear warning with a one-liner workaround
and a link to this issue / Mendix ticket 278610. Saves users the
half-hour bisect.
- Document in the docker workflow skill / README: a short
"Apple Silicon + Studio Pro 11.10.0 Beta" callout pointing at
--mxbuild-path and the swap commands.
- Auto-stage a patched mxbuild:
mxcli setup mxbuild already
caches mxbuild at ~/.mxcli/mxbuild/{version}/. When the detected
Studio Pro mxbuild has this defect, mxcli could clone it into the
cache and apply the Deno swap automatically, then prefer the cached
copy over the in-bundle one. Most invasive; most useful.
(1) on its own already prevents the wasted half hour. (3) makes the
experience zero-friction once the detection in (1) exists.
Repro
- Apple Silicon Mac, macOS 15+.
- Studio Pro 11.10.0 Beta installed at the default
/Applications/
path.
- Any Mendix 11.10.0 project that builds clean — we used a
fresh-from-MyApps project plus a 10-commit demo
(Foresight-main). mxcli docker check -p <proj>.mpr returns
0 errors so the project is not the cause.
mxcli docker run -p <proj>.mpr → crash as above.
Happy to attach the full log or run extra diagnostics if useful.
mxcli docker run -p Foresight.mprSummary
On Apple Silicon Macs,
mxcli docker run(and any other path thatinvokes Studio Pro 11.10.0 Beta's bundled
mxbuild) fails becauseMxBuild's web-extensions runner launches the x86_64 Deno binary
under Rosetta 2 instead of the native arm64 Deno that ships in the
same Studio Pro bundle. Deno 2.7.5 then panics with
Check failed: 12 == (*__error())(errno 12 =ENOMEM, a knownRosetta-2 / V8 init issue), MxBuild times out waiting for the
component host, and the build never produces a PAD package.
The bug is in Studio Pro, not mxcli — mxcli is doing the right
thing by delegating to Studio Pro's bundled MxBuild. We're filing this
here for visibility because every mxcli user on an Apple Silicon Mac
with Studio Pro 11.10.0 Beta installed will hit it, and mxcli is
positioned to detect / warn / auto-patch.
Output
Studio Pro bundle layout
The native arm64 Deno is right there. The web-extensions runner just
picks the x86_64 path based on the calling process's architecture
(which is x86_64 under Rosetta) instead of the hardware architecture
(arm64).
Confirmed root cause via workaround
Pointing
mxcli docker runat a patched copy of MxBuild — samebinary, except the arm64 Deno is copied over the x86_64 path —
succeeds:
After the swap, MxBuild completes and the Docker stack comes up
cleanly. So the panic is not a real Deno bug, not a project bug, not
an mxcli bug — it's Studio Pro pointing at the wrong Deno on ARM.
Modifying the Studio Pro bundle in-place fails on Sequoia 15+ even
under
sudobecause of macOS App Management protection — theout-of-tree mxbuild copy +
--mxbuild-pathwas the only viable fix.Filed upstream with Mendix
output, the bundle architecture audit, and the workaround.
Suggestions for mxcli
This is upstream, but mxcli is closest to the user pain. A few options
ranked from cheapest to most invasive:
arch == arm64and the auto-selected mxbuild has an
osx-x64/denothat is x86_64 alongside anosx-arm64/deno, log a clear warning with a one-liner workaroundand a link to this issue / Mendix ticket 278610. Saves users the
half-hour bisect.
"Apple Silicon + Studio Pro 11.10.0 Beta" callout pointing at
--mxbuild-pathand the swap commands.mxcli setup mxbuildalreadycaches mxbuild at
~/.mxcli/mxbuild/{version}/. When the detectedStudio Pro mxbuild has this defect, mxcli could clone it into the
cache and apply the Deno swap automatically, then prefer the cached
copy over the in-bundle one. Most invasive; most useful.
(1) on its own already prevents the wasted half hour. (3) makes the
experience zero-friction once the detection in (1) exists.
Repro
/Applications/path.
fresh-from-MyApps project plus a 10-commit demo
(Foresight-main).
mxcli docker check -p <proj>.mprreturns0 errors so the project is not the cause.
mxcli docker run -p <proj>.mpr→ crash as above.Happy to attach the full log or run extra diagnostics if useful.