Comfy-Org/ComfyUI · error · ValueError

Version {version} not found in releases

Error message

Version {version} not found in releases

What it means

FrontendManager.get_release resolves a version string by scanning every GitHub release tag for an exact match of either '<version>' or 'v<version>'. If no tag matches, it raises ValueError. The string 'latest' and 'prerelease' are handled before this loop, so this error means a literal version that does not exist upstream.

Source

Thrown at app/frontend_management.py:172

        """Get the latest pre-release version - even if it's older than the latest release"""
        release = [release for release in self.all_releases if release["prerelease"]]

        if not release:
            raise ValueError("No pre-releases found")

        # GitHub returns releases in reverse chronological order, so first is latest
        return release[0]

    def get_release(self, version: str) -> Release:
        if version == "latest":
            return self.latest_release
        elif version == "prerelease":
            return self.latest_prerelease
        else:
            for release in self.all_releases:
                if release["tag_name"] in [version, f"v{version}"]:
                    return release
            raise ValueError(f"Version {version} not found in releases")


def download_release_asset_zip(release: Release, destination_path: str) -> None:
    """Download dist.zip from github release."""
    asset_url = None
    for asset in release.get("assets", []):
        if asset["name"] == "dist.zip":
            asset_url = asset["url"]
            break

    if not asset_url:
        raise ValueError("dist.zip not found in the release assets")

    # Use a temporary file to download the zip content
    with tempfile.TemporaryFile() as tmp_file:
        headers = {"Accept": "application/octet-stream"}
        response = requests.get(
            asset_url, headers=headers, allow_redirects=True, timeout=REQUEST_TIMEOUT

View on GitHub (pinned to 1c6d8d45b3)

Solutions

  1. List valid tags first: check the releases page of the comfyui-frontend-release repo (or call all_releases) and copy the exact tag.
  2. Drop the leading 'v' if you used one, or add it — both forms are accepted, but the digits must match exactly.
  3. Use --front-end-version latest if you just want the current release.

Example fix

# before
python main.py --front-end-version 1,24,2

# after
python main.py --front-end-version 1.24.2
Defensive patterns

Strategy: validation

Validate before calling

valid = {r["tag_name"].lstrip("v") for r in fm.all_releases}
if version.lstrip("v") not in valid:
    raise SystemExit(f"unknown frontend version {version}; valid: {sorted(valid)[-5:]}")
rel = fm.get_release(version)

Type guard

def is_known_version(fm, version: str) -> bool:
    return any(r["tag_name"] in (version, f"v{version}") for r in fm.all_releases)

Try / catch

try:
    release = fm.get_release(version)
except ValueError as e:
    # list closest available tags for the user
    print("available:", [r["tag_name"] for r in fm.all_releases][:10]); raise

Prevention

When it happens

Trigger: Calling --front-end-version (or get_release) with a typo'd or non-existent tag such as 1,24,2, 1.99.99, or v1.24.2 with unexpected casing/spacing; requesting a version that was deleted upstream; passing an empty string.

Common situations: Copy-pasting a version from an issue thread that was never released; using a full SHA or branch name instead of a release tag; locale-specific decimal separators producing '1,24'.

Related errors


AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14). Data as JSON: /api/errors/af5e20cf0a495e2e. Report an issue: GitHub.