Skip to content

Commit

Permalink
Add support for Python 3.11, require NumPy 1.23+ (#350)
Browse files Browse the repository at this point in the history
Contributes to rapidsai/build-planning#3

This PR adds support for Python 3.11.

It also bumps uses of `NumPy` to `numpy>=1.23`, see rapidsai/build-planning#3 (comment).

## Notes for Reviewers

This is part of ongoing work to add Python 3.11 support across RAPIDS.

The Python 3.11 CI workflows introduced in rapidsai/shared-workflows#176 are *optional*... they are not yet required to run successfully for PRs to be merged.

This PR can be merged once all jobs are running successfully (including the non-required jobs for Python 3.11). The CI logs should be verified that the jobs are building and testing with Python 3.11.

See rapidsai/shared-workflows#176 for more details.

Authors:
  - James Lamb (https://github.com/jameslamb)
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - Kyle Edwards (https://github.com/KyleFromNVIDIA)
  - Mads R. B. Kristensen (https://github.com/madsbk)
  - Bradley Dice (https://github.com/bdice)
  - Jake Awe (https://github.com/AyodeAwe)

URL: #350
  • Loading branch information
jameslamb authored Feb 28, 2024
1 parent 27abc15 commit 787a6a3
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 14 deletions.
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-118_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@ dependencies:
- libcufile=1.4.0.31
- ninja
- numcodecs <0.12.0
- numpy>=1.21
- numpy>=1.23
- numpydoc
- nvcc_linux-64=11.8
- nvcomp==3.0.6
- packaging
- pre-commit
- pytest
- pytest-cov
- python>=3.9,<3.11
- python>=3.9,<3.12
- scikit-build-core>=0.7.0
- sphinx
- sphinx-click
Expand Down
4 changes: 2 additions & 2 deletions conda/environments/all_cuda-122_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,14 @@ dependencies:
- libcufile-dev
- ninja
- numcodecs <0.12.0
- numpy>=1.21
- numpy>=1.23
- numpydoc
- nvcomp==3.0.6
- packaging
- pre-commit
- pytest
- pytest-cov
- python>=3.9,<3.11
- python>=3.9,<3.12
- scikit-build-core>=0.7.0
- sphinx
- sphinx-click
Expand Down
2 changes: 1 addition & 1 deletion conda/recipes/kvikio/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ requirements:
- libkvikio ={{ version }}
run:
- python
- numpy >=1.20
- numpy >=1.23
- cupy >=12.0.0
- zarr
# See https://github.com/zarr-developers/numcodecs/pull/475
Expand Down
4 changes: 2 additions & 2 deletions cpp/doxygen/main_page.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ Install the **nightly release** from the ``rapidsai-nightly`` channel with the f
# Install in existing environment
mamba install -c rapidsai-nightly -c conda-forge libkvikio
# Create new environment (CUDA 11.8)
mamba create -n libkvikio-env -c rapidsai-nightly -c conda-forge python=3.10 cuda-version=11.8 libkvikio
mamba create -n libkvikio-env -c rapidsai-nightly -c conda-forge python=3.11 cuda-version=11.8 libkvikio
# Create new environment (CUDA 12.0)
mamba create -n libkvikio-env -c rapidsai-nightly -c conda-forge python=3.10 cuda-version=12.0 libkvikio
mamba create -n libkvikio-env -c rapidsai-nightly -c conda-forge python=3.11 cuda-version=12.0 libkvikio
```

---
Expand Down
8 changes: 6 additions & 2 deletions dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -232,13 +232,17 @@ dependencies:
packages:
- python=3.10
- matrix:
py: "3.11"
packages:
- python>=3.9,<3.11
- python=3.11
- matrix:
packages:
- python>=3.9,<3.12
run:
common:
- output_types: [conda, requirements, pyproject]
packages:
- numpy>=1.21
- numpy>=1.23
- zarr
# See https://github.com/zarr-developers/numcodecs/pull/475
- numcodecs <0.12.0
Expand Down
8 changes: 4 additions & 4 deletions docs/source/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ Install the **stable release** from the ``rapidsai`` channel like:
# Install in existing environment
mamba install -c rapidsai -c conda-forge kvikio
# Create new environment (CUDA 11.8)
mamba create -n kvikio-env -c rapidsai -c conda-forge python=3.10 cuda-version=11.8 kvikio
mamba create -n kvikio-env -c rapidsai -c conda-forge python=3.11 cuda-version=11.8 kvikio
# Create new environment (CUDA 12.0)
mamba create -n kvikio-env -c rapidsai -c conda-forge python=3.10 cuda-version=12.0 kvikio
mamba create -n kvikio-env -c rapidsai -c conda-forge python=3.11 cuda-version=12.0 kvikio
Install the **nightly release** from the ``rapidsai-nightly`` channel like:

Expand All @@ -27,9 +27,9 @@ Install the **nightly release** from the ``rapidsai-nightly`` channel like:
# Install in existing environment
mamba install -c rapidsai-nightly -c conda-forge kvikio
# Create new environment (CUDA 11.8)
mamba create -n kvikio-env -c rapidsai-nightly -c conda-forge python=3.10 cuda-version=11.8 kvikio
mamba create -n kvikio-env -c rapidsai-nightly -c conda-forge python=3.11 cuda-version=11.8 kvikio
# Create new environment (CUDA 12.0)
mamba create -n kvikio-env -c rapidsai-nightly -c conda-forge python=3.10 cuda-version=12.0 kvikio
mamba create -n kvikio-env -c rapidsai-nightly -c conda-forge python=3.11 cuda-version=12.0 kvikio
.. note::
Expand Down
3 changes: 2 additions & 1 deletion python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ requires-python = ">=3.9"
dependencies = [
"cupy-cuda11x>=12.0.0",
"numcodecs <0.12.0",
"numpy>=1.21",
"numpy>=1.23",
"packaging",
"zarr",
] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../dependencies.yaml and run `rapids-dependency-file-generator`.
Expand All @@ -35,6 +35,7 @@ classifiers = [
"Programming Language :: Python",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
]

[project.optional-dependencies]
Expand Down

0 comments on commit 787a6a3

Please sign in to comment.