From bac1692e3ed5c337efeaa9c97fddaa743e85fc25 Mon Sep 17 00:00:00 2001 From: Christopher Prohm Date: Thu, 2 Jan 2025 20:17:40 +0100 Subject: [PATCH 1/3] Add arrow=54 --- Cargo.lock | 274 ++++++++++---------- example/Cargo.toml | 4 +- integration_tests/Cargo.toml | 4 +- serde_arrow/Cargo.toml | 15 +- serde_arrow/benches/groups/impls.rs | 4 +- serde_arrow/benches/groups/json_to_arrow.rs | 6 +- serde_arrow/build.rs | 2 + serde_arrow/src/lib.rs | 2 + x.py | 1 + 9 files changed, 155 insertions(+), 157 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 102b3c67..a3b94740 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -83,37 +83,36 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "arrow" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45aef0d9cf9a039bf6cd1acc451b137aca819977b0928dece52bd92811b640ba" +checksum = "d2ccdcc8fb14508ca20aaec7076032e5c0b0751b906036d4496786e2f227a37a" dependencies = [ "arrow-arith", - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", "arrow-cast", "arrow-csv", - "arrow-data 53.0.0", + "arrow-data 54.0.0", "arrow-ipc", "arrow-json", "arrow-ord", "arrow-row", - "arrow-schema 53.0.0", + "arrow-schema 54.0.0", "arrow-select", "arrow-string", ] [[package]] name = "arrow-arith" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03675e42d1560790f3524800e41403b40d0da1c793fe9528929fde06d8c7649a" +checksum = "a1aad8e27f32e411a0fc0bf5a625a35f0bf9b9f871cf4542abe31f7cef4beea2" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "chrono", - "half", "num", ] @@ -390,6 +389,22 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-array" +version = "54.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6ed90c28c6f73a706c55799b8cc3a094e89257238e5b1d65ca7c70bd3ae23f" +dependencies = [ + "ahash 0.8.11", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", + "chrono", + "half", + "hashbrown 0.15.2", + "num", +] + [[package]] name = "arrow-buffer" version = "37.0.0" @@ -568,42 +583,50 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-buffer" +version = "54.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe4a40bdc1552ea10fbdeae4e5a945d8572c32f66bce457b96c13d9c46b80447" +dependencies = [ + "bytes", + "half", + "num", +] + [[package]] name = "arrow-cast" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ce1018bb710d502f9db06af026ed3561552e493e989a79d0d0f5d9cf267a785" +checksum = "430c0a21aa7f81bcf0f97c57216d7127795ea755f494d27bae2bd233be43c2cc" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "arrow-select", "atoi", "base64", "chrono", "half", - "lexical-core 0.8.5", + "lexical-core", "num", "ryu", ] [[package]] name = "arrow-csv" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd178575f45624d045e4ebee714e246a05d9652e41363ee3f57ec18cca97f740" +checksum = "b4444c8f8c57ac00e6a679ede67d1ae8872c170797dc45b46f75702437a77888" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", + "arrow-array 54.0.0", "arrow-cast", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-schema 54.0.0", "chrono", "csv", "csv-core", "lazy_static", - "lexical-core 0.8.5", "regex", ] @@ -811,35 +834,46 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-data" +version = "54.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09af476cfbe9879937e50b1334c73189de6039186e025b1b1ac84b283b87b20e" +dependencies = [ + "arrow-buffer 54.0.0", + "arrow-schema 54.0.0", + "half", + "num", +] + [[package]] name = "arrow-ipc" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb307482348a1267f91b0912e962cd53440e5de0f7fb24c5f7b10da70b38c94a" +checksum = "136296e8824333a8a4c4a6e508e4aa65d5678b801246d0408825ae7b2523c628" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-cast", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "flatbuffers", ] [[package]] name = "arrow-json" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24805ba326758effdd6f2cbdd482fcfab749544f21b134701add25b33f474e6" +checksum = "e222ad0e419ab8276818c5605a5bb1e35ed86fa8c5e550726433cc63b09c3c78" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", "arrow-cast", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "chrono", "half", "indexmap", - "lexical-core 0.8.5", + "lexical-core", "num", "serde", "serde_json", @@ -847,30 +881,27 @@ dependencies = [ [[package]] name = "arrow-ord" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "644046c479d80ae8ed02a7f1e1399072ea344ca6a7b0e293ab2d5d9ed924aa3b" +checksum = "eddf14c5f03b679ec8ceac4dfac43f63cdc4ed54dab3cc120a4ef46af38481eb" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "arrow-select", - "half", - "num", ] [[package]] name = "arrow-row" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a29791f8eb13b340ce35525b723f5f0df17ecb955599e11f65c2a94ab34e2efb" +checksum = "e9acdc58da19f383f4ba381fa0e3583534ae2ceb31269aaf4a03f08ff13e8443" dependencies = [ - "ahash 0.8.11", - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "half", ] @@ -1027,30 +1058,39 @@ dependencies = [ "serde", ] +[[package]] +name = "arrow-schema" +version = "54.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a1822a1a952955637e85e8f9d6b0e04dd75d65492b87ec548dd593d3a1f772b" +dependencies = [ + "serde", +] + [[package]] name = "arrow-select" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cc7e6b582e23855fd1625ce46e51647aa440c20ea2e71b1d748e0839dd73cba" +checksum = "5c4172e9a12dfe15303d3926269f9ead471ea93bdd067d113abc65cb6c48e246" dependencies = [ "ahash 0.8.11", - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "num", ] [[package]] name = "arrow-string" -version = "53.0.0" +version = "54.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0775b6567c66e56ded19b87a954b6b1beffbdd784ef95a3a2b03f59570c1d230" +checksum = "73683040445f4932342781926189901c9521bb1a787c35dbe628a3ce51372d3c" dependencies = [ - "arrow-array 53.0.0", - "arrow-buffer 53.0.0", - "arrow-data 53.0.0", - "arrow-schema 53.0.0", + "arrow-array 54.0.0", + "arrow-buffer 54.0.0", + "arrow-data 54.0.0", + "arrow-schema 54.0.0", "arrow-select", "memchr", "num", @@ -1612,6 +1652,12 @@ dependencies = [ "allocator-api2", ] +[[package]] +name = "hashbrown" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" + [[package]] name = "hermit-abi" version = "0.4.0" @@ -1729,41 +1775,17 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -[[package]] -name = "lexical-core" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cde5de06e8d4c2faabc400238f9ae1c74d5412d03a7bd067645ccbc47070e46" -dependencies = [ - "lexical-parse-float 0.8.5", - "lexical-parse-integer 0.8.6", - "lexical-util 0.8.5", - "lexical-write-float 0.8.5", - "lexical-write-integer 0.8.5", -] - [[package]] name = "lexical-core" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0431c65b318a590c1de6b8fd6e72798c92291d27762d94c9e6c37ed7a73d8458" dependencies = [ - "lexical-parse-float 1.0.2", - "lexical-parse-integer 1.0.2", - "lexical-util 1.0.3", - "lexical-write-float 1.0.2", - "lexical-write-integer 1.0.2", -] - -[[package]] -name = "lexical-parse-float" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683b3a5ebd0130b8fb52ba0bdc718cc56815b6a097e28ae5a6997d0ad17dc05f" -dependencies = [ - "lexical-parse-integer 0.8.6", - "lexical-util 0.8.5", - "static_assertions", + "lexical-parse-float", + "lexical-parse-integer", + "lexical-util", + "lexical-write-float", + "lexical-write-integer", ] [[package]] @@ -1772,18 +1794,8 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eb17a4bdb9b418051aa59d41d65b1c9be5affab314a872e5ad7f06231fb3b4e0" dependencies = [ - "lexical-parse-integer 1.0.2", - "lexical-util 1.0.3", - "static_assertions", -] - -[[package]] -name = "lexical-parse-integer" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d0994485ed0c312f6d965766754ea177d07f9c00c9b82a5ee62ed5b47945ee9" -dependencies = [ - "lexical-util 0.8.5", + "lexical-parse-integer", + "lexical-util", "static_assertions", ] @@ -1793,16 +1805,7 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5df98f4a4ab53bf8b175b363a34c7af608fe31f93cc1fb1bf07130622ca4ef61" dependencies = [ - "lexical-util 1.0.3", - "static_assertions", -] - -[[package]] -name = "lexical-util" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5255b9ff16ff898710eb9eb63cb39248ea8a5bb036bea8085b1a767ff6c4e3fc" -dependencies = [ + "lexical-util", "static_assertions", ] @@ -1815,35 +1818,14 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "lexical-write-float" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accabaa1c4581f05a3923d1b4cfd124c329352288b7b9da09e766b0668116862" -dependencies = [ - "lexical-util 0.8.5", - "lexical-write-integer 0.8.5", - "static_assertions", -] - [[package]] name = "lexical-write-float" version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e7c3ad4e37db81c1cbe7cf34610340adc09c322871972f74877a712abc6c809" dependencies = [ - "lexical-util 1.0.3", - "lexical-write-integer 1.0.2", - "static_assertions", -] - -[[package]] -name = "lexical-write-integer" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b6f3d1f4422866b68192d62f77bc5c700bee84f3069f2469d7bc8c77852446" -dependencies = [ - "lexical-util 0.8.5", + "lexical-util", + "lexical-write-integer", "static_assertions", ] @@ -1853,7 +1835,7 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eb89e9f6958b83258afa3deed90b5de9ef68eef090ad5086c791cd2345610162" dependencies = [ - "lexical-util 1.0.3", + "lexical-util", "static_assertions", ] @@ -2325,6 +2307,7 @@ dependencies = [ "arrow-array 51.0.0", "arrow-array 52.2.0", "arrow-array 53.0.0", + "arrow-array 54.0.0", "arrow-buffer 37.0.0", "arrow-buffer 38.0.0", "arrow-buffer 39.0.0", @@ -2342,6 +2325,7 @@ dependencies = [ "arrow-buffer 51.0.0", "arrow-buffer 52.2.0", "arrow-buffer 53.0.0", + "arrow-buffer 54.0.0", "arrow-data 37.0.0", "arrow-data 38.0.0", "arrow-data 39.0.0", @@ -2359,6 +2343,7 @@ dependencies = [ "arrow-data 51.0.0", "arrow-data 52.2.0", "arrow-data 53.0.0", + "arrow-data 54.0.0", "arrow-json", "arrow-schema 37.0.0", "arrow-schema 38.0.0", @@ -2377,6 +2362,7 @@ dependencies = [ "arrow-schema 51.0.0", "arrow-schema 52.2.0", "arrow-schema 53.0.0", + "arrow-schema 54.0.0", "arrow2 0.16.0", "arrow2 0.17.4", "arrow2_convert", @@ -2442,7 +2428,7 @@ checksum = "a0228a564470f81724e30996bbc2b171713b37b15254a6440c7e2d5449b95691" dependencies = [ "getrandom", "halfbrown", - "lexical-core 1.0.2", + "lexical-core", "ref-cast", "serde", "serde_json", diff --git a/example/Cargo.toml b/example/Cargo.toml index 1b28ad77..b7ac8da9 100644 --- a/example/Cargo.toml +++ b/example/Cargo.toml @@ -8,10 +8,10 @@ edition = "2018" [dependencies] # arrow-version:replace: arrow = {{ version = "{version}", features = ["ipc"] }} -arrow = {version = "53.0", features = ["ipc"] } +arrow = { version = "54", features = ["ipc"] } chrono = { version = "0.4", features = ["serde"] } serde = { version = "1.0", features = ["derive"] } # arrow-version:replace: serde_arrow = {{ path = "../serde_arrow", features = ["arrow-{version}"] }} -serde_arrow = { path = "../serde_arrow", features = ["arrow-53"] } +serde_arrow = { path = "../serde_arrow", features = ["arrow-54"] } \ No newline at end of file diff --git a/integration_tests/Cargo.toml b/integration_tests/Cargo.toml index a45707e9..78f25b9d 100644 --- a/integration_tests/Cargo.toml +++ b/integration_tests/Cargo.toml @@ -5,11 +5,11 @@ edition = "2021" [dependencies] # arrow-version:replace: arrow = {{ version = "{version}", features = ["ipc"] }} -arrow = {version = "53.0", features = ["ipc"] } +arrow = { version = "54", features = ["ipc"] } chrono = { version = "0.4", features = ["serde"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1" # arrow-version:replace: serde_arrow = {{ path = "../serde_arrow", features = ["arrow-{version}"] }} -serde_arrow = { path = "../serde_arrow", features = ["arrow-53"] } +serde_arrow = { path = "../serde_arrow", features = ["arrow-54"] } \ No newline at end of file diff --git a/serde_arrow/Cargo.toml b/serde_arrow/Cargo.toml index ca2a32b6..385ccb89 100644 --- a/serde_arrow/Cargo.toml +++ b/serde_arrow/Cargo.toml @@ -15,17 +15,18 @@ bench = false [[bench]] name = "serde_arrow_bench" # arrow-version:replace: required-features = ["arrow2-0-17", "arrow-{version}"] -required-features = ["arrow2-0-17", "arrow-53"] +required-features = ["arrow2-0-17", "arrow-54"] harness = false [package.metadata.docs.rs] # arrow-version:replace: features = ["arrow2-0-17", "arrow-{version}"] -features = ["arrow2-0-17", "arrow-53"] +features = ["arrow2-0-17", "arrow-54"] [features] default = [] # arrow-version:insert: arrow-{version} = ["dep:arrow-array-{version}", "dep:arrow-schema-{version}", "dep:arrow-data-{version}", "dep:arrow-buffer-{version}"] +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"] arrow-52 = ["dep:arrow-array-52", "dep:arrow-schema-52", "dep:arrow-data-52", "dep:arrow-buffer-52"] arrow-51 = ["dep:arrow-array-51", "dep:arrow-schema-51", "dep:arrow-data-51", "dep:arrow-buffer-51"] @@ -52,6 +53,7 @@ half = { version = "2", features = ["bytemuck"], default-features = false } serde = { version = "1.0", features = ["derive", "std"], default-features = false } # arrow-version:insert: arrow-array-{version} = {{ package = "arrow-array", version = "{version}", 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 } arrow-array-52 = { package = "arrow-array", version = "52", optional = true, default-features = false } arrow-array-51 = { package = "arrow-array", version = "51", optional = true, default-features = false } @@ -71,6 +73,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-54 = { package = "arrow-buffer", version = "54", optional = true, default-features = false } arrow-buffer-53 = { package = "arrow-buffer", version = "53", optional = true, default-features = false } arrow-buffer-52 = { package = "arrow-buffer", version = "52", optional = true, default-features = false } arrow-buffer-51 = { package = "arrow-buffer", version = "51", optional = true, default-features = false } @@ -90,6 +93,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-54 = { package = "arrow-data", version="54", optional = true, default-features = false } arrow-data-53 = { package = "arrow-data", version="53", optional = true, default-features = false } arrow-data-52 = { package = "arrow-data", version="52", optional = true, default-features = false } arrow-data-51 = { package = "arrow-data", version="51", optional = true, default-features = false } @@ -109,6 +113,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-54 = { package = "arrow-schema", version = "54", optional = true, default-features = false } arrow-schema-53 = { package = "arrow-schema", version = "53", optional = true, default-features = false } arrow-schema-52 = { package = "arrow-schema", version = "52", optional = true, default-features = false } arrow-schema-51 = { package = "arrow-schema", version = "51", optional = true, default-features = false } @@ -143,13 +148,14 @@ jiff = { version = "0.1", features = ["serde"] } # for benchmarks # arrow-version:replace: arrow-json-{version} = {{ package = "arrow-json", version = "{version}" }} -arrow-json-53 = { package = "arrow-json", version = "53" } +arrow-json-54 = { package = "arrow-json", version = "54" } criterion = "0.5" arrow2_convert = "0.5.0" serde-transcode = "1" simd-json = "0.13.8" # arrow-version:insert: arrow-schema-{version} = {{ package = "arrow-schema", version = "{version}", default-features = false, features = ["serde"] }} +arrow-schema-54 = { package = "arrow-schema", version = "54", default-features = false, features = ["serde"] } arrow-schema-53 = { package = "arrow-schema", version = "53", default-features = false, features = ["serde"] } arrow-schema-52 = { package = "arrow-schema", version = "52", default-features = false, features = ["serde"] } arrow-schema-51 = { package = "arrow-schema", version = "51", default-features = false, features = ["serde"] } @@ -186,6 +192,7 @@ check-cfg = [ 'cfg(has_arrow)', 'cfg(has_arrow_fixed_binary_support)', # arrow-version:insert: 'cfg(has_arrow_{version})', + 'cfg(has_arrow_54)', 'cfg(has_arrow_53)', 'cfg(has_arrow_52)', 'cfg(has_arrow_51)', @@ -203,4 +210,4 @@ check-cfg = [ 'cfg(has_arrow_39)', 'cfg(has_arrow_38)', 'cfg(has_arrow_37)', -] +] \ No newline at end of file diff --git a/serde_arrow/benches/groups/impls.rs b/serde_arrow/benches/groups/impls.rs index 6faac10b..2f14dd11 100644 --- a/serde_arrow/benches/groups/impls.rs +++ b/serde_arrow/benches/groups/impls.rs @@ -125,9 +125,9 @@ pub mod arrow { use std::sync::Arc; // arrow-version:replace: use arrow_json_{version}::ReaderBuilder; - use arrow_json_53::ReaderBuilder; + use arrow_json_54::ReaderBuilder; // arrow-version:replace: use arrow_schema_{version}::Schema; - use arrow_schema_53::Schema; + use arrow_schema_54::Schema; use serde::Serialize; diff --git a/serde_arrow/benches/groups/json_to_arrow.rs b/serde_arrow/benches/groups/json_to_arrow.rs index 063a92d2..57027e7e 100644 --- a/serde_arrow/benches/groups/json_to_arrow.rs +++ b/serde_arrow/benches/groups/json_to_arrow.rs @@ -6,13 +6,13 @@ use { }; // arrow-version:replace: use arrow_json_{version}::ReaderBuilder; -use arrow_json_53::ReaderBuilder; +use arrow_json_54::ReaderBuilder; // arrow-version:replace: use arrow_schema_{version}::{{FieldRef, Schema as ArrowSchema}}; -use arrow_schema_53::{FieldRef, Schema as ArrowSchema}; +use arrow_schema_54::{FieldRef, Schema as ArrowSchema}; // arrow-version:replace: use arrow_array_{version}::RecordBatch; -use arrow_array_53::RecordBatch; +use arrow_array_54::RecordBatch; use serde_json::Value; fn benchmark_json_to_arrow(c: &mut criterion::Criterion) { diff --git a/serde_arrow/build.rs b/serde_arrow/build.rs index 2f2b7f7c..0d0b0f7c 100644 --- a/serde_arrow/build.rs +++ b/serde_arrow/build.rs @@ -15,6 +15,8 @@ fn main() { let max_arrow_version: Option = [ // arrow-version:insert: #[cfg(feature = "arrow-{version}")]{\n}{version}, + #[cfg(feature = "arrow-54")] + 54, #[cfg(feature = "arrow-53")] 53, #[cfg(feature = "arrow-52")] diff --git a/serde_arrow/src/lib.rs b/serde_arrow/src/lib.rs index 16a3cbcb..2b5b2153 100644 --- a/serde_arrow/src/lib.rs +++ b/serde_arrow/src/lib.rs @@ -145,6 +145,7 @@ //! | Arrow Feature | Arrow Version | //! |---------------|---------------| // arrow-version:insert: //! | `arrow-{version}` | `arrow={version}` | +//! | `arrow-54` | `arrow=54` | //! | `arrow-53` | `arrow=53` | //! | `arrow-52` | `arrow=52` | //! | `arrow-51` | `arrow=51` | @@ -269,6 +270,7 @@ pub mod _impl { } // arrow-version:insert: #[cfg(has_arrow_{version})] build_arrow_crate!(arrow_array_{version}, arrow_buffer_{version}, arrow_data_{version}, arrow_schema_{version}); +#[cfg(has_arrow_54)] build_arrow_crate!(arrow_array_54, arrow_buffer_54, arrow_data_54, arrow_schema_54); #[cfg(has_arrow_53)] build_arrow_crate!(arrow_array_53, arrow_buffer_53, arrow_data_53, arrow_schema_53); #[cfg(has_arrow_52)] build_arrow_crate!(arrow_array_52, arrow_buffer_52, arrow_data_52, arrow_schema_52); #[cfg(has_arrow_51)] build_arrow_crate!(arrow_array_51, arrow_buffer_51, arrow_data_51, arrow_schema_51); diff --git a/x.py b/x.py index 47146636..ef60d478 100644 --- a/x.py +++ b/x.py @@ -7,6 +7,7 @@ all_arrow_features = [ # arrow-version:insert: "arrow-{version}", + "arrow-54", "arrow-53", "arrow-52", "arrow-51", From 4732dbb906e2d25bda2c774d730b81b47e29874d Mon Sep 17 00:00:00 2001 From: Christopher Prohm Date: Thu, 2 Jan 2025 20:18:44 +0100 Subject: [PATCH 2/3] Update changelog --- Changes.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Changes.md b/Changes.md index afc36427..10db6ada 100644 --- a/Changes.md +++ b/Changes.md @@ -1,5 +1,9 @@ # Change log +## 0.12.3 + +- Add `arrow=54` support + ## 0.12.2 Bug fixes: From 044ecec73c653d80209d8f8af6ab0b94797d7d93 Mon Sep 17 00:00:00 2001 From: Christopher Prohm Date: Thu, 2 Jan 2025 20:21:20 +0100 Subject: [PATCH 3/3] Bump version --- Cargo.lock | 2 +- serde_arrow/Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a3b94740..ebd82b00 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2287,7 +2287,7 @@ dependencies = [ [[package]] name = "serde_arrow" -version = "0.12.2" +version = "0.12.3" dependencies = [ "anyhow", "arrow-array 37.0.0", diff --git a/serde_arrow/Cargo.toml b/serde_arrow/Cargo.toml index 385ccb89..12f694bc 100644 --- a/serde_arrow/Cargo.toml +++ b/serde_arrow/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "serde_arrow" -version = "0.12.2" +version = "0.12.3" authors = ["Christopher Prohm "] edition = "2021" description = "Convert sequences of Rust objects to Arrow arrays and back again"