diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 6923ee31f..ecf4206c7 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -14,6 +14,7 @@ jobs: needs: - checks - conda-cpp-build + - conda-cpp-checks - conda-cpp-tests - conda-python-build - conda-python-tests @@ -37,6 +38,13 @@ jobs: uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-build.yaml@branch-24.10 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 + with: + build_type: pull-request + enable_check_symbols: true conda-cpp-tests: needs: conda-cpp-build secrets: inherit diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 05323103b..493eca446 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -14,6 +14,15 @@ on: type: string jobs: + conda-cpp-checks: + secrets: inherit + uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-post-build-checks.yaml@branch-24.10 + with: + build_type: nightly + branch: ${{ inputs.branch }} + date: ${{ inputs.date }} + sha: ${{ inputs.sha }} + enable_check_symbols: true conda-cpp-tests: secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@branch-24.10 diff --git a/ci/release/update-version.sh b/ci/release/update-version.sh index bc80d2c07..3f00dd7fb 100755 --- a/ci/release/update-version.sh +++ b/ci/release/update-version.sh @@ -43,6 +43,7 @@ done sed_runner "s/RAPIDS_VERSION_NUMBER=\".*/RAPIDS_VERSION_NUMBER=\"${NEXT_SHORT_TAG}\"/g" ci/build_docs.sh DEPENDENCIES=( + pylibcudf cudf cuml cuspatial diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 8e40dd690..cea69ed02 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -39,6 +39,7 @@ dependencies: - proj - pydata-sphinx-theme!=0.14.2 - pydeck +- pylibcudf==24.10.*,>=0.0.0a0 - pytest - pytest-cov - pytest-xdist diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 26e3f0563..65351ede7 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -41,6 +41,7 @@ dependencies: - proj - pydata-sphinx-theme!=0.14.2 - pydeck +- pylibcudf==24.10.*,>=0.0.0a0 - pytest - pytest-cov - pytest-xdist diff --git a/conda/recipes/cuspatial/meta.yaml b/conda/recipes/cuspatial/meta.yaml index d6d97c3a6..14c1dca3e 100644 --- a/conda/recipes/cuspatial/meta.yaml +++ b/conda/recipes/cuspatial/meta.yaml @@ -60,6 +60,7 @@ requirements: {% endif %} - cuda-version ={{ cuda_version }} - cudf ={{ minor_version }} + - pylibcudf ={{ minor_version }} - cython >=3.0.0 - libcuspatial ={{ version }} - python @@ -74,6 +75,7 @@ requirements: {% endif %} - {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }} - cudf ={{ minor_version }} + - pylibcudf ={{ minor_version }} - geopandas >=0.11.0 - numpy >=1.23,<3.0a0 - python diff --git a/cpp/include/cuspatial/cuda_utils.hpp b/cpp/include/cuspatial/cuda_utils.hpp index f46fddfcb..28353ad2e 100644 --- a/cpp/include/cuspatial/cuda_utils.hpp +++ b/cpp/include/cuspatial/cuda_utils.hpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022, NVIDIA CORPORATION. + * Copyright (c) 2022-2024, NVIDIA CORPORATION. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,8 +19,10 @@ #ifdef __CUDACC__ #define CUSPATIAL_HOST_DEVICE __host__ __device__ +#define CUSPATIAL_KERNEL __global__ static #else #define CUSPATIAL_HOST_DEVICE +#define CUSPATIAL_KERNEL #endif /** diff --git a/cpp/include/cuspatial/detail/distance/hausdorff.cuh b/cpp/include/cuspatial/detail/distance/hausdorff.cuh index aa955a7d6..aa3484fa7 100644 --- a/cpp/include/cuspatial/detail/distance/hausdorff.cuh +++ b/cpp/include/cuspatial/detail/distance/hausdorff.cuh @@ -82,7 +82,7 @@ constexpr auto magnitude_squared(T a, T b) * @param results directed Hausdorff distances computed by kernel */ template -__global__ void kernel_hausdorff( +CUSPATIAL_KERNEL void kernel_hausdorff( Index num_points, PointIt points, Index num_spaces, OffsetIt space_offsets, OutputIt results) { using Point = typename std::iterator_traits::value_type; diff --git a/cpp/include/cuspatial/detail/find/find_and_combine_segment.cuh b/cpp/include/cuspatial/detail/find/find_and_combine_segment.cuh index 2cdbfd425..ca86096be 100644 --- a/cpp/include/cuspatial/detail/find/find_and_combine_segment.cuh +++ b/cpp/include/cuspatial/detail/find/find_and_combine_segment.cuh @@ -48,9 +48,9 @@ namespace detail { * 2. Repeat 1 until all mergeable group is processed. */ template -void __global__ simple_find_and_combine_segments_kernel(OffsetRange offsets, - SegmentRange segments, - OutputIt merged_flag) +CUSPATIAL_KERNEL void simple_find_and_combine_segments_kernel(OffsetRange offsets, + SegmentRange segments, + OutputIt merged_flag) { for (auto pair_idx : ranger::grid_stride_range(offsets.size() - 1)) { // Zero-initialize flags for all segments in current space. diff --git a/cpp/include/cuspatial/detail/find/find_duplicate_points.cuh b/cpp/include/cuspatial/detail/find/find_duplicate_points.cuh index de18bb927..f78424ebe 100644 --- a/cpp/include/cuspatial/detail/find/find_duplicate_points.cuh +++ b/cpp/include/cuspatial/detail/find/find_duplicate_points.cuh @@ -34,8 +34,8 @@ namespace detail { * @brief Kernel to compute duplicate points in each multipoint. Naive N^2 algorithm. */ template -void __global__ find_duplicate_points_kernel_simple(MultiPointRange multipoints, - OutputIt duplicate_flags) +CUSPATIAL_KERNEL void find_duplicate_points_kernel_simple(MultiPointRange multipoints, + OutputIt duplicate_flags) { for (auto idx : ranger::grid_stride_range(multipoints.size())) { auto multipoint = multipoints[idx]; diff --git a/cpp/include/cuspatial/detail/intersection/linestring_intersection_count.cuh b/cpp/include/cuspatial/detail/intersection/linestring_intersection_count.cuh index b164fa729..19009c06c 100644 --- a/cpp/include/cuspatial/detail/intersection/linestring_intersection_count.cuh +++ b/cpp/include/cuspatial/detail/intersection/linestring_intersection_count.cuh @@ -34,10 +34,11 @@ template -__global__ void count_intersection_and_overlaps_simple(MultiLinestringRange1 multilinestrings1, - MultiLinestringRange2 multilinestrings2, - OutputIt1 point_count_it, - OutputIt2 segment_count_it) +CUSPATIAL_KERNEL void count_intersection_and_overlaps_simple( + MultiLinestringRange1 multilinestrings1, + MultiLinestringRange2 multilinestrings2, + OutputIt1 point_count_it, + OutputIt2 segment_count_it) { using T = typename MultiLinestringRange1::element_t; for (auto idx : ranger::grid_stride_range(multilinestrings1.num_points())) { diff --git a/cpp/include/cuspatial/detail/intersection/linestring_intersection_with_duplicates.cuh b/cpp/include/cuspatial/detail/intersection/linestring_intersection_with_duplicates.cuh index f1a365555..5d2165437 100644 --- a/cpp/include/cuspatial/detail/intersection/linestring_intersection_with_duplicates.cuh +++ b/cpp/include/cuspatial/detail/intersection/linestring_intersection_with_duplicates.cuh @@ -394,17 +394,18 @@ template -void __global__ pairwise_linestring_intersection_simple(MultiLinestringRange1 multilinestrings1, - MultiLinestringRange2 multilinestrings2, - TempIt1 n_points_stored, - TempIt2 n_segments_stored, - Offsets1 num_points_offsets_first, - Offsets2 num_segments_offsets_first, - Offsets3 num_points_per_pair_first, - IdRanges point_ids_range, - IdRanges segment_ids_range, - OutputIt1 points_first, - OutputIt2 segments_first) +CUSPATIAL_KERNEL void pairwise_linestring_intersection_simple( + MultiLinestringRange1 multilinestrings1, + MultiLinestringRange2 multilinestrings2, + TempIt1 n_points_stored, + TempIt2 n_segments_stored, + Offsets1 num_points_offsets_first, + Offsets2 num_segments_offsets_first, + Offsets3 num_points_per_pair_first, + IdRanges point_ids_range, + IdRanges segment_ids_range, + OutputIt1 points_first, + OutputIt2 segments_first) { using T = typename MultiLinestringRange1::element_t; using types_t = uint8_t; diff --git a/cpp/include/cuspatial/detail/kernel/pairwise_distance.cuh b/cpp/include/cuspatial/detail/kernel/pairwise_distance.cuh index 9786681d9..e5eaf7259 100644 --- a/cpp/include/cuspatial/detail/kernel/pairwise_distance.cuh +++ b/cpp/include/cuspatial/detail/kernel/pairwise_distance.cuh @@ -48,10 +48,10 @@ namespace detail { * @note This kernel does not compute pairs that contains empty geometry. */ template -__global__ void linestring_distance(MultiLinestringRange1 multilinestrings1, - MultiLinestringRange2 multilinestrings2, - thrust::optional intersects, - OutputIt distances_first) +CUSPATIAL_KERNEL void linestring_distance(MultiLinestringRange1 multilinestrings1, + MultiLinestringRange2 multilinestrings2, + thrust::optional intersects, + OutputIt distances_first) { using T = typename MultiLinestringRange1::element_t; @@ -91,10 +91,10 @@ __global__ void linestring_distance(MultiLinestringRange1 multilinestrings1, * set to nullopt, no distance computation will be bypassed. */ template -__global__ void point_linestring_distance(MultiPointRange multipoints, - MultiLinestringRange multilinestrings, - thrust::optional intersects, - OutputIterator distances) +CUSPATIAL_KERNEL void point_linestring_distance(MultiPointRange multipoints, + MultiLinestringRange multilinestrings, + thrust::optional intersects, + OutputIterator distances) { using T = typename MultiPointRange::element_t; diff --git a/cpp/include/cuspatial/detail/pairwise_multipoint_equals_count.cuh b/cpp/include/cuspatial/detail/pairwise_multipoint_equals_count.cuh index 141a85d61..157c32485 100644 --- a/cpp/include/cuspatial/detail/pairwise_multipoint_equals_count.cuh +++ b/cpp/include/cuspatial/detail/pairwise_multipoint_equals_count.cuh @@ -43,9 +43,9 @@ namespace cuspatial { namespace detail { template -void __global__ pairwise_multipoint_equals_count_kernel(MultiPointRangeA lhs, - MultiPointRangeB rhs, - OutputIt output) +CUSPATIAL_KERNEL void pairwise_multipoint_equals_count_kernel(MultiPointRangeA lhs, + MultiPointRangeB rhs, + OutputIt output) { using T = typename MultiPointRangeA::point_t::value_type; diff --git a/cpp/include/cuspatial/detail/point_linestring_nearest_points.cuh b/cpp/include/cuspatial/detail/point_linestring_nearest_points.cuh index f085204eb..13270a7cc 100644 --- a/cpp/include/cuspatial/detail/point_linestring_nearest_points.cuh +++ b/cpp/include/cuspatial/detail/point_linestring_nearest_points.cuh @@ -54,18 +54,18 @@ template -void __global__ -pairwise_point_linestring_nearest_points_kernel(OffsetIteratorA points_geometry_offsets_first, - OffsetIteratorA points_geometry_offsets_last, - Vec2dItA points_first, - Vec2dItA points_last, - OffsetIteratorB linestring_geometry_offsets_first, - OffsetIteratorB linestring_geometry_offsets_last, - OffsetIteratorC linestring_part_offsets_first, - OffsetIteratorC linestring_part_offsets_last, - Vec2dItB linestring_points_first, - Vec2dItB linestring_points_last, - OutputIt output_first) +CUSPATIAL_KERNEL void pairwise_point_linestring_nearest_points_kernel( + OffsetIteratorA points_geometry_offsets_first, + OffsetIteratorA points_geometry_offsets_last, + Vec2dItA points_first, + Vec2dItA points_last, + OffsetIteratorB linestring_geometry_offsets_first, + OffsetIteratorB linestring_geometry_offsets_last, + OffsetIteratorC linestring_part_offsets_first, + OffsetIteratorC linestring_part_offsets_last, + Vec2dItB linestring_points_first, + Vec2dItB linestring_points_last, + OutputIt output_first) { using T = iterator_vec_base_type; using IndexType = iterator_value_type; diff --git a/cpp/include/cuspatial_test/geometry_generator.cuh b/cpp/include/cuspatial_test/geometry_generator.cuh index 8c17ff291..fbf6f02d6 100644 --- a/cpp/include/cuspatial_test/geometry_generator.cuh +++ b/cpp/include/cuspatial_test/geometry_generator.cuh @@ -194,8 +194,8 @@ ring_centroid_displacement(vec_2d centroid, std::size_t ring_local_idx, T rad * @param params Parameters to generate the mulitpolygons */ template -void __global__ generate_multipolygon_array_coordinates(MultipolygonRange multipolygons, - multipolygon_generator_parameter params) +CUSPATIAL_KERNEL void generate_multipolygon_array_coordinates( + MultipolygonRange multipolygons, multipolygon_generator_parameter params) { for (auto idx : ranger::grid_stride_range(multipolygons.num_points())) { auto ring_idx = multipolygons.ring_idx_from_point_idx(idx); diff --git a/cpp/tests/operators/linestrings_test.cu b/cpp/tests/operators/linestrings_test.cu index 7216f276a..2fa44cb43 100644 --- a/cpp/tests/operators/linestrings_test.cu +++ b/cpp/tests/operators/linestrings_test.cu @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2023, NVIDIA CORPORATION. + * Copyright (c) 2022-2024, NVIDIA CORPORATION. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -69,10 +69,10 @@ segment __device__ order_end_points(segment const& seg) } template -__global__ void compute_intersection(segment ab, - segment cd, - Point point_out, - Segment segment_out) +CUSPATIAL_KERNEL void compute_intersection(segment ab, + segment cd, + Point point_out, + Segment segment_out) { auto [p, s] = detail::segment_intersection(ab, cd); point_out[0] = p; diff --git a/cpp/tests/range/multilinestring_range_test.cu b/cpp/tests/range/multilinestring_range_test.cu index 4938e0df4..b4d1fe6de 100644 --- a/cpp/tests/range/multilinestring_range_test.cu +++ b/cpp/tests/range/multilinestring_range_test.cu @@ -38,7 +38,9 @@ using namespace cuspatial; using namespace cuspatial::test; template -void __global__ array_access_tester(MultiLineStringRange mls, std::size_t i, OutputIt output_points) +CUSPATIAL_KERNEL void array_access_tester(MultiLineStringRange mls, + std::size_t i, + OutputIt output_points) { thrust::copy(thrust::seq, mls[i].point_begin(), mls[i].point_end(), output_points); } diff --git a/cpp/tests/range/multipoint_range_test.cu b/cpp/tests/range/multipoint_range_test.cu index 501ddd6cf..3e7546bc5 100644 --- a/cpp/tests/range/multipoint_range_test.cu +++ b/cpp/tests/range/multipoint_range_test.cu @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, NVIDIA CORPORATION. + * Copyright (c) 2023-2024, NVIDIA CORPORATION. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,16 +39,18 @@ using namespace cuspatial; using namespace cuspatial::test; template -void __global__ array_access_tester(MultiPointRange multipoints, - std::size_t i, - OutputIt output_points) +CUSPATIAL_KERNEL void array_access_tester(MultiPointRange multipoints, + std::size_t i, + OutputIt output_points) { using T = typename MultiPointRange::element_t; thrust::copy(thrust::seq, multipoints[i].begin(), multipoints[i].end(), output_points); } template -void __global__ point_accessor_tester(MultiPointRange multipoints, std::size_t i, OutputIt point) +CUSPATIAL_KERNEL void point_accessor_tester(MultiPointRange multipoints, + std::size_t i, + OutputIt point) { using T = typename MultiPointRange::element_t; point[0] = multipoints.point(i); diff --git a/cpp/tests/range/multipolygon_range_test.cu b/cpp/tests/range/multipolygon_range_test.cu index 1e93ef136..f39ffb7e7 100644 --- a/cpp/tests/range/multipolygon_range_test.cu +++ b/cpp/tests/range/multipolygon_range_test.cu @@ -648,7 +648,9 @@ TYPED_TEST(MultipolygonRangeTest, MultipolygonAsMultiPoint3) } template -__global__ void array_access_tester(MultiPolygonRange rng, std::size_t i, PointOutputIt output) +CUSPATIAL_KERNEL void array_access_tester(MultiPolygonRange rng, + std::size_t i, + PointOutputIt output) { thrust::copy(thrust::seq, rng[i].point_begin(), rng[i].point_end(), output); } diff --git a/dependencies.yaml b/dependencies.yaml index 810dd82b5..3bb921e6b 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -424,6 +424,7 @@ dependencies: - output_types: conda packages: - &cudf_unsuffixed cudf==24.10.*,>=0.0.0a0 + - &pylibcudf_unsuffixed pylibcudf==24.10.*,>=0.0.0a0 - output_types: requirements packages: # pip recognizes the index as a global option for the requirements.txt file @@ -437,11 +438,13 @@ dependencies: cuda_suffixed: "true" packages: - cudf-cu12==24.10.*,>=0.0.0a0 + - pylibcudf-cu12==24.10.*,>=0.0.0a0 - matrix: cuda: "11.*" cuda_suffixed: "true" packages: - cudf-cu11==24.10.*,>=0.0.0a0 + - pylibcudf-cu11==24.10.*,>=0.0.0a0 - {matrix: null, packages: [*cudf_unsuffixed]} depends_on_cuml: diff --git a/python/cuproj/pyproject.toml b/python/cuproj/pyproject.toml index a368d7fc9..02e4cc755 100644 --- a/python/cuproj/pyproject.toml +++ b/python/cuproj/pyproject.toml @@ -65,7 +65,7 @@ force_grid_wrap = 0 combine_as_imports = true order_by_type = true known_dask = ["dask", "distributed", "dask_cuda"] -known_rapids = ["rmm", "cudf"] +known_rapids = ["rmm", "cudf", "pylibcudf"] known_first_party = ["cuspatial", "cuproj"] default_section = "THIRDPARTY" sections = [ diff --git a/python/cuspatial/cuspatial/_lib/cpp/column/geometry_column_view.pxd b/python/cuspatial/cuspatial/_lib/cpp/column/geometry_column_view.pxd index 2b867a069..2c2568e7b 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/column/geometry_column_view.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/column/geometry_column_view.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2023, NVIDIA CORPORATION. +# Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.types cimport collection_type_id, geometry_type_id diff --git a/python/cuspatial/cuspatial/_lib/cpp/distance.pxd b/python/cuspatial/cuspatial/_lib/cpp/distance.pxd index 98925a516..855c8b527 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/distance.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/distance.pxd @@ -3,9 +3,9 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport pair -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/cpp/distance/polygon_distance.pxd b/python/cuspatial/cuspatial/_lib/cpp/distance/polygon_distance.pxd index 3a92adae3..2c9ca9826 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/distance/polygon_distance.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/distance/polygon_distance.pxd @@ -2,7 +2,7 @@ from libcpp.memory cimport unique_ptr -from cudf._lib.pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column cimport column from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/cpp/linestring_bounding_boxes.pxd b/python/cuspatial/cuspatial/_lib/cpp/linestring_bounding_boxes.pxd index 8622a417c..6d95074af 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/linestring_bounding_boxes.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/linestring_bounding_boxes.pxd @@ -2,8 +2,8 @@ from libcpp.memory cimport unique_ptr -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table cdef extern from "cuspatial/bounding_boxes.hpp" \ diff --git a/python/cuspatial/cuspatial/_lib/cpp/linestring_intersection.pxd b/python/cuspatial/cuspatial/_lib/cpp/linestring_intersection.pxd index 0478c87de..e6a3a93f7 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/linestring_intersection.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/linestring_intersection.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2023, NVIDIA CORPORATION. +# Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/cpp/nearest_points.pxd b/python/cuspatial/cuspatial/_lib/cpp/nearest_points.pxd index 826505c30..3151be093 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/nearest_points.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/nearest_points.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2022-2023, NVIDIA CORPORATION. +# Copyright (c) 2022-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.optional cimport optional diff --git a/python/cuspatial/cuspatial/_lib/cpp/pairwise_multipoint_equals_count.pxd b/python/cuspatial/cuspatial/_lib/cpp/pairwise_multipoint_equals_count.pxd index 5af573bd0..463c8998b 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/pairwise_multipoint_equals_count.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/pairwise_multipoint_equals_count.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2023, NVIDIA CORPORATION. +# Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/cpp/pairwise_point_in_polygon.pxd b/python/cuspatial/cuspatial/_lib/cpp/pairwise_point_in_polygon.pxd index a9f1f7622..07e8d1d92 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/pairwise_point_in_polygon.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/pairwise_point_in_polygon.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2022-2023, NVIDIA CORPORATION. +# Copyright (c) 2022-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cuspatial/point_in_polygon.hpp" \ diff --git a/python/cuspatial/cuspatial/_lib/cpp/point_in_polygon.pxd b/python/cuspatial/cuspatial/_lib/cpp/point_in_polygon.pxd index 94facd936..6bda46812 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/point_in_polygon.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/point_in_polygon.pxd @@ -1,8 +1,9 @@ -# Copyright (c) 2020, NVIDIA CORPORATION. +# Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cuspatial/point_in_polygon.hpp" namespace "cuspatial" nogil: diff --git a/python/cuspatial/cuspatial/_lib/cpp/points_in_range.pxd b/python/cuspatial/cuspatial/_lib/cpp/points_in_range.pxd index d03b3a133..d5b150ed0 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/points_in_range.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/points_in_range.pxd @@ -2,8 +2,10 @@ from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column, column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table, table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cuspatial/points_in_range.hpp" namespace "cuspatial" nogil: diff --git a/python/cuspatial/cuspatial/_lib/cpp/polygon_bounding_boxes.pxd b/python/cuspatial/cuspatial/_lib/cpp/polygon_bounding_boxes.pxd index 45910626b..72bb23e53 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/polygon_bounding_boxes.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/polygon_bounding_boxes.pxd @@ -2,8 +2,8 @@ from libcpp.memory cimport unique_ptr -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table cdef extern from "cuspatial/bounding_boxes.hpp" \ diff --git a/python/cuspatial/cuspatial/_lib/cpp/projection.pxd b/python/cuspatial/cuspatial/_lib/cpp/projection.pxd index 724269486..23a95fc81 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/projection.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/projection.pxd @@ -3,8 +3,8 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cuspatial/projection.hpp" namespace "cuspatial" \ diff --git a/python/cuspatial/cuspatial/_lib/cpp/quadtree.pxd b/python/cuspatial/cuspatial/_lib/cpp/quadtree.pxd index db2dabaca..f3554f5ff 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/quadtree.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/quadtree.pxd @@ -4,10 +4,10 @@ from libc.stdint cimport int8_t from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type cdef extern from "cuspatial/point_quadtree.hpp" namespace "cuspatial" nogil: diff --git a/python/cuspatial/cuspatial/_lib/cpp/spatial_join.pxd b/python/cuspatial/cuspatial/_lib/cpp/spatial_join.pxd index ab96cf53c..2aa024819 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/spatial_join.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/spatial_join.pxd @@ -3,8 +3,9 @@ from libc.stdint cimport int8_t from libcpp.memory cimport unique_ptr -from cudf._lib.column cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table, table_view +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cuspatial/spatial_join.hpp" namespace "cuspatial" nogil: diff --git a/python/cuspatial/cuspatial/_lib/cpp/trajectory.pxd b/python/cuspatial/cuspatial/_lib/cpp/trajectory.pxd index 5940349cc..d15a71c5b 100644 --- a/python/cuspatial/cuspatial/_lib/cpp/trajectory.pxd +++ b/python/cuspatial/cuspatial/_lib/cpp/trajectory.pxd @@ -3,10 +3,10 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type cdef extern from "cuspatial/trajectory.hpp" namespace "cuspatial" nogil: diff --git a/python/cuspatial/cuspatial/_lib/distance.pyx b/python/cuspatial/cuspatial/_lib/distance.pyx index 90e7b5ac0..0295dce92 100644 --- a/python/cuspatial/cuspatial/_lib/distance.pyx +++ b/python/cuspatial/cuspatial/_lib/distance.pyx @@ -4,10 +4,10 @@ from libcpp.memory cimport make_shared, shared_ptr, unique_ptr from libcpp.utility cimport move, pair from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view from cudf._lib.utils cimport columns_from_table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/linestring_bounding_boxes.pyx b/python/cuspatial/cuspatial/_lib/linestring_bounding_boxes.pyx index 4023f4965..0badef0d4 100644 --- a/python/cuspatial/cuspatial/_lib/linestring_bounding_boxes.pyx +++ b/python/cuspatial/cuspatial/_lib/linestring_bounding_boxes.pyx @@ -4,9 +4,9 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table from cudf._lib.utils cimport columns_from_unique_ptr +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table from cuspatial._lib.cpp.linestring_bounding_boxes cimport ( linestring_bounding_boxes as cpp_linestring_bounding_boxes, diff --git a/python/cuspatial/cuspatial/_lib/nearest_points.pyx b/python/cuspatial/cuspatial/_lib/nearest_points.pyx index da24357d3..6f64dba13 100644 --- a/python/cuspatial/cuspatial/_lib/nearest_points.pyx +++ b/python/cuspatial/cuspatial/_lib/nearest_points.pyx @@ -3,7 +3,7 @@ from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.nearest_points cimport ( pairwise_point_linestring_nearest_points as c_func, diff --git a/python/cuspatial/cuspatial/_lib/pairwise_multipoint_equals_count.pyx b/python/cuspatial/cuspatial/_lib/pairwise_multipoint_equals_count.pyx index aea144568..cca06afcc 100644 --- a/python/cuspatial/cuspatial/_lib/pairwise_multipoint_equals_count.pyx +++ b/python/cuspatial/cuspatial/_lib/pairwise_multipoint_equals_count.pyx @@ -1,9 +1,10 @@ -# Copyright (c) 2023, NVIDIA CORPORATION. +# Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport make_shared, shared_ptr, unique_ptr from libcpp.utility cimport move -from cudf._lib.column cimport Column, column +from cudf._lib.column cimport Column +from pylibcudf.libcudf.column.column cimport column from cuspatial._lib.cpp.column.geometry_column_view cimport ( geometry_column_view, diff --git a/python/cuspatial/cuspatial/_lib/pairwise_point_in_polygon.pyx b/python/cuspatial/cuspatial/_lib/pairwise_point_in_polygon.pyx index 8ce2c952e..84b442823 100644 --- a/python/cuspatial/cuspatial/_lib/pairwise_point_in_polygon.pyx +++ b/python/cuspatial/cuspatial/_lib/pairwise_point_in_polygon.pyx @@ -1,9 +1,11 @@ -# Copyright (c) 2022, NVIDIA CORPORATION. +# Copyright (c) 2022-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move -from cudf._lib.column cimport Column, column, column_view +from cudf._lib.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.pairwise_point_in_polygon cimport ( pairwise_point_in_polygon as cpp_pairwise_point_in_polygon, diff --git a/python/cuspatial/cuspatial/_lib/point_in_polygon.pyx b/python/cuspatial/cuspatial/_lib/point_in_polygon.pyx index 1b585614d..833e87cc3 100644 --- a/python/cuspatial/cuspatial/_lib/point_in_polygon.pyx +++ b/python/cuspatial/cuspatial/_lib/point_in_polygon.pyx @@ -1,9 +1,11 @@ -# Copyright (c) 2020, NVIDIA CORPORATION. +# Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move -from cudf._lib.column cimport Column, column, column_view +from cudf._lib.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.point_in_polygon cimport ( point_in_polygon as cpp_point_in_polygon, diff --git a/python/cuspatial/cuspatial/_lib/points_in_range.pyx b/python/cuspatial/cuspatial/_lib/points_in_range.pyx index 4c25c2dbf..833dfbcfa 100644 --- a/python/cuspatial/cuspatial/_lib/points_in_range.pyx +++ b/python/cuspatial/cuspatial/_lib/points_in_range.pyx @@ -3,9 +3,10 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move -from cudf._lib.column cimport Column, column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from cudf._lib.column cimport Column from cudf._lib.utils cimport data_from_unique_ptr +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table from cuspatial._lib.cpp.points_in_range cimport ( points_in_range as cpp_points_in_range, diff --git a/python/cuspatial/cuspatial/_lib/polygon_bounding_boxes.pyx b/python/cuspatial/cuspatial/_lib/polygon_bounding_boxes.pyx index 0f963fd5a..bd01a08f5 100644 --- a/python/cuspatial/cuspatial/_lib/polygon_bounding_boxes.pyx +++ b/python/cuspatial/cuspatial/_lib/polygon_bounding_boxes.pyx @@ -4,9 +4,9 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table from cudf._lib.utils cimport columns_from_unique_ptr +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table from cuspatial._lib.cpp.polygon_bounding_boxes cimport ( polygon_bounding_boxes as cpp_polygon_bounding_boxes, diff --git a/python/cuspatial/cuspatial/_lib/quadtree.pyx b/python/cuspatial/cuspatial/_lib/quadtree.pyx index eb548a882..4f1a8395b 100644 --- a/python/cuspatial/cuspatial/_lib/quadtree.pyx +++ b/python/cuspatial/cuspatial/_lib/quadtree.pyx @@ -6,11 +6,11 @@ from libcpp.pair cimport pair from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type from cudf._lib.utils cimport data_from_unique_ptr +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type from cuspatial._lib.cpp.quadtree cimport ( quadtree_on_points as cpp_quadtree_on_points, diff --git a/python/cuspatial/cuspatial/_lib/spatial.pyx b/python/cuspatial/cuspatial/_lib/spatial.pyx index 6698da904..0afe2484e 100644 --- a/python/cuspatial/cuspatial/_lib/spatial.pyx +++ b/python/cuspatial/cuspatial/_lib/spatial.pyx @@ -5,8 +5,8 @@ from libcpp.pair cimport pair from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.projection cimport ( sinusoidal_projection as cpp_sinusoidal_projection, diff --git a/python/cuspatial/cuspatial/_lib/spatial_join.pyx b/python/cuspatial/cuspatial/_lib/spatial_join.pyx index 045014aba..04e62eff9 100644 --- a/python/cuspatial/cuspatial/_lib/spatial_join.pyx +++ b/python/cuspatial/cuspatial/_lib/spatial_join.pyx @@ -4,9 +4,10 @@ from libc.stdint cimport int8_t from libcpp.memory cimport unique_ptr from libcpp.utility cimport move -from cudf._lib.column cimport Column, column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table, table_view +from cudf._lib.column cimport Column from cudf._lib.utils cimport data_from_unique_ptr, table_view_from_table +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table, table_view from cuspatial._lib.cpp.spatial_join cimport ( join_quadtree_and_bounding_boxes as cpp_join_quadtree_and_bounding_boxes, diff --git a/python/cuspatial/cuspatial/_lib/trajectory.pyx b/python/cuspatial/cuspatial/_lib/trajectory.pyx index df29dc05a..8c183f5f4 100644 --- a/python/cuspatial/cuspatial/_lib/trajectory.pyx +++ b/python/cuspatial/cuspatial/_lib/trajectory.pyx @@ -5,11 +5,11 @@ from libcpp.pair cimport pair from libcpp.utility cimport move from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type from cudf._lib.utils cimport data_from_unique_ptr +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type from cuspatial._lib.cpp.trajectory cimport ( derive_trajectories as cpp_derive_trajectories, diff --git a/python/cuspatial/cuspatial/_lib/utils.pxd b/python/cuspatial/cuspatial/_lib/utils.pxd index ad1714016..5dff013cb 100644 --- a/python/cuspatial/cuspatial/_lib/utils.pxd +++ b/python/cuspatial/cuspatial/_lib/utils.pxd @@ -1,5 +1,5 @@ # Copyright (c) 2022-2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.optional cimport nullopt, optional diff --git a/python/cuspatial/cuspatial/_lib/utils.pyx b/python/cuspatial/cuspatial/_lib/utils.pyx index 4aea62863..9bc0b01ab 100644 --- a/python/cuspatial/cuspatial/_lib/utils.pyx +++ b/python/cuspatial/cuspatial/_lib/utils.pyx @@ -1,6 +1,6 @@ # Copyright (c) 2022-2024, NVIDIA CORPORATION. from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column_view cimport column_view from cuspatial._lib.cpp.optional cimport nullopt, optional diff --git a/python/cuspatial/pyproject.toml b/python/cuspatial/pyproject.toml index 7835a452c..8e7148f0f 100644 --- a/python/cuspatial/pyproject.toml +++ b/python/cuspatial/pyproject.toml @@ -72,6 +72,7 @@ known_dask = [ known_rapids = [ "rmm", "cudf", + "pylibcudf", ] known_first_party = [ "cuspatial",