diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index e600a647..4591b098 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/devcontainers/dotnet:1-9.0-bookworm-slim AS dotnet +FROM mcr.microsoft.com/devcontainers/dotnet:2-10.0-noble AS dotnet #==================================================================== @@ -10,7 +10,7 @@ USER vscode COPY --chown=vscode:vscode . /tmp/build/ # Populate the nuget cache with all of our dependencies -RUN for project in /tmp/build/csharp*; do \ +RUN for project in /tmp/build/?sharp*; do \ dotnet restore $project; \ done diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2fea62b6..1272510c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,10 +25,10 @@ jobs: steps: - name: Checkout uses: actions/checkout@v6 - - name: Setup .NET SDK v9.0.x + - name: Setup .NET SDK v10.0.x uses: actions/setup-dotnet@v5 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x - name: Code formating check run: | dotnet tool restore @@ -126,10 +126,10 @@ jobs: run: brew install bison # .NET Setup (and also MSBuild for Windows). - - name: Setup .NET SDK v9.0.x + - name: Setup .NET SDK v10.0.x uses: actions/setup-dotnet@v5 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x - name: Setup MSBuild if: runner.os == 'Windows' uses: microsoft/setup-msbuild@v2 @@ -193,10 +193,10 @@ jobs: run: | mkdir bin cp -rv artifacts/*-native-library/* bin/ - - name: Setup .NET SDK v9.0.x + - name: Setup .NET SDK v10.0.x uses: actions/setup-dotnet@v5 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x - name: Get version id: get-version shell: pwsh @@ -235,7 +235,7 @@ jobs: - windows-2022 - windows-2025 - windows-11-arm - dotnet: [net6.0, net8.0, net9.0] + dotnet: [net8.0, net9.0, net10.0] include: - os: windows-2022 dotnet: net472 @@ -255,20 +255,20 @@ jobs: with: name: nuget-package path: nuget - - name: Setup .NET SDK v6.0.x - if: matrix.dotnet == 'net6.0' - uses: actions/setup-dotnet@v5 - with: - dotnet-version: 6.0.x - name: Setup .NET SDK v8.0.x if: matrix.dotnet == 'net8.0' uses: actions/setup-dotnet@v5 with: dotnet-version: 8.0.x - name: Setup .NET SDK v9.0.x + if: matrix.dotnet == 'net9.0' uses: actions/setup-dotnet@v5 with: dotnet-version: 9.0.x + - name: Setup .NET SDK v10.0.x + uses: actions/setup-dotnet@v5 + with: + dotnet-version: 10.0.x - name: Add local NuGet feed run: | dotnet new nugetconfig @@ -298,10 +298,10 @@ jobs: name: nuget-package path: nuget - - name: Setup .NET SDK v8.0.x + - name: Setup .NET SDK v10.0.x uses: actions/setup-dotnet@v5 with: - dotnet-version: 8.0.x + dotnet-version: 10.0.x - name: Add local NuGet feed run: | @@ -367,10 +367,10 @@ jobs: with: name: nuget-package path: nuget - - name: Setup .NET SDK v9.0.x + - name: Setup .NET SDK v10.0.x uses: actions/setup-dotnet@v5 with: - dotnet-version: 9.0.x + dotnet-version: 10.0.x # if version contains "-" treat it as pre-release # example: 1.0.0-beta1 - name: Create release diff --git a/.github/workflows/devcontainer.yml b/.github/workflows/devcontainer.yml index 54443eba..c10e7bbb 100644 --- a/.github/workflows/devcontainer.yml +++ b/.github/workflows/devcontainer.yml @@ -31,7 +31,7 @@ jobs: strategy: fail-fast: false matrix: - runner: [ubuntu-latest, ubuntu-22.04-arm64] + runner: [ubuntu-latest, ubuntu-24.04-arm] runs-on: ${{ matrix.runner }} steps: - name: Set up Docker Buildx diff --git a/csharp.benchmark/ParquetSharp.Benchmark.csproj b/csharp.benchmark/ParquetSharp.Benchmark.csproj index 954095a3..d0583b0b 100644 --- a/csharp.benchmark/ParquetSharp.Benchmark.csproj +++ b/csharp.benchmark/ParquetSharp.Benchmark.csproj @@ -3,7 +3,7 @@ Exe net8.0 - 9.0 + 10.0 enable ParquetSharp.Benchmark ParquetSharp.Benchmark diff --git a/csharp.test/ParquetSharp.Test.csproj b/csharp.test/ParquetSharp.Test.csproj index 0d29567a..7ac10722 100644 --- a/csharp.test/ParquetSharp.Test.csproj +++ b/csharp.test/ParquetSharp.Test.csproj @@ -1,12 +1,12 @@  - net8.0 + net10.0 - $(TargetFrameworks);net6.0;net9.0 + $(TargetFrameworks);net8.0;net9.0 $(TargetFrameworks);net472 - 9.0 + 10.0 enable ParquetSharp.Test ParquetSharp.Test diff --git a/csharp/ColumnReader.cs b/csharp/ColumnReader.cs index 2171a8cf..916d449f 100644 --- a/csharp/ColumnReader.cs +++ b/csharp/ColumnReader.cs @@ -227,10 +227,9 @@ public long ReadBatch(long batchSize, Span values, out long valuesRead) public unsafe long ReadBatch(long batchSize, Span defLevels, Span repLevels, Span values, out long valuesRead) { - if (values == null) throw new ArgumentNullException(nameof(values)); if (values.Length < batchSize) throw new ArgumentOutOfRangeException(nameof(values), "batchSize is larger than length of values"); - if (defLevels != null && defLevels.Length < batchSize) throw new ArgumentOutOfRangeException(nameof(defLevels), "batchSize is larger than length of defLevels"); - if (repLevels != null && repLevels.Length < batchSize) throw new ArgumentOutOfRangeException(nameof(repLevels), "batchSize is larger than length of repLevels"); + if (!defLevels.IsEmpty && defLevels.Length < batchSize) throw new ArgumentOutOfRangeException(nameof(defLevels), "batchSize is larger than length of defLevels"); + if (!repLevels.IsEmpty && repLevels.Length < batchSize) throw new ArgumentOutOfRangeException(nameof(repLevels), "batchSize is larger than length of repLevels"); var type = typeof(TValue); diff --git a/csharp/ColumnWriter.cs b/csharp/ColumnWriter.cs index 620040ab..809d6557 100644 --- a/csharp/ColumnWriter.cs +++ b/csharp/ColumnWriter.cs @@ -284,14 +284,12 @@ public void WriteBatch(ReadOnlySpan values) /// /// The lengths of and must be at least . /// - /// Thrown if is null. /// Thrown if is larger /// than the length of or . public unsafe void WriteBatch(int numValues, ReadOnlySpan defLevels, ReadOnlySpan repLevels, ReadOnlySpan values) { - if (values == null) throw new ArgumentNullException(nameof(values)); - if (defLevels != null && defLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(defLevels), "numValues is larger than length of defLevels"); - if (repLevels != null && repLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(repLevels), "numValues is larger than length of repLevels"); + if (!defLevels.IsEmpty && defLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(defLevels), "numValues is larger than length of defLevels"); + if (!repLevels.IsEmpty && repLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(repLevels), "numValues is larger than length of repLevels"); var type = typeof(TValue); @@ -363,10 +361,6 @@ public unsafe void WriteBatchSpaced( int numValues, ReadOnlySpan defLevels, ReadOnlySpan repLevels, ReadOnlySpan validBits, long validBitsOffset, ReadOnlySpan values) { - if (values == null) throw new ArgumentNullException(nameof(values)); - if (defLevels == null) throw new ArgumentNullException(nameof(defLevels)); - if (repLevels == null) throw new ArgumentNullException(nameof(repLevels)); - if (validBits == null) throw new ArgumentNullException(nameof(validBits)); //if (values.Length < numValues) throw new ArgumentOutOfRangeException("numValues is larger than length of values"); if (defLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(defLevels), "numValues is larger than length of defLevels"); if (repLevels.Length < numValues) throw new ArgumentOutOfRangeException(nameof(repLevels), "numValues is larger than length of repLevels"); diff --git a/csharp/ParquetSharp.csproj b/csharp/ParquetSharp.csproj index c68e9865..54a9ef0f 100644 --- a/csharp/ParquetSharp.csproj +++ b/csharp/ParquetSharp.csproj @@ -1,8 +1,8 @@  - net6;net471;netstandard2.1 - 9.0 + net8.0;net471;netstandard2.1 + 10.0 enable ParquetSharp ParquetSharp diff --git a/csharp/PublicAPI.Shipped.txt b/csharp/PublicAPI.Shipped.txt index 254c4f04..9c777ffc 100644 --- a/csharp/PublicAPI.Shipped.txt +++ b/csharp/PublicAPI.Shipped.txt @@ -121,7 +121,6 @@ ParquetSharp.Arrow.SchemaManifest.SchemaFields.get -> System.Collections.Generic ParquetSharp.BsonLogicalType ParquetSharp.ByteArray ParquetSharp.ByteArray.ByteArray() -> void -ParquetSharp.ByteArray.ByteArray(System.IntPtr pointer, int length) -> void ParquetSharp.ByteArray.Equals(ParquetSharp.ByteArray other) -> bool ParquetSharp.ByteArrayReaderCache ParquetSharp.ByteArrayReaderCache.Add(TPhysical physical, TLogical logical) -> TLogical @@ -398,7 +397,6 @@ ParquetSharp.FileMetaData.WriterVersion.get -> ParquetSharp.ApplicationVersion! ParquetSharp.FixedLenByteArray ParquetSharp.FixedLenByteArray.Equals(ParquetSharp.FixedLenByteArray other) -> bool ParquetSharp.FixedLenByteArray.FixedLenByteArray() -> void -ParquetSharp.FixedLenByteArray.FixedLenByteArray(System.IntPtr pointer) -> void ParquetSharp.Float16LogicalType ParquetSharp.IColumnDescriptorVisitor ParquetSharp.IColumnDescriptorVisitor.OnColumnDescriptor() -> TReturn @@ -419,11 +417,8 @@ ParquetSharp.IntLogicalType ParquetSharp.IntLogicalType.BitWidth.get -> int ParquetSharp.IntLogicalType.IsSigned.get -> bool ParquetSharp.IO.Buffer -ParquetSharp.IO.Buffer.Buffer(System.IntPtr data, long size) -> void ParquetSharp.IO.Buffer.Capacity.get -> long -ParquetSharp.IO.Buffer.Data.get -> System.IntPtr ParquetSharp.IO.Buffer.Dispose() -> void -ParquetSharp.IO.Buffer.MutableData.get -> System.IntPtr ParquetSharp.IO.Buffer.Size.get -> long ParquetSharp.IO.Buffer.ToArray() -> byte[]! ParquetSharp.IO.BufferOutputStream @@ -441,11 +436,9 @@ ParquetSharp.IO.ManagedRandomAccessFile.ManagedRandomAccessFile(System.IO.Stream ParquetSharp.IO.OutputStream ParquetSharp.IO.OutputStream.Dispose() -> void ParquetSharp.IO.OutputStream.OutputStream() -> void -ParquetSharp.IO.OutputStream.OutputStream(System.IntPtr handle) -> void ParquetSharp.IO.RandomAccessFile ParquetSharp.IO.RandomAccessFile.Dispose() -> void ParquetSharp.IO.RandomAccessFile.RandomAccessFile() -> void -ParquetSharp.IO.RandomAccessFile.RandomAccessFile(System.IntPtr handle) -> void ParquetSharp.IO.ResizableBuffer ParquetSharp.JsonLogicalType ParquetSharp.ListLogicalType @@ -477,7 +470,6 @@ ParquetSharp.LogicalReadConverterFactory.LogicalReadConverterFactory() -> void ParquetSharp.LogicalType ParquetSharp.LogicalType.Dispose() -> void ParquetSharp.LogicalType.Equals(ParquetSharp.LogicalType? other) -> bool -ParquetSharp.LogicalType.LogicalType(System.IntPtr handle) -> void ParquetSharp.LogicalType.Type.get -> ParquetSharp.LogicalTypeEnum ParquetSharp.LogicalTypeEnum ParquetSharp.LogicalTypeEnum.Bson = 13 -> ParquetSharp.LogicalTypeEnum @@ -686,7 +678,6 @@ ParquetSharp.Schema.Node.Equals(ParquetSharp.Schema.Node? other) -> bool ParquetSharp.Schema.Node.FieldId.get -> int ParquetSharp.Schema.Node.LogicalType.get -> ParquetSharp.LogicalType! ParquetSharp.Schema.Node.Name.get -> string! -ParquetSharp.Schema.Node.Node(System.IntPtr handle) -> void ParquetSharp.Schema.Node.NodeType.get -> ParquetSharp.Schema.NodeType ParquetSharp.Schema.Node.Parent.get -> ParquetSharp.Schema.Node? ParquetSharp.Schema.Node.Path.get -> ParquetSharp.Schema.ColumnPath! @@ -813,14 +804,12 @@ readonly ParquetSharp.ApplicationVersion.Patch -> int readonly ParquetSharp.ApplicationVersion.PreRelease -> string! readonly ParquetSharp.ApplicationVersion.Unknown -> string! readonly ParquetSharp.ByteArray.Length -> int -readonly ParquetSharp.ByteArray.Pointer -> System.IntPtr readonly ParquetSharp.Column.Length -> int readonly ParquetSharp.Column.LogicalSystemType -> System.Type! readonly ParquetSharp.Column.LogicalTypeOverride -> ParquetSharp.LogicalType? readonly ParquetSharp.Column.Name -> string! readonly ParquetSharp.Date.Days -> int readonly ParquetSharp.DateTimeNanos.Ticks -> long -readonly ParquetSharp.FixedLenByteArray.Pointer -> System.IntPtr readonly ParquetSharp.Int96.A -> int readonly ParquetSharp.Int96.B -> int readonly ParquetSharp.Int96.C -> int diff --git a/csharp/PublicAPI/net6/PublicAPI.Shipped.txt b/csharp/PublicAPI/net10.0/PublicAPI.Shipped.txt similarity index 84% rename from csharp/PublicAPI/net6/PublicAPI.Shipped.txt rename to csharp/PublicAPI/net10.0/PublicAPI.Shipped.txt index 5e94094a..9df96784 100644 --- a/csharp/PublicAPI/net6/PublicAPI.Shipped.txt +++ b/csharp/PublicAPI/net10.0/PublicAPI.Shipped.txt @@ -1,8 +1,19 @@ #nullable enable +ParquetSharp.ByteArray.ByteArray(nint pointer, int length) -> void +ParquetSharp.FixedLenByteArray.FixedLenByteArray(nint pointer) -> void +ParquetSharp.IO.Buffer.Buffer(nint data, long size) -> void +ParquetSharp.IO.Buffer.Data.get -> nint +ParquetSharp.IO.Buffer.MutableData.get -> nint +ParquetSharp.IO.OutputStream.OutputStream(nint handle) -> void +ParquetSharp.IO.RandomAccessFile.RandomAccessFile(nint handle) -> void +ParquetSharp.LogicalType.LogicalType(nint handle) -> void ParquetSharp.LogicalTypeFactory.DateAsDateOnly.get -> bool ParquetSharp.LogicalTypeFactory.DateAsDateOnly.set -> void ParquetSharp.LogicalTypeFactory.TimeAsTimeOnly.get -> bool ParquetSharp.LogicalTypeFactory.TimeAsTimeOnly.set -> void +ParquetSharp.Schema.Node.Node(nint handle) -> void +readonly ParquetSharp.ByteArray.Pointer -> nint +readonly ParquetSharp.FixedLenByteArray.Pointer -> nint static ParquetSharp.LogicalRead.ConvertDateOnly(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void static ParquetSharp.LogicalRead.ConvertDateOnly(System.ReadOnlySpan source, System.Span destination) -> void static ParquetSharp.LogicalRead.ConvertHalf(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void diff --git a/csharp/PublicAPI/net6/PublicAPI.Unshipped.txt b/csharp/PublicAPI/net10.0/PublicAPI.Unshipped.txt similarity index 100% rename from csharp/PublicAPI/net6/PublicAPI.Unshipped.txt rename to csharp/PublicAPI/net10.0/PublicAPI.Unshipped.txt diff --git a/csharp/PublicAPI/net471/PublicAPI.Shipped.txt b/csharp/PublicAPI/net471/PublicAPI.Shipped.txt index 7dc5c581..6155a15e 100644 --- a/csharp/PublicAPI/net471/PublicAPI.Shipped.txt +++ b/csharp/PublicAPI/net471/PublicAPI.Shipped.txt @@ -1 +1,12 @@ #nullable enable +ParquetSharp.ByteArray.ByteArray(System.IntPtr pointer, int length) -> void +ParquetSharp.FixedLenByteArray.FixedLenByteArray(System.IntPtr pointer) -> void +ParquetSharp.IO.Buffer.Buffer(System.IntPtr data, long size) -> void +ParquetSharp.IO.Buffer.Data.get -> System.IntPtr +ParquetSharp.IO.Buffer.MutableData.get -> System.IntPtr +ParquetSharp.IO.OutputStream.OutputStream(System.IntPtr handle) -> void +ParquetSharp.IO.RandomAccessFile.RandomAccessFile(System.IntPtr handle) -> void +ParquetSharp.LogicalType.LogicalType(System.IntPtr handle) -> void +ParquetSharp.Schema.Node.Node(System.IntPtr handle) -> void +readonly ParquetSharp.ByteArray.Pointer -> System.IntPtr +readonly ParquetSharp.FixedLenByteArray.Pointer -> System.IntPtr diff --git a/csharp/PublicAPI/net8.0/PublicAPI.Shipped.txt b/csharp/PublicAPI/net8.0/PublicAPI.Shipped.txt new file mode 100644 index 00000000..9df96784 --- /dev/null +++ b/csharp/PublicAPI/net8.0/PublicAPI.Shipped.txt @@ -0,0 +1,39 @@ +#nullable enable +ParquetSharp.ByteArray.ByteArray(nint pointer, int length) -> void +ParquetSharp.FixedLenByteArray.FixedLenByteArray(nint pointer) -> void +ParquetSharp.IO.Buffer.Buffer(nint data, long size) -> void +ParquetSharp.IO.Buffer.Data.get -> nint +ParquetSharp.IO.Buffer.MutableData.get -> nint +ParquetSharp.IO.OutputStream.OutputStream(nint handle) -> void +ParquetSharp.IO.RandomAccessFile.RandomAccessFile(nint handle) -> void +ParquetSharp.LogicalType.LogicalType(nint handle) -> void +ParquetSharp.LogicalTypeFactory.DateAsDateOnly.get -> bool +ParquetSharp.LogicalTypeFactory.DateAsDateOnly.set -> void +ParquetSharp.LogicalTypeFactory.TimeAsTimeOnly.get -> bool +ParquetSharp.LogicalTypeFactory.TimeAsTimeOnly.set -> void +ParquetSharp.Schema.Node.Node(nint handle) -> void +readonly ParquetSharp.ByteArray.Pointer -> nint +readonly ParquetSharp.FixedLenByteArray.Pointer -> nint +static ParquetSharp.LogicalRead.ConvertDateOnly(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void +static ParquetSharp.LogicalRead.ConvertDateOnly(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalRead.ConvertHalf(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void +static ParquetSharp.LogicalRead.ConvertHalf(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalRead.ConvertTimeOnlyMicros(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void +static ParquetSharp.LogicalRead.ConvertTimeOnlyMicros(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalRead.ConvertTimeOnlyMillis(System.ReadOnlySpan source, System.ReadOnlySpan defLevels, System.Span destination, short definedLevel) -> void +static ParquetSharp.LogicalRead.ConvertTimeOnlyMillis(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalRead.ToDateOnly(int source) -> System.DateOnly +static ParquetSharp.LogicalRead.ToHalf(ParquetSharp.FixedLenByteArray source) -> System.Half +static ParquetSharp.LogicalRead.ToTimeOnlyMicros(long source) -> System.TimeOnly +static ParquetSharp.LogicalRead.ToTimeOnlyMillis(int source) -> System.TimeOnly +static ParquetSharp.LogicalWrite.ConvertDateOnly(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalWrite.ConvertDateOnly(System.ReadOnlySpan source, System.Span defLevels, System.Span destination, short nullLevel) -> void +static ParquetSharp.LogicalWrite.ConvertHalf(System.ReadOnlySpan source, System.Span destination, ParquetSharp.ByteBuffer! byteBuffer) -> void +static ParquetSharp.LogicalWrite.ConvertHalf(System.ReadOnlySpan source, System.Span defLevels, System.Span destination, short nullLevel, ParquetSharp.ByteBuffer! byteBuffer) -> void +static ParquetSharp.LogicalWrite.ConvertTimeOnlyMicros(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalWrite.ConvertTimeOnlyMicros(System.ReadOnlySpan source, System.Span defLevels, System.Span destination, short nullLevel) -> void +static ParquetSharp.LogicalWrite.ConvertTimeOnlyMillis(System.ReadOnlySpan source, System.Span destination) -> void +static ParquetSharp.LogicalWrite.ConvertTimeOnlyMillis(System.ReadOnlySpan source, System.Span defLevels, System.Span destination, short nullLevel) -> void +static ParquetSharp.LogicalWrite.FromDateOnly(System.DateOnly source) -> int +static ParquetSharp.LogicalWrite.FromTimeOnlyMicros(System.TimeOnly source) -> long +static ParquetSharp.LogicalWrite.FromTimeOnlyMillis(System.TimeOnly source) -> int diff --git a/csharp/PublicAPI/net8.0/PublicAPI.Unshipped.txt b/csharp/PublicAPI/net8.0/PublicAPI.Unshipped.txt new file mode 100644 index 00000000..7dc5c581 --- /dev/null +++ b/csharp/PublicAPI/net8.0/PublicAPI.Unshipped.txt @@ -0,0 +1 @@ +#nullable enable diff --git a/csharp/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt b/csharp/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt index 7dc5c581..6155a15e 100644 --- a/csharp/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt +++ b/csharp/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt @@ -1 +1,12 @@ #nullable enable +ParquetSharp.ByteArray.ByteArray(System.IntPtr pointer, int length) -> void +ParquetSharp.FixedLenByteArray.FixedLenByteArray(System.IntPtr pointer) -> void +ParquetSharp.IO.Buffer.Buffer(System.IntPtr data, long size) -> void +ParquetSharp.IO.Buffer.Data.get -> System.IntPtr +ParquetSharp.IO.Buffer.MutableData.get -> System.IntPtr +ParquetSharp.IO.OutputStream.OutputStream(System.IntPtr handle) -> void +ParquetSharp.IO.RandomAccessFile.RandomAccessFile(System.IntPtr handle) -> void +ParquetSharp.LogicalType.LogicalType(System.IntPtr handle) -> void +ParquetSharp.Schema.Node.Node(System.IntPtr handle) -> void +readonly ParquetSharp.ByteArray.Pointer -> System.IntPtr +readonly ParquetSharp.FixedLenByteArray.Pointer -> System.IntPtr diff --git a/fsharp.test/ParquetSharp.Test.FSharp.fsproj b/fsharp.test/ParquetSharp.Test.FSharp.fsproj index 346a2908..0523a4c0 100644 --- a/fsharp.test/ParquetSharp.Test.FSharp.fsproj +++ b/fsharp.test/ParquetSharp.Test.FSharp.fsproj @@ -1,17 +1,17 @@  - net8.0 + net10.0 - $(TargetFrameworks);net6.0;net9.0 + $(TargetFrameworks);net8.0;net9.0 $(TargetFrameworks);net472 true - + diff --git a/global.json b/global.json index fdad5fa6..1c214267 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "9.0.109", + "version": "10.0.100", "rollForward": "latestMinor" } }