Skip to content

build(csharp): consume ADBC from nuget.org instead of the submodule - #242

Merged
CurtHagenlocher merged 1 commit into
adbc-drivers:mainfrom
CurtHagenlocher:build-consume-adbc-from-nuget
Jul 28, 2026
Merged

build(csharp): consume ADBC from nuget.org instead of the submodule#242
CurtHagenlocher merged 1 commit into
adbc-drivers:mainfrom
CurtHagenlocher:build-consume-adbc-from-nuget

Conversation

@CurtHagenlocher

Copy link
Copy Markdown
Collaborator

What's Changed

Apache.Arrow.Adbc 0.24.0 and Apache.Arrow.Adbc.Telemetry.Traces.Listeners 0.24.0 are now published, so the driver references them as packages rather than as projects inside the csharp/arrow-adbc submodule. Packing the driver previously emitted dependencies on 0.24.0-SNAPSHOT, a version that does not exist on nuget.org, which made the resulting package uninstallable.

AdbcDrivers.BigQuery.Tests keeps its ProjectReference to the submodule's Apache.Arrow.Adbc.Testing. The published Testing package ships only net8.0/net10.0 assets because upstream gates its net472 target on $(IsWindows), and this suite targets net472 on Windows. Apache.Arrow.Adbc.Client now comes along transitively from Testing rather than being referenced directly. The submodule is therefore now test-only, and no longer reaches any published artifact.

Apache.Arrow.Adbc 0.24.0 and Apache.Arrow.Adbc.Telemetry.Traces.Listeners
0.24.0 are now published, so the driver references them as packages rather
than as projects inside the csharp/arrow-adbc submodule. Packing the driver
previously emitted dependencies on 0.24.0-SNAPSHOT, a version that does not
exist on nuget.org, which made the resulting package uninstallable.

AdbcDrivers.BigQuery.Tests keeps its ProjectReference to the submodule's
Apache.Arrow.Adbc.Testing. The published Testing package ships only
net8.0/net10.0 assets because upstream gates its net472 target on
$(IsWindows), and this suite targets net472 on Windows. Apache.Arrow.Adbc.Client
now comes along transitively from Testing rather than being referenced
directly. The submodule is therefore now test-only, and no longer reaches any
published artifact.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the C# BigQuery ADBC driver to consume the core ADBC libraries from NuGet (instead of project references to the csharp/arrow-adbc submodule), preventing generated packages from depending on an unreleased/nonexistent -SNAPSHOT version. The Arrow ADBC submodule remains referenced only by the test suite (via Apache.Arrow.Adbc.Testing) to preserve net472 coverage on Windows.

Changes:

  • Switched AdbcDrivers.BigQuery from ProjectReference to PackageReference for Apache.Arrow.Adbc and Apache.Arrow.Adbc.Telemetry.Traces.Listeners.
  • Added centrally-managed package versions for the ADBC packages in Directory.Packages.props.
  • Removed the trace listeners submodule project from the solution and removed the direct test reference to Apache.Arrow.Adbc.Client (now transitive via Testing).

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
csharp/src/AdbcDrivers.BigQuery/AdbcDrivers.BigQuery.csproj Replaces Arrow ADBC submodule project references with NuGet package references for runtime dependencies.
csharp/Directory.Packages.props Centrally pins ADBC package versions to 0.24.0 for consistent restores/builds.
csharp/test/AdbcDrivers.BigQuery.Tests/AdbcDrivers.BigQuery.Tests.csproj Keeps the submodule test dependency (Apache.Arrow.Adbc.Testing) while removing the now-redundant direct client reference.
csharp/AdbcDrivers.BigQuery.sln Drops the trace listeners submodule project from the solution configuration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@CurtHagenlocher
CurtHagenlocher merged commit cb00215 into adbc-drivers:main Jul 28, 2026
5 of 7 checks passed
@CurtHagenlocher
CurtHagenlocher deleted the build-consume-adbc-from-nuget branch July 28, 2026 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants