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 1ba7fe665 ci(rust): pin the nightly tool chain version (#4529)
1ba7fe665 is described below

commit 1ba7fe665fd8224939ae824e7739df550bbea086
Author: eitsupi <[email protected]>
AuthorDate: Thu Jul 16 09:12:12 2026 +0900

    ci(rust): pin the nightly tool chain version (#4529)
    
    Related to #4515, #4524
    
    By updating the nightly toolchain version via Dependabot, we can prevent
    unexpected CI outages.
---
 .github/dependabot.yml              |  8 ++++++++
 .github/workflows/rust.yml          | 15 +++++++++------
 ci/rust-nightly/rust-toolchain.toml | 21 +++++++++++++++++++++
 3 files changed, 38 insertions(+), 6 deletions(-)

diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 1ab770429..2d8306975 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -97,6 +97,14 @@ updates:
           - "arrow-*"
     cooldown:
       default-days: 7
+  - package-ecosystem: "rust-toolchain"
+    directory: "/ci/rust-nightly/"
+    schedule:
+      interval: "weekly"
+    commit-message:
+      prefix: "chore(rust): "
+    cooldown:
+      default-days: 7
   - package-ecosystem: "cargo"
     directories:
       - "/javascript/"
diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
index 8e38011e4..ed12e53f0 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/rust.yml
@@ -23,6 +23,7 @@ on:
       - main
     paths:
       - "c/**"
+      - "ci/rust-nightly/**"
       - "rust/**"
       - ".github/workflows/rust.yml"
   push:
@@ -30,6 +31,7 @@ on:
       - 'dependabot/**'
     paths:
       - "c/**"
+      - "ci/rust-nightly/**"
       - "rust/**"
       - ".github/workflows/rust.yml"
 
@@ -73,10 +75,11 @@ jobs:
           persist-credentials: false
       - name: Cargo update for minimal versions
         if: ${{ matrix.minimal-versions }}
-        working-directory: rust
+        working-directory: ci/rust-nightly
         run: |
-          rustup toolchain install nightly
-          CARGO_RESOLVER_INCOMPATIBLE_RUST_VERSIONS=fallback cargo +nightly 
generate-lockfile -Z direct-minimal-versions
+          CARGO_RESOLVER_INCOMPATIBLE_RUST_VERSIONS=fallback cargo 
generate-lockfile \
+            --manifest-path "${GITHUB_WORKSPACE}/rust/Cargo.toml" \
+            -Z direct-minimal-versions
       - name: Use stable Rust
         id: rust
         run: |
@@ -167,14 +170,14 @@ jobs:
           cargo clippy --workspace --all-targets --all-features --locked -- 
-Dwarnings
       - name: Clippy (nightly)
         if: runner.os == 'Linux' && ! matrix.minimal-versions
-        working-directory: rust
+        working-directory: ci/rust-nightly
         run: |
-          rustup toolchain install nightly --component clippy
           # -Zcrate-attr enables the unstable non_exhaustive_omitted_patterns 
lint
           # (https://github.com/apache/arrow-adbc/pull/3245).
           # It applies to all workspace packages, so we also allow 
unused_features for crates that
           # don't use the lint.
-          cargo +nightly clippy --workspace --all-targets --all-features 
--locked -- -Dwarnings \
+          cargo clippy --manifest-path "${GITHUB_WORKSPACE}/rust/Cargo.toml" \
+            --workspace --all-targets --all-features --locked -- -Dwarnings \
             -Zcrate-attr='feature(non_exhaustive_omitted_patterns_lint)' \
             -Zcrate-attr='allow(unused_features)'
       - name: Test (Default Features)
diff --git a/ci/rust-nightly/rust-toolchain.toml 
b/ci/rust-nightly/rust-toolchain.toml
new file mode 100644
index 000000000..3223c9df2
--- /dev/null
+++ b/ci/rust-nightly/rust-toolchain.toml
@@ -0,0 +1,21 @@
+# 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.
+
+[toolchain]
+channel = "nightly-2026-07-07"
+profile = "minimal"
+components = ["clippy"]

Reply via email to