-
Notifications
You must be signed in to change notification settings - Fork 1
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
Test with Python 3.13 #61
base: main
Are you sure you want to change the base?
Conversation
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThe pull request updates the GitHub Actions workflow for unit testing by upgrading Python versions across macOS, Ubuntu, and Windows jobs from version 3.12 to 3.13. The workflow configuration also includes updates to Conda, bumping its version from 24.7.1 to 24.11.2, and upgrading the executorlib package from version 0.0.5 to 0.0.7. These changes aim to ensure compatibility and potentially leverage new features in the latest Python release. Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
.github/workflows/unittests.yml
(2 hunks)
🔇 Additional comments (1)
.github/workflows/unittests.yml (1)
Line range hint
1-60
: Overall workflow structure is good, but needs critical fixes.The workflow has good practices:
- Multi-OS testing
- Wide Python version coverage
- Appropriate timeouts and channels
However, please address the critical issues mentioned above regarding Python version mismatches and environment setup before merging.
.github/workflows/unittests.yml
Outdated
@@ -48,7 +51,7 @@ jobs: | |||
run: | | |||
pip install versioneer[toml]==0.29 | |||
pip install . --no-deps --no-build-isolation | |||
conda create -y -n py312 python=3.12.1 conda=24.7.1 executorlib=0.0.5 | |||
conda create -y -n py312 python=3.12.1 conda=24.11.2 executorlib=0.0.7 |
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.
Critical: Fix Python version mismatch in Conda environment.
There are several issues with the Conda environment setup:
- The environment uses Python 3.12.1 while testing Python 3.13, which could lead to inconsistent results
- The environment creation happens after the main package installation
- The environment setup is duplicating the installation steps
Consider this alternative approach:
- conda create -y -n py312 python=3.12.1 conda=24.11.2 executorlib=0.0.7
+ conda create -y -n pyenv python=${{ matrix.python-version }} conda=24.11.2 executorlib=0.0.7
- conda activate py312
+ conda activate pyenv
pip install versioneer[toml]==0.29
pip install . --no-deps --no-build-isolation
conda deactivate
Committable suggestion skipped: line range outside the PR's diff.
python-version: '3.13' | ||
|
||
- operating-system: ubuntu-latest | ||
python-version: '3.12' | ||
python-version: '3.13' | ||
|
||
- operating-system: windows-latest | ||
python-version: '3.13' | ||
|
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.
💡 Codebase verification
Update Python version support metadata before adding 3.13 tests
The package metadata in pyproject.toml
needs to be updated before adding Python 3.13 tests:
- Add
"Programming Language :: Python :: 3.13"
to the classifiers - Verify that
conda==24.11.2
andexecutorlib==0.0.7
support Python 3.13 - Consider marking Python 3.13 jobs as experimental using
continue-on-error: true
🔗 Analysis chain
Verify Python 3.13 compatibility and update documentation.
Adding Python 3.13 testing is forward-thinking, but since Python 3.13 is still in development:
- Ensure all dependencies support Python 3.13
- Document any known compatibility issues or limitations
- Consider marking these jobs as experimental/allowed to fail
Let's check the package compatibility:
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check if Python package dependencies specify Python 3.13 support
for file in setup.py setup.cfg pyproject.toml; do
if [ -f "$file" ]; then
echo "=== $file ==="
cat "$file"
fi
done
Length of output: 1818
Update test environment (#62)
|
Waiting for conda-forge/conda-feedstock#249 |
Summary by CodeRabbit