Skip to content

Commit 07b936d

Browse files
authored
feat: geodatafusion integration (#222)
* feat: include geo * feat: geodatafusion integration * feat: introduce postgis functions * chore: update to datafusion 52 * feat: implement ewkb serialization * chore: rename feature name from geo to postgis * refactor: reduce duplicated code with some macro * feat: add integration tests and wkt/wkb * refactor: use macro for more encoding functions * feat: add support for largewkt and largewkb * feat: implement for geometry type * chore: switch to release version of geodatafusion * chore: remove default postgis feature
1 parent 8d4f8ed commit 07b936d

10 files changed

Lines changed: 736 additions & 29 deletions

File tree

Cargo.lock

Lines changed: 219 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

arrow-pg/Cargo.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ rust-version.workspace = true
1616
default = ["arrow"]
1717
arrow = ["dep:arrow"]
1818
datafusion = ["dep:datafusion"]
19-
geo = ["postgres-types/with-geo-types-0_7", "dep:geoarrow", "dep:geoarrow-schema", "dep:wkb"]
19+
postgis = ["postgres-types/with-geo-types-0_7", "dep:geoarrow", "dep:geoarrow-schema", "dep:postgis", "dep:geo-postgis", "pgwire/pg-type-postgis", "dep:geo-traits"]
2020

2121
[dependencies]
2222
arrow = { workspace = true, optional = true }
@@ -31,7 +31,9 @@ pg_interval = { version = "0.5.1", package = "pg_interval_2" }
3131
pgwire = { workspace = true, default-features = false, features = ["server-api", "pg-ext-types"] }
3232
postgres-types.workspace = true
3333
rust_decimal.workspace = true
34-
wkb = { version = "0.9", optional = true }
34+
postgis = { version = "0.9", optional = true }
35+
geo-postgis = { version = "0.2", optional = true }
36+
geo-traits = { version = "0.3", optional = true }
3537

3638
[dev-dependencies]
3739
async-trait = "0.1"

0 commit comments

Comments
 (0)