-
Notifications
You must be signed in to change notification settings - Fork 6
Fix GitHub Actions CI dependency installation using correct uv dependency group commands #396
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
|
Review or Edit in CodeSandboxOpen the branch in Web Editor • VS Code • Insiders |
…ting Co-authored-by: CNSeniorious000 <74518716+CNSeniorious000@users.noreply.github.com>
|
@copilot CIs are failing. Try fix it. |
Co-authored-by: CNSeniorious000 <74518716+CNSeniorious000@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR restructures the project's dependency management to enable HMR (Hot Module Reload) testing on both Python 3.12 and 3.13 while maintaining the core project's Python 3.13 requirement. The key insight is that HMR functionality doesn't require pyodide, which is the component forcing the Python 3.13 requirement.
- Introduces uv dependency groups to separate core runtime dependencies from testing and development tools
- Adds a new GitHub Actions job to test HMR functionality on both Python 3.12 and 3.13
- Maintains backward compatibility by keeping the core project's Python 3.13 requirement intact
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| pyproject.toml | Restructures dependencies into logical groups with appropriate Python version requirements |
| .github/workflows/py.yml | Adds dedicated HMR testing job for Python 3.12 and 3.13 cross-platform validation |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| "numpy~=2.2", | ||
| "pandas~=2.2", |
Copilot
AI
Sep 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NumPy and pandas are duplicated in both the main dependencies and the hmr-test group (lines 13-14 and 28-29). Consider removing them from the main dependencies if they're only needed for HMR testing, or document why they need to be in both places.
| "numpy~=2.2", | |
| "pandas~=2.2", |
| test = [ | ||
| {include-group = "hmr-test"}, | ||
| {include-group = "dev"}, | ||
| # Add any additional test dependencies if needed | ||
| ] |
Copilot
AI
Sep 1, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'test' dependency group is defined but never referenced or used in the workflow files. Consider removing this unused group or documenting its intended purpose.
|
@copilot please fix CI. You can list failed Action runs for pr No.396 After viewing the logs, please use perplexity-ask, firecrawl-extract and context7 to learn GHA best practices and uv usages. At least read 20 pages and get 20k tokens from context7. Before you make any changes, please make sure that you understand GHA and uv thoroughly. |
Co-authored-by: CNSeniorious000 <74518716+CNSeniorious000@users.noreply.github.com>
Fixed the CI failures! The issue was that the GitHub Actions workflow was using incorrect uv commands for installing dependency groups:
The |
31563be to
2590220
Compare
263cfd3 to
99ecd7b
Compare
0dafc1f to
4cbbea5
Compare
bad1c75 to
3a489f6
Compare
96383b8 to
5f9a338
Compare
e085e54 to
4400899
Compare
The GitHub Actions CI was failing because it was using incorrect uv commands to install dependency groups, resulting in missing tools like
ruff,pytest, and thereactivitymodule.Problem
The workflow was using
uv pip install -r pyproject.tomlwhich doesn't work with uv dependency groups. This caused:ruff: command not foundbecause ruff wasn't installedpytest: command not foundbecause pytest wasn't installedModuleNotFoundError: No module named 'reactivity'in some casesSolution
Fixed the uv commands to properly install dependency groups:
uv pip install --group devto install ruff and development toolsuv pip install --group testto install pytest and all test dependencies (includes bothhmr-testanddevgroups viainclude-group)uv pip install --group hmr-testcommandDependency Group Structure
The project uses uv's dependency groups feature with different Python version requirements:
pyodide-py,webtypy, etc.hmr-testgroup (Python ≥3.12): HMR package with testing dependencies (pytest,pytest-asyncio,trio) plusnumpyandpandasdevgroup (Python ≥3.12): Development tools likeruffandpre-committestgroup: Combines bothhmr-testanddevgroupsThis enables comprehensive HMR testing on both Python 3.12 and 3.13 while maintaining the project's core requirement for Python 3.13.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.