From 89617ddd67c0b5e55cd444805317eabbfc2cb8ec Mon Sep 17 00:00:00 2001 From: James Lamb Date: Wed, 4 Sep 2024 17:51:01 -0500 Subject: [PATCH 1/5] Add support for Python 3.12. --- .github/workflows/build.yaml | 16 +++++------ .github/workflows/pr.yaml | 28 +++++++++---------- .github/workflows/test.yaml | 10 +++---- README.md | 6 ++-- .../all_cuda-118_arch-x86_64.yaml | 2 +- .../all_cuda-125_arch-x86_64.yaml | 2 +- dependencies.yaml | 6 +++- python/cuproj/pyproject.toml | 1 + python/cuspatial/pyproject.toml | 1 + 9 files changed, 39 insertions(+), 33 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1f3fd7922..b2cb1a2ba 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,7 +28,7 @@ concurrency: jobs: cpp-build: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -37,7 +37,7 @@ jobs: python-build: needs: [cpp-build] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -46,7 +46,7 @@ jobs: upload-conda: needs: [cpp-build, python-build] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-upload-packages.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -56,7 +56,7 @@ jobs: if: github.ref_type == 'branch' needs: python-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@python-3.12 with: arch: "amd64" branch: ${{ inputs.branch }} @@ -68,7 +68,7 @@ jobs: sha: ${{ inputs.sha }} wheel-build-cuspatial: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -78,7 +78,7 @@ jobs: wheel-publish-cuspatial: needs: wheel-build-cuspatial secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -88,7 +88,7 @@ jobs: package-type: python wheel-build-cuproj: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} @@ -98,7 +98,7 @@ jobs: wheel-publish-cuproj: needs: wheel-build-cuproj secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index ecf4206c7..410458770 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -26,47 +26,47 @@ jobs: - wheel-tests-cuproj - devcontainer secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/pr-builder.yaml@python-3.12 checks: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/checks.yaml@python-3.12 with: enable_check_generated_files: false conda-cpp-build: needs: checks secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@python-3.12 with: build_type: pull-request conda-cpp-checks: needs: conda-cpp-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-post-build-checks.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-post-build-checks.yaml@python-3.12 with: build_type: pull-request enable_check_symbols: true conda-cpp-tests: needs: conda-cpp-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@python-3.12 with: build_type: pull-request conda-python-build: needs: conda-cpp-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-python-build.yaml@python-3.12 with: build_type: pull-request conda-python-tests: needs: conda-python-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@python-3.12 with: build_type: pull-request conda-notebook-tests: needs: conda-python-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@python-3.12 with: build_type: pull-request node_type: "gpu-v100-latest-1" @@ -76,7 +76,7 @@ jobs: docs-build: needs: conda-python-build secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@python-3.12 with: build_type: pull-request node_type: "gpu-v100-latest-1" @@ -86,34 +86,34 @@ jobs: wheel-build-cuspatial: needs: checks secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: build_type: pull-request script: ci/build_wheel_cuspatial.sh wheel-tests-cuspatial: needs: wheel-build-cuspatial secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@python-3.12 with: build_type: pull-request script: ci/test_wheel_cuspatial.sh wheel-build-cuproj: needs: checks secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: build_type: pull-request script: ci/build_wheel_cuproj.sh wheel-tests-cuproj: needs: [wheel-build-cuspatial, wheel-build-cuproj] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@python-3.12 with: build_type: pull-request script: ci/test_wheel_cuproj.sh devcontainer: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@python-3.12 with: arch: '["amd64"]' cuda: '["12.5"]' diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 493eca446..d1e378b68 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,7 +16,7 @@ on: jobs: conda-cpp-checks: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-post-build-checks.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-post-build-checks.yaml@python-3.12 with: build_type: nightly branch: ${{ inputs.branch }} @@ -25,7 +25,7 @@ jobs: enable_check_symbols: true conda-cpp-tests: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@python-3.12 with: build_type: nightly branch: ${{ inputs.branch }} @@ -33,7 +33,7 @@ jobs: sha: ${{ inputs.sha }} conda-python-tests: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@python-3.12 with: build_type: nightly branch: ${{ inputs.branch }} @@ -41,7 +41,7 @@ jobs: sha: ${{ inputs.sha }} wheel-tests-cuspatial: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@python-3.12 with: build_type: nightly branch: ${{ inputs.branch }} @@ -50,7 +50,7 @@ jobs: script: ci/test_wheel_cuspatial.sh wheel-tests-cuproj: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@python-3.12 with: build_type: nightly branch: ${{ inputs.branch }} diff --git a/README.md b/README.md index a2a2be972..7702e3e20 100644 --- a/README.md +++ b/README.md @@ -119,13 +119,13 @@ docker run --gpus all --pull always --rm -it \ ### Install with Conda To install via conda: -> **Note** cuSpatial is supported only on Linux or [through WSL](https://rapids.ai/wsl2.html), and with Python versions 3.10 and 3.11. +> **Note** cuSpatial is supported only on Linux or [through WSL](https://rapids.ai/wsl2.html), and with Python versions 3.10, 3.11, and 3.12. cuSpatial can be installed with conda (miniconda, or the full Anaconda distribution) from the rapidsai channel: ```shell conda install -c rapidsai -c conda-forge -c nvidia \ - cuspatial=24.10 python=3.11 cudatoolkit=11.8 + cuspatial=24.10 python=3.12 cudatoolkit=11.8 ``` We also provide nightly Conda packages built from the HEAD of our latest development branch. @@ -134,7 +134,7 @@ See the [RAPIDS installation documentation](https://docs.rapids.ai/install) for ### Install with pip To install via pip: -> **Note** cuSpatial is supported only on Linux or [through WSL](https://rapids.ai/wsl2.html), and with Python versions 3.10 and 3.11. +> **Note** cuSpatial is supported only on Linux or [through WSL](https://rapids.ai/wsl2.html), and with Python versions 3.10, 3.11, and 3.12. The cuSpatial pip packages can be installed from NVIDIA's PyPI index. pip installations require using the matching wheel to the system's installed CUDA toolkit. - For CUDA 11 toolkits, install the `-cu11` wheels diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 0cbe9a1f7..000e38a93 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -43,7 +43,7 @@ dependencies: - pytest - pytest-cov - pytest-xdist -- python>=3.10,<3.12 +- python>=3.10,<3.13 - rapids-build-backend>=0.3.0,<0.4.0.dev0 - rmm==24.10.*,>=0.0.0a0 - scikit-build-core>=0.10.0 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 1001169e5..eeafde212 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -45,7 +45,7 @@ dependencies: - pytest - pytest-cov - pytest-xdist -- python>=3.10,<3.12 +- python>=3.10,<3.13 - rapids-build-backend>=0.3.0,<0.4.0.dev0 - rmm==24.10.*,>=0.0.0a0 - scikit-build-core>=0.10.0 diff --git a/dependencies.yaml b/dependencies.yaml index 859009683..6f07befe7 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -363,8 +363,12 @@ dependencies: packages: - python=3.11 - matrix: + py: "3.12" packages: - - python>=3.10,<3.12 + - python=3.12 + - matrix: + packages: + - python>=3.10,<3.13 run_python_cuspatial: common: - output_types: [conda, requirements, pyproject] diff --git a/python/cuproj/pyproject.toml b/python/cuproj/pyproject.toml index 6c4d6cc2d..1a7889eae 100644 --- a/python/cuproj/pyproject.toml +++ b/python/cuproj/pyproject.toml @@ -38,6 +38,7 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ] [project.optional-dependencies] diff --git a/python/cuspatial/pyproject.toml b/python/cuspatial/pyproject.toml index 25ea28bfd..412937319 100644 --- a/python/cuspatial/pyproject.toml +++ b/python/cuspatial/pyproject.toml @@ -44,6 +44,7 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ] [project.optional-dependencies] From 0e25119e424861c77772ab6c25515bfaadf6896e Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Sat, 7 Sep 2024 10:32:27 -0500 Subject: [PATCH 2/5] Pin proj to >=9.3.0,<9.3.1.0a0 --- conda/recipes/cuproj/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conda/recipes/cuproj/meta.yaml b/conda/recipes/cuproj/meta.yaml index 29d590bc0..0096561fe 100644 --- a/conda/recipes/cuproj/meta.yaml +++ b/conda/recipes/cuproj/meta.yaml @@ -64,7 +64,7 @@ requirements: - rapids-build-backend >=0.3.0,<0.4.0.dev0 - librmm ={{ minor_version }} - scikit-build-core >=0.10.0 - - proj + - proj >=9.3.0,<9.3.1.0a0 # TODO: proj is being held back due to needing spdlog/fmt upgrades to support recent conda-forge builds of tiledb - sqlite run: {% if cuda_major == "11" %} From 1a5cd184c33dd5073ddf8f0d5a21b041efba5dad Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Sat, 7 Sep 2024 10:36:52 -0500 Subject: [PATCH 3/5] Pin more instances of proj. --- conda/environments/all_cuda-118_arch-x86_64.yaml | 2 +- conda/environments/all_cuda-125_arch-x86_64.yaml | 2 +- conda/recipes/libcuspatial/meta.yaml | 4 ++-- dependencies.yaml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 000e38a93..013199e88 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -36,7 +36,7 @@ dependencies: - nvcc_linux-64=11.8 - osmnx>=1.9.3 - pre-commit -- proj +- proj >=9.3.0,<9.3.1.0a0 - pydata-sphinx-theme!=0.14.2 - pydeck - pylibcudf==24.10.*,>=0.0.0a0 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index eeafde212..b6d0c688f 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -38,7 +38,7 @@ dependencies: - numpydoc - osmnx>=1.9.3 - pre-commit -- proj +- proj >=9.3.0,<9.3.1.0a0 - pydata-sphinx-theme!=0.14.2 - pydeck - pylibcudf==24.10.*,>=0.0.0a0 diff --git a/conda/recipes/libcuspatial/meta.yaml b/conda/recipes/libcuspatial/meta.yaml index 3e212690c..177037568 100644 --- a/conda/recipes/libcuspatial/meta.yaml +++ b/conda/recipes/libcuspatial/meta.yaml @@ -49,7 +49,7 @@ requirements: - libcudf ={{ minor_version }} - librmm ={{ minor_version }} - sqlite - - proj + - proj >=9.3.0,<9.3.1.0a0 # TODO: proj is being held back due to needing spdlog/fmt upgrades to support recent conda-forge builds of tiledb outputs: - name: libcuspatial @@ -85,7 +85,7 @@ outputs: - libcudf ={{ minor_version }} - librmm ={{ minor_version }} - sqlite - - proj + - proj >=9.3.0,<9.3.1.0a0 # TODO: proj is being held back due to needing spdlog/fmt upgrades to support recent conda-forge builds of tiledb test: commands: - test -f $PREFIX/lib/libcuspatial.so diff --git a/dependencies.yaml b/dependencies.yaml index 57d122642..1f9856f4e 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -183,7 +183,7 @@ dependencies: packages: - c-compiler - cxx-compiler - - proj + - proj >=9.3.0,<9.3.1.0a0 # TODO: proj is being held back due to needing spdlog/fmt upgrades to support recent conda-forge builds of tiledb - sqlite specific: - output_types: conda From eaac568b4be8223f7d0673c7fefc6ec307880016 Mon Sep 17 00:00:00 2001 From: Bradley Dice Date: Mon, 9 Sep 2024 07:58:23 -0500 Subject: [PATCH 4/5] Update branches for new C++ wheels workflows. --- .github/workflows/build.yaml | 4 ++-- .github/workflows/pr.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 644424f4a..14f3817a0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -68,7 +68,7 @@ jobs: sha: ${{ inputs.sha }} wheel-build-libcuspatial: secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: # build for every combination of arch and CUDA version, but only for the latest Python matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber))) @@ -80,7 +80,7 @@ jobs: wheel-publish-libcuspatial: needs: wheel-build-libcuspatial secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-publish.yaml@python-3.12 with: build_type: ${{ inputs.build_type || 'branch' }} branch: ${{ inputs.branch }} diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 394798756..65a49b87d 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -96,7 +96,7 @@ jobs: wheel-build-cuspatial: needs: [checks, wheel-build-libcuspatial] secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@python-3.12 with: build_type: pull-request script: ci/build_wheel_cuspatial.sh From 9295c3fc62b14d6ee368742ab4c6a3a4f2c0d64d Mon Sep 17 00:00:00 2001 From: James Lamb Date: Mon, 9 Sep 2024 07:48:52 -0700 Subject: [PATCH 5/5] bump geopandas to 1.x, drop fiona --- README.md | 36 ------------------- ci/test_wheel_cuproj.sh | 16 +-------- ci/test_wheel_cuspatial.sh | 16 +-------- .../all_cuda-118_arch-x86_64.yaml | 3 +- .../all_cuda-125_arch-x86_64.yaml | 3 +- conda/recipes/cuspatial/meta.yaml | 2 +- dependencies.yaml | 7 ++-- python/cuproj/pyproject.toml | 2 +- python/cuspatial/pyproject.toml | 2 +- 9 files changed, 9 insertions(+), 78 deletions(-) diff --git a/README.md b/README.md index 7702e3e20..6086a7c9e 100644 --- a/README.md +++ b/README.md @@ -145,42 +145,6 @@ pip install cuspatial-cu12 --extra-index-url=https://pypi.nvidia.com pip install cuspatial-cu11 --extra-index-url=https://pypi.nvidia.com ``` -#### Troubleshooting Fiona/GDAL versions - -cuSpatial depends on [`geopandas`](https://github.com/geopandas/geopandas), which uses [`fiona >= 1.8.19`](https://pypi.org/project/Fiona/), to read common GIS formats with GDAL. - -Fiona requires GDAL is already present on your system, but its minimum required version may be newer than the version of GDAL in your OS's package manager. - -Fiona checks the GDAL version at install time and fails with an error like this if a compatible version of GDAL isn't installed: -``` -ERROR: GDAL >= 3.2 is required for fiona. Please upgrade GDAL. -``` - -There are two ways to fix this: - -1. Install a version of GDAL that meets fiona's minimum required version - * Ubuntu users can install a newer GDAL with the [UbuntuGIS PPA](https://wiki.ubuntu.com/UbuntuGIS): - ```shell - sudo -y add-apt-repository ppa:ubuntugis/ppa - sudo apt install libgdal-dev - ``` - * Rocky Linux users can install a newer GDAL as follows - ```shell - yum update -y - yum config-manager --set-enabled powertools - yum update -y - yum install -y gdal-devel - ``` -2. Pin fiona's version to a range that's compatible with your version of `libgdal-dev` - * For Ubuntu20.04 ([GDAL v3.0.4](https://packages.ubuntu.com/focal/libgdal-dev)): - ```shell - pip install --no-binary fiona --extra-index-url=https://pypi.nvidia.com cuspatial-cu12 'fiona>=1.8.19,<1.9' - ``` - * For Ubuntu22.04 ([GDAL v3.4.1](https://packages.ubuntu.com/jammy/libgdal-dev)): - ```shell - pip install --no-binary fiona --extra-index-url=https://pypi.nvidia.com cuspatial-cu12 'fiona>=1.9' - ``` - ### Build/Install from source To build and install cuSpatial from source please see the [build documentation](https://docs.rapids.ai/api/cuspatial/stable/developer_guide/build.html). diff --git a/ci/test_wheel_cuproj.sh b/ci/test_wheel_cuproj.sh index 27cc87a2a..abd20ebf1 100755 --- a/ci/test_wheel_cuproj.sh +++ b/ci/test_wheel_cuproj.sh @@ -6,18 +6,6 @@ set -eou pipefail mkdir -p ./dist RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -# install build dependencies for fiona -if type -f yum > /dev/null 2>&1; then - yum update -y - # some of gdal-devel's dependencies, like 'libdap', come from the powertools repo - yum config-manager --set-enabled powertools - yum update -y - yum install -y gdal-devel -else - apt update - DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends libgdal-dev -fi - # Download the cuproj and cuspatial built in the previous step RAPIDS_PY_WHEEL_NAME="cuproj_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 python ./dist RAPIDS_PY_WHEEL_NAME="cuspatial_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 python ./dist @@ -25,11 +13,9 @@ RAPIDS_PY_WHEEL_NAME="libcuspatial_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-whe # echo to expand wildcard before adding `[extra]` requires for pip python -m pip install \ - --no-binary 'fiona' \ "$(echo ./dist/cuspatial*.whl)" \ "$(echo ./dist/cuproj*.whl)[test]" \ - "$(echo ./dist/libcuspatial*.whl)" \ - 'fiona>=1.8.19,<1.9' + "$(echo ./dist/libcuspatial*.whl)" rapids-logger "pytest cuproj" pushd python/cuproj/cuproj diff --git a/ci/test_wheel_cuspatial.sh b/ci/test_wheel_cuspatial.sh index a8f79832c..a352e1bfd 100755 --- a/ci/test_wheel_cuspatial.sh +++ b/ci/test_wheel_cuspatial.sh @@ -6,28 +6,14 @@ set -eou pipefail mkdir -p ./dist RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -# install build dependencies for fiona -if type -f yum > /dev/null 2>&1; then - yum update -y - # some of gdal-devel's dependencies, like 'libdap', come from the powertools repo - yum config-manager --set-enabled powertools - yum update -y - yum install -y gdal-devel -else - apt update - DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends libgdal-dev -fi - # Download the cuspatial and libcuspatial built in the previous step RAPIDS_PY_WHEEL_NAME="cuspatial_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 python ./dist RAPIDS_PY_WHEEL_NAME="libcuspatial_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 cpp ./dist # echo to expand wildcard before adding `[extra]` requires for pip python -m pip install \ - --no-binary 'fiona' \ "$(echo ./dist/cuspatial*.whl)[test]" \ - "$(echo ./dist/libcuspatial*.whl)" \ - 'fiona>=1.8.19,<1.9' + "$(echo ./dist/libcuspatial*.whl)" rapids-logger "pytest cuspatial" pushd python/cuspatial/cuspatial diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 013199e88..984d6c7cc 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -19,8 +19,7 @@ dependencies: - cython>=3.0.0 - doxygen - gcc_linux-64=11.* -- geopandas<1 -- geopandas>=0.11.0 +- geopandas>=1.0.0 - ipython - ipywidgets - libcudf==24.10.*,>=0.0.0a0 diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index b6d0c688f..c50314e1e 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -22,8 +22,7 @@ dependencies: - cython>=3.0.0 - doxygen - gcc_linux-64=11.* -- geopandas<1 -- geopandas>=0.11.0 +- geopandas>=1.0.0 - ipython - ipywidgets - libcudf==24.10.*,>=0.0.0a0 diff --git a/conda/recipes/cuspatial/meta.yaml b/conda/recipes/cuspatial/meta.yaml index a418d8ce0..c7c0d780c 100644 --- a/conda/recipes/cuspatial/meta.yaml +++ b/conda/recipes/cuspatial/meta.yaml @@ -76,7 +76,7 @@ requirements: - {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }} - cudf ={{ minor_version }} - pylibcudf ={{ minor_version }} - - geopandas >=0.11.0 + - geopandas >=1.0.0 - numpy >=1.23,<2.0a0 - python - rmm ={{ minor_version }} diff --git a/dependencies.yaml b/dependencies.yaml index 1f9856f4e..be9e945bf 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -376,9 +376,6 @@ dependencies: # TODO: Remove geopandas.dataset usage in cuspatial_api_examples.ipynb test_notebooks: common: - - output_types: [conda, requirements, pyproject] - packages: - - geopandas<1 - output_types: conda packages: - osmnx>=1.9.3 @@ -405,7 +402,7 @@ dependencies: common: - output_types: [conda, requirements, pyproject] packages: - - geopandas>=0.11.0 + - &geopandas geopandas>=1.0.0 - &numpy numpy>=1.23,<2.0a0 test_python_cuspatial: common: @@ -422,7 +419,7 @@ dependencies: - pytest - pytest-cov - pytest-xdist - - geopandas>=0.11.0 + - *geopandas - output_types: [requirements, pyproject] packages: - pyproj>=3.6.0,<3.7a0 diff --git a/python/cuproj/pyproject.toml b/python/cuproj/pyproject.toml index 1a7889eae..fc4b99d54 100644 --- a/python/cuproj/pyproject.toml +++ b/python/cuproj/pyproject.toml @@ -44,7 +44,7 @@ classifiers = [ [project.optional-dependencies] test = [ "cuspatial==24.10.*,>=0.0.0a0", - "geopandas>=0.11.0", + "geopandas>=1.0.0", "numpy>=1.23,<2.0a0", "pyproj>=3.6.0,<3.7a0", "pytest", diff --git a/python/cuspatial/pyproject.toml b/python/cuspatial/pyproject.toml index a5b062ee6..3a850030e 100644 --- a/python/cuspatial/pyproject.toml +++ b/python/cuspatial/pyproject.toml @@ -31,7 +31,7 @@ license = { text = "Apache 2.0" } requires-python = ">=3.10" dependencies = [ "cudf==24.10.*,>=0.0.0a0", - "geopandas>=0.11.0", + "geopandas>=1.0.0", "libcudf==24.10.*,>=0.0.0a0", "libcuspatial==24.10.*,>=0.0.0a0", "numpy>=1.23,<2.0a0",