From ec557ddf16abb6a7f8bcbcc1c84854aed4f18c01 Mon Sep 17 00:00:00 2001
From: David Li
Date: Thu, 27 Aug 2026 11:16:30 +0900
Subject: [PATCH 1/3] ci: add Go/CGO to vcpkg and Windows-on-ARM tests
Closes #4683.
---
.github/workflows/native-vcpkg.yml | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/native-vcpkg.yml b/.github/workflows/native-vcpkg.yml
index 129e9c8c45..69d1fdebf4 100644
--- a/.github/workflows/native-vcpkg.yml
+++ b/.github/workflows/native-vcpkg.yml
@@ -120,10 +120,23 @@ jobs:
if (-not $?) { throw "failed to configure CMake" }
cmake --build .\build\${{ matrix.config }} --target install --config ${{ matrix.config }} --parallel
- - name: Test
+ - name: Test (C++)
env:
BUILD_ALL: "0"
BUILD_DRIVER_MANAGER: "1"
BUILD_DRIVER_MANAGER_USER_CONFIG_TEST: "1"
BUILD_DRIVER_SQLITE: "1"
run: .\ci\scripts\cpp_test.ps1 $pwd\build\${{ matrix.config }} $pwd\local\${{ matrix.config }}
+
+ - uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0
+ with:
+ check-latest: true
+ cache: true
+ cache-dependency-path: go/adbc/go.sum
+ go-version-file: go/adbc/go.sum
+ - name: Test (Go/CGO)
+ env:
+ CGO_ENABLED: "1"
+ run: |
+ .\ci\scripts\go_build.ps1 $pwd $pwd\build\${{ matrix.config }} $pwd\local\${{ matrix.config }}
+ .\ci\scripts\go_test.ps1 $pwd $pwd\build\${{ matrix.config }} $pwd\local\${{ matrix.config }}
From d740fb53128b1b4cc1072f4fe54f65955889fbcd Mon Sep 17 00:00:00 2001
From: David Li
Date: Thu, 27 Aug 2026 11:46:59 +0900
Subject: [PATCH 2/3] doh
---
.github/workflows/native-vcpkg.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/native-vcpkg.yml b/.github/workflows/native-vcpkg.yml
index 69d1fdebf4..608423a640 100644
--- a/.github/workflows/native-vcpkg.yml
+++ b/.github/workflows/native-vcpkg.yml
@@ -133,7 +133,7 @@ jobs:
check-latest: true
cache: true
cache-dependency-path: go/adbc/go.sum
- go-version-file: go/adbc/go.sum
+ go-version-file: go/adbc/go.mod
- name: Test (Go/CGO)
env:
CGO_ENABLED: "1"
From e31becf89123cb05e8244df97b5cbf7a808c30f5 Mon Sep 17 00:00:00 2001
From: David Li
Date: Thu, 27 Aug 2026 12:45:26 +0900
Subject: [PATCH 3/3] fix
---
.github/workflows/native-vcpkg.yml | 13 ++++---------
ci/scripts/go_test.ps1 | 2 +-
2 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/.github/workflows/native-vcpkg.yml b/.github/workflows/native-vcpkg.yml
index 608423a640..42c7faadf4 100644
--- a/.github/workflows/native-vcpkg.yml
+++ b/.github/workflows/native-vcpkg.yml
@@ -60,9 +60,9 @@ jobs:
strategy:
matrix:
include:
- - { os: windows-latest, arch: x64, config: debug, msystem: UCRT64, msysbin: mingw64, env: x86_64, triplet: x64-windows }
- - { os: windows-latest, arch: x64, config: release, msystem: UCRT64, msysbin: mingw64, env: x86_64, triplet: x64-windows-static-release }
- - { os: windows-11-arm, arch: arm64, config: release, msystem: CLANGARM64, msysbin: clangarm64, env: clang-aarch64, triplet: arm64-windows-static-release }
+ - { os: windows-latest, arch: x64, config: debug, msystem: UCRT64, msysbin: mingw64, env: x86_64, compiler-package: mingw-w64-x86_64-gcc, triplet: x64-windows }
+ - { os: windows-latest, arch: x64, config: release, msystem: UCRT64, msysbin: mingw64, env: x86_64, compiler-package: mingw-w64-x86_64-gcc, triplet: x64-windows-static-release }
+ - { os: windows-11-arm, arch: arm64, config: release, msystem: CLANGARM64, msysbin: clangarm64, env: clang-aarch64, compiler-package: mingw-w64-clang-aarch64-gcc-compat, triplet: arm64-windows-static-release }
env:
VCPKG_DEFAULT_BINARY_CACHE: ${{ github.workspace }}/vcpkg-cache
VCPKG_DEFAULT_TRIPLET: ${{ matrix.triplet }}
@@ -80,18 +80,13 @@ jobs:
# Needed for gendef tool in GoUtils.cmake
install: |
mingw-w64-${{ matrix.env }}-tools
+ ${{ matrix.compiler-package }}
- name: Add msys2 toolchain to PATH
env:
MSYS_LOCATION: ${{ steps.msys2.outputs.msys2-location }}
run: |
"$($env:MSYS_LOCATION)\${{ matrix.msysbin }}\bin" |
Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- - name: Setup MSYS2 tools
- if: matrix.arch == 'arm64'
- shell: msys2 {0}
- run: |
- # Needed for CGO
- pacman --noconfirm -S mingw-w64-${{ matrix.env }}-gcc-compat
- name: Ensure vcpkg binary cache directory
run: |
New-Item -ItemType Directory -Force `
diff --git a/ci/scripts/go_test.ps1 b/ci/scripts/go_test.ps1
index 0bc92af8c4..6183e4e7a7 100644
--- a/ci/scripts/go_test.ps1
+++ b/ci/scripts/go_test.ps1
@@ -22,7 +22,7 @@ $BuildDir = $Args[1]
$InstallDir = if ($Args[2] -ne $null) { $Args[2] } else { Join-Path $BuildDir "local/" }
if ($env:CGO_ENABLED -eq "1") {
- $env:PATH += "$($InstallDir)\bin"
+ $env:PATH = "$($InstallDir)\bin;$env:PATH"
}
$GoDir = Join-Path $SourceDir "go" "adbc"