{"record":{"id":"111b159942b93605","repo":"jdx/mise","slug":"message-ncompilation-is-disabled","errorCode":null,"errorMessage":"{message}\\ncompilation is disabled","messagePattern":"(.+?)\\\\ncompilation is disabled","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/plugins/core/node.rs","lineNumber":148,"sourceCode":"                warn_patches_not_applied();\n                Ok(())\n            }\n            FetchOutcome::NotFound => {\n                if ctx.locked {\n                    if let Some(message) = node_flavor_not_found_message(opts) {\n                        bail!(\"{message}\\nlocked mode requires the locked precompiled artifact\")\n                    }\n                    bail!(\n                        \"precompiled node archive not found and locked mode requires the locked precompiled artifact\"\n                    )\n                } else if Settings::get().node_compile(CompilePurpose::Inspect) != Some(false) {\n                    if let Some(message) = node_flavor_not_found_message(opts) {\n                        warn!(\"{message}\");\n                    }\n                    self.install_compiling(ctx, tv, opts).await\n                } else {\n                    if let Some(message) = node_flavor_not_found_message(opts) {\n                        bail!(\"{message}\\ncompilation is disabled\")\n                    }\n                    bail!(\"precompiled node archive not found and compilation is disabled\")\n                }\n            }\n        }\n    }\n\n    async fn install_windows(\n        &self,\n        ctx: &InstallContext,\n        tv: &mut ToolVersion,\n        opts: &BuildOpts,\n    ) -> Result<()> {\n        match self\n            .fetch_binary(ctx, tv, opts, || self.extract_zip(opts, ctx))\n            .await?\n        {\n            FetchOutcome::Downloaded => {","sourceCodeStart":130,"sourceCodeEnd":166,"githubUrl":"https://github.com/jdx/mise/blob/afd2eddd3a50c16190efc1c7e94404b48f72af57/src/plugins/core/node.rs#L130-L166","documentation":"When installing a precompiled Node.js build with core:node, mise first tries to fetch a prebuilt archive. If none exists and the node flavor (e.g. a non-standard build flavor) is not found, and compilation is not enabled via node.compile, installation is aborted with the flavor-specific message plus 'compilation is disabled'. mise throws this because it cannot proceed without either a prebuilt archive or source compilation.","triggerScenarios":"Calling `mise install node@<version>` (or a .tool-versions/.mise.toml pin) for a version/flavor whose precompiled archive returns 404 from nodejs.org, while settings node.compile is false (the default).","commonSituations":"Installing an old or very new Node version whose prebuilt binary for the current platform was never published or was removed; using an unusual node flavor (e.g. a specific release flavor) on an uncommon OS/arch; offline mirrors missing that archive.","solutions":["Enable source compilation: `mise settings node.compile=true`","Choose a Node version that has a precompiled build for your platform (check nodejs.org dist index for <version>/<platform-arch>)","Install a matching toolchain/OS so a prebuilt archive exists (e.g. use glibc Linux or macOS instead of an exotic target)"],"exampleFix":"// before (mise.toml)\n[tools]\nnode = \"18.0.0\" // prebuilt missing on this platform\n\n// after\n[tools]\nnode = \"18.18.2\" // version with published prebuilt archive\n[settings]\nnode.compile = true // alternative: allow source build","handlingStrategy":"fallback","validationCode":"#!/usr/bin/env bash\nver=$(mise ls-remote node | grep -Fx \"22.11.0\")\ncurl -fsIL \"https://nodejs.org/dist/v${ver}/node-v${ver}-$(node -p 'process.platform')-$(node -p 'process.arch').tar.gz\" >/dev/null && echo \"prebuilt available\" || mise settings set node.compile true","typeGuard":null,"tryCatchPattern":"if ! mise install node@\"$VER\" 2>&1 | grep -q 'compilation is disabled'; then\n  echo \"installed\"\nelse\n  mise settings set node.compile true && mise install node@\"$VER\"\nfi","preventionTips":["Check nodejs.org/dist for the version/platform archive before pinning","Pin versions with published prebuilt artifacts for all CI platforms","Pre-enable node.compile in Dockerfiles building from source anyway"],"tags":["node","install","precompiled","compilation-disabled"],"backgroundTag":"resource-not-found","analyzedSha":"afd2eddd3a50c16190efc1c7e94404b48f72af57","analyzedAt":"2026-09-09T01:38:25.179Z","contentChangedAt":"2026-09-09T01:38:25.179Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}