{"record":{"id":"6aa622cc322122fb","repo":"DioxusLabs/dioxus","slug":"makensis-completed-but-installer-not-found-at","errorCode":null,"errorMessage":"makensis completed but installer not found at {}","messagePattern":"makensis completed but installer not found at (.+?)","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"packages/cli/src/bundler/windows.rs","lineNumber":606,"sourceCode":"            .with_context(|| format!(\"Failed to run makensis at {}\", makensis.display()))?;\n\n        if !output.status.success() {\n            let stderr = String::from_utf8_lossy(&output.stderr);\n            let stdout = String::from_utf8_lossy(&output.stdout);\n            bail!(\n                \"makensis failed (exit code {:?}):\\nstdout: {}\\nstderr: {}\",\n                output.status.code(),\n                stdout,\n                stderr\n            );\n        }\n\n        if can_sign_windows(&windows_settings) {\n            self.try_sign_windows(&output_path).await?;\n        }\n\n        if !output_path.exists() {\n            bail!(\n                \"makensis completed but installer not found at {}\",\n                output_path.display()\n            );\n        }\n\n        tracing::info!(\"NSIS installer created: {}\", output_path.display());\n        Ok(vec![output_path])\n    }\n\n    /// Attempt to sign a binary at the given path using the Windows signing configuration.\n    async fn try_sign_windows(&self, path: &Path) -> Result<()> {\n        let settings = self.windows();\n\n        if !can_sign_windows(&settings) {\n            return Ok(());\n        }\n\n        tracing::info!(\"Signing {}\", path.display());","sourceCodeStart":588,"sourceCodeEnd":624,"githubUrl":"https://github.com/DioxusLabs/dioxus/blob/24f6a829df0dfa203961a98ea4cae21c2ff27e28/packages/cli/src/bundler/windows.rs#L588-L624","documentation":"Post-condition guard in bundle_windows_nsis: makensis exited successfully, but the expected NSIS installer executable is not found at the computed output path. The success status was misleading — the installer was written to a different location or filename than expected — and the input at fault is the expected output_path versus makensis's actual output.","triggerScenarios":"Thrown at packages/cli/src/bundler/windows.rs:606 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["makensis finished but the installer is missing. Check makensis output for the real output path or warnings."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"24f6a829df0dfa203961a98ea4cae21c2ff27e28","analyzedAt":"2026-08-23T07:10:14.078Z","contentChangedAt":"2026-08-23T07:10:14.078Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}