Skip to content

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 20, 2025

Updates the requirements on geoparquet to permit the latest version.

Changelog

Sourced from geoparquet's changelog.

Changelog

Changelogs have been moved to per-crate changelogs.

0.4.0 (geoparquet crate) - 2025-07-08

New standalone geoparquet crate!

New Features 🪄

  • GeoParquet reader refactor to avoid making duplicate wrappers of upstream structs #1089
    • Removes wrapper structs for builders. So we no longer have a GeoParquetRecordBatchReaderBuilder or a GeoParquetRecordBatchStreamBuilder. Users will use upstream parquet sync/async Builder structs directly. Means a significantly lower maintenance overhead here, and we don't need to do anything to support new upstream functionality.

    • Adds GeoParquetReaderBuilder trait that extends the upstream ArrowReaderBuilder. This allows users to implement a spatial RowFilter directly on an upstream builder instance. It also allows low-level access, so that if a user wanted a spatial filter plus something else, that would be doable.

    • Allows user to choose when the WKB column should be parsed to a native GeoArrow type or not in the geoarrow_schema method. (the parse_to_native parameter)

    • Keeps wrapper structs for readers. So we still have a GeoParquetRecordBatchReader and a GeoParquetRecordBatchStream, but these are very lightweight wrappers.

      The benefit of having these wrapper structs is that we can ensure GeoArrow metadata is always applied onto the emitted RecordBatches.

  • Refactor of GeoParquetReaderMetadata and GeoParquetDatasetMetadata #1172
    • Remove Option for the geospatial metadata of each GeoParquetReaderMetadata and GeoParquetDatasetMetadata. We assume that if the user is using the geoparquet crate, all files will have valid GeoParquet metadata.
  • Remove GeoParquet writer wrappers and just expose encoder #1214
    • Similar to how we refactored the read side (geoarrow/geoarrow-rs#1089, geoarrow/geoarrow-rs#1172), this PR changes the writing APIs of the geoparquet crate to only provide additive APIs to the upstream parquet crate. So this is now intended to be used in conjunction with the upstream parquet crate, not exclusively of it.
  • Add support for writing covering column to GeoParquet #1216
    • Add support for generating the a bounding box covering column while writing data.
    • Reconfigure writer properties generation. This takes inspiration from the upstream parquet properties generation, and has both column specific properties and default properties. So you can set the encoding for all columns but you can also override the encodings for specific columns.
  • Allow passing primary column to parquet writer #1159
  • Correctly set geometry types in GeoParquet metadata when writing #1218

[0.4.0] - 2025-05-28

This release contains more or less a full rewrite of the GeoArrow Rust library.

The geoarrow-rs project is about 3 years old. Early prototyping started inside the geopolars repo before deciding I needed something more general (not tied to Polars) and creating first geopolars/geoarrow and then lastly geoarrow/geoarrow-rs.

However despite its age, the geoarrow crate suffers from a couple issues. For one, it took a while to figure out the right abstractions. And learning Rust at the same time didn't help. The geoarrow crate is also too monolithic. Some parts of geoarrow are production ready, but there's decidedly a lot of code in geoarrow that is not production ready. And it's very much not clear which parts of geoarrow are production ready or not.

But I think geoarrow-rs has potential to form part of the core geospatial data engineering stack in Rust. And as part of that, we need a better delineation of which parts of the code are stable or not. As such, the geoarrow-rs repo is currently ongoing a large refactor from a single crate to a monorepo of smaller crates, each with a more well-defined scope.

As of May 2025, avoid using the geoarrow crate and instead use the newer crates with a smaller scope, like geoarrow-array.

New Features 🪄

  • Full support for the GeoArrow 0.2 specification, including all geometry array types and dimensions. See documentation in geoarrow-array.
  • Native support for the upstream Arrow ExtensionType concept introduced in arrow 54.2. See documentation in geoarrow-schema.

Removed functionality 🔧

A significant amount of code from the previous geoarrow crate is not currently available in the refactored geoarrow-* crates.

Some of this is intentional. Similar to the upstream arrow crate, we no longer export a ChunkedArray concept, suggesting the user to use streaming concepts like iterators where possible.

... (truncated)

Commits
  • 6965ff9 chore: Bump to 0.6.1 (#1380)
  • ae84b52 refactor(pyo3-geoarrow): Move Python data type constructors out of pyo3-geoar...
  • 31bb27e docs(pyo3-geoarrow): Improve docs (#1377)
  • 1600b69 chore(python): Rename FileReader to SyncReader (#1375)
  • 93cbd3d chore: Bump to 0.6 (#1374)
  • 7c58436 feat(geoarrow-array): Implement child array access from GeometryArray (#1373)
  • 0c1d120 feat(geoarrow-schema): GeometryTypeId trait to infer GeoArrow type id for a...
  • 274f27c test(geoarrow-array): Add test that GeometryArray slicing survives arrow-rs r...
  • 3b0bcc8 ci: Remove lonboard from dev deps (#1370)
  • f0e9ede ci: Bump maturin to 1.9.6 (#1369)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [geoparquet](https://github.com/geoarrow/geoarrow-rs) to permit the latest version.
- [Release notes](https://github.com/geoarrow/geoarrow-rs/releases)
- [Changelog](https://github.com/geoarrow/geoarrow-rs/blob/main/CHANGELOG.md)
- [Commits](geoarrow/geoarrow-rs@py-v0.5.0...rust-v0.6.1)

---
updated-dependencies:
- dependency-name: geoparquet
  dependency-version: 0.6.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Oct 20, 2025
@dependabot dependabot bot requested a review from gadomski as a code owner October 20, 2025 02:17
@dependabot dependabot bot added the rust Pull requests that update rust code label Oct 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants