denoland/deno · error
Invalid version req '{req_str}': {e}
Error message
Invalid version req '{req_str}': {e} What it means
Error "Invalid version req '{req_str}': {e}" thrown in denoland/deno.
Source
Thrown at cli/tools/installer/npm_compat.rs:1468
match req_version {
None => metadata
.get("dist-tags")
.and_then(|dt| dt.get("latest"))
.and_then(|v| v.as_str())
.map(|s| s.to_string())
.ok_or_else(|| anyhow!("No latest version for {registry_name}")),
Some(req_str) => {
if let Ok(exact) = Version::parse_standard(req_str)
&& metadata
.get("versions")
.and_then(|vs| vs.get(exact.to_string()))
.is_some()
{
return Ok(exact.to_string());
}
let version_req = VersionReq::parse_from_npm(req_str)
.map_err(|e| anyhow!("Invalid version req '{req_str}': {e}"))?;
let versions = metadata
.get("versions")
.and_then(|vs| vs.as_object())
.ok_or_else(|| anyhow!("No versions for {registry_name}"))?;
let mut best: Option<Version> = None;
for key in versions.keys() {
if let Ok(v) = Version::parse_standard(key)
&& version_req.matches(&v)
&& best.as_ref().is_none_or(|b| v > *b)
{
best = Some(v);
}
}
best.map(|v| v.to_string()).ok_or_else(|| {
anyhow!("No version matching '{req_str}' for {registry_name}")View on GitHub (pinned to 89f33cbef2)
When it happens
Trigger: Thrown at cli/tools/installer/npm_compat.rs:1468 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of denoland/deno@89f33cbef2 (2026-08-16).
Data as JSON: /api/errors/1b948c471d3d4c05.
Report an issue: GitHub.