Comfy-Org/ComfyUI · error · ValueError
No pre-releases found
Error message
No pre-releases found
What it means
FrontendManager.latest_prerelease filters all GitHub releases of the ComfyUI frontend repo for ones flagged prerelease and takes the newest. If the repo currently has zero pre-release entries (maintainers may delete or convert them), the cached property raises ValueError('No pre-releases found'). This is hit only when you explicitly request the 'prerelease' frontend version.
Source
Thrown at app/frontend_management.py:158
api_url = response.links["next"]["url"]
else:
api_url = None
return releases
@cached_property
def latest_release(self) -> Release:
latest_release_url = f"{self.release_url}/latest"
response = requests.get(latest_release_url, timeout=REQUEST_TIMEOUT)
response.raise_for_status() # Raises an HTTPError if the response was an error
return response.json()
@cached_property
def latest_prerelease(self) -> Release:
"""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."""View on GitHub (pinned to 1c6d8d45b3)
Solutions
- Use --front-end-version latest instead, which pulls the newest stable release.
- Pick a concrete version tag, e.g. --front-end-version 1.24.2, to avoid depending on prerelease availability.
- If behind a proxy or rate-limited, check GitHub API access (GITHUB_TOKEN / rate limits) so all_releases is complete.
- Retry later once upstream publishes a new prerelease.
Example fix
# before python main.py --front-end-version prerelease # after python main.py --front-end-version latest
Defensive patterns
Strategy: validation
Validate before calling
from app.frontend_management import FrontendManager
fm = FrontendManager()
has_prerelease = any(r["prerelease"] for r in fm.all_releases)
if not has_prerelease:
version = "latest" # fall back instead of requesting prerelease Type guard
def has_prerelease(releases: list[dict]) -> bool:
return any(bool(r.get("prerelease")) for r in releases) Try / catch
try:
rel = fm.get_release("prerelease")
except ValueError:
rel = fm.get_release("latest") Prevention
- Pin explicit frontend versions instead of 'prerelease' in scripts.
- Handle GitHub API errors/rate limits before assuming releases are complete.
When it happens
Trigger: Launching with --front-end-version prerelease (or selecting prerelease via the frontend update mechanism) when the GitHub repo comfyui-frontend-release has no releases marked as prerelease; also triggered when a previous request cached an empty all_releases list.
Common situations: Testing a nightly frontend build; GitHub API rate-limiting or a proxy returning an incomplete releases list; upstream removing prerelease tags after a stable release.
Related errors
- dist.zip not found in the release assets
- Version {version} not found in releases
- MISSING_FILE
- EMPTY_UPLOAD
- hash of {path} (url: {url}) failed to validate
AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14).
Data as JSON: /api/errors/9742fb88aabcf30f.
Report an issue: GitHub.