From b71e71c00a8bba5502f5c654c6197b413b845e90 Mon Sep 17 00:00:00 2001 From: Hyunseok Seo Date: Fri, 21 Jun 2024 12:49:52 +0900 Subject: [PATCH 01/14] GH-42224: [Java] Fix Typo in TestAceroSubstraitConsumer Test Method (#42225) ### Rationale for this change Fixes a typo causing a `NullPointerException` in the test method ### What changes are included in this PR? - Updating typo to fix Unit Test ### Are these changes tested? Yes ### Are there any user-facing changes? No. * GitHub Issue: #42224 Authored-by: Hyunseok Seo Signed-off-by: David Li --- .../arrow/dataset/substrait/TestAceroSubstraitConsumer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/dataset/src/test/java/org/apache/arrow/dataset/substrait/TestAceroSubstraitConsumer.java b/java/dataset/src/test/java/org/apache/arrow/dataset/substrait/TestAceroSubstraitConsumer.java index 4ed41610a0208..97c185d7053d5 100644 --- a/java/dataset/src/test/java/org/apache/arrow/dataset/substrait/TestAceroSubstraitConsumer.java +++ b/java/dataset/src/test/java/org/apache/arrow/dataset/substrait/TestAceroSubstraitConsumer.java @@ -632,7 +632,7 @@ public void testRunExtendedExpressionsProjectAndFilter() throws Exception { assertThat(sumVector.getValueIterable(), IsIterableContainingInOrder.contains(21, 3, 13)); final ValueIterableVector nameVector = (ValueIterableVector) - reader.getVectorSchemaRoot().getVector("conccat_column_a_and_b"); + reader.getVectorSchemaRoot().getVector("concat_column_a_and_b"); assertThat( nameVector.getValueIterable(), IsIterableContainingInOrder.contains( From f07d442e2a484853ee1112fefbe8e54e15b9cc9c Mon Sep 17 00:00:00 2001 From: Hyunseok Seo Date: Fri, 21 Jun 2024 14:50:22 +0900 Subject: [PATCH 02/14] GH-42193: [Java] Update dependency to maintain JUnit 5 only (#42206) ### Rationale for this change We have completed migrating all unit test code from JUnit 4 to JUnit 5 for all Java modules. Now, we are removing the compatibility library `junit-vintage-engine` to maintain JUnit 5 only. ### What changes are included in this PR? - Removing JUnit 4 dependencies - Updating remaining `junit.framework.TestCase` imports - Updating excludes to prevent JUnit 4 dependencies ### Are these changes tested? Yes. ### Are there any user-facing changes? No. * GitHub Issue: #42193 Authored-by: Hyunseok Seo Signed-off-by: David Li --- .../arrow/adapter/avro/AvroLogicalTypesTest.java | 4 ++-- .../jdbc/h2/JdbcToArrowOptionalColumnsTest.java | 2 +- java/pom.xml | 16 +++------------- .../arrow/vector/util/TestMapWithOrdinal.java | 2 +- 4 files changed, 7 insertions(+), 17 deletions(-) diff --git a/java/adapter/avro/src/test/java/org/apache/arrow/adapter/avro/AvroLogicalTypesTest.java b/java/adapter/avro/src/test/java/org/apache/arrow/adapter/avro/AvroLogicalTypesTest.java index b114f2b00c9fa..173cc855b1eb1 100644 --- a/java/adapter/avro/src/test/java/org/apache/arrow/adapter/avro/AvroLogicalTypesTest.java +++ b/java/adapter/avro/src/test/java/org/apache/arrow/adapter/avro/AvroLogicalTypesTest.java @@ -16,9 +16,9 @@ */ package org.apache.arrow.adapter.avro; -import static junit.framework.TestCase.assertNull; -import static junit.framework.TestCase.assertTrue; +import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; import java.math.BigDecimal; import java.nio.ByteBuffer; diff --git a/java/adapter/jdbc/src/test/java/org/apache/arrow/adapter/jdbc/h2/JdbcToArrowOptionalColumnsTest.java b/java/adapter/jdbc/src/test/java/org/apache/arrow/adapter/jdbc/h2/JdbcToArrowOptionalColumnsTest.java index f3fbf02910230..382d20f45d4b1 100644 --- a/java/adapter/jdbc/src/test/java/org/apache/arrow/adapter/jdbc/h2/JdbcToArrowOptionalColumnsTest.java +++ b/java/adapter/jdbc/src/test/java/org/apache/arrow/adapter/jdbc/h2/JdbcToArrowOptionalColumnsTest.java @@ -16,8 +16,8 @@ */ package org.apache.arrow.adapter.jdbc.h2; -import static junit.framework.TestCase.assertTrue; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.IOException; import java.sql.SQLException; diff --git a/java/pom.xml b/java/pom.xml index 7c4683a7281db..0543bad008546 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -261,25 +261,12 @@ under the License. ${dep.junit.jupiter.version} test - - org.junit.vintage - junit-vintage-engine - ${dep.junit.jupiter.version} - test - org.junit.jupiter junit-jupiter-params ${dep.junit.jupiter.version} test - - - junit - junit - 4.13.2 - test - org.mockito mockito-junit-jupiter @@ -659,6 +646,9 @@ under the License. org.immutables:value org.checkerframework:checker + + junit:junit:4.* + org.junit.vintage:junit-vintage-engine diff --git a/java/vector/src/test/java/org/apache/arrow/vector/util/TestMapWithOrdinal.java b/java/vector/src/test/java/org/apache/arrow/vector/util/TestMapWithOrdinal.java index e55f9f31015de..f21dc70e6d7a8 100644 --- a/java/vector/src/test/java/org/apache/arrow/vector/util/TestMapWithOrdinal.java +++ b/java/vector/src/test/java/org/apache/arrow/vector/util/TestMapWithOrdinal.java @@ -16,9 +16,9 @@ */ package org.apache.arrow.vector.util; -import static junit.framework.TestCase.assertNull; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertTrue; import java.util.Collection; From 541647a6cf219c8c4fbe8f53d8e4fe7c3740cb66 Mon Sep 17 00:00:00 2001 From: Joris Van den Bossche Date: Fri, 21 Jun 2024 20:53:52 +0200 Subject: [PATCH 03/14] GH-37669: [C++][Python] Fix casting to extension type with fixed size list storage type (#42219) ### Rationale for this change Casting to an extension type with fixed-size list storage type was segfaulting. The underlying issue was a debug check in the casting kernel in the code path about pre-allocated data, but in this case we shouldn't be pre-allocating anything, because "cast to extension type" _can_ be zero copy, and we should let that be handled by the underlying cast to the storage type. ### What changes are included in this PR? Specifically mark the cast kernels to extension type as `NullHandling::COMPUTED_NO_PREALLOCATE` and `MemAllocation::NO_PREALLOCATE` ### Are these changes tested? Yes ### Are there any user-facing changes? No * GitHub Issue: #37669 Authored-by: Joris Van den Bossche Signed-off-by: Will Jones --- .../compute/kernels/scalar_cast_extension.cc | 5 +- python/pyarrow/tests/test_extension_type.py | 60 +++++++++++++++++++ 2 files changed, 63 insertions(+), 2 deletions(-) diff --git a/cpp/src/arrow/compute/kernels/scalar_cast_extension.cc b/cpp/src/arrow/compute/kernels/scalar_cast_extension.cc index c32a6ef6de93e..2a54d28c6fb64 100644 --- a/cpp/src/arrow/compute/kernels/scalar_cast_extension.cc +++ b/cpp/src/arrow/compute/kernels/scalar_cast_extension.cc @@ -56,8 +56,9 @@ Status CastToExtension(KernelContext* ctx, const ExecSpan& batch, ExecResult* ou std::shared_ptr GetCastToExtension(std::string name) { auto func = std::make_shared(std::move(name), Type::EXTENSION); for (Type::type in_ty : AllTypeIds()) { - DCHECK_OK( - func->AddKernel(in_ty, {InputType(in_ty)}, kOutputTargetType, CastToExtension)); + DCHECK_OK(func->AddKernel(in_ty, {InputType(in_ty)}, kOutputTargetType, + CastToExtension, NullHandling::COMPUTED_NO_PREALLOCATE, + MemAllocation::NO_PREALLOCATE)); } return func; } diff --git a/python/pyarrow/tests/test_extension_type.py b/python/pyarrow/tests/test_extension_type.py index 9863d96058947..1c4d0175a2d97 100644 --- a/python/pyarrow/tests/test_extension_type.py +++ b/python/pyarrow/tests/test_extension_type.py @@ -194,6 +194,21 @@ def __arrow_ext_deserialize__(cls, storage_type, serialized): return cls(storage_type) +class MyFixedListType(pa.ExtensionType): + + def __init__(self, storage_type): + assert isinstance(storage_type, pa.FixedSizeListType) + super().__init__(storage_type, 'pyarrow.tests.MyFixedListType') + + def __arrow_ext_serialize__(self): + return b'' + + @classmethod + def __arrow_ext_deserialize__(cls, storage_type, serialized): + assert serialized == b'' + return cls(storage_type) + + class AnnotatedType(pa.ExtensionType): """ Generic extension type that can store any storage type. @@ -738,6 +753,36 @@ def test_casting_dict_array_to_extension_type(): UUID('30313233-3435-3637-3839-616263646566')] +def test_cast_to_extension_with_nested_storage(): + # https://github.com/apache/arrow/issues/37669 + + # With fixed-size list + array = pa.array([[1, 2], [3, 4], [5, 6]], pa.list_(pa.float64(), 2)) + result = array.cast(MyFixedListType(pa.list_(pa.float64(), 2))) + expected = pa.ExtensionArray.from_storage(MyFixedListType(array.type), array) + assert result.equals(expected) + + ext_type = MyFixedListType(pa.list_(pa.float32(), 2)) + result = array.cast(ext_type) + expected = pa.ExtensionArray.from_storage( + ext_type, array.cast(ext_type.storage_type) + ) + assert result.equals(expected) + + # With variable-size list + array = pa.array([[1, 2], [3], [4, 5, 6]], pa.list_(pa.float64())) + result = array.cast(MyListType(pa.list_(pa.float64()))) + expected = pa.ExtensionArray.from_storage(MyListType(array.type), array) + assert result.equals(expected) + + ext_type = MyListType(pa.list_(pa.float32())) + result = array.cast(ext_type) + expected = pa.ExtensionArray.from_storage( + ext_type, array.cast(ext_type.storage_type) + ) + assert result.equals(expected) + + def test_concat(): arr1 = pa.array([1, 2, 3], IntegerType()) arr2 = pa.array([4, 5, 6], IntegerType()) @@ -1500,6 +1545,21 @@ def test_tensor_type_equality(): assert not tensor_type == tensor_type3 +def test_tensor_type_cast(): + tensor_type = pa.fixed_shape_tensor(pa.int8(), [2, 3]) + inner = pa.array(range(18), pa.int8()) + storage = pa.FixedSizeListArray.from_arrays(inner, 6) + + # cast storage -> extension type + result = storage.cast(tensor_type) + expected = pa.ExtensionArray.from_storage(tensor_type, storage) + assert result.equals(expected) + + # cast extension type -> storage type + storage_result = result.cast(storage.type) + assert storage_result.equals(storage) + + @pytest.mark.pandas def test_extension_to_pandas_storage_type(registered_period_type): period_type, _ = registered_period_type From 77e572b06c62fedd582bc7121f081fad90e5afb6 Mon Sep 17 00:00:00 2001 From: Yifeng-Sigma Date: Fri, 21 Jun 2024 14:04:21 -0700 Subject: [PATCH 04/14] MINOR: [Go] check nil buffer in SizeInBytes (#42227) ### Rationale for this change ![image](https://github.com/apache/arrow/assets/86254270/15265fff-03b3-4c8a-9599-a07675eb1e60) Saw a nil error. Unclear to me how this nil buffer got constructed, because when building the arrow data we seem to already check it. But we should do a nil check here anyway ### What changes are included in this PR? Added a nil check. ### Are these changes tested? ### Are there any user-facing changes? No. --------- Co-authored-by: Matt Topol --- go/arrow/array/data.go | 4 +++- go/arrow/array/data_test.go | 12 ++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/go/arrow/array/data.go b/go/arrow/array/data.go index ad8081cbbeddb..40fad0dfd0033 100644 --- a/go/arrow/array/data.go +++ b/go/arrow/array/data.go @@ -201,7 +201,9 @@ func (d *Data) SizeInBytes() uint64 { } for _, b := range d.Buffers() { - size += uint64(b.Len()) + if b != nil { + size += uint64(b.Len()) + } } for _, c := range d.Children() { size += c.SizeInBytes() diff --git a/go/arrow/array/data_test.go b/go/arrow/array/data_test.go index 85c9b1e0a1d0b..68f2ada97b037 100644 --- a/go/arrow/array/data_test.go +++ b/go/arrow/array/data_test.go @@ -17,6 +17,7 @@ package array import ( + "slices" "testing" "github.com/apache/arrow/go/v17/arrow" @@ -60,6 +61,17 @@ func TestSizeInBytes(t *testing.T) { var arrayData arrow.ArrayData = data dataWithChild := NewData(&arrow.StringType{}, 10, buffers1, []arrow.ArrayData{arrayData}, 0, 0) + buffers2 := slices.Clone(buffers1) + buffers2[0] = nil + dataWithNilBuffer := NewData(&arrow.StringType{}, 10, buffers2, nil, 0, 0) + + t.Run("nil buffers", func(t *testing.T) { + expectedSize := uint64(30) + if actualSize := dataWithNilBuffer.SizeInBytes(); actualSize != expectedSize { + t.Errorf("expected size %d, got %d", expectedSize, actualSize) + } + }) + t.Run("buffers only", func(t *testing.T) { expectedSize := uint64(45) if actualSize := data.SizeInBytes(); actualSize != expectedSize { From c9a735ab9f9ab67e21174daaee790d56ebc97f2c Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Sat, 22 Jun 2024 06:46:05 +0900 Subject: [PATCH 05/14] GH-42228: [CI][Java] Suppress transfer progress log in java-jars (#42230) ### Rationale for this change Transfer progress log is meaningless and noisy in CI log. ### What changes are included in this PR? Use the `--no-transfer-progress` option that is available Maven 3.6.1: https://maven.apache.org/ref/3.6.1/maven-embedder/cli.html Other approach is using `-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn` like other our scripts do. I chose `--no-transfer-progress` because it's shorter. ### Are these changes tested? Yes. ### Are there any user-facing changes? No. * GitHub Issue: #42228 Authored-by: Sutou Kouhei Signed-off-by: Sutou Kouhei --- ci/scripts/java_full_build.sh | 3 ++- dev/tasks/java-jars/github.yml | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ci/scripts/java_full_build.sh b/ci/scripts/java_full_build.sh index d914aa2d8472e..4beade50b4556 100755 --- a/ci/scripts/java_full_build.sh +++ b/ci/scripts/java_full_build.sh @@ -53,7 +53,8 @@ mvn clean \ -Parrow-c-data \ -Parrow-jni \ -Darrow.cpp.build.dir=$dist_dir \ - -Darrow.c.jni.dist.dir=$dist_dir + -Darrow.c.jni.dist.dir=$dist_dir \ + --no-transfer-progress # copy all jar, zip and pom files to the distribution folder find ~/.m2/repository/org/apache/arrow \ diff --git a/dev/tasks/java-jars/github.yml b/dev/tasks/java-jars/github.yml index 43cf3f96442b8..9493be05be6ee 100644 --- a/dev/tasks/java-jars/github.yml +++ b/dev/tasks/java-jars/github.yml @@ -242,6 +242,9 @@ jobs: test -f arrow/java-dist/arrow_dataset_jni/x86_64/arrow_dataset_jni.dll test -f arrow/java-dist/arrow_orc_jni/x86_64/arrow_orc_jni.dll - name: Build bundled jar + env: + MAVEN_ARGS: >- + --no-transfer-progress run: | set -e pushd arrow/java From cb1f9b70c9d64b38faafde3cb32202d0ab515ae7 Mon Sep 17 00:00:00 2001 From: abandy Date: Fri, 21 Jun 2024 18:16:57 -0400 Subject: [PATCH 06/14] GH-42243: [Swift] Update isValidBuilderType to not required instance of type (#42244) ### Rationale for this change isValidBuilderType should take a Type and not require an instance of a type in order to validate. ### What changes are included in this PR? Updated isValidBuilderType to take a Type instead of an instance. ### Are these changes tested? Yes * GitHub Issue: #42243 Authored-by: Alva Bandy Signed-off-by: Sutou Kouhei --- .../Sources/Arrow/ArrowArrayBuilder.swift | 3 +- .../Tests/ArrowTests/ArrayBuilderTest.swift | 56 +++++++++---------- 2 files changed, 29 insertions(+), 30 deletions(-) diff --git a/swift/Arrow/Sources/Arrow/ArrowArrayBuilder.swift b/swift/Arrow/Sources/Arrow/ArrowArrayBuilder.swift index 38e6e457f4610..dc80f52f8ebd2 100644 --- a/swift/Arrow/Sources/Arrow/ArrowArrayBuilder.swift +++ b/swift/Arrow/Sources/Arrow/ArrowArrayBuilder.swift @@ -152,8 +152,7 @@ public class ArrowArrayBuilders { } } - public static func isValidBuilderType(_: T) -> Bool { - let type = T.self + public static func isValidBuilderType(_ type: T.Type) -> Bool { return type == Int8?.self || type == Int16?.self || type == Int32?.self || type == Int64?.self || type == UInt8?.self || type == UInt16?.self || diff --git a/swift/Arrow/Tests/ArrowTests/ArrayBuilderTest.swift b/swift/Arrow/Tests/ArrowTests/ArrayBuilderTest.swift index 965e4ed278a39..42e167f01fcc9 100644 --- a/swift/Arrow/Tests/ArrowTests/ArrayBuilderTest.swift +++ b/swift/Arrow/Tests/ArrowTests/ArrayBuilderTest.swift @@ -20,35 +20,35 @@ import XCTest final class ArrayBuilderTests: XCTestCase { func testIsValidTypeForBuilder() throws { - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int8(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int16(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int32(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int64(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt8(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt16(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt32(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt64(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Float(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Double(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Date.now)) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(true)) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int8?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int16?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int32?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int64?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt8?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt16?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt32?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt64?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Float?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Double?(0))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Date?(Date.now))) - XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Bool?(true))) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt8.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int16.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int32.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int64.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt8.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt16.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt32.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt64.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Float.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Double.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Date.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Bool.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int8?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int16?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int32?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Int64?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt8?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt16?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt32?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(UInt64?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Float?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Double?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Date?.self)) + XCTAssertTrue(ArrowArrayBuilders.isValidBuilderType(Bool?.self)) - XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(Int(0))) - XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(UInt(0))) - XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(Int?(0))) - XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(UInt?(0))) + XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(Int.self)) + XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(UInt.self)) + XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(Int?.self)) + XCTAssertFalse(ArrowArrayBuilders.isValidBuilderType(UInt?.self)) } func testLoadArrayBuilders() throws { From d28078d80e7fe7ff93e4b8a9a331ec4ba4648bf1 Mon Sep 17 00:00:00 2001 From: abandy Date: Fri, 21 Jun 2024 21:03:01 -0400 Subject: [PATCH 07/14] GH-42245: [Swift] Ensure map behavior is the same for all key types (#42246) ### Rationale for this change Behavior of decoding a map currently changes based on the key type (String or not String) ### What changes are included in this PR? Added method for handling map to ensure that all maps are decoded the same way. ### Are these changes tested? Yes * GitHub Issue: #42245 Authored-by: Alva Bandy Signed-off-by: Sutou Kouhei --- swift/Arrow/Sources/Arrow/ArrowDecoder.swift | 58 ++++++++++++------- .../Arrow/Tests/ArrowTests/CodableTests.swift | 43 ++++++++------ 2 files changed, 61 insertions(+), 40 deletions(-) diff --git a/swift/Arrow/Sources/Arrow/ArrowDecoder.swift b/swift/Arrow/Sources/Arrow/ArrowDecoder.swift index 518b4e9c32970..7e684f360ac51 100644 --- a/swift/Arrow/Sources/Arrow/ArrowDecoder.swift +++ b/swift/Arrow/Sources/Arrow/ArrowDecoder.swift @@ -19,6 +19,7 @@ import Foundation public class ArrowDecoder: Decoder { var rbIndex: UInt = 0 + var singleRBCol: Int = 0 public var codingPath: [CodingKey] = [] public var userInfo: [CodingUserInfoKey: Any] = [:] public let rb: RecordBatch @@ -47,6 +48,25 @@ public class ArrowDecoder: Decoder { self.nameToCol = colMapping } + public func decode(_ type: [T: U].Type) throws -> [T: U] { + var output = [T: U]() + if rb.columnCount != 2 { + throw ArrowError.invalid("RecordBatch column count of 2 is required to decode to map") + } + + for index in 0..(_ type: T.Type) throws -> [T] { var output = [T]() for index in 0..: KeyedDecodingContainerProtoco } func decode(_ type: T.Type, forKey key: Key) throws -> T where T: Decodable { - if type == Date.self { + if ArrowArrayBuilders.isValidBuilderType(type) || type == Date.self { return try self.decoder.doDecode(key)! } else { throw ArrowError.invalid("Type \(type) is currently not supported") @@ -290,26 +310,26 @@ private struct ArrowSingleValueDecoding: SingleValueDecodingContainer { func decodeNil() -> Bool { do { - return try self.decoder.isNull(0) + return try self.decoder.isNull(self.decoder.singleRBCol) } catch { return false } } func decode(_ type: Bool.Type) throws -> Bool { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: String.Type) throws -> String { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Double.Type) throws -> Double { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Float.Type) throws -> Float { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Int.Type) throws -> Int { @@ -318,19 +338,19 @@ private struct ArrowSingleValueDecoding: SingleValueDecodingContainer { } func decode(_ type: Int8.Type) throws -> Int8 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Int16.Type) throws -> Int16 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Int32.Type) throws -> Int32 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: Int64.Type) throws -> Int64 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: UInt.Type) throws -> UInt { @@ -339,30 +359,24 @@ private struct ArrowSingleValueDecoding: SingleValueDecodingContainer { } func decode(_ type: UInt8.Type) throws -> UInt8 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: UInt16.Type) throws -> UInt16 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: UInt32.Type) throws -> UInt32 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: UInt64.Type) throws -> UInt64 { - return try self.decoder.doDecode(0)! + return try self.decoder.doDecode(self.decoder.singleRBCol)! } func decode(_ type: T.Type) throws -> T where T: Decodable { - if type == Int8.self || type == Int16.self || - type == Int32.self || type == Int64.self || - type == UInt8.self || type == UInt16.self || - type == UInt32.self || type == UInt64.self || - type == String.self || type == Double.self || - type == Float.self || type == Date.self || - type == Bool.self { - return try self.decoder.doDecode(0)! + if ArrowArrayBuilders.isValidBuilderType(type) || type == Date.self { + return try self.decoder.doDecode(self.decoder.singleRBCol)! } else { throw ArrowError.invalid("Type \(type) is currently not supported") } diff --git a/swift/Arrow/Tests/ArrowTests/CodableTests.swift b/swift/Arrow/Tests/ArrowTests/CodableTests.swift index 160beea17c9fa..400faa9f2907f 100644 --- a/swift/Arrow/Tests/ArrowTests/CodableTests.swift +++ b/swift/Arrow/Tests/ArrowTests/CodableTests.swift @@ -166,35 +166,45 @@ final class CodableTests: XCTestCase { } } - func testArrowUnkeyedDecoderWithoutNull() throws { + func testArrowMapDecoderWithoutNull() throws { let int8Builder: NumberArrayBuilder = try ArrowArrayBuilders.loadNumberArrayBuilder() let stringBuilder = try ArrowArrayBuilders.loadStringArrayBuilder() int8Builder.append(10, 11, 12, 13) - stringBuilder.append("test0", "test1", "test2", "test3") - let result = RecordBatch.Builder() + stringBuilder.append("test10", "test11", "test12", "test13") + switch RecordBatch.Builder() .addColumn("propInt8", arrowArray: try int8Builder.toHolder()) .addColumn("propString", arrowArray: try stringBuilder.toHolder()) - .finish() - switch result { + .finish() { case .success(let rb): let decoder = ArrowDecoder(rb) let testData = try decoder.decode([Int8: String].self) - var index: Int8 = 0 for data in testData { - let str = data[10 + index] - XCTAssertEqual(str, "test\(index)") - index += 1 + XCTAssertEqual("test\(data.key)", data.value) + } + case .failure(let err): + throw err + } + + switch RecordBatch.Builder() + .addColumn("propString", arrowArray: try stringBuilder.toHolder()) + .addColumn("propInt8", arrowArray: try int8Builder.toHolder()) + .finish() { + case .success(let rb): + let decoder = ArrowDecoder(rb) + let testData = try decoder.decode([String: Int8].self) + for data in testData { + XCTAssertEqual("test\(data.value)", data.key) } case .failure(let err): throw err } } - func testArrowUnkeyedDecoderWithNull() throws { + func testArrowMapDecoderWithNull() throws { let int8Builder: NumberArrayBuilder = try ArrowArrayBuilders.loadNumberArrayBuilder() let stringWNilBuilder = try ArrowArrayBuilders.loadStringArrayBuilder() int8Builder.append(10, 11, 12, 13) - stringWNilBuilder.append(nil, "test1", nil, "test3") + stringWNilBuilder.append(nil, "test11", nil, "test13") let resultWNil = RecordBatch.Builder() .addColumn("propInt8", arrowArray: try int8Builder.toHolder()) .addColumn("propString", arrowArray: try stringWNilBuilder.toHolder()) @@ -203,19 +213,16 @@ final class CodableTests: XCTestCase { case .success(let rb): let decoder = ArrowDecoder(rb) let testData = try decoder.decode([Int8: String?].self) - var index: Int8 = 0 for data in testData { - let str = data[10 + index] - if index % 2 == 0 { - XCTAssertNil(str!) + let str = data.value + if data.key % 2 == 0 { + XCTAssertNil(str) } else { - XCTAssertEqual(str, "test\(index)") + XCTAssertEqual(str, "test\(data.key)") } - index += 1 } case .failure(let err): throw err } - } } From c27c71032f2e3e5f1b06514985d3fae3e7aa6995 Mon Sep 17 00:00:00 2001 From: Vibhatha Lakmal Abeykoon Date: Sat, 22 Jun 2024 07:11:14 +0530 Subject: [PATCH 08/14] MINOR: [Java] Bump com.google.flatbuffers:flatbuffers-java from 23.5.26 to 24.3.25 in /java MANUAL (#42204) ### Rationale for this change Flatbuffer upgrade requires regeneration of the code as suggested by dependabot [here](https://github.com/apache/arrow/pull/42185). ### What changes are included in this PR? Regenerates the code using the proposed upgrade. ### Are these changes tested? Using existing tests. ### Are there any user-facing changes? No Authored-by: Vibhatha Abeykoon Signed-off-by: David Li --- java/README.md | 4 ++-- .../format/src/main/java/org/apache/arrow/flatbuf/Binary.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/BinaryView.java | 2 +- .../main/java/org/apache/arrow/flatbuf/BodyCompression.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Bool.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Date.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Decimal.java | 2 +- .../main/java/org/apache/arrow/flatbuf/DictionaryBatch.java | 2 +- .../java/org/apache/arrow/flatbuf/DictionaryEncoding.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Duration.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Field.java | 2 +- .../main/java/org/apache/arrow/flatbuf/FixedSizeBinary.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/FixedSizeList.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/FloatingPoint.java | 2 +- .../format/src/main/java/org/apache/arrow/flatbuf/Footer.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Int.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Interval.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/KeyValue.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/LargeBinary.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/LargeList.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/LargeListView.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/LargeUtf8.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/List.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/ListView.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Map.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Message.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Null.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/RecordBatch.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/RunEndEncoded.java | 2 +- .../format/src/main/java/org/apache/arrow/flatbuf/Schema.java | 2 +- .../java/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/SparseTensor.java | 2 +- .../java/org/apache/arrow/flatbuf/SparseTensorIndexCOO.java | 2 +- .../java/org/apache/arrow/flatbuf/SparseTensorIndexCSF.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Struct_.java | 2 +- .../format/src/main/java/org/apache/arrow/flatbuf/Tensor.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/TensorDim.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Time.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Timestamp.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Union.java | 2 +- java/format/src/main/java/org/apache/arrow/flatbuf/Utf8.java | 2 +- .../src/main/java/org/apache/arrow/flatbuf/Utf8View.java | 2 +- java/pom.xml | 2 +- 43 files changed, 44 insertions(+), 44 deletions(-) diff --git a/java/README.md b/java/README.md index 69d1255a861e6..144d32326ab5e 100644 --- a/java/README.md +++ b/java/README.md @@ -48,10 +48,10 @@ a version of your choosing. ```bash $ flatc --version -flatc version 23.5.26 +flatc version 24.3.25 $ grep "dep.fbs.version" java/pom.xml - 23.5.26 + 24.3.25 ``` 2. Generate the flatbuffer java files by performing the following: diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Binary.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Binary.java index 08674cbccae98..1b79a8008cecf 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Binary.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Binary.java @@ -40,7 +40,7 @@ */ @SuppressWarnings("unused") public final class Binary extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Binary getRootAsBinary(ByteBuffer _bb) { return getRootAsBinary(_bb, new Binary()); } public static Binary getRootAsBinary(ByteBuffer _bb, Binary obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/BinaryView.java b/java/format/src/main/java/org/apache/arrow/flatbuf/BinaryView.java index 6b58f1c6738f1..280807b84cc48 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/BinaryView.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/BinaryView.java @@ -46,7 +46,7 @@ */ @SuppressWarnings("unused") public final class BinaryView extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static BinaryView getRootAsBinaryView(ByteBuffer _bb) { return getRootAsBinaryView(_bb, new BinaryView()); } public static BinaryView getRootAsBinaryView(ByteBuffer _bb, BinaryView obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/BodyCompression.java b/java/format/src/main/java/org/apache/arrow/flatbuf/BodyCompression.java index b33006081154a..ed4ae65628b14 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/BodyCompression.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/BodyCompression.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class BodyCompression extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static BodyCompression getRootAsBodyCompression(ByteBuffer _bb) { return getRootAsBodyCompression(_bb, new BodyCompression()); } public static BodyCompression getRootAsBodyCompression(ByteBuffer _bb, BodyCompression obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Bool.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Bool.java index 1f0ec75d6925f..0d65de530f26c 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Bool.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Bool.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Bool extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Bool getRootAsBool(ByteBuffer _bb) { return getRootAsBool(_bb, new Bool()); } public static Bool getRootAsBool(ByteBuffer _bb, Bool obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Date.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Date.java index d52b0b18864ba..f141695996056 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Date.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Date.java @@ -45,7 +45,7 @@ */ @SuppressWarnings("unused") public final class Date extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Date getRootAsDate(ByteBuffer _bb) { return getRootAsDate(_bb, new Date()); } public static Date getRootAsDate(ByteBuffer _bb, Date obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Decimal.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Decimal.java index 87c7c7bc05d3a..b79f1c469c679 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Decimal.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Decimal.java @@ -43,7 +43,7 @@ */ @SuppressWarnings("unused") public final class Decimal extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Decimal getRootAsDecimal(ByteBuffer _bb) { return getRootAsDecimal(_bb, new Decimal()); } public static Decimal getRootAsDecimal(ByteBuffer _bb, Decimal obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryBatch.java b/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryBatch.java index f0e894238e9f4..089a4f00c43ff 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryBatch.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryBatch.java @@ -45,7 +45,7 @@ */ @SuppressWarnings("unused") public final class DictionaryBatch extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static DictionaryBatch getRootAsDictionaryBatch(ByteBuffer _bb) { return getRootAsDictionaryBatch(_bb, new DictionaryBatch()); } public static DictionaryBatch getRootAsDictionaryBatch(ByteBuffer _bb, DictionaryBatch obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryEncoding.java b/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryEncoding.java index c314ebb124e25..4563f3045c3fa 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryEncoding.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/DictionaryEncoding.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class DictionaryEncoding extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static DictionaryEncoding getRootAsDictionaryEncoding(ByteBuffer _bb) { return getRootAsDictionaryEncoding(_bb, new DictionaryEncoding()); } public static DictionaryEncoding getRootAsDictionaryEncoding(ByteBuffer _bb, DictionaryEncoding obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Duration.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Duration.java index 1518bd599da95..2cd70f2ce1bbd 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Duration.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Duration.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Duration extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Duration getRootAsDuration(ByteBuffer _bb) { return getRootAsDuration(_bb, new Duration()); } public static Duration getRootAsDuration(ByteBuffer _bb, Duration obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Field.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Field.java index 9724070bc00fd..fb7671577fc59 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Field.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Field.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class Field extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Field getRootAsField(ByteBuffer _bb) { return getRootAsField(_bb, new Field()); } public static Field getRootAsField(ByteBuffer _bb, Field obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeBinary.java b/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeBinary.java index 8e090a30e1a6c..e8da227f64ce8 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeBinary.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeBinary.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class FixedSizeBinary extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static FixedSizeBinary getRootAsFixedSizeBinary(ByteBuffer _bb) { return getRootAsFixedSizeBinary(_bb, new FixedSizeBinary()); } public static FixedSizeBinary getRootAsFixedSizeBinary(ByteBuffer _bb, FixedSizeBinary obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeList.java b/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeList.java index ce96771819186..18b632e739c2b 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeList.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/FixedSizeList.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class FixedSizeList extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static FixedSizeList getRootAsFixedSizeList(ByteBuffer _bb) { return getRootAsFixedSizeList(_bb, new FixedSizeList()); } public static FixedSizeList getRootAsFixedSizeList(ByteBuffer _bb, FixedSizeList obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/FloatingPoint.java b/java/format/src/main/java/org/apache/arrow/flatbuf/FloatingPoint.java index e602ebedd35df..fec203510cfa6 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/FloatingPoint.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/FloatingPoint.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class FloatingPoint extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static FloatingPoint getRootAsFloatingPoint(ByteBuffer _bb) { return getRootAsFloatingPoint(_bb, new FloatingPoint()); } public static FloatingPoint getRootAsFloatingPoint(ByteBuffer _bb, FloatingPoint obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Footer.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Footer.java index 9cc7d67bcb9d2..ba122bc7edf97 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Footer.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Footer.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class Footer extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Footer getRootAsFooter(ByteBuffer _bb) { return getRootAsFooter(_bb, new Footer()); } public static Footer getRootAsFooter(ByteBuffer _bb, Footer obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Int.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Int.java index 8bb2866c38480..aa3d401c45e46 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Int.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Int.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Int extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Int getRootAsInt(ByteBuffer _bb) { return getRootAsInt(_bb, new Int()); } public static Int getRootAsInt(ByteBuffer _bb, Int obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Interval.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Interval.java index c2cd1e5d6acc0..c28ab0a73ee2d 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Interval.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Interval.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Interval extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Interval getRootAsInterval(ByteBuffer _bb) { return getRootAsInterval(_bb, new Interval()); } public static Interval getRootAsInterval(ByteBuffer _bb, Interval obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/KeyValue.java b/java/format/src/main/java/org/apache/arrow/flatbuf/KeyValue.java index dcbd0744fd0d1..fdfd51d608189 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/KeyValue.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/KeyValue.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class KeyValue extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static KeyValue getRootAsKeyValue(ByteBuffer _bb) { return getRootAsKeyValue(_bb, new KeyValue()); } public static KeyValue getRootAsKeyValue(ByteBuffer _bb, KeyValue obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeBinary.java b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeBinary.java index 65d9314858885..d884e142822a5 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeBinary.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeBinary.java @@ -41,7 +41,7 @@ */ @SuppressWarnings("unused") public final class LargeBinary extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static LargeBinary getRootAsLargeBinary(ByteBuffer _bb) { return getRootAsLargeBinary(_bb, new LargeBinary()); } public static LargeBinary getRootAsLargeBinary(ByteBuffer _bb, LargeBinary obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeList.java b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeList.java index 144454d5bfaf5..2efdba901126a 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeList.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeList.java @@ -41,7 +41,7 @@ */ @SuppressWarnings("unused") public final class LargeList extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static LargeList getRootAsLargeList(ByteBuffer _bb) { return getRootAsLargeList(_bb, new LargeList()); } public static LargeList getRootAsLargeList(ByteBuffer _bb, LargeList obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeListView.java b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeListView.java index c88ff0bdc951a..3e45dff700f78 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeListView.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeListView.java @@ -41,7 +41,7 @@ */ @SuppressWarnings("unused") public final class LargeListView extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static LargeListView getRootAsLargeListView(ByteBuffer _bb) { return getRootAsLargeListView(_bb, new LargeListView()); } public static LargeListView getRootAsLargeListView(ByteBuffer _bb, LargeListView obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeUtf8.java b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeUtf8.java index 4c3532250dd9d..2430631d1f26c 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/LargeUtf8.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/LargeUtf8.java @@ -41,7 +41,7 @@ */ @SuppressWarnings("unused") public final class LargeUtf8 extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static LargeUtf8 getRootAsLargeUtf8(ByteBuffer _bb) { return getRootAsLargeUtf8(_bb, new LargeUtf8()); } public static LargeUtf8 getRootAsLargeUtf8(ByteBuffer _bb, LargeUtf8 obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/List.java b/java/format/src/main/java/org/apache/arrow/flatbuf/List.java index 00b56652da884..74162b39bf376 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/List.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/List.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class List extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static List getRootAsList(ByteBuffer _bb) { return getRootAsList(_bb, new List()); } public static List getRootAsList(ByteBuffer _bb, List obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/ListView.java b/java/format/src/main/java/org/apache/arrow/flatbuf/ListView.java index e211600c0eefc..433bac1b602da 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/ListView.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/ListView.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class ListView extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static ListView getRootAsListView(ByteBuffer _bb) { return getRootAsListView(_bb, new ListView()); } public static ListView getRootAsListView(ByteBuffer _bb, ListView obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Map.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Map.java index b8a36a8b19f79..8a62fcacab81f 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Map.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Map.java @@ -64,7 +64,7 @@ */ @SuppressWarnings("unused") public final class Map extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Map getRootAsMap(ByteBuffer _bb) { return getRootAsMap(_bb, new Map()); } public static Map getRootAsMap(ByteBuffer _bb, Map obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Message.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Message.java index 32941ad7b3d77..caccb8ee4a7ef 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Message.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Message.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Message extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Message getRootAsMessage(ByteBuffer _bb) { return getRootAsMessage(_bb, new Message()); } public static Message getRootAsMessage(ByteBuffer _bb, Message obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Null.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Null.java index e0cbf21b723c5..1c7c8e304db45 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Null.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Null.java @@ -40,7 +40,7 @@ */ @SuppressWarnings("unused") public final class Null extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Null getRootAsNull(ByteBuffer _bb) { return getRootAsNull(_bb, new Null()); } public static Null getRootAsNull(ByteBuffer _bb, Null obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/RecordBatch.java b/java/format/src/main/java/org/apache/arrow/flatbuf/RecordBatch.java index 286ef0840a613..66d707a06c470 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/RecordBatch.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/RecordBatch.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class RecordBatch extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static RecordBatch getRootAsRecordBatch(ByteBuffer _bb) { return getRootAsRecordBatch(_bb, new RecordBatch()); } public static RecordBatch getRootAsRecordBatch(ByteBuffer _bb, RecordBatch obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/RunEndEncoded.java b/java/format/src/main/java/org/apache/arrow/flatbuf/RunEndEncoded.java index 89e8f0039a5ca..e33bd4abc0192 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/RunEndEncoded.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/RunEndEncoded.java @@ -44,7 +44,7 @@ */ @SuppressWarnings("unused") public final class RunEndEncoded extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static RunEndEncoded getRootAsRunEndEncoded(ByteBuffer _bb) { return getRootAsRunEndEncoded(_bb, new RunEndEncoded()); } public static RunEndEncoded getRootAsRunEndEncoded(ByteBuffer _bb, RunEndEncoded obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Schema.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Schema.java index a81c052ec0907..ff907133c64ff 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Schema.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Schema.java @@ -41,7 +41,7 @@ */ @SuppressWarnings("unused") public final class Schema extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Schema getRootAsSchema(ByteBuffer _bb) { return getRootAsSchema(_bb, new Schema()); } public static Schema getRootAsSchema(ByteBuffer _bb, Schema obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.java b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.java index 9874899141172..28e6c35dcb954 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.java @@ -40,7 +40,7 @@ */ @SuppressWarnings("unused") public final class SparseMatrixIndexCSX extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static SparseMatrixIndexCSX getRootAsSparseMatrixIndexCSX(ByteBuffer _bb) { return getRootAsSparseMatrixIndexCSX(_bb, new SparseMatrixIndexCSX()); } public static SparseMatrixIndexCSX getRootAsSparseMatrixIndexCSX(ByteBuffer _bb, SparseMatrixIndexCSX obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensor.java b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensor.java index 62b4274146c08..e54868042ebbe 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensor.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensor.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class SparseTensor extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static SparseTensor getRootAsSparseTensor(ByteBuffer _bb) { return getRootAsSparseTensor(_bb, new SparseTensor()); } public static SparseTensor getRootAsSparseTensor(ByteBuffer _bb, SparseTensor obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCOO.java b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCOO.java index 80c524c75c7e3..df8180825da99 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCOO.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCOO.java @@ -71,7 +71,7 @@ */ @SuppressWarnings("unused") public final class SparseTensorIndexCOO extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static SparseTensorIndexCOO getRootAsSparseTensorIndexCOO(ByteBuffer _bb) { return getRootAsSparseTensorIndexCOO(_bb, new SparseTensorIndexCOO()); } public static SparseTensorIndexCOO getRootAsSparseTensorIndexCOO(ByteBuffer _bb, SparseTensorIndexCOO obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCSF.java b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCSF.java index 87f269de551f5..68379a977ebdd 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCSF.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/SparseTensorIndexCSF.java @@ -40,7 +40,7 @@ */ @SuppressWarnings("unused") public final class SparseTensorIndexCSF extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static SparseTensorIndexCSF getRootAsSparseTensorIndexCSF(ByteBuffer _bb) { return getRootAsSparseTensorIndexCSF(_bb, new SparseTensorIndexCSF()); } public static SparseTensorIndexCSF getRootAsSparseTensorIndexCSF(ByteBuffer _bb, SparseTensorIndexCSF obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Struct_.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Struct_.java index 0517be6153c29..2edfd03cf66b1 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Struct_.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Struct_.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class Struct_ extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Struct_ getRootAsStruct_(ByteBuffer _bb) { return getRootAsStruct_(_bb, new Struct_()); } public static Struct_ getRootAsStruct_(ByteBuffer _bb, Struct_ obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Tensor.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Tensor.java index 5892b6aca90f1..ac42212a821a7 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Tensor.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Tensor.java @@ -37,7 +37,7 @@ @SuppressWarnings("unused") public final class Tensor extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Tensor getRootAsTensor(ByteBuffer _bb) { return getRootAsTensor(_bb, new Tensor()); } public static Tensor getRootAsTensor(ByteBuffer _bb, Tensor obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/TensorDim.java b/java/format/src/main/java/org/apache/arrow/flatbuf/TensorDim.java index 3c85786f409e8..16555187ac563 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/TensorDim.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/TensorDim.java @@ -42,7 +42,7 @@ */ @SuppressWarnings("unused") public final class TensorDim extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static TensorDim getRootAsTensorDim(ByteBuffer _bb) { return getRootAsTensorDim(_bb, new TensorDim()); } public static TensorDim getRootAsTensorDim(ByteBuffer _bb, TensorDim obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Time.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Time.java index d5a320f493596..9e854aab8255f 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Time.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Time.java @@ -53,7 +53,7 @@ */ @SuppressWarnings("unused") public final class Time extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Time getRootAsTime(ByteBuffer _bb) { return getRootAsTime(_bb, new Time()); } public static Time getRootAsTime(ByteBuffer _bb, Time obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Timestamp.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Timestamp.java index d906fbeea1b9b..9c0baaed2fdd7 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Timestamp.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Timestamp.java @@ -144,7 +144,7 @@ */ @SuppressWarnings("unused") public final class Timestamp extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Timestamp getRootAsTimestamp(ByteBuffer _bb) { return getRootAsTimestamp(_bb, new Timestamp()); } public static Timestamp getRootAsTimestamp(ByteBuffer _bb, Timestamp obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Union.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Union.java index 1a106919cb137..ed952c2197f18 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Union.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Union.java @@ -43,7 +43,7 @@ */ @SuppressWarnings("unused") public final class Union extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Union getRootAsUnion(ByteBuffer _bb) { return getRootAsUnion(_bb, new Union()); } public static Union getRootAsUnion(ByteBuffer _bb, Union obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8.java index 60933cf25aff5..4865f50d6e927 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8.java @@ -40,7 +40,7 @@ */ @SuppressWarnings("unused") public final class Utf8 extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Utf8 getRootAsUtf8(ByteBuffer _bb) { return getRootAsUtf8(_bb, new Utf8()); } public static Utf8 getRootAsUtf8(ByteBuffer _bb, Utf8 obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8View.java b/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8View.java index 377ba034cbb7f..6822820e56906 100644 --- a/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8View.java +++ b/java/format/src/main/java/org/apache/arrow/flatbuf/Utf8View.java @@ -46,7 +46,7 @@ */ @SuppressWarnings("unused") public final class Utf8View extends Table { - public static void ValidateVersion() { Constants.FLATBUFFERS_23_5_26(); } + public static void ValidateVersion() { Constants.FLATBUFFERS_24_3_25(); } public static Utf8View getRootAsUtf8View(ByteBuffer _bb) { return getRootAsUtf8View(_bb, new Utf8View()); } public static Utf8View getRootAsUtf8View(ByteBuffer _bb, Utf8View obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); } public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); } diff --git a/java/pom.xml b/java/pom.xml index 0543bad008546..6bdb5e8e301a2 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -96,7 +96,7 @@ under the License. 3.25.1 2.17.1 3.4.0 - 23.5.26 + 24.3.25 1.11.3 2 From 230859b79dbd6d138f6521961c7b54c1874299a0 Mon Sep 17 00:00:00 2001 From: Neal Richardson Date: Sat, 22 Jun 2024 04:01:46 -0400 Subject: [PATCH 09/14] GH-42220: [R] handle vctrs_rcrd extension type in metadata cleaning (#42226) ### Rationale for this change See https://github.com/apache/arrow/issues/42220. Extension type metadata serialization works slightly differently from the general R metadata path: it uses a vctrs::ptype object, which is 0-length with attributes. The sanitization needs to happen on `attributes()`, not the object being serialized. The error was caused because `vctrs_rcrd` has a special `[<-` method, so iterating over it and assigning back in the sanitized version (even if it were the right thing to do) failed. ### What changes are included in this PR? Sanitize the `attributes()` of vctrs ptypes. ### Are these changes tested? yes ### Are there any user-facing changes? other than the bug being fixed, no * GitHub Issue: #42220 Authored-by: Neal Richardson Signed-off-by: Nic Crane --- r/R/extension.R | 7 +++++-- r/tests/testthat/test-extension.R | 8 ++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/r/R/extension.R b/r/R/extension.R index 3529144e11500..e5b12b80ae615 100644 --- a/r/R/extension.R +++ b/r/R/extension.R @@ -429,7 +429,8 @@ VctrsExtensionType <- R6Class("VctrsExtensionType", paste0(capture.output(print(self$ptype())), collapse = "\n") }, deserialize_instance = function() { - private$.ptype <- safe_r_metadata(safe_unserialize(self$extension_metadata())) + private$.ptype <- safe_unserialize(self$extension_metadata()) + attributes(private$.ptype) <- safe_r_metadata(attributes(private$.ptype)) }, ExtensionEquals = function(other) { inherits(other, "VctrsExtensionType") && identical(self$ptype(), other$ptype()) @@ -510,11 +511,13 @@ vctrs_extension_array <- function(x, ptype = vctrs::vec_ptype(x), vctrs_extension_type <- function(x, storage_type = infer_type(vctrs::vec_data(x))) { ptype <- vctrs::vec_ptype(x) + # Make sure there are no unsupported objects buried in there + attributes(ptype) <- safe_r_metadata(attributes(ptype)) new_extension_type( storage_type = storage_type, extension_name = "arrow.r.vctrs", - extension_metadata = serialize(ptype, NULL), + extension_metadata = serialize(ptype, NULL, ascii = TRUE), type_class = VctrsExtensionType ) } diff --git a/r/tests/testthat/test-extension.R b/r/tests/testthat/test-extension.R index 8b3d7d8aaa902..db26a70acb419 100644 --- a/r/tests/testthat/test-extension.R +++ b/r/tests/testthat/test-extension.R @@ -343,3 +343,11 @@ test_that("Dataset/arrow_dplyr_query can roundtrip extension types", { expect_identical(unclass(roundtripped$extension), roundtripped$letter) }) + +test_that("Handling vctrs_rcrd type", { + df <- data.frame( + x = vctrs::new_rcrd(fields = list(special = 1:3), class = "special") + ) + tab <- arrow_table(df) + expect_identical(as.data.frame(tab), df) +}) From 26724ab787d12854f109d01571638b099f2bc8a5 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sat, 22 Jun 2024 09:12:31 -0500 Subject: [PATCH 10/14] GH-42234: [CI][R] Disable libarrow binary use on valgrind tests (#42249) Which is making the tests fail. Resolves #42234 * GitHub Issue: #42234 Authored-by: Jonathan Keane Signed-off-by: Jonathan Keane --- docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yml b/docker-compose.yml index 533a656660fa6..a2a2b41c8747f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1565,6 +1565,7 @@ services: # so some build might pass without this setting, but we want to ensure that we stay to AVX2 regardless of runner. EXTRA_CMAKE_FLAGS: "-DARROW_RUNTIME_SIMD_LEVEL=AVX2" ARROW_SOURCE_HOME: "/arrow" + LIBARROW_DOWNLOAD: "false" volumes: *ubuntu-volumes command: > /bin/bash -c " From 3fe4df365791770638b8655006785a4e0f75417e Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sat, 22 Jun 2024 18:46:40 -0500 Subject: [PATCH 11/14] GH-42232: [C++] Use non-stale c-ares download URL (#42250) ### Rationale for this change The URL to download the c-ares dependency is stale. Note: we weren't seeing this bonk on most CI because we have the fallback of our own copy of these. But the R script that downloads all of our thirdparty deps always uses the official URL which is the one that had moved. Resolves #42232 ### What changes are included in this PR? Use the appropriate URL, muck with `.` -> `_` ### Are these changes tested? The current CI should pass + the R maximal offline build should pass too ### Are there any user-facing changes? More reliable retrieval of all thirdparty dependencies * GitHub Issue: #42232 Authored-by: Jonathan Keane Signed-off-by: Sutou Kouhei --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 4 +++- cpp/thirdparty/versions.txt | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index 9dcb426f079fe..fe859a0121ca6 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -634,8 +634,10 @@ endif() if(DEFINED ENV{ARROW_CARES_URL}) set(CARES_SOURCE_URL "$ENV{ARROW_CARES_URL}") else() + string(REPLACE "." "_" ARROW_CARES_BUILD_VERSION_UNDERSCORES + ${ARROW_CARES_BUILD_VERSION}) set_urls(CARES_SOURCE_URL - "https://c-ares.haxx.se/download/c-ares-${ARROW_CARES_BUILD_VERSION}.tar.gz" + "https://github.com/c-ares/c-ares/releases/download/cares-${ARROW_CARES_BUILD_VERSION_UNDERSCORES}/c-ares-${ARROW_CARES_BUILD_VERSION}.tar.gz" "${THIRDPARTY_MIRROR_URL}/cares-${ARROW_CARES_BUILD_VERSION}.tar.gz") endif() diff --git a/cpp/thirdparty/versions.txt b/cpp/thirdparty/versions.txt index 67275ffea5cf6..f080cf58bca85 100644 --- a/cpp/thirdparty/versions.txt +++ b/cpp/thirdparty/versions.txt @@ -144,7 +144,7 @@ DEPENDENCIES=( "ARROW_BOOST_URL boost-${ARROW_BOOST_BUILD_VERSION}.tar.gz https://apache.jfrog.io/artifactory/arrow/thirdparty/7.0.0/boost_${ARROW_BOOST_BUILD_VERSION//./_}.tar.gz" "ARROW_BROTLI_URL brotli-${ARROW_BROTLI_BUILD_VERSION}.tar.gz https://github.com/google/brotli/archive/${ARROW_BROTLI_BUILD_VERSION}.tar.gz" "ARROW_BZIP2_URL bzip2-${ARROW_BZIP2_BUILD_VERSION}.tar.gz https://sourceware.org/pub/bzip2/bzip2-${ARROW_BZIP2_BUILD_VERSION}.tar.gz" - "ARROW_CARES_URL cares-${ARROW_CARES_BUILD_VERSION}.tar.gz https://c-ares.haxx.se/download/c-ares-${ARROW_CARES_BUILD_VERSION}.tar.gz" + "ARROW_CARES_URL cares-${ARROW_CARES_BUILD_VERSION}.tar.gz https://github.com/c-ares/c-ares/releases/download/cares-${ARROW_CARES_BUILD_VERSION//./_}/c-ares-${ARROW_CARES_BUILD_VERSION}.tar.gz" "ARROW_CRC32C_URL crc32c-${ARROW_CRC32C_BUILD_VERSION}.tar.gz https://github.com/google/crc32c/archive/refs/tags/${ARROW_CRC32C_BUILD_VERSION}.tar.gz" "ARROW_GBENCHMARK_URL gbenchmark-${ARROW_GBENCHMARK_BUILD_VERSION}.tar.gz https://github.com/google/benchmark/archive/${ARROW_GBENCHMARK_BUILD_VERSION}.tar.gz" "ARROW_GFLAGS_URL gflags-${ARROW_GFLAGS_BUILD_VERSION}.tar.gz https://github.com/gflags/gflags/archive/${ARROW_GFLAGS_BUILD_VERSION}.tar.gz" From 4a54950b3df34d90380959b40b6f85cb7801892c Mon Sep 17 00:00:00 2001 From: abandy Date: Sat, 22 Jun 2024 19:49:08 -0400 Subject: [PATCH 12/14] GH-42213: [Swift] Use "--warnings-as-errors" only on CI (#42214) ### Rationale for this change Downstream clients are getting a conflicting options error when building with the "-warnings-as-errors" swift option. ### What changes are included in this PR? This PR disables the "-warnings-as-errors" swift options by default and enables them for CI builds only. The Swift CI script will enable the options in the Package.swift files before running the build. * GitHub Issue: #42213 Lead-authored-by: Alva Bandy Co-authored-by: Sutou Kouhei Signed-off-by: Sutou Kouhei --- ci/scripts/swift_test.sh | 4 ++++ swift/Arrow/Package.swift | 7 ++++--- swift/ArrowFlight/Package.swift | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/ci/scripts/swift_test.sh b/ci/scripts/swift_test.sh index b523e3891d93c..aba90f31e50d5 100755 --- a/ci/scripts/swift_test.sh +++ b/ci/scripts/swift_test.sh @@ -34,10 +34,14 @@ popd source_dir=${1}/swift/Arrow pushd ${source_dir} +sed 's/\/\/ build://g' Package.swift > Package.swift.build +mv Package.swift.build Package.swift swift test popd source_dir=${1}/swift/ArrowFlight pushd ${source_dir} +sed 's/\/\/ build://g' Package.swift > Package.swift.build +mv Package.swift.build Package.swift swift test popd diff --git a/swift/Arrow/Package.swift b/swift/Arrow/Package.swift index 6944d7b910656..85407ea1b96b8 100644 --- a/swift/Arrow/Package.swift +++ b/swift/Arrow/Package.swift @@ -46,8 +46,9 @@ let package = Package( name: "ArrowC", path: "Sources/ArrowC", swiftSettings: [ - .unsafeFlags(["-warnings-as-errors"]) + // build: .unsafeFlags(["-warnings-as-errors"]) ] + ), .target( name: "Arrow", @@ -56,14 +57,14 @@ let package = Package( .product(name: "Atomics", package: "swift-atomics") ], swiftSettings: [ - .unsafeFlags(["-warnings-as-errors"]) + // build: .unsafeFlags(["-warnings-as-errors"]) ] ), .testTarget( name: "ArrowTests", dependencies: ["Arrow", "ArrowC"], swiftSettings: [ - .unsafeFlags(["-warnings-as-errors"]) + // build: .unsafeFlags(["-warnings-as-errors"]) ] ) ] diff --git a/swift/ArrowFlight/Package.swift b/swift/ArrowFlight/Package.swift index f4d6485d1bb28..8366ccceb7a59 100644 --- a/swift/ArrowFlight/Package.swift +++ b/swift/ArrowFlight/Package.swift @@ -47,14 +47,14 @@ let package = Package( .product(name: "SwiftProtobuf", package: "swift-protobuf") ], swiftSettings: [ - .unsafeFlags(["-warnings-as-errors"]) + // build: .unsafeFlags(["-warnings-as-errors"]) ] ), .testTarget( name: "ArrowFlightTests", dependencies: ["ArrowFlight"], swiftSettings: [ - .unsafeFlags(["-warnings-as-errors"]) + // build: .unsafeFlags(["-warnings-as-errors"]) ] ) ] From 67bbf846d0d47075e1711b3fb4cf8fb05c74bd09 Mon Sep 17 00:00:00 2001 From: Jonathan Keane Date: Sun, 23 Jun 2024 16:03:41 -0500 Subject: [PATCH 13/14] GH-41952: [R] Turn S3 and ZSTD on by default for macOS (#42210) Changeup `nixlibs.R` so that we enable S3 and ZSTD by default on CRAN. I've checked this against the CRAN macbuilder to confirm it does work (that's not a guarantee it'll work on other CRAN maintained macOS builders, but a good indication). It also removes gcs from the list of features we expect to be on and warn folks about if it is not. ### Rationale for this change So that our builds are more fully featured. ### What changes are included in this PR? Enable `ARROW_S3` by default when building form source on macOS. ### Are these changes tested? Existing CI should not fail. ### Are there any user-facing changes? Getting Arrow from the canonical repository would be more fully featured. * GitHub Issue: #41952 Lead-authored-by: Jonathan Keane Co-authored-by: Neal Richardson Signed-off-by: Jonathan Keane --- r/R/arrow-info.R | 2 +- r/inst/build_arrow_static.sh | 1 + r/tools/nixlibs.R | 26 +++++++++++++++++++++----- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/r/R/arrow-info.R b/r/R/arrow-info.R index 916b6683fbcce..ddeb0f04efac1 100644 --- a/r/R/arrow-info.R +++ b/r/R/arrow-info.R @@ -140,7 +140,7 @@ some_features_are_off <- function(features) { # `features` is a named logical vector (as in arrow_info()$capabilities) # Let's exclude some less relevant ones # jemalloc is only included because it is sometimes disabled in our build process - blocklist <- c("lzo", "bz2", "brotli", "substrait", "jemalloc") + blocklist <- c("lzo", "bz2", "brotli", "substrait", "jemalloc", "gcs") # Return TRUE if any of the other features are FALSE !all(features[setdiff(names(features), blocklist)]) } diff --git a/r/inst/build_arrow_static.sh b/r/inst/build_arrow_static.sh index 825a230e78e5e..fc3a173294b4a 100755 --- a/r/inst/build_arrow_static.sh +++ b/r/inst/build_arrow_static.sh @@ -65,6 +65,7 @@ esac mkdir -p "${BUILD_DIR}" pushd "${BUILD_DIR}" ${CMAKE} -DARROW_BOOST_USE_SHARED=OFF \ + -DARROW_SNAPPY_USE_SHARED=OFF \ -DARROW_BUILD_TESTS=OFF \ -DARROW_BUILD_SHARED=OFF \ -DARROW_BUILD_STATIC=ON \ diff --git a/r/tools/nixlibs.R b/r/tools/nixlibs.R index def4d35f825be..fc79e06328005 100644 --- a/r/tools/nixlibs.R +++ b/r/tools/nixlibs.R @@ -536,7 +536,7 @@ build_libarrow <- function(src_dir, dst_dir) { } cleanup(build_dir) - env_var_list <- c( + env_var_list <- list( SOURCE_DIR = src_dir, BUILD_DIR = build_dir, DEST_DIR = dst_dir, @@ -574,6 +574,14 @@ build_libarrow <- function(src_dir, dst_dir) { env_var_list <- c(env_var_list, setNames("BUNDLED", env_var)) } } + # We also _do_ want to enable S3 and ZSTD by default + # so that binaries built on CRAN from source are fully featured + # but defer to the env vars if those are set + env_var_list <- c( + env_var_list, + ARROW_S3 = Sys.getenv("ARROW_S3", "ON"), + ARROW_WITH_ZSTD = Sys.getenv("ARROW_WITH_ZSTD", "ON") + ) } env_var_list <- with_cloud_support(env_var_list) @@ -814,8 +822,16 @@ set_thirdparty_urls <- function(env_var_list) { env_var_list } -is_feature_requested <- function(env_varname, default = env_is("LIBARROW_MINIMAL", "false")) { - env_value <- tolower(Sys.getenv(env_varname)) +# this is generally about features that people asked for via environment variables, but +# for some cases (like S3 when we override it in this script) we might find those in +# env_var_list +is_feature_requested <- function(env_varname, env_var_list, default = env_is("LIBARROW_MINIMAL", "false")) { + # look in the environment first, but then use the env_var_list if nothing is found + env_var_list_value <- env_var_list[[env_varname]] + if (is.null(env_var_list_value)) { + env_var_list_value <- "" + } + env_value <- tolower(Sys.getenv(env_varname, env_var_list_value)) if (identical(env_value, "off")) { # If e.g. ARROW_MIMALLOC=OFF explicitly, override default requested <- FALSE @@ -828,8 +844,8 @@ is_feature_requested <- function(env_varname, default = env_is("LIBARROW_MINIMAL } with_cloud_support <- function(env_var_list) { - arrow_s3 <- is_feature_requested("ARROW_S3") - arrow_gcs <- is_feature_requested("ARROW_GCS") + arrow_s3 <- is_feature_requested("ARROW_S3", env_var_list) + arrow_gcs <- is_feature_requested("ARROW_GCS", env_var_list) if (arrow_s3 || arrow_gcs) { # User wants S3 or GCS support. From ba863d0026ff31c77f636cd5526ea124b39ef7bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jun 2024 08:51:17 +0900 Subject: [PATCH 14/14] MINOR: [Java] Bump org.cyclonedx:cyclonedx-maven-plugin from 2.7.11 to 2.8.0 in /java (#42184) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [org.cyclonedx:cyclonedx-maven-plugin](https://github.com/CycloneDX/cyclonedx-maven-plugin) from 2.7.11 to 2.8.0.
Release notes

Sourced from org.cyclonedx:cyclonedx-maven-plugin's releases.

2.8.0

🚀 New features and improvements

🐛 Bug Fixes

📦 Dependency updates

Commits
  • 90e3817 [maven-release-plugin] prepare release cyclonedx-maven-plugin-2.8.0
  • eed838e convert external reference type by value instead of default CONSTANT_NAME
  • 3fd83bf Bump org.apache.maven.plugins:maven-compiler-plugin
  • 343c62d check if configured schemaVersion is supported
  • d001542 distribution-intake external reference is more accurate
  • fa5541d Bump actions/checkout from 4.1.1 to 4.1.2
  • a43cd05 Bump org.apache.commons:commons-compress
  • 31ff1f4 Bump org.junit:junit-bom from 5.10.1 to 5.10.2
  • ce8a6e7 Bump release-drafter/release-drafter from 5 to 6
  • 16dcb5b Bump commons-codec:commons-codec from 1.16.0 to 1.16.1
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.cyclonedx:cyclonedx-maven-plugin&package-manager=maven&previous-version=2.7.11&new-version=2.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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-automerge-start) [//]: # (dependabot-automerge-end) ---
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 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)
Authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Signed-off-by: David Li --- java/maven/pom.xml | 2 +- java/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/java/maven/pom.xml b/java/maven/pom.xml index e9bc802db15fb..5b2e069ce7535 100644 --- a/java/maven/pom.xml +++ b/java/maven/pom.xml @@ -73,7 +73,7 @@ under the License. org.cyclonedx cyclonedx-maven-plugin - 2.7.11 + 2.8.0 diff --git a/java/pom.xml b/java/pom.xml index 6bdb5e8e301a2..425ab8c47e37e 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -518,7 +518,7 @@ under the License. org.cyclonedx cyclonedx-maven-plugin - 2.7.11 + 2.8.0 org.apache.drill.tools