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/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/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/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/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" 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 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 " 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 { 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/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/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( 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/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 7c4683a7281db..425ab8c47e37e 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 @@ -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 @@ -531,7 +518,7 @@ under the License. org.cyclonedx cyclonedx-maven-plugin - 2.7.11 + 2.8.0 org.apache.drill.tools @@ -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; 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 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/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/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/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) +}) 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. 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/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/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/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 { 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 } - } } 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"]) ] ) ]