Skip to content
Open
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions pixi.toml
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,6 @@ pooch = "*"
# calendar
cftime = "*"

# other
iris = "*"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed iris from feature.extras.dependencies because it depends on dask, and was polluting the test-py313-no-dask environment.

Error:   × failed to solve requirements of environment 'test-py313-no-dask' for platform 'win-64'
  ├─▶   × failed to solve the environment

  ╰─▶ Cannot solve the request because of: iris * cannot be installed because there are no viable options:
      ├─ iris 2.4.0 | 2.4.0 | 2.4.0 | 2.4.0 | 3.0.0 | 3.0.0 | 3.0.0 | 3.0.0 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.1 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.2 | 3.0.3 | 3.0.3 | 3.0.3 | 3.0.3 | 3.0.4 | 3.0.4 | 3.0.4 | 3.1.0 | 3.1.0 | 3.1.0 | 3.1.0 | 3.1.0 | 3.1.0 | 3.1.0 would require
      │  └─ dask >=2, which cannot be installed because there are no viable options:
      │     └─ dask 2.0.0 | 2.1.0 | 2.2.0 | 2.3.0 | 2.4.0 | 2.5.0 | 2.5.2 | 2.6.0 | 2.7.0 | 2.8.0 | 2.8.1 | 2.9.0 | 2.9.1 | 2.9.2 | 2.10.0 | 2.10.1 | 2.11.0 | 2.12.0 | 2.13.0 | 2.14.0 | 2.15.0 | 2.16.0 | 2.17.0 | 2.17.1 | 2.17.2 | 2.18.0 | 2.18.1 | 2.19.0 | 2.20.0 | 2.21.0 | 2.22.0 | 2.23.0 | 2.24.0 | 2.25.0 | 2.26.0 | 2.27.0 | 2.28.0 | 2.29.0 | 2.30.0 | 2020.12.0 | 2021.1.0 | 2021.1.1 | 2021.2.0 | 2021.3.0 | 2021.3.1 | 2021.4.0 | 2021.4.1 | 2021.5.0 | 2021.5.1 | 2021.6.0 | 2021.6.1 | 2021.6.2 | 2021.7.0 | 2021.7.1 | 2021.7.2 | 2021.8.0 | 2021.8.1 | 2021.9.0 | 2021.9.1 | 2021.10.0 | 2021.11.0 | 2021.11.1 | 2021.11.2 | 2021.12.0 | 2022.1.0 | 2022.1.1 | 2022.2.0 | 2022.2.1 | 2022.3.0 | 2022.3.0 | 2022.4.0 | 2022.4.1 | 2022.4.2 | 2022.5.0 | 2022.5.1 | 2022.5.2 | 2022.6.0 | 2022.6.1 | 2022.7.0 | 2022.7.1 | 2022.8.0 | 2022.8.0 | 2022.8.0 | 2022.8.1 | 2022.9.0 | 2022.9.1 | 2022.9.2 | 2022.10.0 | 2022.10.0 | 2022.10.0 | 2022.10.2 | 2022.11.0 | 2022.11.1 | 2022.12.0 | 2022.12.1 | 2023.1.0 | 2023.1.1 | 2023.2.0 | 2023.2.1 | 2023.3.0 | 2023.3.1 | 2023.3.2 | 2023.4.0 | 2023.4.1 | 2023.5.0 | 2023.5.1 | 2023.6.0 | 2023.6.1 | 2023.7.0 | 2023.7.1 | 2023.8.0 | 2023.8.1 | 2023.9.0 | 2023.9.1 | 2023.9.2 | 2023.9.3 | 2023.10.0 | 2023.10.1 | 2023.11.0 | 2023.12.0 | 2023.12.1 | 2024.1.0 | 2024.1.1 | 2024.2.0 | 2024.2.1 | 2024.3.0 | 2024.3.0 | 2024.3.1 | 2024.4.0 | 2024.4.1 | 2024.4.2 | 2024.5.0 | 2024.5.1 | 2024.5.2 | 2024.6.0 | 2024.6.2 | 2024.7.0 | 2024.7.1 | 2024.8.0 | 2024.8.1 | 2024.8.2 | 2024.9.0 | 2024.9.1 | 2024.10.0 | 2024.11.0 | 2024.11.1 | 2024.11.2 | 2024.11.2 | 2024.12.0 | 2024.12.1 | 2025.1.0 | 2025.2.0 | 2025.3.0 | 2025.3.1 | 2025.4.0 | 2025.4.1 | 2025.5.0 | 2025.5.1 | 2025.5.1 | 2025.7.0 | 2025.9.0 | 2025.9.1 | 2025.9.2 | 2025.10.0 | 2025.11.0 | 2025.12.0 | 2026.1.1 | 2026.1.2 | 2026.1.2 | 2026.3.0 | 2026.6.0 would require
      │        └─ dask-core 2.0.0.*, for which no candidates were found.

This might reduce test coverage on iris-dependent tests though, so someone should verify if this makes sense.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we keep this section but use a similar constraint on iris in [feature.nodask.constraints]

@weiji14 weiji14 Jun 18, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't work, if I do:

 [feature.nodask.constraints]
 dask-core = "<0.0a0"
+iris = "<0.0a0"

pixi complains like this:

Error:   × failed to solve requirements of environment 'test-py314-no-dask' for platform 'osx-arm64'
  ├─▶   × failed to solve the environment
  │
  ╰─▶ Cannot solve the request because of: The following packages are incompatible
      └─ iris * can be installed with any of the following options:
         └─ iris 3.1.0 | 3.1.0 | 3.2.0 | 3.2.0.post0 | 3.2.1 | 3.2.1.post0 | 3.3.0 | 3.3.1 |
      3.4.0 | 3.4.1 | 3.5.0 | 3.6.0 | 3.6.0 | 3.6.1 | 3.7.0 | 3.7.1 | 3.8.0 | 3.8.1 | 3.9.0 |
      3.10.0 | 3.10.0 | 3.10.0 | 3.11.0 | 3.11.1 | 3.11.1 | 3.12.0 | 3.12.1 | 3.12.2 | 3.12.3
      | 3.13.0 | 3.13.1 | 3.14.0 | 3.14.0 | 3.14.0 | 3.14.1 | 3.15.0
      ├─ the constraint iris <0.0a0 cannot be fulfilled
      ├─ the constraint iris <0.0a0 cannot be fulfilled
      ├─ ...

I think I'll follow the no-numba example, and just add iris to all the environments manually the dask feature environment.


[feature.extras.pypi-dependencies]
# array
jax = "*" # no way to get cpu-only jaxlib from conda if gpu is present
Expand Down Expand Up @@ -376,6 +373,9 @@ numpydoc = "*"
[feature.numpydoc-lint.tasks]
numpydoc-lint = { cmd = "python ci/numpydoc-public-api.py" }

[feature.nodask.constraints]
dask-core = "<0.0a0"

[environments]
# Testing
# test-just-xarray = { features = ["test"] } # https://github.com/pydata/xarray/pull/10888/files#r2511336147
Expand All @@ -390,6 +390,7 @@ test-py313-no-numba = { features = [
] }
test-py313-no-dask = { features = [
"py312",
Comment thread
weiji14 marked this conversation as resolved.
Outdated
"nodask",
"test",
"backends",
"accel",
Expand Down
Loading