Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@
"name": "Check arrow2-0-16",
"run": "cargo check -p marrow --features arrow2-0-16"
},
{
"name": "Check arrow-56",
"run": "cargo check -p marrow --features arrow-56"
},
{
"name": "Check arrow-55",
"run": "cargo check -p marrow --features arrow-55"
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,10 @@
"name": "Check arrow2-0-16",
"run": "cargo check -p marrow --features arrow2-0-16"
},
{
"name": "Check arrow-56",
"run": "cargo check -p marrow --features arrow-56"
},
{
"name": "Check arrow-55",
"run": "cargo check -p marrow --features arrow-55"
Expand Down
56 changes: 55 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 8 additions & 2 deletions Changes.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# Change log

## 0.2.4

- Add `arrow=56` support.

Thanks [@jpopesculian](https://github.com/jpopesculian) for the
[contribution](https://github.com/chmp/marrow/pull/30).

## 0.2.3

- Add `arrow=55` support
Expand Down Expand Up @@ -30,7 +37,7 @@ New features

- Add `Interval` arrays and the `Interval` data type
- Add `RunEndEncoded` arrays
- Add `Array::data_type()` and `View::data_type()`
- Add `Array::data_type()` and `View::data_type()`
- Add `MarrowError::new` and `MarrowError::with_cause`
- Add `as_view` for `Array` and the array structs
- Implement `PartialEq` for `Array` and `View`, and `FieldMeta`
Expand All @@ -40,4 +47,3 @@ New features

Initial release to publish the arrow interop functionality of
[`serde_arrow`](https://github.com/chmp/serde_arrow) as a separate crate.

11 changes: 8 additions & 3 deletions marrow/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
edition = "2021"

name = "marrow"
version = "0.2.3"
version = "0.2.4"
authors = ["Christopher Prohm <mail@cprohm.de>"]
description = "Minimalist Arrow interop"
readme = "../Readme.md"
Expand All @@ -13,7 +13,7 @@ rust-version = "1.70.0"

[package.metadata.docs.rs]
# arrow-version:replace: features = ["arrow2-0-17", "arrow-{version}", "serde"]
features = ["arrow2-0-17", "arrow-55", "serde"]
features = ["arrow2-0-17", "arrow-56", "serde"]

[features]
default = []
Expand All @@ -23,6 +23,7 @@ serde = ["dep:serde"]

# support for different arrow versions
# arrow-version:insert: arrow-{version} = ["dep:arrow-array-{version}", "dep:arrow-schema-{version}", "dep:arrow-data-{version}", "dep:arrow-buffer-{version}"]
arrow-56 = ["dep:arrow-array-56", "dep:arrow-schema-56", "dep:arrow-data-56", "dep:arrow-buffer-56"]
arrow-55 = ["dep:arrow-array-55", "dep:arrow-schema-55", "dep:arrow-data-55", "dep:arrow-buffer-55"]
arrow-54 = ["dep:arrow-array-54", "dep:arrow-schema-54", "dep:arrow-data-54", "dep:arrow-buffer-54"]
arrow-53 = ["dep:arrow-array-53", "dep:arrow-schema-53", "dep:arrow-data-53", "dep:arrow-buffer-53"]
Expand Down Expand Up @@ -54,6 +55,7 @@ half = { version = "2", default-features = false }
serde = { version = "1.0", default-features = false, features = ["std", "derive"], optional = true }

# arrow-version:insert: arrow-array-{version} = {{ package = "arrow-array", version = "{version}", optional = true, default-features = false }}
arrow-array-56 = { package = "arrow-array", version = "56", optional = true, default-features = false }
arrow-array-55 = { package = "arrow-array", version = "55", optional = true, default-features = false }
arrow-array-54 = { package = "arrow-array", version = "54", optional = true, default-features = false }
arrow-array-53 = { package = "arrow-array", version = "53", optional = true, default-features = false }
Expand All @@ -75,6 +77,7 @@ arrow-array-38 = { package = "arrow-array", version = "38", optional = true, def
arrow-array-37 = { package = "arrow-array", version = "37", optional = true, default-features = false }

# arrow-version:insert: arrow-buffer-{version} = {{ package = "arrow-buffer", version = "{version}", optional = true, default-features = false }}
arrow-buffer-56 = { package = "arrow-buffer", version = "56", optional = true, default-features = false }
arrow-buffer-55 = { package = "arrow-buffer", version = "55", optional = true, default-features = false }
arrow-buffer-54 = { package = "arrow-buffer", version = "54", optional = true, default-features = false }
arrow-buffer-53 = { package = "arrow-buffer", version = "53", optional = true, default-features = false }
Expand All @@ -96,6 +99,7 @@ arrow-buffer-38 = { package = "arrow-buffer", version = "38", optional = true, d
arrow-buffer-37 = { package = "arrow-buffer", version = "37", optional = true, default-features = false }

# arrow-version:insert: arrow-data-{version} = {{ package = "arrow-data", version="{version}", optional = true, default-features = false }}
arrow-data-56 = { package = "arrow-data", version="56", optional = true, default-features = false }
arrow-data-55 = { package = "arrow-data", version="55", optional = true, default-features = false }
arrow-data-54 = { package = "arrow-data", version="54", optional = true, default-features = false }
arrow-data-53 = { package = "arrow-data", version="53", optional = true, default-features = false }
Expand All @@ -117,6 +121,7 @@ arrow-data-38 = { package = "arrow-data", version="38", optional = true, default
arrow-data-37 = { package = "arrow-data", version="37", optional = true, default-features = false }

# arrow-version:insert: arrow-schema-{version} = {{ package = "arrow-schema", version = "{version}", optional = true, default-features = false }}
arrow-schema-56 = { package = "arrow-schema", version = "56", optional = true, default-features = false }
arrow-schema-55 = { package = "arrow-schema", version = "55", optional = true, default-features = false }
arrow-schema-54 = { package = "arrow-schema", version = "54", optional = true, default-features = false }
arrow-schema-53 = { package = "arrow-schema", version = "53", optional = true, default-features = false }
Expand All @@ -138,4 +143,4 @@ arrow-schema-38 = { package = "arrow-schema", version = "38", optional = true, d
arrow-schema-37 = { package = "arrow-schema", version = "37", optional = true, default-features = false }

arrow2-0-17 = { package = "arrow2", version = "0.17", optional = true, default-features = false }
arrow2-0-16 = { package = "arrow2", version = "0.16", optional = true, default-features = false }
arrow2-0-16 = { package = "arrow2", version = "0.16", optional = true, default-features = false }
5 changes: 5 additions & 0 deletions marrow/src/impl_arrow/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@
#![cfg_attr(any(), rustfmt::skip)]

// arrow-version:insert: #[cfg(feature = "arrow-{version}")]{\n}mod arrow_{version} {{{\n} use {{arrow_array_{version} as arrow_array, arrow_buffer_{version} as arrow_buffer, arrow_data_{version} as arrow_data, arrow_schema_{version} as arrow_schema}};{\n} include!("impl_api_53.rs");{\n}}}
#[cfg(feature = "arrow-56")]
mod arrow_56 {
use {arrow_array_56 as arrow_array, arrow_buffer_56 as arrow_buffer, arrow_data_56 as arrow_data, arrow_schema_56 as arrow_schema};
include!("impl_api_53.rs");
}
#[cfg(feature = "arrow-55")]
mod arrow_55 {
use {arrow_array_55 as arrow_array, arrow_buffer_55 as arrow_buffer, arrow_data_55 as arrow_data, arrow_schema_55 as arrow_schema};
Expand Down
1 change: 1 addition & 0 deletions marrow/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@
//! | Feature | Arrow Version |
//! |---------------|---------------|
// arrow-version:insert: //! | `arrow-{version}` | `arrow={version}` |
//! | `arrow-56` | `arrow=56` |
//! | `arrow-55` | `arrow=55` |
//! | `arrow-54` | `arrow=54` |
//! | `arrow-53` | `arrow=53` |
Expand Down
3 changes: 3 additions & 0 deletions test_with_arrow/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ edition = "2021"
[features]

# arrow-version:insert: arrow-{version} = ["marrow/arrow-{version}", "dep:arrow-array-{version}", "dep:arrow-schema-{version}"]
arrow-56 = ["marrow/arrow-56", "dep:arrow-array-56", "dep:arrow-schema-56"]
arrow-55 = ["marrow/arrow-55", "dep:arrow-array-55", "dep:arrow-schema-55"]
arrow-54 = ["marrow/arrow-54", "dep:arrow-array-54", "dep:arrow-schema-54"]
arrow-53 = ["marrow/arrow-53", "dep:arrow-array-53", "dep:arrow-schema-53"]
Expand Down Expand Up @@ -37,6 +38,7 @@ serde_json = "1"
chrono = { version = "0.4", default-features = false }

# arrow-version:insert: arrow-array-{version} = {{ package = "arrow-array", version="{version}", optional = true, default-features = false }}
arrow-array-56 = { package = "arrow-array", version="56", optional = true, default-features = false }
arrow-array-55 = { package = "arrow-array", version="55", optional = true, default-features = false }
arrow-array-54 = { package = "arrow-array", version="54", optional = true, default-features = false }
arrow-array-53 = { package = "arrow-array", version = "53.3.0", optional = true, default-features = false }
Expand All @@ -58,6 +60,7 @@ arrow-array-38 = { package = "arrow-array", version="38", optional = true, defau
arrow-array-37 = { package = "arrow-array", version="37", optional = true, default-features = false }

# arrow-version:insert: arrow-schema-{version} = {{ package = "arrow-schema", version = "{version}", optional = true, default-features = false, features = ["serde"] }}
arrow-schema-56 = { package = "arrow-schema", version = "56", optional = true, default-features = false, features = ["serde"] }
arrow-schema-55 = { package = "arrow-schema", version = "55", optional = true, default-features = false, features = ["serde"] }
arrow-schema-54 = { package = "arrow-schema", version = "54", optional = true, default-features = false, features = ["serde"] }
arrow-schema-53 = { package = "arrow-schema", version = "53.3.0", optional = true, default-features = false, features = ["serde"] }
Expand Down
1 change: 1 addition & 0 deletions test_with_arrow/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ macro_rules! define_test_module {
}

// arrow-version:insert: define_test_module!("arrow-{version}", arrow_{version}, arrow_array_{version}, arrow_schema_{version}, utils, arrays, data_types,struct_arrays, fixed_size_binary_arrays, intervals, union_arrays, views);
define_test_module!("arrow-56", arrow_56, arrow_array_56, arrow_schema_56, utils, arrays, data_types,struct_arrays, fixed_size_binary_arrays, intervals, union_arrays, views);
define_test_module!("arrow-55", arrow_55, arrow_array_55, arrow_schema_55, utils, arrays, data_types,struct_arrays, fixed_size_binary_arrays, intervals, union_arrays, views);
define_test_module!("arrow-54", arrow_54, arrow_array_54, arrow_schema_54, utils, arrays, data_types,struct_arrays, fixed_size_binary_arrays, intervals, union_arrays, views);
define_test_module!("arrow-53", arrow_53, arrow_array_53, arrow_schema_53, utils, arrays, data_types,struct_arrays, fixed_size_binary_arrays, intervals, union_arrays, views);
Expand Down
1 change: 1 addition & 0 deletions x.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

all_arrow_features = [
# arrow-version:insert: "arrow-{version}",
"arrow-56",
"arrow-55",
"arrow-54",
"arrow-53",
Expand Down