·
120 commits
to main
since this release
What's Changed
- docs: Link doc to raw GitHub assets by @b4l in #420
- docs(r): update installation command by @eitsupi in #421
- chore(deps): bump savvy-* to v0.9 by @yutannihilation in #426
- chore: Update versions on main for 0.3.0 by @paleolimbot in #411
- Add RS_WorldToRasterCoord variants by @jesspav in #416
- feat(r/sedonadb): Implement
dplyr::select()for sedonadb_dataframe by @paleolimbot in #419 - feat(c/sedona-libgpuspatial): Add GPU-accelerated spatial join library by @pwrliang in #310
- feat(c/sedona-extension): Move FFI scalar kernel definitions to c/sedona-extension and write them in C by @paleolimbot in #407
- chore: Use std::hint::black_box() to avoid deprecated criterion usage by @paleolimbot in #432
- chore(deps): Remove one more
criterion::black_box()and update criterion by @paleolimbot in #433 - feat(rust/sedona-spatial-join): Support sequential spatial index building option by @zhangfengcdt in #362
- Add RS_Rotation by @jesspav in #418
- chore(dev/release) Add publish scripts to crate.io and update rust dependency by @zhangfengcdt in #413
- chore(dev/release): Update release instructions following 0.2.0 release by @paleolimbot in #429
- fix: Fix
bounding_rectmethod to return None instead of (zero, zero) for empty point by @Kontinuation in #438 - chore: Make KnnComponents field optional in SpatialIndex by @Kontinuation in #437
- chore(docs/reference/sql): Use Quarto to render SQL docs pages by @paleolimbot in #434
- feat(c/sedona-geos): ST_ConcaveHull Implementation by @Abeeujah in #431
- chore(docs): Add missing dependency to docs build and ensure build fails if quarto render fails by @paleolimbot in #445
- feat(rust/sedona-raster-functions): Add RS_Envelope by @jesspav in #444
- chore(rust/sedona-functions): Fix ST_LineInterpolatePoint and ST_LineLocatePoint by @yutannihilation in #448
- docs: add iceberg page by @MrPowers in #417
- feat(rust/sedona-functions): Add SRID to ST_GeomFromWKT by @yutannihilation in #449
- chore(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #450
- chore(deps): bump actions/cache from 4 to 5 by @dependabot[bot] in #451
- chore(deps): bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in #452
- chore(deps): bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #453
- chore(deps): bump bindgen from 0.71.1 to 0.72.1 by @dependabot[bot] in #454
- chore(deps): bump which from 6.0.3 to 8.0.0 by @dependabot[bot] in #456
- perf: Implement (2x) faster ST_Buffer kernel using
geoby @petern48 in #233 - docs: add separate pages for ST_Area() and ST_AsBinary() by @MrPowers in #457
- perf(rust/sedona-schema): Improve performance of
deserialize_crs()by @jesspav in #446 - feat(rust/sedona-spatial-join): Add a bounding box sampler for building spatial partitioners or other purposes by @Kontinuation in #442
- feat(rust/sedona-spatial-join): Add spatial partitioners for partitioning spatially joined data by partitioning grids by @Kontinuation in #443
- chore(c/sedona-libgpuspatial): Fix typo in relate.cuh comment (#463) by @Mayankaggarwal8055 in #463
- feat(rust/sedona-raster-functions): Add RS_SRID and RS_CRS by @jesspav in #430
- feat(rust/sedona-geo): ST_ConcaveHull Geo Implementation by @Abeeujah in #462
- feat(sedona-expr,sedona-schema): Implement item-level CRS by @paleolimbot in #410
- feat(rust/sedona-geo): Add ST_AsGeoJSON by @prantogg in #469
- fix(rust/sedona-functions): Let
ST_Collect_Agg()on a Geography return a Geography by @yutannihilation in #467 - chore(rust/sedona-functions): Make ST_Transform not accept geography by @yutannihilation in #478
- chore: Update to Arrow 57, DataFusion 50 by @paleolimbot in #466
- perf: Implement method to directly write GeosGeometry into buffer and use on st_unaryunion + st_buffer by @petern48 in #476
- feat(r/sedonadb): Translate R expressions to DataFusion logical Expr by @paleolimbot in #468
- fix: require comfy-table 7.2+ for set_truncation_indicator method by @zhangfengcdt in #486
- chore(r/sedonadb): Bump savvy to v0.9.2 by @yutannihilation in #494
- perf: Write wkb directly from geos for st_boundary, centroid, concavehull, convexhull, simplify, snap by @petern48 in #493
- chore(r): Add air format + lintr checks to R package by @paleolimbot in #495
- chore(deps): bump lru from 0.12.5 to 0.16.3 by @dependabot[bot] in #496
- chore(ci): Add MacOS Intel wheel build by @paleolimbot in #497
- chore(ci): Add intel MacOS wheels to gemfury upload by @paleolimbot in #500
- feat(rust/sedona): Add Azure Blob Storage support for GeoParquet by @isaaccorley in #479
- feat(rust/sedona-functions,rust/sedona-geo): Add item CRS implementations for existing scalar kernels that can be trivially wrapped by @paleolimbot in #492
- feat(rust/sedona-functions): Implement ST_GeomFromEWKT by @yutannihilation in #498
- feat(rust/sedona-geos): Implement ST_LineMerge() by @yutannihilation in #503
- perf: Use write_geos_geometry() for makevalid, minimumclearance_line, polygonize, simplifypreservetopology, and overlays by @petern48 in #502
- feat(rust/sedona-functions): Implement ST_Affine(), ST_Rotate(), and ST_Scale() by @yutannihilation in #504
- fix(rust/sedona-spatial-join): Fix several bugs related to KNN join by @Kontinuation in #508
- chore: Update ADBC versions and group datafusion- and adbc-aligned dependencies by @paleolimbot in #512
- feat(c/sedona-geos): Implement item crs support for GEOS-based kernels by @paleolimbot in #509
- fix(rust/sedona-spatial-join): Fix KDB partitioner to produce no less than specified number of partitions by @Kontinuation in #513
- chore(rust/sedona-spatial-join): Support right mark joins and enabled tests for all kinds of spatial joins by @Kontinuation in #514
- chore(rust/sedona-spatial-join): More accurate batch in-memory size estimation by @Kontinuation in #515
- feat(rust/sedona-expr): Add GroupsAccumulator to framework and implementation for ST_Envelope_Agg by @paleolimbot in #510
- chore(rust/sedona-spatial-join): Evaluate spatial predicate operands in EvaluateOperandBatchStream by @Kontinuation in #521
- fix(rust/sedona): Strip schema metadata when input uses RecordBatchReaderProvider by @paleolimbot in #517
- feat(rust/sedona-spatial-join) Spatial index supports async batch query and parallel refinement by @Kontinuation in #523
- feat(rust/sedona-spatial-join) Spill EvaluatedBatch and add external evaluated batch stream by @Kontinuation in #522
- feat(rust/sedona-functions): make ST_Translate accept deltaZ arg by @yutannihilation in #524
- chore(rust/sedona-spatial-join): Split large join result batches into smaller ones by @Kontinuation in #525
- feat(rust/sedona-expr): Implement item crs wrapper around aggregate functions by @paleolimbot in #520
- feat(rust/sedona-spatial-join): Add a repartitioner to write spatially repartitioned data to spill files by @Kontinuation in #527
- feat(rust/sedona-functions): Implement
ST_GeomFromWKBUnchecked()by @2010YOUY01 in #533 - fix(sedona-raster-functions): Handle array inputs in coordinate conversion functions by @Kontinuation in #532
- feat(c/sedona-tg): Implement item-crs wrappers for tg predicate kernels by @paleolimbot in #528
- fix(python/sedonadb): Tweaks to support pandas>=3.0 by @paleolimbot in #538
- feat(c/sedona-proj): Implement item crs support for ST_Transform by @paleolimbot in #531
- Update
.asf.yamlcollaborators list by @jbampton in #541 - chore(rust/sedona-spatial-join): Revamp memory reservation pattern for spatial join by @Kontinuation in #534
- chore(rust/sedona-geoparquet): Fix clippy errors by @paleolimbot in #540
- feat(rust/sedona): Improve sd_random_geometry() and expose as a Python function by @paleolimbot in #97
- feat(rust/sedona-functions): Implement ST_AsEWKB with item CRS support by @paleolimbot in #535
- feat(r/sedonadb): Add basic DataFrame API with
sd_select(),sd_transmute(), andsd_filter()by @paleolimbot in #499 - feat(rust/sedona-proj): Let ST_Transform() handle 3D coordinates by @yutannihilation in #544
- chore(deps): bump glam from 0.30.10 to 0.31.0 by @dependabot[bot] in #550
- chore(rust/sedona-spatial-join): Integrate bounding box sampler and spilling support into build side collector by @Kontinuation in #542
- docs: Remove unnecessary ST_SRID in example queries by @yutannihilation in #545
- feat(rust/sedona-spatial-join) Add partitioned index provider by @Kontinuation in #555
- feat(rust/sedona-expr): Pass ConfigOptions into UDFs by @Kontinuation in #557
- feat(rust/sedona-functions): Add ST_GeomFromEWKB and support item crs inputs to ST_SetSRID by @paleolimbot in #547
- fix(python/sedonadb): Ensure that Python UDFs executing with >1 batch do not cause deadlock by @paleolimbot in #558
- chore: Remove use of DataFusionError::Internal for sedonadb internal errors by @paleolimbot in #564
- fix(rust/sedona-raster-functions): RasterExecutor always call the closure only once for scalar raster input by @Kontinuation in #559
- chore(deps): bump bytemuck from 1.24.0 to 1.25.0 by @dependabot[bot] in #569
- feat(rust/sedona-geoparquet): Support
geometry_columnsoption inread_parquet(..)to mark additional geometry columns by @2010YOUY01 in #560 - feat(rust/sedona-spatial-join): Support spatial partitioned spatial join for non-knn predicates by @Kontinuation in #563
- chore(rust/sedona-geometry): Add wkb_rect and clean up tests defining their own rect_wkb functions by @Kontinuation in #572
- feat(rust/sedona-geoparquet): Add read support for Geometry/Geography Parquet types by @paleolimbot in #561
- chore(deps): bump bytes from 1.11.0 to 1.11.1 by @dependabot[bot] in #571
- feat(rust/sedona-geoparquet): prettier spatial pruning metrics display by @2010YOUY01 in #576
- chore(deps): bump time from 0.3.44 to 0.3.47 by @dependabot[bot] in #577
- fix: no-default-features by @b4l in #579
- fix(docs): Sync the main Sedona website design with sedona-db by @jiayuasu in #584
- feat(c/sedona-sedona-libgpuspatial): Refactoring GPU Spatial Join Library by @pwrliang in #556
- feat(rust/sedona-functions): Add item SRID support to geometry constructors by @paleolimbot in #574
- fix(rust/sedona): Fix panic when displaying very long content by @paleolimbot in #565
- feat(rust/sedona-geoparquet): Support WKB validation in
read_parquet()by @2010YOUY01 in #578 - chore(deps): bump rand from 0.9.2 to 0.10.0 by @dependabot[bot] in #582
- feat(rust/sedona-spatial-join): Support partitioned KNN join to handle larger than memory object side by @Kontinuation in #573
- feat(python/sedonadb): Implement parameter binding by @paleolimbot in #575
- feat(rust/sedona-pointcloud) Initial LAZ format support by @b4l in #471
- Docs: add PostGIS integration guide with GeoPandas and ADBC examples by @Mehak3010 in #543
- chore(rust/sedona-spatial-join): Make partitioner not sync, create dedicated partitioner for each task by @Kontinuation in #592
- refactor(rust/sedona-spatial-join): Unify execute and execute_knn, move end-to-end tests in exec.rs to tests directory by @Kontinuation in #593
- refactor(rust/sedona-raster): Pre-downcast band metadata arrays in RasterStructArray by @Kontinuation in #588
- fix(raster): RS_Envelope returns axis-aligned bounding box for skewed rasters by @Kontinuation in #594
- chore(examples): Ensure examples work in all CI jobs by @paleolimbot in #596
- chore(rust/sedona-spatial-join): use RTree partitioner for probe side when partition count > 48 by @Kontinuation in #598
- feat(rust/sedona): Add SedonaFairSpillPool memory pool and CLI memory limit support by @Kontinuation in #599
- feat(rust/sedona-schema): Add Int8, UInt64, Int64 band data types, don't panic in BandMetadataRef by @Kontinuation in #589
- fix(rust/sedona-spatial-join) Reimplement planner for spatial join by @Kontinuation in #562
- fix(python/sedonadb): Add pandas < 3.0 Series entry to SPECIAL_CASED_LITERALS by @Kontinuation in #609
- refactor(rust/sedona-raster-functions): extract CachedCrsToSRIDMapping and simplify SRID/CRS logic by @Kontinuation in #590
- feat(sedona-raster-functions): add RS_ConvexHull and item-level CRS to RS_Envelope by @Kontinuation in #597
- feat(rust/sedona-functions): Implement
ST_Force2D()andST_Force3D()by @yutannihilation in #606 - chore(docs/reference): Migrate sql.md to new functions format by @paleolimbot in #585
- feat(rust/sedona-pointcloud): add laz chunk statistics by @b4l in #604
- fix(rust/sedona): Fix false feature flag by @b4l in #618
- feat(rust/sedona-geometry): Let CrsTransform handle M coordinate by @yutannihilation in #619
- feat(rust/sedona-functions): Implement ST_Force3DM and ST_Force4D by @yutannihilation in #620
- chore: Use mixed-line-ending pre-commit to enforce LF line ending by @yutannihilation in #621
- feat(rust/sedona-spatial-join): Auto-repartition probe side for balancing spatial join workload by @Kontinuation in #610
- feat(rust/sedona-raster-functions): add RS_NumBands function by @Kontinuation in #602
- feat(rust/sedona-raster-functions): add RS_GeoReference function by @Kontinuation in #601
- chore(deps): bump tempfile from 3.24.0 to 3.25.0 by @dependabot[bot] in #627
- chore(deps): bump glam from 0.31.0 to 0.32.0 by @dependabot[bot] in #624
- chore(deps): bump rand_distr from 0.5.1 to 0.6.0 by @dependabot[bot] in #626
- chore(deps): bump float_next_after from 1.0.0 to 2.0.0 by @dependabot[bot] in #625
- feat(rust/sedona-geoparquet): Ensure GeoParquet configuration options for read and write can be passed via SQL by @paleolimbot in #607
- chore(docs/reference/sql): Migrate function documentation defined in Rust into Markdown by @paleolimbot in #616
- fix(rust/sedona-functions): propagate NULL for scalar NULL SRID/CRS in ST_SetSRID/ST_SetCRS by @Kontinuation in #629
- fix(rust/sedona-spatial-join): prevent filter pushdown past KNN joins by @Kontinuation in #611
- feat(python/sedonadb): Expose memory pool and runtime configuration in Python bindings by @Kontinuation in #608
- docs(sql): normalize reference descriptions to third-person singular verbs by @yutannihilation in #634
- feat(rust/sedona-raster-functions): add RS_SetSRID/RS_SetCRS with batch-local cache refactoring by @Kontinuation in #630
- chore: Use released geo-index by @paleolimbot in #631
- chore(rust): Remove documentation field from SedonaScalarUDF and SedonaAggregateUDF by @yutannihilation in #633
- fix(rust/sedona-raster-functions): remove documentation field from RS_SetSRID/RS_SetCRS by @Kontinuation in #637
- feat(rust/sedona-functions): Add raster display support to SD_Format by @Kontinuation in #591
- feat(c/sedona-libgpuspatial): Add Rust Wrapper by @pwrliang in #586
- feat(rust/sedona-pointcloud) add LAS support by @b4l in #628
- fix(c/sedona-geos): Support export of geometries with M values from GEOS by @paleolimbot in #640
- docs: replace barrier() with KNN join behavior documentation by @Kontinuation in #635
- feat(rust/sedona-raster-functions): add RS_BandPath function by @Kontinuation in #603
- chore: Keep builds passing after yanked 11.0.0 geos release by @paleolimbot in #644
- chore: Use released georust/geos from crates.io by @paleolimbot in #649
- feat(rust/sedona-spatial-join): Automatic query-side filter pushdown for KNN joins by @Kontinuation in #641
- chore(ci): Validate the docs coverage on SQL functions by @yutannihilation in #652
- feat(python/sedonadb): Write GDAL/OGR via pyogrio by @paleolimbot in #632
- refactor(rust/sedona-functions): Remove stub functions by @paleolimbot in #638
- feat(r/sedonadb): Improve DataFrame API for R bindings by @paleolimbot in #651
- feat(rust/sedona-geoparquet): Ensure metadata cache is used in GeoParquet wrapper code by @paleolimbot in #646
- feat(python/sedonadb): Add sort by geometry support in to_parquet() by @paleolimbot in #642
- feat(rust/sedona-functions): Add sd_simplifystorage utility by @paleolimbot in #650
- feat(r/sedonadb): Port Python configuration options changes to R by @paleolimbot in #658
- feat(r/sedonadb): Add R bindings for parameterized queries by @paleolimbot in #662
- fix(rust/sedona-functions): Ensure WkbView types can be aggregated using the groups accumulator for ST_Envelope_Agg by @paleolimbot in #656
- feat(python/sedonadb): Handle crs-like objects in parameterized queries by @paleolimbot in #660
- feat(rust/sedona-schema): Improve deserialization of authority/code CRSes by @paleolimbot in #666
- feat(rust/sedona-functions): Simplify ST_KNN() call for most common case by @paleolimbot in #667
- chore(docs): Update README connection syntax by @paleolimbot in #668
- fix(rust/sedona-geoparquet): Ensure that GeoParquet files are always written with PROJJSON CRSes by @paleolimbot in #669
- chore: Update geo-index to 0.3.4 by @paleolimbot in #661
- feat(r/sedonadb): Implement GDAL read via sf/arrow in R bindings by @paleolimbot in #670
- chore(dev/release): Ensure release verification passes by @paleolimbot in #671
New Contributors
- @eitsupi made their first contribution in #421
- @prantogg made their first contribution in #469
- @isaaccorley made their first contribution in #479
- @Mehak3010 made their first contribution in #543
Full Changelog: apache-sedona-db-0.3.0.dev...apache-sedona-db-0.3.0