build(deps): bump Rust to 1.94 in builder images and install scripts (#54347)

issue: [#50632](https://github.com/milvus-io/milvus/issues/50632)

## Summary

Update the default Rust toolchain from `1.92` to `1.94` in the builder
images, dependency installation scripts, and development guide.

## Why

`paimon-rust 0.4.0` requires Rust 1.94.0 or later. The builder images
need this toolchain before Milvus can adopt the corresponding
milvus-storage update.

This PR only prepares the build environment:

- Keep Tantivy's explicit `cargo +1.89` unchanged.
- Leave the builder image tags in `.env` and the milvus-storage revision
unchanged.
- Make no changes to Cargo dependencies or application code.

After the new builder images are published, a separate PR can update the
image references and align Tantivy's toolchain.

## Files changed

| File | Change |
|---|---|
| `build/docker/builder/{cpu,gpu}/*/Dockerfile` | Install Rust `1.94` by
default |
| `scripts/install_deps.sh` | Set `RUST_VERSION` to `1.94` |
| `scripts/3rdparty_build.sh` | Update macOS setup and Linux fallback
installation |
| `DEVELOPMENT.md` | Update the documented Rust version |

## Test plan

- Shell syntax and code checks.
- CPU/GPU builder image builds.
- Milvus build, related C++/Go unit tests, and standalone E2E.

Signed-off-by: YangYanbin <warlock.yyb@alibaba-inc.com>
This commit is contained in:
WAR10CK authored and GitHub committed 2026-10-18 23:07:49 +08:00
1 parent 2ca2a79d35
commit 06bba0156d
10 files changed
+13 -13

No files matched your search

+1 -1
View File
@@ -89,7 +89,7 @@ The following specification (either physical or virtual machine resources) is re
| Go | 1.21 | Required. Install from https://go.dev/dl/ |
| CMake | 3.26 | Auto-installed by install_deps.sh |
| Conan | 2.25.1 | Auto-installed by install_deps.sh |
| Rust | 1.92 | Auto-installed by install_deps.sh |
| Rust | 1.94 | Auto-installed by install_deps.sh |
### Compiler Setup
@@ -61,7 +61,7 @@ RUN mkdir -p /home/milvus/.vscode-server/extensions \
COPY --chown=0:0 build/docker/builder/entrypoint.sh /
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -60,7 +60,7 @@ RUN mkdir -p /home/milvus/.vscode-server/extensions \
COPY --chown=0:0 build/docker/builder/entrypoint.sh /
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -69,7 +69,7 @@ RUN mkdir -p /home/milvus/.vscode-server/extensions \
COPY --chown=0:0 build/docker/builder/entrypoint.sh /
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -66,7 +66,7 @@ RUN mkdir -p /home/milvus/.vscode-server/extensions \
COPY --chown=0:0 build/docker/builder/entrypoint.sh /
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -62,7 +62,7 @@ RUN mkdir -p /home/milvus/.vscode-server/extensions \
COPY --chown=0:0 build/docker/builder/entrypoint.sh /
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -94,7 +94,7 @@ RUN wget -O /tini https://github.com/krallin/tini/releases/download/v0.19.0/tini
chmod +x /tini
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:$PATH
@@ -35,7 +35,7 @@ RUN mkdir -p /usr/local/go && wget -qO- "https://go.dev/dl/go1.26.9.linux-$TARGE
# Install conan
# Install rust
RUN curl https://sh.rustup.rs -sSf | \
sh -s -- --default-toolchain=1.92 -y
sh -s -- --default-toolchain=1.94 -y
ENV PATH=/root/.cargo/bin:/usr/local/bin:/usr/local/go/bin:$PATH
# refer: https://code.visualstudio.com/docs/remote/containers-advanced#_avoiding-extension-reinstalls-on-container-rebuild
+4 -4
View File
@@ -313,15 +313,15 @@ if command -v cargo >/dev/null 2>&1; then
unameOut="$(uname -s)"
case "${unameOut}" in
Darwin*)
echo "running on mac os, reinstall rust 1.92"
echo "running on mac os, reinstall rust 1.94"
# github will install rust 1.74 by default.
# https://github.com/actions/runner-images/blob/main/images/macos/macos-12-Readme.md
rustup install 1.92
rustup default 1.92;;
rustup install 1.94
rustup default 1.94;;
*)
echo "not running on mac os, no need to reinstall rust";;
esac
else
bash -c "curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain=1.92 -y" || { echo 'rustup install failed'; exit 1;}
bash -c "curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain=1.94 -y" || { echo 'rustup install failed'; exit 1;}
source $HOME/.cargo/env
fi
+1 -1
View File
@@ -58,7 +58,7 @@ print_error() {
MIN_CMAKE_VERSION="3.26"
MIN_GO_VERSION="1.21"
CONAN_VERSION="2.25.1"
RUST_VERSION="1.92"
RUST_VERSION="1.94"
#######################################
# Check if a command exists