Skip to content

Commit cb0d130

Browse files
timsaucertobixdev
authored andcommitted
refactor: move arrow datasource to new datafusion-datasource-arrow crate (apache#18082)
## Which issue does this PR close? - This addresses part of apache#17713 but it does not close it. ## Rationale for this change In order to remove `core` from `proto` crate, we need `ArrowFormat` to be available. Similar to the other datasource types (csv, avro, json, parquet) this splits the Arrow IPC file format into its own crate. ## What changes are included in this PR? This is a straight refactor. Code is merely moved around. The size of the diff is the additional files that are required (cargo.toml, readme.md, etc) ## Are these changes tested? Existing unit tests. ## Are there any user-facing changes? Users that include `ArrowSource` may need to update their include paths. For most, the reexports will cover this need.
1 parent 6672eb6 commit cb0d130

File tree

19 files changed

+1012
-525
lines changed

19 files changed

+1012
-525
lines changed

.github/workflows/labeler/labeler-config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ execution:
5858

5959
datasource:
6060
- changed-files:
61-
- any-glob-to-any-file: ['datafusion/datasource/**/*', 'datafusion/datasource-avro/**/*', 'datafusion/datasource-csv/**/*', 'datafusion/datasource-json/**/*', 'datafusion/datasource-parquet/**/*']
61+
- any-glob-to-any-file: ['datafusion/datasource/**/*', 'datafusion/datasource-avro/**/*', 'datafusion/datasource-arrow/**/*', 'datafusion/datasource-csv/**/*', 'datafusion/datasource-json/**/*', 'datafusion/datasource-parquet/**/*']
6262

6363
functions:
6464
- changed-files:

Cargo.lock

Lines changed: 24 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ members = [
2222
"datafusion/catalog",
2323
"datafusion/catalog-listing",
2424
"datafusion/datasource",
25+
"datafusion/datasource-arrow",
2526
"datafusion/datasource-avro",
2627
"datafusion/datasource-csv",
2728
"datafusion/datasource-json",
@@ -116,6 +117,7 @@ datafusion-catalog-listing = { path = "datafusion/catalog-listing", version = "5
116117
datafusion-common = { path = "datafusion/common", version = "50.2.0", default-features = false }
117118
datafusion-common-runtime = { path = "datafusion/common-runtime", version = "50.2.0" }
118119
datafusion-datasource = { path = "datafusion/datasource", version = "50.2.0", default-features = false }
120+
datafusion-datasource-arrow = { path = "datafusion/datasource-arrow", version = "50.2.0", default-features = false }
119121
datafusion-datasource-avro = { path = "datafusion/datasource-avro", version = "50.2.0", default-features = false }
120122
datafusion-datasource-csv = { path = "datafusion/datasource-csv", version = "50.2.0", default-features = false }
121123
datafusion-datasource-json = { path = "datafusion/datasource-json", version = "50.2.0", default-features = false }

datafusion/core/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ compression = [
4747
"bzip2",
4848
"flate2",
4949
"zstd",
50-
"arrow-ipc/zstd",
50+
"datafusion-datasource-arrow/compression",
5151
"datafusion-datasource/compression",
5252
]
5353
crypto_expressions = ["datafusion-functions/crypto_expressions"]
@@ -109,7 +109,6 @@ extended_tests = []
109109

110110
[dependencies]
111111
arrow = { workspace = true }
112-
arrow-ipc = { workspace = true }
113112
arrow-schema = { workspace = true, features = ["canonical_extension_types"] }
114113
async-trait = { workspace = true }
115114
bytes = { workspace = true }
@@ -120,6 +119,7 @@ datafusion-catalog-listing = { workspace = true }
120119
datafusion-common = { workspace = true, features = ["object_store"] }
121120
datafusion-common-runtime = { workspace = true }
122121
datafusion-datasource = { workspace = true }
122+
datafusion-datasource-arrow = { workspace = true }
123123
datafusion-datasource-avro = { workspace = true, optional = true }
124124
datafusion-datasource-csv = { workspace = true }
125125
datafusion-datasource-json = { workspace = true }

0 commit comments

Comments
 (0)