This is an automated email from the ASF dual-hosted git repository.

lidavidm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-adbc.git


The following commit(s) were added to refs/heads/main by this push:
     new 8c2bb8d51 feat(javascript): publish a win32-arm64 native package 
(#4634)
8c2bb8d51 is described below

commit 8c2bb8d513bd41ddc8af4477f174d2a4aea61b0b
Author: Philip Moore <[email protected]>
AuthorDate: Tue Aug 25 20:05:30 2026 -0400

    feat(javascript): publish a win32-arm64 native package (#4634)
    
    Fixes #4629.
    
    Generated-by: Claude Fable 5 <[email protected]>
---
 .github/workflows/javascript.yml             | 26 +++++++++++++++-----------
 .github/workflows/packaging.yml              |  2 ++
 javascript/.cargo/config.toml                |  3 +++
 javascript/npm/win32-arm64-msvc/README.md    | 22 ++++++++++++++++++++++
 javascript/npm/win32-arm64-msvc/package.json | 24 ++++++++++++++++++++++++
 javascript/package-lock.json                 |  1 +
 javascript/package.json                      |  2 ++
 7 files changed, 69 insertions(+), 11 deletions(-)

diff --git a/.github/workflows/javascript.yml b/.github/workflows/javascript.yml
index c0519a07c..5ed8a1f05 100644
--- a/.github/workflows/javascript.yml
+++ b/.github/workflows/javascript.yml
@@ -91,6 +91,8 @@ jobs:
             target: aarch64-apple-darwin
           - host: windows-latest
             target: x86_64-pc-windows-msvc
+          - host: windows-11-arm
+            target: aarch64-pc-windows-msvc
           - host: ubuntu-latest
             target: x86_64-unknown-linux-gnu
           - host: ubuntu-24.04-arm
@@ -149,6 +151,8 @@ jobs:
             target: aarch64-apple-darwin
           - host: windows-latest
             target: x86_64-pc-windows-msvc
+          - host: windows-11-arm
+            target: aarch64-pc-windows-msvc
     steps:
       - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # 
v7.0.1
         with:
@@ -168,21 +172,21 @@ jobs:
         with:
           name: bindings-${{ matrix.settings.target }}
           path: javascript
-      - name: Setup conda (Windows)
-        if: runner.os == 'Windows'
-        uses: 
conda-incubator/setup-miniconda@8ee1f361103df19b6f8c8655fd3967a8ecb162d5  # 
v4.0.1
-        with:
-          miniforge-version: latest
       - name: Install C++ dependencies (Windows)
+        # SQLite is the only dependency the test driver build needs, so take
+        # it from the runner's preinstalled vcpkg (present on both the x64 and
+        # arm64 images) rather than conda. The static-md triplet links SQLite
+        # into the driver DLL, so nothing extra has to go on PATH at runtime.
         if: runner.os == 'Windows'
-        run: conda install -c conda-forge --file ci/conda_env_cpp.txt
+        shell: pwsh
+        run: |
+          $triplet = if ($env:PROCESSOR_ARCHITECTURE -eq 'ARM64') { 
'arm64-windows-static-md' } else { 'x64-windows-static-md' }
+          & "$env:VCPKG_INSTALLATION_ROOT\vcpkg.exe" install "sqlite3:$triplet"
+          $toolchain = 
"$env:VCPKG_INSTALLATION_ROOT\scripts\buildsystems\vcpkg.cmake" -replace '\\', 
'/'
+          echo "ADBC_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE=$toolchain 
-DVCPKG_TARGET_TRIPLET=$triplet" >> $env:GITHUB_ENV
       - name: Install C++ dependencies (Linux)
         if: runner.os == 'Linux'
         run: sudo apt-get install libsqlite3-dev
-      - name: Set cmake args (Windows)
-        if: runner.os == 'Windows'
-        shell: pwsh
-        run: echo 
"ADBC_CMAKE_ARGS=-DCMAKE_PREFIX_PATH=$env:CONDA_PREFIX/Library" >> 
$env:GITHUB_ENV
       - name: Build Driver
         # We need to build the SQLite driver for tests.
         shell: bash
@@ -197,7 +201,7 @@ jobs:
         if: runner.os == 'Windows'
         shell: pwsh
         run: |
-          echo "PATH=${{ github.workspace 
}}/javascript/build/bin;$env:CONDA_PREFIX\Library\bin;$env:PATH" >> 
$env:GITHUB_ENV
+          echo "PATH=${{ github.workspace }}/javascript/build/bin;$env:PATH" 
>> $env:GITHUB_ENV
           echo "ADBC_DRIVER_MANAGER_TEST_LIB=${{ github.workspace 
}}/javascript/build/bin/adbc_driver_sqlite.dll" >> $env:GITHUB_ENV
       - name: Run Tests
         working-directory: javascript
diff --git a/.github/workflows/packaging.yml b/.github/workflows/packaging.yml
index 2d44d140b..660ca00c1 100644
--- a/.github/workflows/packaging.yml
+++ b/.github/workflows/packaging.yml
@@ -1262,6 +1262,8 @@ jobs:
             target: aarch64-apple-darwin
           - host: windows-latest
             target: x86_64-pc-windows-msvc
+          - host: windows-11-arm
+            target: aarch64-pc-windows-msvc
           - host: ubuntu-latest
             target: x86_64-unknown-linux-gnu
           - host: ubuntu-24.04-arm
diff --git a/javascript/.cargo/config.toml b/javascript/.cargo/config.toml
index 60aafc2cc..f86e2115f 100644
--- a/javascript/.cargo/config.toml
+++ b/javascript/.cargo/config.toml
@@ -17,3 +17,6 @@
 
 [target.x86_64-pc-windows-msvc]
 rustflags = ["-C", "target-feature=+crt-static"]
+
+[target.aarch64-pc-windows-msvc]
+rustflags = ["-C", "target-feature=+crt-static"]
diff --git a/javascript/npm/win32-arm64-msvc/README.md 
b/javascript/npm/win32-arm64-msvc/README.md
new file mode 100644
index 000000000..598b0018c
--- /dev/null
+++ b/javascript/npm/win32-arm64-msvc/README.md
@@ -0,0 +1,22 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# `adbc-driver-manager-win32-arm64-msvc`
+
+This is the **aarch64-pc-windows-msvc** binary for `adbc-driver-manager`
diff --git a/javascript/npm/win32-arm64-msvc/package.json 
b/javascript/npm/win32-arm64-msvc/package.json
new file mode 100644
index 000000000..c25cd6170
--- /dev/null
+++ b/javascript/npm/win32-arm64-msvc/package.json
@@ -0,0 +1,24 @@
+{
+  "name": "@apache-arrow/adbc-driver-manager-win32-arm64-msvc",
+  "version": "0.25.0",
+  "cpu": [
+    "arm64"
+  ],
+  "main": "adbc-driver-manager.win32-arm64-msvc.node",
+  "files": [
+    "adbc-driver-manager.win32-arm64-msvc.node"
+  ],
+  "description": "Node.js ADBC Driver Manager",
+  "license": "Apache-2.0",
+  "engines": {
+    "node": ">=22.0.0"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/apache/arrow-adbc.git";,
+    "directory": "javascript"
+  },
+  "os": [
+    "win32"
+  ]
+}
diff --git a/javascript/package-lock.json b/javascript/package-lock.json
index 71bfaf62f..e47e5bc24 100644
--- a/javascript/package-lock.json
+++ b/javascript/package-lock.json
@@ -27,6 +27,7 @@
         "@apache-arrow/adbc-driver-manager-darwin-x64": "0.25.0",
         "@apache-arrow/adbc-driver-manager-linux-arm64-gnu": "0.25.0",
         "@apache-arrow/adbc-driver-manager-linux-x64-gnu": "0.25.0",
+        "@apache-arrow/adbc-driver-manager-win32-arm64-msvc": "0.25.0",
         "@apache-arrow/adbc-driver-manager-win32-x64-msvc": "0.25.0"
       },
       "peerDependencies": {
diff --git a/javascript/package.json b/javascript/package.json
index bc5a7a32c..3e07a6ae7 100644
--- a/javascript/package.json
+++ b/javascript/package.json
@@ -26,6 +26,7 @@
     "binaryName": "adbc-driver-manager",
     "targets": [
       "x86_64-pc-windows-msvc",
+      "aarch64-pc-windows-msvc",
       "x86_64-apple-darwin",
       "x86_64-unknown-linux-gnu",
       "aarch64-unknown-linux-gnu",
@@ -86,6 +87,7 @@
   },
   "optionalDependencies": {
     "@apache-arrow/adbc-driver-manager-win32-x64-msvc": "0.25.0",
+    "@apache-arrow/adbc-driver-manager-win32-arm64-msvc": "0.25.0",
     "@apache-arrow/adbc-driver-manager-darwin-x64": "0.25.0",
     "@apache-arrow/adbc-driver-manager-linux-x64-gnu": "0.25.0",
     "@apache-arrow/adbc-driver-manager-linux-arm64-gnu": "0.25.0",

Reply via email to