Skip to content

Commit

Permalink
Resolve merge
Browse files Browse the repository at this point in the history
  • Loading branch information
thomcom committed Apr 27, 2023
2 parents 3fc9d44 + e992329 commit 713a27a
Show file tree
Hide file tree
Showing 220 changed files with 3,927 additions and 1,466 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ concurrency:
jobs:
cpp-build:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@py-39
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -37,7 +37,7 @@ jobs:
python-build:
needs: [cpp-build]
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@py-39
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -46,7 +46,7 @@ jobs:
upload-conda:
needs: [cpp-build, python-build]
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-upload-packages.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-upload-packages.yaml@py-39
with:
build_type: ${{ inputs.build_type || 'branch' }}
branch: ${{ inputs.branch }}
Expand All @@ -56,7 +56,7 @@ jobs:
if: github.ref_type == 'branch' && github.event_name == 'push'
needs: python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@py-39
with:
build_type: branch
node_type: "gpu-v100-latest-1"
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,40 +20,40 @@ jobs:
- conda-notebook-tests
- docs-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/pr-builder.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/pr-builder.yaml@py-39
checks:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/checks.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/checks.yaml@py-39
with:
enable_check_generated_files: false
conda-cpp-build:
needs: checks
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-build.yaml@py-39
with:
build_type: pull-request
conda-cpp-tests:
needs: conda-cpp-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@py-39
with:
build_type: pull-request
conda-python-build:
needs: conda-cpp-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-build.yaml@py-39
with:
build_type: pull-request
conda-python-tests:
needs: conda-python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@py-39
with:
build_type: pull-request
conda-notebook-tests:
needs: conda-python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@py-39
with:
build_type: pull-request
node_type: "gpu-v100-latest-1"
Expand All @@ -63,7 +63,7 @@ jobs:
docs-build:
needs: conda-python-build
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/custom-job.yaml@py-39
with:
build_type: pull-request
node_type: "gpu-v100-latest-1"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ on:
jobs:
conda-cpp-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-cpp-tests.yaml@py-39
with:
build_type: nightly
branch: ${{ inputs.branch }}
date: ${{ inputs.date }}
sha: ${{ inputs.sha }}
conda-python-tests:
secrets: inherit
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@branch-23.06
uses: rapidsai/shared-action-workflows/.github/workflows/conda-python-tests.yaml@py-39
with:
build_type: nightly
branch: ${{ inputs.branch }}
Expand Down
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ repos:
hooks:
- id: cython-lint
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v11.1.0
rev: v15.0.7
hooks:
- id: clang-format
types_or: [c, c++, cuda]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ docker run --gpus all --rm -it \
### Install from 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.8 and later
> **Note** cuSpatial is supported only on Linux or [through WSL](https://rapids.ai/wsl2.html), and with Python versions 3.9 and later
cuSpatial can be installed with conda (miniconda, or the full Anaconda distribution) from the rapidsai channel:

Expand Down
2 changes: 1 addition & 1 deletion ci/build_docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ rapids-print-env
rapids-logger "Downloading artifacts from previous jobs"
CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp)
PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python)
VERSION_NUMBER=$(rapids-get-rapids-version-from-git)
VERSION_NUMBER="23.06"

rapids-mamba-retry install \
--channel "${CPP_CHANNEL}" \
Expand Down
2 changes: 2 additions & 0 deletions ci/release/update-version.sh
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,11 @@ done
sed_runner "/PROJECT_NUMBER[ ]*=/ s|=.*|= ${NEXT_FULL_TAG}|g" cpp/doxygen/Doxyfile
sed_runner "/TAGFILES/ s|[0-9]\+.[0-9]\+|${NEXT_SHORT_TAG}|g" cpp/doxygen/Doxyfile

# CI files
for FILE in .github/workflows/*.yaml; do
sed_runner "/shared-action-workflows/ s/@.*/@branch-${NEXT_SHORT_TAG}/g" "${FILE}"
done
sed_runner "s/VERSION_NUMBER=\".*/VERSION_NUMBER=\"${NEXT_SHORT_TAG}\"/g" ci/build_docs.sh

# Need to distutils-normalize the original version
NEXT_SHORT_TAG_PEP440=$(python -c "from setuptools.extern import packaging; print(packaging.version.Version('${NEXT_SHORT_TAG}'))")
Expand Down
5 changes: 4 additions & 1 deletion conda/environments/all_cuda-118_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ dependencies:
- cmake>=3.23.1,!=3.25.0
- cudatoolkit=11.8
- cudf=23.06
- cuml
- cxx-compiler
- cython>=0.29,<0.30
- doxygen
Expand All @@ -18,6 +19,7 @@ dependencies:
- gmock=1.10.0
- gtest=1.10.0
- ipython
- ipywidgets
- libcudf=23.06
- librmm=23.06
- myst-parser
Expand All @@ -32,9 +34,10 @@ dependencies:
- pytest
- pytest-cov
- pytest-xdist
- python>=3.8,<3.11
- python>=3.9,<3.11
- rmm=23.06
- scikit-build>=0.13.1
- scikit-image
- setuptools
- shapely
- sphinx<6
Expand Down
1 change: 1 addition & 0 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ add_library(cuspatial
src/spatial/point_distance.cu
src/spatial/point_linestring_distance.cu
src/spatial/point_polygon_distance.cu
src/spatial/linestring_polygon_distance.cu
src/spatial/point_linestring_nearest_points.cu
src/spatial/sinusoidal_projection.cu
src/trajectory/derive_trajectories.cu
Expand Down
8 changes: 4 additions & 4 deletions cpp/benchmarks/pairwise_linestring_distance.cu
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@
#include <nvbench/nvbench.cuh>

#include <cuspatial/detail/iterator.hpp>
#include <cuspatial/experimental/iterator_factory.cuh>
#include <cuspatial/experimental/linestring_distance.cuh>
#include <cuspatial/experimental/ranges/multilinestring_range.cuh>
#include <cuspatial/vec_2d.hpp>
#include <cuspatial/geometry/vec_2d.hpp>
#include <cuspatial/iterator_factory.cuh>
#include <cuspatial/linestring_distance.cuh>
#include <cuspatial/range/multilinestring_range.cuh>

#include <rmm/device_vector.hpp>
#include <rmm/exec_policy.hpp>
Expand Down
4 changes: 2 additions & 2 deletions cpp/benchmarks/point_in_polygon.cu
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
#include <benchmarks/fixture/rmm_pool_raii.hpp>
#include <nvbench/nvbench.cuh>

#include <cuspatial/experimental/point_in_polygon.cuh>
#include <cuspatial/vec_2d.hpp>
#include <cuspatial/geometry/vec_2d.hpp>
#include <cuspatial/point_in_polygon.cuh>

#include <rmm/device_vector.hpp>
#include <rmm/exec_policy.hpp>
Expand Down
4 changes: 2 additions & 2 deletions cpp/benchmarks/points_in_range.cu
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@

#include <cuspatial/detail/iterator.hpp>
#include <cuspatial/error.hpp>
#include <cuspatial/experimental/points_in_range.cuh>
#include <cuspatial/vec_2d.hpp>
#include <cuspatial/geometry/vec_2d.hpp>
#include <cuspatial/points_in_range.cuh>

#include <rmm/device_uvector.hpp>
#include <rmm/exec_policy.hpp>
Expand Down
4 changes: 2 additions & 2 deletions cpp/benchmarks/quadtree_on_points.cu
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
* limitations under the License.
*/

#include <cuspatial/experimental/point_quadtree.cuh>
#include <cuspatial/vec_2d.hpp>
#include <cuspatial/geometry/vec_2d.hpp>
#include <cuspatial/point_quadtree.cuh>

#include <benchmarks/fixture/rmm_pool_raii.hpp>
#include <nvbench/nvbench.cuh>
Expand Down
4 changes: 2 additions & 2 deletions cpp/doxygen/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -819,7 +819,7 @@ INPUT = main_page.md \
developer_guide/DOCUMENTATION.md \
developer_guide/DEVELOPER_GUIDE.md \
developer_guide/TESTING.md \
developer_guide/REFACTORING_GUIDE.md \
developer_guide/HEADER_ONLY_API_GUIDE.md \
../include

# This tag can be used to specify the character encoding of the source files
Expand Down Expand Up @@ -1155,7 +1155,7 @@ HTML_FOOTER =
# obsolete.
# This tag requires that the tag GENERATE_HTML is set to YES.

HTML_STYLESHEET =
HTML_STYLESHEET =

# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
# cascading style sheets that are included after the standard style sheets
Expand Down
25 changes: 12 additions & 13 deletions cpp/doxygen/developer_guide/DEVELOPER_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ refer to these additional files for further documentation of libcuspatial best p
* [Documentation Guide](DOCUMENTATION.md) for guidelines on documenting libcuspatial code.
* [Testing Guide](TESTING.md) for guidelines on writing unit tests.
* [Benchmarking Guide](BENCHMARKING.md) for guidelines on writing unit benchmarks.
* [Refactoring Guide](REFACTORING_GUIDE.md) for guidelines on refactoring legacy column-based APIs
into header-only APIs.
* [Header-only API Guide](HEADER_ONLY_API_GUIDE.md) for guidelines on the header-only API and
column-based API.

# Overview

Expand Down Expand Up @@ -38,27 +38,26 @@ TODO: add terms

External/public libcuspatial APIs are grouped based on functionality into an appropriately titled
header file in `cuspatial/cpp/include/cuspatial/`. For example,
`cuspatial/cpp/include/cuspatial/coordinate_transform.hpp` contains the declarations of public API
functions related to transforming coordinates. Note the `.hpp` file extension used to indicate a
C++ header file that can be included from a `.cpp` source file.
`cuspatial/cpp/include/cuspatial/projection.hpp` contains the declarations of public API
functions related to coordinate projection transforms. Note the `.hpp` file extension used to
indicate a C++ header file that can be included from a `.cpp` source file.

Header files should use the `#pragma once` include guard.

The naming of public column-based cuSpatial API headers should be consistent with the name of the
folder that contains the source files that implement the API. For example, the implementation of the
APIs found in `cuspatial/cpp/include/cuspatial/trajectory.hpp` are located in
`cuspatial/src/trajectory`. This rule obviously does not apply to the header-only API, since the
headers are the source files.
The folder that contains the source files that implement an API should be named consistently with
the name of the of the header for the API. For example, the implementation of the APIs found in
`cuspatial/cpp/include/cuspatial/trajectory.hpp` are located in `cuspatial/src/trajectory`. This
rule obviously does not apply to the header-only API, since the headers are the source files.

Likewise, unit tests reside in folders corresponding to the names of the API headers, e.g.
trajectory.hpp tests are in `cuspatial/tests/trajectory/`.

Internal API headers containing `detail` namespace definitions that are used across translation
units inside libcuspatial should be placed in `include/cuspatial/detail`.

Note that (currently) header-only API files are in `include/cuspatial/experimental`, and their tests
are in `tests/experimental`. When the header-only refactoring is complete these should be renamed or
split into a separate library.
Header-only API files and column-based API headers are stored together in `include/cuspatial`. The
former use the `.cuh` extension because they almost universally require CUDA compilation. The latter
use the `.hpp` extension because they can be compiled with a standard C++ compiler.

## File extensions

Expand Down
Loading

0 comments on commit 713a27a

Please sign in to comment.