Skip to content

Commit 8e83cb4

Browse files
committed
Update feature sets
1 parent 94e66ea commit 8e83cb4

File tree

2 files changed

+37
-42
lines changed

2 files changed

+37
-42
lines changed

.github/workflows/main.yml

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@ concurrency:
1616
group: ${{ github.workflow }}-${{ github.ref }}
1717
cancel-in-progress: true
1818

19-
env:
20-
PIP_ROOT_USER_ACTION: ignore
21-
2219
jobs:
2320
test:
2421
name: ${{ matrix.python-version }}-build
@@ -28,29 +25,20 @@ jobs:
2825
shell: bash -l {0}
2926
strategy:
3027
matrix:
31-
python-version: ["3.11", "3.12"]
28+
environment: [test-py311, test-py312]
3229
steps:
3330
- uses: actions/checkout@v4
34-
35-
- uses: prefix-dev/[email protected]
31+
- uses: prefix-dev/[email protected]
3632
with:
37-
pixi-version: v0.39.2
33+
pixi-version: v0.41.4
3834
environments: ${{ matrix.environment }}
39-
# we can freeze the environment and manually bump the dependencies to the
40-
# latest version time to time.
41-
frozen: true
42-
43-
- name: Install virtualizarr
44-
run: |
45-
python -m pip install -e . --no-deps
46-
4735
- name: List installed libraries
4836
run: |
49-
pixi list
37+
pixi run -e ${{ matrix.environment }} pip list
5038
5139
- name: Running Tests
5240
run: |
53-
pixi run test-xml-cov
41+
pixi run -e ${{ matrix.environment }} test-xml-cov
5442
5543
- name: Upload code coverage to Codecov
5644
uses: codecov/[email protected]

pyproject.toml

Lines changed: 32 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -83,20 +83,14 @@ all = [
8383
"virtualizarr[all_readers]",
8484
"virtualizarr[all_writers]",
8585
]
86-
87-
test = [
88-
"codecov",
89-
"mypy",
90-
"pandas-stubs",
91-
"pooch",
92-
"pre-commit",
93-
"pytest-asyncio",
94-
"pytest-cov",
95-
"pytest-mypy",
96-
"pytest",
97-
"ruff",
98-
"s3fs",
99-
"virtualizarr[all]"
86+
docs = [
87+
"sphinx",
88+
"myst_nb",
89+
"pydata_sphinx_theme",
90+
"sphinx_copybutton",
91+
"sphinx_design",
92+
"sphinx_togglebutton",
93+
"sphinx-autodoc-typehints",
10094
]
10195

10296
[project.urls]
@@ -115,23 +109,30 @@ requires = [
115109
channels = ["conda-forge"]
116110
platforms = ["win-64", "linux-64", "osx-64", "osx-arm64"]
117111

118-
[tool.pixi.environments]
119-
default = { solve-group = "default" }
120-
test = { features = ["test", "remote", "hdf", "hdf5", "netcdf3", "fits", "all", "kerchunk", "icechunk"], solve-group = "default" }
121-
docs = { features = ["docs"], solve-group = "default" }
112+
[tool.pixi.pypi-dependencies]
113+
virtualizarr = { path = ".", editable = true }
122114

123-
[tool.pixi.feature.hdf5.dependencies]
124-
netcdf4 = ">=1.7.2,<2"
125-
hdf5 = ">=1.14.4,<2"
126-
h5netcdf = ">=1.5.0,<2"
115+
[tool.pixi.feature.py311.dependencies]
116+
python = "3.11.*"
117+
118+
[tool.pixi.feature.py312.dependencies]
119+
python = "3.12.*"
127120

128-
[tool.pixi.feature.hdf.dependencies]
121+
[tool.pixi.feature.hdf5-lib.dependencies]
129122
netcdf4 = ">=1.7.2,<2"
130123
hdf5 = ">=1.14.4,<2"
131124
h5netcdf = ">=1.5.0,<2"
132125

133-
[tool.pixi.pypi-dependencies]
134-
virtualizarr = { path = ".", editable = true }
126+
[tool.pixi.feature.test.dependencies]
127+
codecov = ">=2.1.13,<3"
128+
mypy = ">=1.15.0,<2"
129+
pandas-stubs = ">=2.2.3.241126,<3"
130+
pooch = ">=1.8.2,<2"
131+
pre-commit = ">=4.1.0,<5"
132+
pytest-asyncio = ">=0.25.3,<0.26"
133+
pytest-cov = ">=6.0.0,<7"
134+
pytest-mypy = ">=0.10.3,<0.11"
135+
ruff = ">=0.9.9,<0.10"
135136

136137
[tool.pixi.feature.test.tasks]
137138
test = { cmd = "pytest --run-network-tests" }
@@ -140,6 +141,12 @@ test-cov = { cmd = "pytest --run-network-tests --verbose --cov=virtualizarr --co
140141
test-xml-cov = { cmd = "pytest --run-network-tests --verbose --cov=virtualizarr --cov-report=xml" }
141142
test-html-cov = { cmd = "pytest --run-network-tests --verbose --cov=virtualizarr --cov-report=html" }
142143

144+
[tool.pixi.environments]
145+
test = ["remote", "hdf", "hdf5", "netcdf3", "fits", "icechunk", "kerchunk", "test", "hdf5-lib"]
146+
test-py311 = ["remote", "hdf", "hdf5", "netcdf3", "fits", "icechunk", "kerchunk", "test", "hdf5-lib", "py311"] # test against python 3.11
147+
test-py312 = ["remote", "hdf", "hdf5", "netcdf3", "fits", "icechunk", "kerchunk", "test", "hdf5-lib", "py312"] # test against python 3.12
148+
doc = ["docs"]
149+
143150
[tool.pixi.feature.docs.tasks]
144151
docs = { cmd = "make html", cwd = "docs" }
145152
readthedocs = "rm -rf $READTHEDOCS_OUTPUT/html && cp -r docs/_build/html $READTHEDOCS_OUTPUT/html"

0 commit comments

Comments
 (0)