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 v23.10 #1280

Merged
merged 33 commits into from
Oct 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
8d88bed
v23.10 Updates [skip ci]
raydouglass Jul 21, 2023
f5fc894
Merge pull request #1226 from rapidsai/branch-23.08
GPUtester Jul 21, 2023
8f907d2
Merge pull request #1228 from rapidsai/branch-23.08
GPUtester Jul 25, 2023
bbca8f9
Merge branch 'branch-23.08' into branch-23.10-merge-23.08
vyasr Jul 25, 2023
bd3085c
Merge pull request #1230 from vyasr/branch-23.10-merge-23.08
ajschmidt8 Jul 25, 2023
8d6ca40
Merge pull request #1236 from rapidsai/branch-23.08
GPUtester Jul 28, 2023
742b6b3
Merge pull request #1240 from rapidsai/branch-23.08
GPUtester Jul 31, 2023
7a50764
Merge pull request #1241 from rapidsai/branch-23.08
GPUtester Jul 31, 2023
701bd12
Merge branch 'branch-23.08' into branch-23.10
thomcom Aug 4, 2023
278de03
All 23.10 version updates?
thomcom Aug 4, 2023
8177367
Remove cuspatial=23.10 dependency from cuproj.
thomcom Aug 4, 2023
48b3406
Remove cuspatial from pyproject.toml as well
thomcom Aug 4, 2023
19fff38
Drop cuspatial from cuproj test.
thomcom Aug 4, 2023
52238a0
Update to Cython 3.0.0 (#1235)
vyasr Aug 7, 2023
9d50b2f
Merge branch 'branch-23.10' into bug/fix-23.08-23.10-automerge
thomcom Aug 7, 2023
fb963ff
Merge pull request #1251 from thomcom/bug/fix-23.08-23.10-automerge
ajschmidt8 Aug 7, 2023
456ebeb
Merge pull request #1254 from rapidsai/branch-23.08
GPUtester Aug 9, 2023
4220ab1
Change path to trajectories_extracted.p to improve CI run consistency…
thomcom Aug 10, 2023
3007d88
Merge pull request #1257 from rapidsai/branch-23.08
GPUtester Aug 10, 2023
88ee1bb
Add back deleted conda env files (#1261)
harrism Aug 19, 2023
7237565
Use `copy-pr-bot` (#1262)
ajschmidt8 Aug 28, 2023
a87d21f
[REVIEW] Add cudf example code for haversine distance into 23.10 (#1260)
taureandyernv Aug 30, 2023
56f7cfc
Use `conda mambabuild` not `mamba mambabuild` (#1265)
bdice Sep 8, 2023
a8adea4
Simplify wheel build scripts and allow alphas of RAPIDS dependencies …
divyegala Sep 8, 2023
7f14fb2
Update to clang 16.0.6. (#1266)
bdice Sep 19, 2023
b063e08
Update image names (#1269)
AyodeAwe Sep 21, 2023
73412e6
Update devcontainers to align with other RAPIDS repositories (#1263)
trxcllnt Sep 25, 2023
6ebb3b7
fix update-version.sh (#1272)
trxcllnt Sep 26, 2023
73e2df7
Add binary_predicates.ipynb workflow and test data to package. (#1258)
thomcom Oct 2, 2023
366183c
Benchmark `GeoSeries.Distance` (#1277)
isVoid Oct 5, 2023
6c9ac11
Re-enable cuspatial tests and dependency. (#1253)
thomcom Oct 5, 2023
32d908f
Add `curl` for notebook testing (#1281)
raydouglass Oct 10, 2023
38bad5c
Update Changelog [skip ci]
raydouglass Oct 11, 2023
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
20 changes: 11 additions & 9 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
# syntax=docker/dockerfile:1.5

ARG CUDA=12.0
ARG LLVM=16
ARG RAPIDS=23.08
ARG DISTRO=ubuntu22.04
ARG REPO=rapidsai/devcontainers

ARG BASE
ARG PYTHON_PACKAGE_MANAGER=conda

FROM ${REPO}:${RAPIDS}-cpp-llvm${LLVM}-cuda${CUDA}-${DISTRO} as pip-base
FROM ${BASE} as pip-base

ENV DEFAULT_VIRTUAL_ENV=rapids

RUN apt update -y \
&& DEBIAN_FRONTEND=noninteractive apt install -y \
sqlite3 libsqlite3-dev libtiff-dev libcurl4-openssl-dev \
&& rm -rf /tmp/* /var/tmp/* /var/cache/apt/* /var/lib/apt/lists/*;

FROM ${REPO}:${RAPIDS}-cpp-mambaforge-${DISTRO} as conda-base
FROM ${BASE} as conda-base

COPY --from=pip-base /etc/skel/.config/clangd/config.yaml /etc/skel/.config/clangd/config.yaml
ENV DEFAULT_CONDA_ENV=rapids

FROM ${PYTHON_PACKAGE_MANAGER}-base

Expand Down
75 changes: 0 additions & 75 deletions .devcontainer/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,6 @@ This container is a turnkey development environment for building and testing the
* [Prerequisites](#prerequisites)
* [Host bind mounts](#host-bind-mounts)
* [Launch a Dev Container](#launch-a-dev-container)
* [via VSCode](#via-vscode)
* [via `launch.sh`](#via-launchsh)
* [Single mode](#single-mode)
* [Unified mode](#unified-mode)
* [Isolated mode](#isolated-mode)

## Prerequisites

Expand All @@ -35,76 +30,6 @@ This ensures caches, configurations, dependencies, and your commits are persiste

## Launch a Dev Container

A devcontainer can be launched directly by VSCode, or via a custom `launch.sh` shell script.

### via VSCode

To launch a devcontainer from VSCode, open the cuSpatial repo and select the "Reopen in Container" button in the bottom right:<br/><img src="https://user-images.githubusercontent.com/178183/221771999-97ab29d5-e718-4e5f-b32f-2cdd51bba25c.png"/>

Alternatively, open the VSCode command palette (typically `cmd/ctrl + shift + P`) and run the "Rebuild and Reopen in Container" command.

### via `launch.sh`

Use the `.devcontainer/launch.sh` script to start a new instance of the development container and launch a fresh VSCode window connected to it.

VSCode extends its [single-window-per-folder](https://github.com/microsoft/vscode/issues/2686) process model to devcontainers. Opening the same devcontainer in separate windows doesn't create two separate containers -- instead you have two VSCode windows each connected to the same running container.

`launch.sh` takes two arguments, a `mode` and a `package manager`.

* The `mode` argument determines how the devcontainer interacts with the files on the host.
* The `package manager` argument can be either `conda`, or `pip`. This determines whether the devcontainer uses `conda` or `pip` to install the dependencies (the default is `conda`). `pip` is experimental/not working for normal dev, and is currently meant to aid in pip packaging work.

#### Single mode

`.devcontainer/launch.sh single` launches the devcontainer with the [default bind mounts](#host-bind-mounts). RMM and cuDF are installed via the package manager.

Example:
```bash
# Launch a devcontainer that only mounts cuspatial and installs dependencies via conda
$ .devcontainer/launch.sh single conda

# or installs dependencies via pip
$ .devcontainer/launch.sh single pip
```

#### Unified mode

`.devcontainer/launch.sh unified` launches the devcontainer with the [default bind mounts](#host-bind-mounts), as well as additional `rmm` and `cudf` bind mounts (assumes RMM and cuDF are siblings to the cuspatial repository):

* `${repo}/../.rmm:/home/coder/rmm`
* `${repo}/../.cudf:/home/coder/cudf`

In this mode, RMM and cuDF will not be installed, but the devcontainer will install the dependencies necessary to build all three.

Example:
```bash
# Launch a devcontainer that mounts rmm, cudf, and cuspatial from the host and installs dependencies via conda
$ .devcontainer/launch.sh unified conda

# or installs dependencies via pip
$ .devcontainer/launch.sh unified pip
```

#### Isolated mode

`.devcontainer/launch.sh isolated` launches the devcontainer without the deps/repo bind mounts, and instead contains a unique copy of the `cuspatial` source in a Docker [volume](https://docs.docker.com/storage/volumes/).

Use this mode to launch multiple isolated development containers that can be checked out to separate branches of `cuspatial`.

The Docker volume persists after the devcontainer is removed, ensuring you don't pending lose work by accidentally removing the devcontainer.

However, you will need to manually remove the volume once you've committed and pushed your changes:

* Use the [`docker volume ls`](https://docs.docker.com/engine/reference/commandline/volume_ls/) command to list all volumes
* Use [`docker volume rm`](https://docs.docker.com/engine/reference/commandline/volume_rm/) or [`docker volume prune`](https://docs.docker.com/engine/reference/commandline/volume_prune/) to clean up unused volumes

Alternatively, use the "Dev Volumes" tab of the VSCode Dev Containers extension to view and remove unused volumes.

Examples:
```bash
# Launch a devcontainer that is isolated from changes on the host and installs dependencies via conda
$ .devcontainer/launch.sh isolated conda

# or installs dependencies via pip
$ .devcontainer/launch.sh isolated pip
```
93 changes: 0 additions & 93 deletions .devcontainer/conda/isolated/.devcontainer/devcontainer.json

This file was deleted.

95 changes: 0 additions & 95 deletions .devcontainer/conda/single/.devcontainer/devcontainer.json

This file was deleted.

Loading
Loading