Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RELEASE] cuspatial v24.08 #1425

Merged
merged 24 commits into from
Aug 8, 2024
Merged

[RELEASE] cuspatial v24.08 #1425

merged 24 commits into from
Aug 8, 2024

Conversation

raydouglass
Copy link
Member

❄️ Code freeze for branch-24.08 and v24.08 release

What does this mean?

Only critical/hotfix level issues should be merged into branch-24.08 until release (merging of this PR).

What is the purpose of this PR?

  • Update documentation
  • Allow testing for the new release
  • Enable a means to merge branch-24.08 into main for the release

raydouglass and others added 23 commits May 20, 2024 17:40
Fix forward-merge `branch-24.06` into `branch-24.08`
Contributes to rapidsai/build-planning#62.

It looks like this project's wheels and conda recipes have unnecessary dependencies on `setuptools`. I suspect those are left over from before the project was cut over to `scikit-build-core`.

This proposes removing those.

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

Approvers:
  - Mark Harris (https://github.com/harrism)
  - Jake Awe (https://github.com/AyodeAwe)

URL: #1389
Forward-merge branch-24.06 into branch-24.08
closes #1395

`pairwise_linestring_intersection`, tested in this file, returns a `cudf.Column` for one of it's arguments and used `to_pandas` to test it's output. in 24.08, the output of `Column.to_pandas` was changed to a `pandas.Index` instead of a `pandas.Series` so modified the test accordingly

Authors:
  - Matthew Roeschke (https://github.com/mroeschke)

Approvers:
  - Mark Harris (https://github.com/harrism)
  - Paul Taylor (https://github.com/trxcllnt)
  - Michael Wang (https://github.com/isVoid)

URL: #1398
Recently devcontainer names were updated to include the current user's name. However, in GitHub Codespaces, the username is not defined. As a result, the container name starts with a dash. This is not allowed by GitHub Codespaces, so it fails to launch.

This PR adds a default value of `anon` to the devcontainer username.

See rapidsai/cudf#15784 for more information.

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

Approvers:
  - Paul Taylor (https://github.com/trxcllnt)
  - Mark Harris (https://github.com/harrism)
  - James Lamb (https://github.com/jameslamb)

URL: #1396
This PR removes text builds of the documentation, which we do not currently use for anything. Contributes to rapidsai/build-planning#71.

Authors:
  - Vyas Ramasubramani (https://github.com/vyasr)
  - Bradley Dice (https://github.com/bdice)

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Mark Harris (https://github.com/harrism)
  - Jake Awe (https://github.com/AyodeAwe)

URL: #1394
Contributes to rapidsai/build-planning#31
Contributes to rapidsai/dependency-file-generator#89

Proposes introducing `rapids-build-backend` as this project's build backend, to reduce the complexity of various CI/build scripts.

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

Approvers:
  - Bradley Dice (https://github.com/bdice)
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #1393
An upstream change in cudf uncovered a bug in `_GeoSeriesUtility._from_data` where `False` was being passed to `cudf.Series(index=)` which is an invalid value. The only valid `index` values are an actual `cudf.Index` or `None`, so setting to `None` as a more appropriate default value

Also updates the location of `assert_eq` which moved in rapidsai/cudf#16063

Authors:
  - Matthew Roeschke (https://github.com/mroeschke)

Approvers:
  - Paul Taylor (https://github.com/trxcllnt)
  - Mark Harris (https://github.com/harrism)
  - Bradley Dice (https://github.com/bdice)

URL: #1400
This PR fixes a bug in the multipolygon geometry iterator. The geometry iterator was returning part iterators by mistake, which masked an issue that we were patching out in rapids-cmake's CCCL. See rapidsai/rapids-cmake#511.

With this fix, we can remove that patch from rapids-cmake's CCCL: rapidsai/rapids-cmake#640

Authors:
  - Bradley Dice (https://github.com/bdice)
  - Paul Taylor (https://github.com/trxcllnt)

Approvers:
  - Michael Schellenberger Costa (https://github.com/miscco)
  - Mark Harris (https://github.com/harrism)
  - Michael Wang (https://github.com/isVoid)
  - Paul Taylor (https://github.com/trxcllnt)

URL: #1402
Contributes to rapidsai/build-planning#80

Adds constraints to avoid pulling in CMake 3.30.0, for the reasons described in that issue.

Authors:
  - James Lamb (https://github.com/jameslamb)
  - Paul Taylor (https://github.com/trxcllnt)

Approvers:
  - Paul Taylor (https://github.com/trxcllnt)
  - Bradley Dice (https://github.com/bdice)

URL: #1401
Exploring notebook fixes with geopandas 1.0.1

Authors:
  - Benjamin Zaitlen (https://github.com/quasiben)
  - Michael Wang (https://github.com/isVoid)

Approvers:
  - Michael Wang (https://github.com/isVoid)

URL: #1404
…, skip long-running notebook, fix some docs (#1407)

Unblocks CI.

CI in https://github.com/rapidsai/docker has been failing because of errors in the `cuspatial_api_examples.ipynb` notebook. Specifically, that notebook refers unconditionally to local files that are not guaranteed to exist.

To fix this, that proposes the following:

* in the notebook, conditionally recreate those files if they don't yet exist
* always test the notebooks in `docs/` in CI here

CI **here** is failing because the `nyc_taxi_years_correlation` notebook recently started taking a prohibitively long time to run. This proposes:

* skipping `nyc_taxi_years_correlation` notebook in CI

And some other small things noticed while doing all this:

* fixing typo (`rint -> ring`) and argument ordering in `GeoSeries.from_polygons_xy()` docs

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

Approvers:
   - Ray Douglass (https://github.com/raydouglass)
Previously `cmake` was added to `requirements/host`. However it is a build tool. So should be placed in `requirements/build`. This makes that change in relevant recipes.

Authors:
  - https://github.com/jakirkham

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: #1409
rapidsai/cudf#16285 makes `_from_data` explicitly requires the `data.values()` to all be a `ColumnBase`. This PR either ensures they are columns or just goes through the normal `GeoDataFrame`/`DataFrame` constructor if they are not.

Authors:
  - Matthew Roeschke (https://github.com/mroeschke)

Approvers:
  - Mark Harris (https://github.com/harrism)
  - Bradley Dice (https://github.com/bdice)

URL: #1415
Contributes to rapidsai/build-planning#31

In short, RAPIDS DLFW builds want to produce wheels with unsuffixed dependencies, e.g. `cudf` depending on `rmm`, not `rmm-cu12`.

This PR is part of a series across all of RAPIDS to try to support that type of build by setting up CUDA-suffixed and CUDA-unsuffixed dependency lists in `dependencies.yaml`.

For more details, see:
* rapidsai/build-planning#31 (comment)
* rapidsai/cudf#16183

## Notes for Reviewers

### Why target 24.08?

This is targeting 24.08 because:

1. it should be very low-risk
2. getting these changes into 24.08 prevents the need to carry around patches for every library in DLFW builds using RAPIDS 24.08

Authors:
  - James Lamb (https://github.com/jameslamb)
  - Vyas Ramasubramani (https://github.com/vyasr)

Approvers:
  - Vyas Ramasubramani (https://github.com/vyasr)

URL: #1414
The performance regression in #1413 is due to numba's `DeviceNDArray`
is slow in slicing. Recent cudf's DataFrame construction has simplified the construction and delegated construction
to similar logic that handles __cuda_array_interface__. Since the construction involves slicing the array, we need
this operation to be fast. In that sense, we should cast the use of DeviceNDArray to cupy array to support fast
slicing.

closes #1413

Authors:
  - Michael Wang (https://github.com/isVoid)

Approvers:
  - Paul Taylor (https://github.com/trxcllnt)
  - Mark Harris (https://github.com/harrism)
  - https://github.com/jakirkham

URL: #1418
#1407 skipped the taxi dropoffs notebook due to performance regression fixed in #1418, so this PR re-enables the notebook in CI by removing it from SKIPNBS in ci/test_noteboks.sh.

Authors:
  - Mark Harris (https://github.com/harrism)

Approvers:
  - https://github.com/jakirkham
  - Michael Wang (https://github.com/isVoid)
  - James Lamb (https://github.com/jameslamb)

URL: #1422
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@github-actions github-actions bot added conda Related to conda and conda configuration Python Related to Python code libcuspatial Relates to the cuSpatial C++ library ci labels Aug 1, 2024
@raydouglass raydouglass merged commit 069d9fb into main Aug 8, 2024
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci conda Related to conda and conda configuration libcuspatial Relates to the cuSpatial C++ library Python Related to Python code
Projects
Status: Todo
Development

Successfully merging this pull request may close these issues.