Releases: rapidsai/cuspatial
Releases · rapidsai/cuspatial
v23.06.00
🚨 Breaking Changes
- Reorganize cuSpatial headers (#1097) @harrism
- Update minimum Python version to Python 3.9 (#1089) @shwina
- Move
experimental
headers into maininclude/cuspatial
directory (#1081) @harrism - Improve Hausdorff Many Column Performance (#916) @isVoid
🐛 Bug Fixes
- Fix scatter bug due to overlapping range in
pairwise_linestring_intersection
(#1152) @isVoid - Pin cuml dependency in notebook testing environment to nightlies (#1110) @isVoid
- Fix a bug in point-in-polygon kernel: if the point is collinear with an edge, result is asserted false (#1108) @isVoid
- Fix a bug in segment intersection primitive where two collinear segment touch at endpoints is miscomputed as a degenerate segment (#1093) @isVoid
- Update
CMAKE_CUDA_ARCHITECTURE
to use new value (#1070) @isVoid - Bug fix in
pairwise_linestring_intersection
(#1069) @isVoid
📖 Documentation
- Add documentation for
pairwise_linestring_polygon_distance
,pairwise_polygon_distance
(#1145) @isVoid - Make User Guide appear in Docs page header (#1133) @jarmak-nv
- Add Hausdorff Clustering Notebooks (#922) @isVoid
🚀 New Features
- Add Benchmark to
pairwise_linestring_polygon_distance
(#1153) @isVoid - Adds
pairwise_point_polygon_distance
benchmark (#1131) @isVoid - Reorganize cuSpatial headers (#1097) @harrism
- Python API for
pairwise_polygon_distance
(#1074) @isVoid - Column API for
pairwise_polygon_distance
(#1073) @isVoid - Header only API for polygon-polygon distance (#1065) @isVoid
- Python API for linestring polygon distance (#1031) @isVoid
- Column API for linestring-polygon distance (#1030) @isVoid
🛠️ Improvements
- Fix update version (#1187) @raydouglass
- Fix
cudf::column
constructor args (#1151) @trxcllnt - cuSpatial pip packages (#1148) @trxcllnt
- Refactor
ST_Distance
header only API (#1143) @isVoid - Run docs nightly (#1141) @AyodeAwe
- Add
multilinestring_segment_manager
for segment related methods in multilinestring ranges (#1134) @isVoid - Improve zipcode counting notebook by adding GPU backed WKT parser (#1130) @isVoid
- Delete add_issue_to_project.yml (#1129) @jarmak-nv
- Bump Gtest version following Rapids-cmake change (#1126) @isVoid
- Refactor ST_Distance Column API and Cython (#1124) @isVoid
- Reorganize src, tests, and benchmarks (#1115) @harrism
- Add Legal Terms to Trajectory Clustering Notebook (#1111) @isVoid
- Enable sccache hits from local builds (#1109) @AyodeAwe
- Revert to branch-23.06 for shared-action-workflows (#1107) @shwina
- Update minimum Python version to Python 3.9 (#1089) @shwina
- Remove usage of rapids-get-rapids-version-from-git (#1088) @jjacobelli
- Add
contains
predicate. (#1086) @thomcom - Binary Predicate Test Dispatching (#1085) @thomcom
- Move
experimental
headers into maininclude/cuspatial
directory (#1081) @harrism - Update clang-format to 15.0.7 (#1072) @bdice
- Use ARC V2 self-hosted runners for GPU jobs (#1066) @jjacobelli
- Implement and Test All non-multi-Feature Spatial Predicate Combinations (#1064) @thomcom
- Reduced equals time and fixed a bug. (#1051) @thomcom
- use make_device_vector in pairwise_point_in_polygon_test (#1049) @cwharris
- Use thrust::host_vector instead of std::vector<bool> in tests (#1048) @cwharris
- Branch 23.06 merge 23.04 (2) (#1035) @harrism
- Pairwise Multipoint Equals Count function (#1022) @thomcom
- Branch 23.06 merge 23.04 (#1021) @harrism
- Add GTC 2023 Reverse GeoCoding Demo Notebook (#1001) @thomcom
- Improve Hausdorff Many Column Performance (#916) @isVoid
v23.04.00
🚨 Breaking Changes
- Consistently validate polygon inputs for GeoArrow offset format (#973) @harrism
- Remove cubic spline interpolation (#959) @harrism
- Refactors API to accept GeoSeries input for projection and trajectory functions (#955) @isVoid
- Refactors
filtering.py
,indexing.py
to Accept GeoSeries (#938) @isVoid - Refactors
bounding.py
to accept GeoSeries Input (#934) @isVoid - Remove shapefile reader, conda GDAL dependency, move cmake gdal dependency to cpp tests only (#932) @harrism
- Refactor
directed_hausdorff_distance
andhaversine_distance
intoGeoSeries
Interface (#924) @isVoid
🐛 Bug Fixes
- Bug Fix: point-in-multipolygon reduction using the wrong key-compare functor (#1043) @isVoid
- Fix quotes in backticks in Developer Guide (#1034) @harrism
- Attempt to Fix Broken C++ Build After
cudftestutil
is Made a Shared Lib (#996) @isVoid - Consistently validate polygon inputs for GeoArrow offset format (#973) @harrism
- Fix OB bug in
linestring_intersection_intermediates.remove_if
Function (#945) @isVoid - Fix broken
point_indices
methods inPolygonGeoColumnAccessor
(#907) @isVoid - Fix multiple bugs in user guide (#906) @isVoid
_from_point_xy
improvements (#905) @isVoid- Add
valid_count
andhas_nulls
to GeoColumn (#894) @thomcom
📖 Documentation
- : Fix linestring link in readme (#1003) @jarmak-nv
- : Move build instructions to dev guide (#999) @jarmak-nv
- Add
pairwise_linestring_intersection
example in user guide (#989) @isVoid - Update cuSpatial Readme (#977) @jarmak-nv
- Add ZipCode Counting Notebook (#919) @isVoid
🚀 New Features
- Add segment Iterators, test multi*_range and miscellaneous lazy iterator additions (#1026) @isVoid
- Add Header Only API for Linestring-Polygon Distance (#1011) @isVoid
- Add
geometry_generator
factory for programmatic generation of geometry arrays (#998) @isVoid - Add python API
pairwise_point_polygon_distance
(#988) @isVoid - Add column API for
pairwise_point_polygon_distance
(#984) @isVoid - Add Header-Only
point_polygon_distance
, add non-owning polygon objects (#976) @isVoid - Remove cubic spline interpolation (#959) @harrism
- Remove shapefile reader, conda GDAL dependency, move cmake gdal dependency to cpp tests only (#932) @harrism
- Add
from_linestrings_xy
andfrom_polygons_xy
(#928) @thomcom - Implement
geom_equals
and binary predicates that depend only on it. (#926) @thomcom - Add
apply_boolean_mask
Feature (#918) @isVoid - Add C++ Column API and Python API for
pairwise_linestring_intersection
(#862) @isVoid
🛠️ Improvements
- Refactor spatial join tests (#1019) @harrism
- Reduce gtest times (#1018) @harrism
- Intersection only predicates (#1016) @thomcom
- Updated binpred architecture (#1009) @thomcom
- Add
dependency-file-generator
aspre-commit
hook (#1008) @ajschmidt8 - Header-only quadtree_point_to_nearest_linestring (#1005) @harrism
- Add codespell as a linter (#992) @bdice
- Pass
AWS_SESSION_TOKEN
andSCCACHE_S3_USE_SSL
vars to conda build (#982) @ajschmidt8 - Header-only
quadtree_point_in_polygon
(#979) @harrism - Update aarch64 to GCC 11 (#978) @bdice
- Remove GDAL dependency in quadtree spatial join tests. (#974) @harrism
- Enable discussions (#966) @jarmak-nv
- Fix docs build to be
pydata-sphinx-theme=0.13.0
compatible (#964) @galipremsagar - Update
.gitignore
forops-codeowners
(#963) @ajschmidt8 - Update to GCC 11 (#961) @bdice
- Add cuspatial devcontainers (#960) @trxcllnt
- Make docs builds less verbose (#956) @AyodeAwe
- Refactors API to accept GeoSeries input for projection and trajectory functions (#955) @isVoid
- Update Notebook with GeoSeries Usage and Add Notebook Tests (#953) @isVoid
- Refactor functions in
join.py
to accept GeoSeries Input (#948) @isVoid - Skip docs job in nightly runs (#944) @AyodeAwe
- Refactors
filtering.py
,indexing.py
to Accept GeoSeries (#938) @isVoid - Refactors
bounding.py
to accept GeoSeries Input (#934) @isVoid - Remove dead code from ContainsProperlyBinpred paths. (#933) @thomcom
- Refactor
directed_hausdorff_distance
andhaversine_distance
intoGeoSeries
Interface (#924) @isVoid - Reduce error handling verbosity in CI tests scripts (#912) @AjayThorve
- Use quadtree for
.contains_properly
(#910) @thomcom - Update shared workflow branches (#909) @ajschmidt8
- Remove gpuCI scripts. (#904) @bdice
- Allow initialization of a
GeoDataFrame
using acudf.DataFrame
(#895) @thomcom - Move date to build string in
conda
recipe (#882) @ajschmidt8 - Add docs build job (#868) @AyodeAwe
v23.02.00
🚨 Breaking Changes
- Deprecate shapefile reader (#872) @harrism
- Remove deprecated min_size parameter from quadtree_on_points (#843) @harrism
- Remove deprecated lonlat_to_cartesian functions (#842) @harrism
🐛 Bug Fixes
- pre-commit: Update isort version to 5.12.0 (#877) @wence-
- Use vector equivalence macros consistently in header-only API tests. (#873) @harrism
- Fix: Sort Intersection Result by Keys in
intersection_with_duplicate
Test (#857) @isVoid - Add
reset_index
toGeoSeries
andGeoDataFrame
(#856) @thomcom - Update
memory_usage
with tweaked sizes (#855) @thomcom - Fix a bug preventing
align
from working with a basic slice. (#850) @thomcom - Fix failed automerge Branch 23.02 merge 22.12 (#811) @harrism
📖 Documentation
🚀 New Features
- Deprecate shapefile reader (#872) @harrism
- Add Header Only API
pairwise_linestring_intersection
(#852) @isVoid - Adds
remove_if
Function tolinestring_intersection_intermediates
(#851) @isVoid - Add
find_point_on_segment
internal API (#819) @isVoid - Add
find_and_combine_segment
internal API (#818) @isVoid - Add
pairwise_linestring_intersection_with_duplicates
API (#813) @isVoid
🛠️ Improvements
- Update shared workflow branches (#897) @ajschmidt8
- Add print_env.sh to improve bug reporting (#874) @jarmak-nv
- Refactor calls to
data_array_view
(#871) @galipremsagar - Build CUDA 11.8 and Python 3.10 Packages (#865) @bdice
- Update workflows for nightly tests (#864) @ajschmidt8
- Enable
Recently Updated
Check (#863) @ajschmidt8 - Add header-only
cuspatial::join_quadtree_and_bounding_boxes
(#861) @trxcllnt - Remove deprecated min_size parameter from quadtree_on_points (#843) @harrism
- Remove deprecated lonlat_to_cartesian functions (#842) @harrism
- Use Libcudf Test Macro (#841) @isVoid
- Add Missing License in
Distance.py
(#840) @isVoid - Enable copy_prs. (#837) @bdice
- Add GitHub Actions Workflows (#836) @bdice
- Implement all binary operations that depend only on point-in-polygon (#834) @thomcom
- Header-only polygon_bounding_boxes and linestring_bounding_boxes,
make_geometry_id_iterator
utility, andbox<T>
class. (#820) @harrism
v22.12.00
🚨 Breaking Changes
- Update quadtree spatial join docstrings (#797) @trxcllnt
- Rename lonlat_to_cartesian to sinusoidal_projection (#794) @harrism
- Consolidate bounding box code (#793) @harrism
- Globally replace "polyline" with "linestring" (#788) @harrism
- Refactor of
pairwise_linestring_distance
to usemultilinestring_range
, adds support to multilinestring distance (#755) @isVoid - Introduce
multilinestring_range
structure, simplifies point-linestring distance API (#747) @isVoid - Add python bindings for (multi)point-(multi)point distance (#734) @isVoid
- Introduce
multipoint_range
interface; Refactorspoint_distance
API to support multipoint to multipoint distance. (#731) @isVoid
🐛 Bug Fixes
- Add Floating Point Equality Tests to Build List (#812) @isVoid
- Fix a Bug in Segment Intersection Primitive (#808) @isVoid
- Don't use CMake 3.25.0 as it has a FindCUDAToolkit show stopping bug (#805) @robertmaynard
- Fix style checks. (#791) @bdice
- Force using old fmt in nvbench. (#783) @isVoid
- Fix issue with
.loc
returning values out of order. (#782) @thomcom - address issue with vector equivalent utility (#777) @isVoid
📖 Documentation
- Add symlink to
users.ipynb
for notebooks CI (#790) @thomcom - Fix failed automerge (branch 22.12 merge 22.10) (#740) @harrism
🚀 New Features
- Add
find_duplicate_points
Internal API (#815) @isVoid - Add Internal Function
intersection_count_upper_bound
(#795) @isVoid - Support
Multilinestring
in column API and python Bindings forpairwise_linestring_distance
(#786) @isVoid - Introduce Segment Intersection Primitive (#778) @isVoid
- Introduce ULP Based Floating Point Equality Test to Device Function (#773) @isVoid
- Augment Cuspatial Test Utility to Allow User Specified Abs Error (#752) @isVoid
- Create
pairwise_point_in_polygon
to be used by pairwiseGeoSeries
(#750) @thomcom - Replacing markdown issue templates with yml forms (#748) @jarmak-nv
- Introduce
multilinestring_range
structure, simplifies point-linestring distance API (#747) @isVoid - Add python bindings for (multi)point-(multi)point distance (#734) @isVoid
- Introduce
multipoint_range
interface; Refactorspoint_distance
API to support multipoint to multipoint distance. (#731) @isVoid
🛠️ Improvements
- Set max version pin for
gdal
(#806) @ajschmidt8 - Update Dependency List with
dependencies.yaml
(#803) @isVoid - Labeler: Change cpp label to libcuspatial (#800) @jarmak-nv
- Update pre-commit configuration and CI (#799) @bdice
- Update quadtree spatial join docstrings (#797) @trxcllnt
- Rename lonlat_to_cartesian to sinusoidal_projection (#794) @harrism
- Consolidate bounding box code (#793) @harrism
- Globally replace "polyline" with "linestring" (#788) @harrism
- Fix conda channel order (#787) @harrism
- Delete deprecated board GitHub Actions (#779) @jarmak-nv
- Better slicing via
union_offsets
(#776) @thomcom - Header-only refactoring of trajectory_distances_and_speeds (#769) @harrism
- Allow None rows in
GeoSeries
and analign
method to matchGeoPandas
(#760) @thomcom - Refactor of
pairwise_linestring_distance
to usemultilinestring_range
, adds support to multilinestring distance (#755) @isVoid - Remove stale labeler (#751) @raydouglass
- Create
GeoSeries.contains_properly
method using point_in_polygon. (#749) @thomcom - Header-only trajectory_bounding_boxes (#741) @harrism
- Update Conda Recipe and
README.md
(#730) @isVoid - Remove
cudf/cuda.cuh
Dependency (#729) @isVoid
v22.10.00
🚨 Breaking Changes
- Remove lonlat_2d and cartesian_2d types (#662) @harrism
- Add Multi-Geometry support to
point_linestring_distance
and build python bindings (#660) @isVoid - Decouple
interpolate
functions from trajectory (#645) @isVoid
🐛 Bug Fixes
- Fix error in users.ipynb (#726) @thomcom
unwrap_pyoptcol
is missingexcept
keyword that causes exceptions ignored, fixes function bug (#719) @isVoid- Fix all unexecutable code examples I can find. (#693) @thomcom
- Add Union-style indexing to
.points
,.multipoints
,.lines
, and.polygons
GeoSeries
accessors (#685) @thomcom - Rewrite
copy_type_metadata
to reuse the inherited method and handle geocolumns specifically. (#684) @isVoid - Fix
GeoDataframe
slicing issue by adding_slice_
method. (#680) @thomcom - Fix and tidy coordinate_transform_test (#671) @harrism
linestring_distance
Header Only API Returns Past-the-End iterator (#670) @isVoid
📖 Documentation
- Update link to c++ developer guide (#718) @isVoid
- Add C++ doc links to
library_design.md
and minor documentation fixes (#700) @isVoid - Document that minimum required CMake version is now 3.23.1 (#689) @robertmaynard
- Publish Developer Guide (#673) @harrism
- Add TESTING.md and BENCHMARKING.md (#672) @harrism
- Add DOCUMENTATION.md (#667) @harrism
- Branch 22.10 merge 22.08 (#654) @harrism
- Add Developer Guides, replace internal.md, CONTRIBUTING.md (#625) @isVoid
- Add Markdown Parser to Sphinx (#621) @isVoid
- Simplify PR template (#617) @harrism
- Add libcuspatial C++ developer guide. (#606) @harrism
🚀 New Features
- Initialize a
GeoDataFrame
withdict
. (#712) @thomcom - Vectorized Load, refactors
type_utils.hpp
intoiterator_factory.cuh
(#692) @isVoid - Accept
None
and python list inGeoSeries
constructor (#686) @isVoid - Python API for point-linestring nearest points (#681) @isVoid
- cuSpatial Python User Guide (#666) @thomcom
- Add Multi-Geometry support to
point_linestring_distance
and build python bindings (#660) @isVoid - Add C++ API for
point_linestring_nearest_points
(#658) @isVoid - Auto-add new Issues and PRs to cuspatial's project (#618) @jarmak-nv
- Integrate
GeoSeries
withread_polygon_shapefile
(#609) @thomcom - Memory_usage method for GeoSeries/GeoDataFrame and
GeoDataFrame
refactor. (#604) @thomcom - Add Point Linestring Distance (#573) @isVoid
🛠️ Improvements
- Update to the latest version 3 of GDAL. (#675) @thomcom
- Expand expect_vector_equivalent to handle std::vector of vec_2d<T> and move traits out of detail (#669) @harrism
- Statically link all CUDA toolkit libraries (#665) @trxcllnt
- Remove lonlat_2d and cartesian_2d types (#662) @harrism
- Rename Test Folders to Align with Module Names (#661) @isVoid
- Move
GeoSeries
GeoDataframe
intocore
package and hide column implementation in internal_column
package (#657) @isVoid - Refactor spatial related functions under
spatial
package (#656) @isVoid - Add Missing Thrust Headers for Thrust 1.17 (#655) @isVoid
- Decouple
interpolate
functions from trajectory (#645) @isVoid - Add header only
cuspatial::quadtree_on_points
(#639) @trxcllnt - Header-only refactoring of derive_trajectories (#628) @harrism
- Add python benchmarks. (#600) @thomcom
- Fix compile error in distance benchmark (#596) @trxcllnt
v22.08.00
🚨 Breaking Changes
🐛 Bug Fixes
- Fix Broken Link in NYC Taxi Notebook (#616) @isVoid
- Add missing rmm includes (#590) @harrism
- Fix failed automerge 22.06 into 22.08 (#562) @harrism
- Bump cuspatial python version in scikit-build (#550) @isVoid
📖 Documentation
- Defer loading of
custom.js
(#631) @galipremsagar - Use documented header template for
doxygen
(#619) @galipremsagar - Fix issues with day & night modes in python docs (#613) @isVoid
🚀 New Features
- Add NVBench and linestring distance benchmark (#577) @isVoid
- Pairwise Point to Point Distance; Rename Folder
distances
todistance
(#558) @isVoid
🛠️ Improvements
- Bump
gdal
version (#623) @ajschmidt8 - Build benchmarks in CI (#597) @vyasr
- Add benchmark for points_in_spatial_window (#595) @harrism
- Update isort to version 5.10.1 (#589) @vyasr
- Header-only Refactor of
point_in_polygon
(#587) @isVoid - Remove GeoArrow glue code replacing gpu storage with cudf.Series and host storage with pyarrow (#585) @thomcom
- Create
pygeoarrow
and use it for cuSpatial feature storage and i/o (#583) @thomcom - Header-only refactoring of
points_in_spatial_window
(#579) @harrism - Update Python version support. (#574) @bdice
- Combine
device_atomics
(#561) @isVoid - Relocate Utility Files (#560) @isVoid
- Fuse
transform
andcopy_if
operations inquadtree_point_in_polygon
(#559) @trxcllnt - Remove
itstimestamp
andtypes.hpp
(#554) @isVoid - Change build.sh to find C++ library by default and avoid shadowing CMAKE_ARGS (#543) @vyasr
- Add missing Thrust includes (#539) @bdice
- Refactor Hausdorff distance to header-only API (#538) @harrism
v22.06.00
🐛 Bug Fixes
- Fix out of bounds access in spline interpolation (#544) @vyasr
- Fix
libcuspatial
recipe dependencies (#513) @ajschmidt8
📖 Documentation
- Add Doxygen Documentation for
libcuspatial
(#534) @isVoid - add units to haversine distance docstring (#522) @bandersen23
- Merge branch-22.04 into branch-22.06 (#518) @harrism
🚀 New Features
- Refactor
linestring_distance
to header only API (#526) @isVoid - Python Bindings for Pairwise Linestring Distance (#521) @isVoid
- Refactor lonlat_to_cartesian to header-only API (#514) @harrism
- C++ pairwise linestring distance (#510) @isVoid
🛠️ Improvements
- Fix library directory for installation (#537) @vyasr
- Fix conda recipes (#532) @Ethyling
- Fix various issues with CMake exports (#527) @vyasr
- Build cuspatial with scikit-build (#524) @vyasr
- Update Documentation with Pydata Sphinx Theme, and more (#523) @isVoid
- Use conda to build python packages during GPU tests (#517) @Ethyling
- Replace
CUDA_TRY
withCUSPATIAL_CUDA_TRY
(#516) @isVoid - Use rapids-cmake for builds (#515) @vyasr
- Update black to 22.3.0, update usage of libcudf macros, and remove direct column indexing (#511) @charlesbluca
- Enable building static libs (#506) @trxcllnt
- Add clang-format to pre-commit hook (#505) @isVoid
- Add libcuspatial-tests package (#499) @Ethyling
- Use conda compilers (#495) @Ethyling
- Build packages using mambabuild (#486) @Ethyling
- Refactor haversine_distance to a header-only API (#477) @harrism
v22.04.00
🐛 Bug Fixes
📖 Documentation
- Improve point_in_polygon documentation regarding poly_ring_offsets (#497) @harrism
- Fix documentation of return type of quadtree_point_in_polygon (#490) @harrism
🛠️ Improvements
- Temporarily disable new
ops-bot
functionality (#501) @ajschmidt8 - Pin gtest/gmock to 1.10.0 in dev envs (#498) @trxcllnt
- Add
.github/ops-bot.yaml
config file (#496) @ajschmidt8 - Add CMake
install
rule for tests (#488) @ajschmidt8 - replace
ccache
withsccache
(#483) @AyodeAwe
v22.02.00
🐛 Bug Fixes
- Always upload cuspatial packages (#481) @raydouglass
- Remove use of libcudf's CUDA_HOST_DEVICE macro (#475) @harrism
🛠️ Improvements
- Prepare upload scripts for Python 3.7 removal (#479) @Ethyling
- Fix
test_pip_bitmap_column_to_binary_array
test (#472) @Ethyling - Fix imports tests syntax (#471) @Ethyling
- Remove
IncludeCategories
from.clang-format
(#470) @codereport - Fix Forward-Merge Conflicts in #464 (#466) @ajschmidt8
v21.12.00
🐛 Bug Fixes
🛠️ Improvements
- Update DEFAULT_CUDA_VER in ci/cpu/prebuild.sh (#468) @Ethyling
- Fix Changelog Merge Conflicts for
branch-21.12
(#467) @ajschmidt8 - Upgrade
clang
to11.1.0
(#463) @galipremsagar - NVCC warnings are errors (#458) @trxcllnt
- Update
conda
recipes for Enhanced Compatibility effort (#457) @ajschmidt8