Skip to content

make the ci better at not install reflex deps for reflex-web#6262

Merged
adhami3310 merged 2 commits intomainfrom
make-the-ci-better-at-not-install-reflex-deps
Mar 31, 2026
Merged

make the ci better at not install reflex deps for reflex-web#6262
adhami3310 merged 2 commits intomainfrom
make-the-ci-better-at-not-install-reflex-deps

Conversation

@adhami3310
Copy link
Copy Markdown
Member

No description provided.

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq bot commented Mar 31, 2026

Merging this PR will not alter performance

✅ 8 untouched benchmarks


Comparing make-the-ci-better-at-not-install-reflex-deps (5cd1fb5) with main (2178184)

Open in CodSpeed

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Mar 31, 2026

Greptile Summary

This PR improves the CI dependency installation steps for reflex-web by replacing fragile grep-based package filtering with a more robust approach: listing all currently installed packages via uv pip list, then using uv pip compile --exclude to exclude them from resolution — ensuring that already-installed packages (like reflex and its transitive deps) are not reinstalled.

The approach is sound, but all three changed steps contain a critical typo that will break CI:

  • The flag used is --excludes (plural), but uv pip compile only recognises --exclude (singular). This will cause uv to exit with an unrecognised argument error in every job that was updated: frontend in check_outdated_dependencies.yml, and reflex-web + reflex-web-macos in integration_tests.yml.
  • The fix is a one-character change on each of the three affected lines: --excludes--exclude.

Confidence Score: 4/5

Not safe to merge as-is — the --excludes typo will break all three updated CI jobs.

One P1 issue exists across all three changed locations: --excludes is not a valid uv pip compile flag (the correct flag is --exclude). This will cause the compile step to fail immediately upon execution, leaving CI broken for the frontend, reflex-web, and reflex-web-macos jobs. The fix is trivial (drop the trailing s), so once corrected the PR is straightforward and safe.

Both changed files need the same one-character fix on the uv pip compile line.

Important Files Changed

Filename Overview
.github/workflows/check_outdated_dependencies.yml Replaces grep-based reflex filtering with uv pip list + --exclude approach, but uses incorrect flag --excludes instead of --exclude, which will break the frontend job.
.github/workflows/integration_tests.yml Two jobs (reflex-web, reflex-web-macos) updated to use uv pip list + --excludes approach, but the misspelled --excludes flag will cause both jobs to fail.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[uv pip list --format=json] -->|jq extract names| B[installed.txt]
    B --> C["uv pip compile pyproject.toml\n--no-deps --exclude installed.txt\n--output-file requirements.txt"]
    C --> D[requirements.txt - only NEW packages]
    D --> E[uv pip install -r requirements.txt]
    B --> F[rm installed.txt]
    F -.-> E

    style C fill:#f96,color:#000
Loading

Reviews (1): Last reviewed commit: "use patterns" | Re-trigger Greptile

@adhami3310 adhami3310 merged commit 270b5a0 into main Mar 31, 2026
40 checks passed
@adhami3310 adhami3310 deleted the make-the-ci-better-at-not-install-reflex-deps branch March 31, 2026 19:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants