denoland/deno · error
Failed to parse metadata for {registry_name}: {e}
Error message
Failed to parse metadata for {registry_name}: {e} What it means
Error "Failed to parse metadata for {registry_name}: {e}" thrown in denoland/deno.
Source
Thrown at cli/tools/installer/npm_compat.rs:951
Err(e) => {
log::debug!("Invalid jsr registry URL {metadata_url}: {e}");
continue;
}
};
log::debug!("Installing {} from {}", registry_name, npm_jsr_registry);
let metadata_bytes = match http_client.download(metadata_url).await {
Ok(b) => b,
Err(e) => {
log::debug!("Failed to fetch metadata for {registry_name}: {e}");
continue;
}
};
let metadata: Value =
serde_json::from_slice(&metadata_bytes).map_err(|e| {
anyhow!("Failed to parse metadata for {registry_name}: {e}")
})?;
let resolved_version =
resolve_jsr_version(&metadata, req_version.as_deref(), ®istry_name)?;
let tarball_url = metadata
.get("versions")
.and_then(|vs| vs.get(&resolved_version))
.and_then(|v| v.get("dist"))
.and_then(|d| d.get("tarball"))
.and_then(|t| t.as_str())
.ok_or_else(|| {
anyhow!("No tarball URL for {registry_name}@{resolved_version}")
})?;
let tarball_url = match Url::parse(tarball_url) {
Ok(u) => u,
Err(e) => {
log::debug!(View on GitHub (pinned to 89f33cbef2)
When it happens
Trigger: Thrown at cli/tools/installer/npm_compat.rs:951 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Parsing and encoding errors: unexpected token, malformed input — why parsers reject input and how to find the real culprit.
AI-assisted analysis of denoland/deno@89f33cbef2 (2026-08-16).
Data as JSON: /api/errors/06b7ed54c7e688d7.
Report an issue: GitHub.