Move the cargo e2e fixture helpers into cargo_e2e_matrix: cargo(), sparse_index_rel, find_registry_crate, locked_version and package_block are copied in 3-4 suites that already include it
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ó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 54/100
Hướng nghiên cứu
Read crates/socket-patch-cli/tests/cargo_e2e_matrix/mod.rs and the four named Cargo e2e suites: e2e_redirect_cargo_build.rs, e2e_redirect_cargo_shapes.rs, e2e_vendor_cargo_build.rs, and mode_migration_cargo.rs. Compare the duplicated helpers with the existing parse_lock API, then consolidate the specified helpers and remove local copies. Run the cargo e2e CI jobs with SOCKET_PATCH_CARGO_E2E_REQUIRED=1; done means the same tests pass and only one find_registry_crate and sparse_index_rel remain.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
[agent] Filed by the scheduled architecture audit (audit-cli-tests). Register: register.
Kind: refactor. Register ID: T71.
Problem: the four cargo build suites all mod cargo_e2e_matrix;, yet each one re-writes the same fixture helpers. md5 is of the fn body with comments and whitespace stripped:
| fn | e2e_redirect_cargo_build | e2e_redirect_cargo_shapes | e2e_vendor_cargo_build | mode_migration_cargo | md5 |
|---|---|---|---|---|---|
cargo |
L128 | L165 | L232 | L111 | f9f7f391 (all identical) |
sparse_index_rel |
L207 | L185 | — | L209 | c5573a49 |
find_registry_crate |
L182 | L176 (drifted) | L344 | L198 | 07d0421e / fbb0ccc2 |
locked_version |
L153 | — | L315 | L171 | b933fd5b |
package_block |
L173 | — | L335 | L190 | 312981d4 |
build_patched_crate |
L220 | build_crate L228 |
— | L218 | drifted (expect vs unwrap, leaf param) |
- The
find_registry_cratedrift: on a bad dir entry, the shapes copy (L176-L183)`` skips it, while the others (redirect_cargo_build L182-L191) returnNone. - Lock parsing written twice:
locked_versionandpackage_blockhand-parseCargo.locktext (L152-L179,```` mode_migration_cargo L171-L196).````` Yetcargo_e2e_matrix::parse_lockalready returns `name`/`version`/`source`/`checksum`, and the same file uses it at L620-L623. - Another hand-kept copy:
stage_fixtureis near-copied between redirect_cargo_build L252-L295 and mode_migration_cargo L242-L279.
Proposed change:
- Move
cargo,sparse_index_rel,find_registry_crate(iterator form),build_patched_crate(leaf, …)andstage_fixtureintotests/cargo_e2e_matrix/mod.rs. - Replace
locked_version/package_blockwithparse_locklookups. - Delete the local copies.
- The
copy_dir_recursivecopies in the same files are left to #1979 (T64).
Size: 4 test files plus cargo_e2e_matrix/mod.rs. About −250/+80 lines.
Acceptance criteria:
- No product code changes.
- The four suites list the same tests and pass in the cargo e2e CI jobs with
SOCKET_PATCH_CARGO_E2E_REQUIRED=1. - Exactly one
fn find_registry_crateand onefn sparse_index_relundercrates/socket-patch-cli/tests.
- Ngôn ngữ chính
- Rust
- Star
- 9
- Fork
- 2
- Merge trung bình
- 20 giờ 47 phút
- Pull request đã merge (30 ngày)
- 681
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của SocketDev/socket-patch
-
agent:triaged arch-audit priority:p3 refactor
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
SocketDev/socket-patch#1860 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
agent:triaged arch-audit priority:p3 refactor
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
SocketDev/socket-patch#1838 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
arch-audit refactor
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 66/100
SocketDev/socket-patch#1992 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
agent:triaged arch-audit priority:p3 refactor
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
SocketDev/socket-patch#1987 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
agent:triaged arch-audit priority:p3 refactor
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
SocketDev/socket-patch#1983 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của SocketDev/socket-patch
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
riverqueue/river#1576 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
stadelmanma/fitparse-rs#64 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
zed-extensions/java#325 ·
-
Suggestion: full-band strip — mark the tuned frequency in magenta, with triangles on the edgesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
dividebysandwich/sdroxide#769 ·
Maintainer thường phản hồi trong vòng 5 ngày