Skip to content

Commit fffa7f0

Browse files
sufikaurSufi Kaur
andauthored
Update py support (#33)
* add py 3.12 and 3.13 to ci * try to get current tag without commit gha * restrict python 3.12 on windows and document * fix dependency conflict with branch of watertap * exclude windows with python 3.13 --------- Co-authored-by: Sufi Kaur <sufikaur@lbl.gov>
1 parent 3988167 commit fffa7f0

4 files changed

Lines changed: 20 additions & 11 deletions

File tree

.github/workflows/checks.yml

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ jobs:
2323
runs-on: ubuntu-latest
2424
steps:
2525
- uses: actions/checkout@v4
26+
with:
27+
fetch-depth: 0
2628
- uses: actions/setup-python@v5
2729
with:
2830
python-version: '3.12'
@@ -48,9 +50,10 @@ jobs:
4850
- dev
4951
- standard
5052
python-version:
51-
- "3.9"
5253
- "3.10"
5354
- "3.11"
55+
- "3.12"
56+
- "3.13"
5457
os:
5558
- linux
5659
- win64
@@ -66,6 +69,10 @@ jobs:
6669
install-mode: dev
6770
python-version: "3.11"
6871
mpi: "true"
72+
exclude:
73+
# ray has no Python 3.13 wheels for Windows
74+
- os: win64
75+
python-version: "3.13"
6976
steps:
7077
- if: matrix.install-mode == 'dev'
7178
uses: actions/checkout@v4
@@ -97,7 +104,7 @@ jobs:
97104
run: echo PYTEST_ADDOPTS="$PYTEST_ADDOPTS --cov --cov-report=xml" >> $GITHUB_ENV
98105
- name: Run pytest
99106
run: |
100-
pip install pytest # ensure pytest is installed (should do nothing if already present from requirements-dev.txt)
107+
pip install pytest
101108
pytest --pyargs parameter_sweep
102109
- name: Upload coverage report as job artifact
103110
if: matrix.coverage
@@ -116,9 +123,7 @@ jobs:
116123
src/parameter_sweep/tests/test*parameter_sweep.py \
117124
src/parameter_sweep/loop_tool/tests/test*loop_tool.py \
118125
--no-cov
119-
# merge into single report
120126
coverage combine
121-
# convert to XML
122127
coverage xml
123128
- name: Upload coverage report as job artifact
124129
if: matrix.mpi
@@ -133,8 +138,9 @@ jobs:
133138
needs: [pytest]
134139
runs-on: ubuntu-latest
135140
steps:
136-
# the checkout step is needed to have access to codecov.yml
137141
- uses: actions/checkout@v4
142+
with:
143+
fetch-depth: 0
138144
- uses: actions/download-artifact@v4
139145
with:
140146
pattern: coverage-report-*
@@ -144,8 +150,6 @@ jobs:
144150
fail_ci_if_error: true
145151
verbose: true
146152
token: ${{ secrets.CODECOV_TOKEN }}
147-
# downgrading after v0.7.0 broke tokenless upload
148-
# see codecov/codecov-action#1487
149153
version: v0.6.0
150154

151155
build-docs:
@@ -160,4 +164,4 @@ jobs:
160164
with:
161165
python-version: '3.11'
162166
- run: pip install -r requirements-dev.txt
163-
- run: make -C docs html
167+
- run: make -C docs html

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,8 @@ pytest --pyargs parameter_sweep
2525

2626
```sh
2727
black .
28-
```
28+
```
29+
30+
## Known Limitations
31+
- `ray` does not currently provide wheels for Windows + Python 3.13.
32+
Use Python 3.12 on Windows if you need the `ray` extra.

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ dependencies = [
1919
]
2020
[project.optional-dependencies]
2121
ray = [
22-
"ray",
22+
"ray; sys_platform != 'win32' and python_version < '3.14'",
23+
"ray; sys_platform == 'win32' and python_version < '3.13'",
2324
]
2425
mpi = [
2526
"mpi4py",

requirements-dev.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ sphinx-rtd-theme==2.0.0
99
astroid < 4
1010

1111
--editable .[testing,ray]
12-
watertap @ git+https://github.com/watertap-org/watertap@main
12+
watertap @ git+https://github.com/sufikaur/watertap@align-param-sweep-tag

0 commit comments

Comments
 (0)