zed-industries/zed · error

Empty argv in kernelspec {}

Error message

Empty argv in kernelspec {}

What it means

Validation guard in LocalKernelSpecification::command(): the Jupyter kernelspec's argv array is empty, so there is no executable to launch and a kernel process Command cannot be built. Fires when a kernelspec.json lacks the required argv field; the kernelspec name is included for identification.

Source

Thrown at crates/repl/src/kernels/native_kernel.rs:47

    pub name: String,
    pub path: PathBuf,
    pub kernelspec: JupyterKernelspec,
}

impl PartialEq for LocalKernelSpecification {
    fn eq(&self, other: &Self) -> bool {
        self.name == other.name && self.path == other.path
    }
}

impl Eq for LocalKernelSpecification {}

impl LocalKernelSpecification {
    #[must_use]
    fn command(&self, connection_path: &PathBuf) -> Result<std::process::Command> {
        let argv = &self.kernelspec.argv;

        anyhow::ensure!(!argv.is_empty(), "Empty argv in kernelspec {}", self.name);
        anyhow::ensure!(argv.len() >= 2, "Invalid argv in kernelspec {}", self.name);
        anyhow::ensure!(
            argv.iter().any(|arg| arg == "{connection_file}"),
            "Missing 'connection_file' in argv in kernelspec {}",
            self.name
        );

        let mut cmd = util::command::new_std_command(&argv[0]);

        for arg in &argv[1..] {
            if arg == "{connection_file}" {
                cmd.arg(connection_path);
            } else {
                cmd.arg(arg);
            }
        }

        if let Some(env) = &self.kernelspec.env {

View on GitHub (pinned to f4178619ac)

Solutions

  1. Fix or reinstall the kernel so its kernelspec includes a valid argv
  2. Point Zed at a different kernelspec
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at crates/repl/src/kernels/native_kernel.rs:47 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20). Data as JSON: /api/errors/318acae3e9818fea. Report an issue: GitHub.