Conversation
📝 WalkthroughWalkthroughUpdated pinned Python dependencies across platform compiled requirements, added Changes
Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 67d97599b8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Pull request overview
Updates the bundled ComfyUI stack versions (core/frontend/templates/docs) to match the referenced upstream releases.
Changes:
- Bump configured ComfyUI core version to
0.11.0and frontend version to1.37.11. - Update the core requirements patch to apply cleanly against the new upstream
requirements.txt. - Update compiled Python lockfiles to use
comfyui-workflow-templates==0.8.24on Windows/macOS targets.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/core-requirements.patch | Updates patch context to match upstream dependency versions. |
| package.json | Bumps configured ComfyUI core and frontend versions. |
| assets/requirements/windows_nvidia.compiled | Updates templates pin for Windows NVIDIA environment. |
| assets/requirements/windows_cpu.compiled | Updates templates pin for Windows CPU environment. |
| assets/requirements/macos.compiled | Updates templates pin for macOS environment. |
Comments suppressed due to low confidence (1)
assets/requirements/windows_nvidia.compiled:61
- The
comfyui-workflow-templatessub-dependencies differ between lockfiles (e.g., this file hascomfyui-workflow-templates-core==0.3.61and...-media-api==0.3.34, while the Windows CPU and macOS lockfiles have...-core==0.3.58/...-media-api==0.3.31). Since these are pure Python packages, this looks like an out-of-sync compile rather than an OS-specific resolution. Re-generate the lockfiles together to keep template package families consistent across targets (unless there’s a known constraint forcing different resolutions).
comfyui-workflow-templates==0.8.24
# via -r assets/ComfyUI/requirements.txt
# from https://pypi.org/simple
comfyui-workflow-templates-core==0.3.61
# via comfyui-workflow-templates
# from https://pypi.org/simple
comfyui-workflow-templates-media-api==0.3.34
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
scripts/core-requirements.patch
Outdated
| -comfyui-frontend-package==1.37.11 | ||
| comfyui-workflow-templates==0.8.24 |
There was a problem hiding this comment.
The patch is tightly coupled to exact upstream versions (e.g., comfyui-frontend-package==... and the surrounding context lines). This means the patch will fail to apply every time ComfyUI bumps versions, even if the intent (removing the frontend package line) hasn’t changed. Consider making the patching step version-agnostic (e.g., remove any comfyui-frontend-package line by name in the patching script, or adjust the patch to use more stable context) to reduce maintenance churn.
There was a problem hiding this comment.
Yeah, I was thinking about updating this system later. It's very brittle and inefficient, but, other things are high priority as well, and I'm stretched thin. Maybe someone else can take this?
| # via -r assets/ComfyUI/manager_requirements.txt | ||
| # from https://pypi.org/simple | ||
| comfyui-workflow-templates==0.8.14 | ||
| comfyui-workflow-templates==0.8.24 |
There was a problem hiding this comment.
The .compiled header command in this file (line 2) appears out of sync with the repo’s update_compiled_requirements.yml workflow (it uses assets/ComfyUI/manager_requirements.txt here vs assets/ComfyUI/custom_nodes/ComfyUI-Manager/requirements.txt in the workflow, and cu130 here vs cu129 in the workflow). The workflow has a validation step that will emit warnings when these don’t match. Consider regenerating this file using the workflow’s command (or updating the workflow/env vars to match the command that actually produced the file) so the header stays consistent and validation stays green.
There was a problem hiding this comment.
The workflow will only warn for now, it seems like the two have drifted for a while now which is interesting, I will have to update the workflow in another PR.
| # via -r assets/ComfyUI/manager_requirements.txt | ||
| # from https://pypi.org/simple | ||
| comfyui-workflow-templates==0.8.14 | ||
| comfyui-workflow-templates==0.8.24 |
There was a problem hiding this comment.
The .compiled header command in this file (line 2) uses assets/ComfyUI/manager_requirements.txt, but the update_compiled_requirements.yml workflow compiles against assets/ComfyUI/custom_nodes/ComfyUI-Manager/requirements.txt and validates that the commands match. With the current mismatch, the workflow will warn on validation. Regenerate the file using the workflow’s command (or update the workflow to match the command recorded in the header) to keep the automation consistent.
There was a problem hiding this comment.
The workflow will only warn for now, it seems like the two have drifted for a while now which is interesting, I will have to update the workflow in another PR.
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In `@assets/requirements/macos.compiled`:
- Line 4: The macOS requirements file assets/requirements/macos.compiled
incorrectly includes the CUDA wheel index (--extra-index-url
https://download.pytorch.org/whl/cu130); remove that entry from macOS builds by
stopping application of assets/override.txt to macOS compilation or by creating
a platform-specific override (e.g., a macos-specific override file) that omits
the cu130 index; ensure only NVIDIA-targeted compiled files (like
windows_nvidia.compiled) receive the assets/override.txt content so macOS
(aarch64-apple-darwin) uses MPS/Metal-compatible PyTorch wheels instead.
In `@assets/requirements/windows_amd.compiled`:
- Around line 54-72: Update the pinned package versions in
assets/requirements/windows_amd.compiled: replace
comfyui-workflow-templates-core==0.3.115 with the existing PyPI version
comfyui-workflow-templates-core==0.3.114 and replace
comfyui-workflow-templates-media-image==0.3.75 with
comfyui-workflow-templates-media-image==0.3.55 so installation doesn’t fail;
also verify that using the pre-release comfyui-manager==4.1b1 is intentional for
production and if not, pin it to a stable release instead.
| # uv pip compile assets/ComfyUI/requirements.txt assets/ComfyUI/manager_requirements.txt --emit-index-annotation --emit-index-url --index-strategy unsafe-best-match --python-platform aarch64-apple-darwin --python-version 3.12 --override assets/override.txt --index-url https://pypi.org/simple -o assets/requirements/macos.compiled | ||
| --index-url https://pypi.org/simple | ||
| --extra-index-url https://download.pytorch.org/whl/cu129 | ||
| --extra-index-url https://download.pytorch.org/whl/cu130 |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# List all compiled requirements files and their platform targets
echo "=== All compiled requirements files ==="
fd -e compiled . assets/requirements -type f | sortRepository: Comfy-Org/desktop
Length of output: 288
🏁 Script executed:
#!/bin/bash
# Check the macos.compiled file structure
echo "=== Content of assets/requirements/macos.compiled (first 10 lines) ==="
head -10 assets/requirements/macos.compiledRepository: Comfy-Org/desktop
Length of output: 761
🏁 Script executed:
#!/bin/bash
# Check all platform compiled files for PyTorch wheel index references
echo "=== PyTorch wheel index references across all platform files ==="
for file in $(fd -e compiled . assets/requirements -type f | sort); do
echo ""
echo "--- $file ---"
grep -E "(extra-index-url|index-url).*pytorch" "$file" || echo "(no PyTorch index found)"
doneRepository: Comfy-Org/desktop
Length of output: 313
🏁 Script executed:
#!/bin/bash
# Also check if any comments or documentation explain the cu130 choice
echo "=== Checking for comments near the cu130 reference ==="
if [ -f "assets/requirements/macos.compiled" ]; then
head -20 assets/requirements/macos.compiled | tail -15
fiRepository: Comfy-Org/desktop
Length of output: 532
🏁 Script executed:
#!/bin/bash
# List all compiled requirements files
echo "=== All compiled requirements files ==="
find assets/requirements -name "*.compiled" | sortRepository: Comfy-Org/desktop
Length of output: 261
🏁 Script executed:
#!/bin/bash
# Check all compiled files for PyTorch index references
echo "=== PyTorch wheel index references in all compiled files ==="
find assets/requirements -name "*.compiled" | while read f; do
echo ""
echo "--- $f ---"
grep -E "pytorch.org/whl" "$f" || echo "(no PyTorch index)"
doneRepository: Comfy-Org/desktop
Length of output: 1922
🏁 Script executed:
#!/bin/bash
# Check if cu130 appears in source requirement files
echo "=== Searching for cu130 in source files ==="
find assets -type f -name "*.txt" \( -name "requirements.txt" -o -name "override.txt" \) -exec grep -l "cu130" {} \;Repository: Comfy-Org/desktop
Length of output: 124
🏁 Script executed:
#!/bin/bash
# Also check uv.lock or pyproject.toml for index configuration
echo "=== Checking for index configuration in uv.lock or pyproject.toml ==="
find . -maxdepth 2 -type f \( -name "uv.lock" -o -name "pyproject.toml" \) -exec grep -l "cu130\|pytorch" {} \;Repository: Comfy-Org/desktop
Length of output: 130
🏁 Script executed:
#!/bin/bash
# Read the override.txt file to understand cu130 configuration
echo "=== Content of assets/override.txt ==="
cat assets/override.txtRepository: Comfy-Org/desktop
Length of output: 249
🏁 Script executed:
#!/bin/bash
# Check the header/command of macos.compiled to see how it was compiled
echo "=== First 3 lines of macos.compiled ==="
head -3 assets/requirements/macos.compiledRepository: Comfy-Org/desktop
Length of output: 533
🏁 Script executed:
#!/bin/bash
# Check if override.txt is platform-specific or applies to all
echo "=== Checking for other override files ==="
find assets -name "override*.txt"Repository: Comfy-Org/desktop
Length of output: 146
Remove CUDA wheel index from macOS requirements file.
The --extra-index-url https://download.pytorch.org/whl/cu130 at line 4 is inappropriate for this file, which targets macOS (aarch64-apple-darwin). macOS does not support CUDA—Apple Silicon uses Metal/MPS for GPU acceleration instead.
The cu130 index is being included because assets/override.txt (which explicitly states "ensure usage of GPU_OPTION.NVIDIA version of pytorch") is being applied to all platform compilations, including macOS. This override should only apply to NVIDIA-compatible platforms (like windows_nvidia.compiled).
Either remove assets/override.txt from the macOS compilation command, or create a platform-specific override for macOS without the cu130 index.
🤖 Prompt for AI Agents
In `@assets/requirements/macos.compiled` at line 4, The macOS requirements file
assets/requirements/macos.compiled incorrectly includes the CUDA wheel index
(--extra-index-url https://download.pytorch.org/whl/cu130); remove that entry
from macOS builds by stopping application of assets/override.txt to macOS
compilation or by creating a platform-specific override (e.g., a macos-specific
override file) that omits the cu130 index; ensure only NVIDIA-targeted compiled
files (like windows_nvidia.compiled) receive the assets/override.txt content so
macOS (aarch64-apple-darwin) uses MPS/Metal-compatible PyTorch wheels instead.
There was a problem hiding this comment.
If it ain't broken...
But yeah we can do this in another PR, it's just out of scope for this one IMO
There was a problem hiding this comment.
@benceruleanlu, totally understand—keeping this PR focused makes sense!
Would you like me to open a GitHub issue to track the macOS CUDA index cleanup for a future PR? I can create one with the context and link it back to this discussion.
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
assets/requirements/windows_cpu.compiled (1)
5-371:⚠️ Potential issue | 🟡 MinorSmoke-test Windows CPU build after major dependency bumps.
Versions confirmed: numpy 2.4.1, transformers 5.0.0, and torch 2.10.0 are significant major version upgrades. Run a Windows CPU startup + workflow test to catch potential ABI or API regressions before merge.
🤖 Fix all issues with AI agents
In `@package.json`:
- Around line 14-19: The core issue is an outdated patch and a naming mismatch:
regenerate or update scripts/core-requirements.patch so it preserves the
comfyui-frontend-package entry with the current version (don’t remove the
package; replace the hardcoded 1.37.11 with the value derived from the config
when the patch is produced), and modify scripts/updateFrontend.js to set
packageJson.config.frontend.version (not packageJson.config.frontendVersion) so
it matches how downloadFrontend.js reads const { frontend } =
packageJson.config; ensure any generation logic in makeComfy.js / vite.base.ts
that references frontend.version uses the same key.
| "version": "1.37.11", | ||
| "optionalBranch": "" | ||
| }, | ||
| "comfyUI": { | ||
| "version": "0.10.0", | ||
| "version": "0.11.1", | ||
| "optionalBranch": "" |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check that the new versions are referenced consistently across the repo
rg -n "1\.37\.11|0\.11\.1" --type-list | head -20
rg -n "1\.37\.11|0\.11\.1" -g '!**/node_modules/**' 2>/dev/null || trueRepository: Comfy-Org/desktop
Length of output: 623
🏁 Script executed:
#!/bin/bash
# Also search for common patterns in scripts (fetch, patch, download)
rg -n "(fetch|patch|download|version)" package.json -A 2 -B 2 | head -50Repository: Comfy-Org/desktop
Length of output: 1284
🏁 Script executed:
#!/bin/bash
# Look for any scripts that might reference these components
fd -type f \( -name "*script*" -o -name "*fetch*" -o -name "*patch*" \) | grep -v node_modules | head -20Repository: Comfy-Org/desktop
Length of output: 231
🏁 Script executed:
#!/bin/bash
# Check package.json structure around the version fields
cat package.json 2>/dev/null || echo "package.json not found"Repository: Comfy-Org/desktop
Length of output: 5074
🏁 Script executed:
#!/bin/bash
# Check how downloadFrontend.js uses versions
cat scripts/downloadFrontend.js 2>/dev/null || echo "File not found"Repository: Comfy-Org/desktop
Length of output: 4616
🏁 Script executed:
#!/bin/bash
# Check how patchComfyUI.js uses versions
cat scripts/patchComfyUI.js 2>/dev/null || echo "File not found"Repository: Comfy-Org/desktop
Length of output: 2225
🏁 Script executed:
#!/bin/bash
# Check core-requirements.patch to understand its role
cat scripts/core-requirements.patch 2>/dev/null || echo "File not found"Repository: Comfy-Org/desktop
Length of output: 279
🏁 Script executed:
#!/bin/bash
# Search for any reads of package.json config
rg -n "config\.(frontend|comfyUI)" --type js --type ts -A 2 -B 2Repository: Comfy-Org/desktop
Length of output: 1315
Update patch file and fix frontend config property naming inconsistency.
Most scripts correctly read versions from package.json config (downloadFrontend.js, makeComfy.js, vite.base.ts), but two issues need fixing:
-
scripts/core-requirements.patchremovescomfyui-frontend-package==1.37.11without replacing it with the current version from config. The patch file is outdated and needs to be regenerated to preserve the package with the updated version. -
scripts/updateFrontend.jsupdatespackageJson.config.frontendVersioninstead ofpackageJson.config.frontend.version, which creates an inconsistency with howdownloadFrontend.jsreads the value (line 8:const { frontend } = packageJson.config).
🤖 Prompt for AI Agents
In `@package.json` around lines 14 - 19, The core issue is an outdated patch and a
naming mismatch: regenerate or update scripts/core-requirements.patch so it
preserves the comfyui-frontend-package entry with the current version (don’t
remove the package; replace the hardcoded 1.37.11 with the value derived from
the config when the patch is produced), and modify scripts/updateFrontend.js to
set packageJson.config.frontend.version (not packageJson.config.frontendVersion)
so it matches how downloadFrontend.js reads const { frontend } =
packageJson.config; ensure any generation logic in makeComfy.js / vite.base.ts
that references frontend.version uses the same key.
Updated versions
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.
┆Issue is synchronized with this Notion page by Unito