From ba38ab098d1ac5237edc72a8602a3ff6e49f2e06 Mon Sep 17 00:00:00 2001 From: Andy Li <1450947+andy1li@users.noreply.github.com> Date: Wed, 26 Mar 2025 02:16:58 +0800 Subject: [PATCH] feat(rust): upgrade Rust version to 1.85 and update related files - Updated codecrafters.yml and README.md to specify Rust 1.85 - Added Dockerfile for Rust 1.85 - Modified run.sh scripts to exit on failure - Updated starter template configuration to require cargo (1.85) --- compiled_starters/rust/.codecrafters/run.sh | 2 ++ compiled_starters/rust/README.md | 2 +- compiled_starters/rust/codecrafters.yml | 4 ++-- dockerfiles/rust-1.85.Dockerfile | 13 +++++++++++++ solutions/rust/01-vi6/code/.codecrafters/run.sh | 2 ++ solutions/rust/01-vi6/code/README.md | 2 +- solutions/rust/01-vi6/code/codecrafters.yml | 4 ++-- starter_templates/rust/code/.codecrafters/run.sh | 2 ++ starter_templates/rust/config.yml | 2 +- 9 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 dockerfiles/rust-1.85.Dockerfile diff --git a/compiled_starters/rust/.codecrafters/run.sh b/compiled_starters/rust/.codecrafters/run.sh index fd6ba01..e110cdf 100755 --- a/compiled_starters/rust/.codecrafters/run.sh +++ b/compiled_starters/rust/.codecrafters/run.sh @@ -6,4 +6,6 @@ # # Learn more: https://codecrafters.io/program-interface +set -e # Exit on failure + exec /tmp/codecrafters-build-kafka-rust/release/codecrafters-kafka "$@" diff --git a/compiled_starters/rust/README.md b/compiled_starters/rust/README.md index 99daa08..1cde167 100644 --- a/compiled_starters/rust/README.md +++ b/compiled_starters/rust/README.md @@ -27,7 +27,7 @@ That's all! Note: This section is for stages 2 and beyond. -1. Ensure you have `cargo (1.82)` installed locally +1. Ensure you have `cargo (1.85)` installed locally 1. Run `./your_program.sh` to run your Kafka broker, which is implemented in `src/main.rs`. This command compiles your Rust project, so it might be slow the first time you run it. Subsequent runs will be fast. diff --git a/compiled_starters/rust/codecrafters.yml b/compiled_starters/rust/codecrafters.yml index fe3fb23..1085350 100644 --- a/compiled_starters/rust/codecrafters.yml +++ b/compiled_starters/rust/codecrafters.yml @@ -7,5 +7,5 @@ debug: false # Use this to change the Rust version used to run your code # on Codecrafters. # -# Available versions: rust-1.82 -language_pack: rust-1.82 +# Available versions: rust-1.85 +language_pack: rust-1.85 diff --git a/dockerfiles/rust-1.85.Dockerfile b/dockerfiles/rust-1.85.Dockerfile new file mode 100644 index 0000000..d3c4e86 --- /dev/null +++ b/dockerfiles/rust-1.85.Dockerfile @@ -0,0 +1,13 @@ +# syntax=docker/dockerfile:1.7-labs +FROM rust:1.85-bookworm + +# Rebuild the container if these files change +ENV CODECRAFTERS_DEPENDENCY_FILE_PATHS="Cargo.toml,Cargo.lock" + +WORKDIR /app + +# .git & README.md are unique per-repository. We ignore them on first copy to prevent cache misses +COPY --exclude=.git --exclude=README.md . /app + +# This runs cargo build +RUN .codecrafters/compile.sh diff --git a/solutions/rust/01-vi6/code/.codecrafters/run.sh b/solutions/rust/01-vi6/code/.codecrafters/run.sh index fd6ba01..e110cdf 100755 --- a/solutions/rust/01-vi6/code/.codecrafters/run.sh +++ b/solutions/rust/01-vi6/code/.codecrafters/run.sh @@ -6,4 +6,6 @@ # # Learn more: https://codecrafters.io/program-interface +set -e # Exit on failure + exec /tmp/codecrafters-build-kafka-rust/release/codecrafters-kafka "$@" diff --git a/solutions/rust/01-vi6/code/README.md b/solutions/rust/01-vi6/code/README.md index 99daa08..1cde167 100644 --- a/solutions/rust/01-vi6/code/README.md +++ b/solutions/rust/01-vi6/code/README.md @@ -27,7 +27,7 @@ That's all! Note: This section is for stages 2 and beyond. -1. Ensure you have `cargo (1.82)` installed locally +1. Ensure you have `cargo (1.85)` installed locally 1. Run `./your_program.sh` to run your Kafka broker, which is implemented in `src/main.rs`. This command compiles your Rust project, so it might be slow the first time you run it. Subsequent runs will be fast. diff --git a/solutions/rust/01-vi6/code/codecrafters.yml b/solutions/rust/01-vi6/code/codecrafters.yml index fe3fb23..1085350 100644 --- a/solutions/rust/01-vi6/code/codecrafters.yml +++ b/solutions/rust/01-vi6/code/codecrafters.yml @@ -7,5 +7,5 @@ debug: false # Use this to change the Rust version used to run your code # on Codecrafters. # -# Available versions: rust-1.82 -language_pack: rust-1.82 +# Available versions: rust-1.85 +language_pack: rust-1.85 diff --git a/starter_templates/rust/code/.codecrafters/run.sh b/starter_templates/rust/code/.codecrafters/run.sh index fd6ba01..e110cdf 100755 --- a/starter_templates/rust/code/.codecrafters/run.sh +++ b/starter_templates/rust/code/.codecrafters/run.sh @@ -6,4 +6,6 @@ # # Learn more: https://codecrafters.io/program-interface +set -e # Exit on failure + exec /tmp/codecrafters-build-kafka-rust/release/codecrafters-kafka "$@" diff --git a/starter_templates/rust/config.yml b/starter_templates/rust/config.yml index 39ee560..d0f03e8 100644 --- a/starter_templates/rust/config.yml +++ b/starter_templates/rust/config.yml @@ -1,3 +1,3 @@ attributes: - required_executable: cargo (1.82) + required_executable: cargo (1.85) user_editable_file: src/main.rs