Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Installers: shellcheck fails on the BReg, Casework, and evidencectl installers

Đang mở Phù hợp với người mới
#1,874 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
86/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
bash, shell
Lĩnh vực
release, tooling

Hướng nghiên cứu

So sánh các câu lệnh được đánh dấu trong crates/registry-breg/install.sh, crates/registry-casework/install.sh và crates/registry-evidencectl/install.sh với các dạng đã sửa trong crates/registry-scheduling/install.sh. Chạy shellcheck trên năm tệp crates/*/install.sh và editors/install.sh, sau đó chạy release/scripts/test_macos_installers.py, release/scripts/test_nightly_release.py và các bài kiểm thử install_script của crate; hoàn tất khi tất cả các bước kiểm tra đều đạt.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:release bug

What

shellcheck exits non-zero on three of the four product installers on main (checked 2026-10-03), with the same two warnings in each:

File SC2034 SC2155
crates/registry-breg/install.sh line 329 line 500
crates/registry-casework/install.sh line 327 line 498
crates/registry-evidencectl/install.sh line 333 line 515
  • SC2034: IFS=. read -r release_major release_minor release_patch <<<"${version#v}" reads release_patch and never uses it.
  • SC2155: local archive="$tmpdir/$(asset_name "$binary")" declares and assigns in one statement, so a failing asset_name is masked by local's own exit status and set -e does not stop the script.

crates/registry-scheduling/install.sh and editors/install.sh pass. The Scheduling installer has the same two statements in the corrected form, from #1854:

IFS=. read -r release_major release_minor _ <<<"${version#v}"
local archive
archive="$tmpdir/$(asset_name "$binary")"

Both lines are hand-written; neither sits inside the blocks generated by release/scripts/render-installer-channel.py or release/scripts/render-installer-libc-preflight.py.

Why it is filed rather than fixed

It was found while changing the Scheduling installer in #1854, and the other three installers were outside that change.

No workflow under .github/workflows runs shellcheck, which is how the installers drifted apart. Whether to add a gate is a separate decision from the two-line fix, so it is listed as optional below.

Done when

  • shellcheck passes on all five crates/*/install.sh files and editors/install.sh.
  • The installer test suites still pass (release/scripts/test_macos_installers.py, release/scripts/test_nightly_release.py, and each crate's install_script tests).
  • Optional: a CI step runs shellcheck on the installers so the next copy does not drift.
Ngôn ngữ chính
Rust
Star
2
Fork
0
Merge trung bình
9 giờ 19 phút
Pull request đã merge (30 ngày)
275

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của registrystack/registry-stack

Tất cả issue của registrystack/registry-stack

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.