{"record":{"id":"4b69839985808dde","repo":"jdx/mise","slug":"no-matching-swiftpm-artifact-bundle-found-for","errorCode":null,"errorMessage":"No matching SwiftPM artifact bundle found for {}","messagePattern":"No matching SwiftPM artifact bundle found for (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/backend/spm.rs","lineNumber":280,"sourceCode":"            artifactbundle_mode,\n            Settings::get().spm.artifactbundle_only,\n            &tv.version,\n        )? {\n            let artifactbundle_required = opts.requires_artifactbundle(artifactbundle_mode);\n            match self\n                .try_install_artifactbundle(\n                    ctx,\n                    &mut tv,\n                    &provider,\n                    &repo,\n                    revision.as_str(),\n                    &opts,\n                )\n                .await\n            {\n                Ok(true) => return Ok(tv),\n                Ok(false) if artifactbundle_required => {\n                    bail!(\n                        \"No matching SwiftPM artifact bundle found for {}\",\n                        repo.shorthand\n                    );\n                }\n                Ok(false) if Settings::get().spm.artifactbundle_only => {\n                    bail!(\n                        \"No matching SwiftPM artifact bundle found for {}, but spm.artifactbundle_only is set\",\n                        repo.shorthand\n                    );\n                }\n                Ok(false) => {}\n                Err(err) if artifactbundle_required => return Err(err),\n                Err(err) if Settings::get().spm.artifactbundle_only => return Err(err),\n                Err(err) => {\n                    debug!(\n                        \"SwiftPM artifact bundle install failed, falling back to source build: {err:?}\"\n                    );\n                }","sourceCodeStart":262,"sourceCodeEnd":298,"githubUrl":"https://github.com/jdx/mise/blob/533346cc374382b41ec5ff70536252b2e96e725c/src/backend/spm.rs#L262-L298","documentation":"The SwiftPM backend tried to install a release version via a prebuilt SwiftPM artifact bundle, but no bundle asset matching the platform/triple was found in the release assets, and artifact bundles were required (spm.artifactbundle_only or equivalent settings), so mise cannot proceed and bails instead of falling back to a source build.","triggerScenarios":"install_version_ calls try_install_artifactbundle which returns Ok(false) (no matching bundle variant) while artifactbundle_required is true — i.e. the tool config mandates artifact bundles and the GitHub release has no .artifactbundle.zip asset for the current OS/arch.","commonSituations":"Installing a SwiftPM tool on an unusual platform (e.g. linux-aarch64) where the project only publishes macOS bundles; a release that ships no artifact bundle at all while settings.toml sets spm.artifactbundle_only = true.","solutions":["Check the release's assets on the GitHub repo for a bundle matching your platform triple","Remove spm.artifactbundle_only = true from settings so mise can build from source","Pin an older/newer version whose release includes an artifact bundle for your platform","Request or contribute an artifact bundle for your platform upstream"],"exampleFix":"// mise config\n// before\n[settings.spm]\nartifactbundle_only = true\n// after\n[settings.spm]\n# allow source builds when no bundle exists\nartifactbundle_only = false","handlingStrategy":"fallback","validationCode":"// before pinning, check release assets for your platform\ngh release view <tag> -R <owner>/<repo> --json assets -q '.assets[].name' | grep artifactbundle","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Don't enable artifactbundle_only unless all target platforms have bundles","Verify release assets per platform before pinning versions","Keep source-build fallback enabled for portability"],"tags":["swift","swiftpm","install","artifact-bundle"],"backgroundTag":"resource-not-found","analyzedSha":"533346cc374382b41ec5ff70536252b2e96e725c","analyzedAt":"2026-09-17T13:35:38.149Z","contentChangedAt":"2026-09-17T13:35:38.149Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}