{"record":{"id":"1253819e3abbbcf1","repo":"jdx/mise","slug":"flatpak-cannot-upgrade-a-pinned-version-pkg","errorCode":null,"errorMessage":"flatpak cannot upgrade a pinned version ('{pkg}')","messagePattern":"flatpak cannot upgrade a pinned version \\('(.+?)'\\)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/system/packages/flatpak.rs","lineNumber":168,"sourceCode":"        let mut args = vec![\n            \"install\".to_string(),\n            self.scope_arg().to_string(),\n            \"--noninteractive\".to_string(),\n        ];\n        args.extend(pkgs.iter().map(|pkg| pkg.name.clone()));\n        if opts.dry_run {\n            miseprintln!(\"flatpak {}\", args.join(\" \"));\n            return Ok(());\n        }\n        run_flatpak(&args, \"install\").await\n    }\n\n    async fn upgrade(&self, pkgs: &[PackageRequest], opts: &InstallOpts) -> Result<()> {\n        if pkgs.is_empty() {\n            return Ok(());\n        }\n        if let Some(pkg) = pkgs.iter().find(|pkg| pkg.version.is_some()) {\n            bail!(\"flatpak cannot upgrade a pinned version ('{pkg}')\");\n        }\n        let mut args = vec![\n            \"update\".to_string(),\n            self.scope_arg().to_string(),\n            \"--noninteractive\".to_string(),\n        ];\n        args.extend(pkgs.iter().map(|pkg| pkg.name.clone()));\n        if opts.dry_run {\n            miseprintln!(\"flatpak {}\", args.join(\" \"));\n            return Ok(());\n        }\n        run_flatpak(&args, \"update\").await\n    }\n}\n\n#[cfg(test)]\nmod tests {\n    use super::*;","sourceCodeStart":150,"sourceCodeEnd":186,"githubUrl":"https://github.com/jdx/mise/blob/afd2eddd3a50c16190efc1c7e94404b48f72af57/src/system/packages/flatpak.rs#L150-L186","documentation":"Request validation in the flatpak manager's upgrade(): same constraint as install — a pinned version was requested but flatpak upgrade cannot target a pinned version, so mise rejects it before invoking flatpak.","triggerScenarios":"Thrown at src/system/packages/flatpak.rs:168 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Upgrade by unpinned app ID, or skip flatpak for pinned packages","Use `flatpak update` directly for version-specific control","Drop the pin in the mise package request"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"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"}