DioxusLabs/dioxus · error · anyhow::Error

ditto failed to create zip for notarization

Error message

ditto failed to create zip for notarization

What it means

The macOS bundler ran `ditto -c -k` to zip the .app for notarization and the command reported failure. The zip artifact is required by Apple's notary service, so the bundling step aborts when ditto exits unsuccessfully.

Source

Thrown at packages/cli/src/bundler/macos.rs:221

            if should_notarize {
                let zip_path = output_dir.join(format!("{bundle_name}.zip"));
                tracing::info!("Creating zip for notarization: {}", zip_path.display());

                let status = Command::new("ditto")
                    .args([
                        "-c",
                        "-k",
                        "--sequesterRsrc",
                        "--keepParent",
                        &app_dir.display().to_string(),
                        &zip_path.display().to_string(),
                    ])
                    .status()
                    .await
                    .context("Failed to run ditto for zip creation")?;

                if !status.success() {
                    bail!("ditto failed to create zip for notarization");
                }

                match notarize(&zip_path, &app_dir).await {
                    Ok(()) => {
                        let _ = fs::remove_file(&zip_path);
                    }
                    Err(e) => {
                        let _ = fs::remove_file(&zip_path);
                        return Err(e.context("Notarization failed"));
                    }
                }
            }
        } else {
            tracing::debug!("No signing identity found; skipping code signing");
        }

        Ok(vec![app_dir])
    }

View on GitHub (pinned to 24f6a829df)

Solutions

  1. ditto could not create the notarization zip. Verify the .app path exists and the destination is writable.
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at packages/cli/src/bundler/macos.rs:221 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23). Data as JSON: /api/errors/ec66c458002a9bc0. Report an issue: GitHub.