Auto merge of #103859 - Mark-Simulacrum:stable-next, r=flip1995
[stable] Lower lint level for READ_ZERO_BYTE_VEC This avoids reporting false-positives; see rust-lang/rust-clippy#9274 for details. cc `@rust-lang/clippy` -- do we want a direct change landed on stable here? If so, please r+ this PR, otherwise we can just close it. Would appreciate confirmation this is the right change to make as well. cc `@joshtriplett` -- filing due to https://rust-lang.zulipchat.com/#narrow/stream/301329-t-devtools/topic/clippy.20false.20positive
This commit is contained in:
commit
897e37553b
7 changed files with 22 additions and 13 deletions
|
|
@ -1280,11 +1280,21 @@ impl Config {
|
|||
git
|
||||
}
|
||||
|
||||
pub(crate) fn artifact_channel(&self, commit: &str) -> String {
|
||||
pub(crate) fn artifact_version_part(&self, commit: &str) -> String {
|
||||
let mut channel = self.git();
|
||||
channel.arg("show").arg(format!("{}:src/ci/channel", commit));
|
||||
let channel = output(&mut channel);
|
||||
channel.trim().to_owned()
|
||||
|
||||
let mut version = self.git();
|
||||
version.arg("show").arg(format!("{}:src/version", commit));
|
||||
let version = output(&mut version);
|
||||
|
||||
match channel.trim() {
|
||||
"stable" => version.trim().to_owned(),
|
||||
"beta" => channel.trim().to_owned(),
|
||||
"nightly" => channel.trim().to_owned(),
|
||||
other => unreachable!("{:?} is not recognized as a valid channel", other),
|
||||
}
|
||||
}
|
||||
|
||||
/// Try to find the relative path of `bindir`, otherwise return it in full.
|
||||
|
|
@ -1526,7 +1536,7 @@ fn maybe_download_rustfmt(builder: &Builder<'_>) -> Option<PathBuf> {
|
|||
|
||||
fn download_ci_rustc(builder: &Builder<'_>, commit: &str) {
|
||||
builder.verbose(&format!("using downloaded stage2 artifacts from CI (commit {commit})"));
|
||||
let channel = builder.config.artifact_channel(commit);
|
||||
let version = builder.config.artifact_version_part(commit);
|
||||
let host = builder.config.build.triple;
|
||||
let bin_root = builder.out.join(host).join("ci-rustc");
|
||||
let rustc_stamp = bin_root.join(".rustc-stamp");
|
||||
|
|
@ -1535,13 +1545,13 @@ fn download_ci_rustc(builder: &Builder<'_>, commit: &str) {
|
|||
if bin_root.exists() {
|
||||
t!(fs::remove_dir_all(&bin_root));
|
||||
}
|
||||
let filename = format!("rust-std-{channel}-{host}.tar.xz");
|
||||
let filename = format!("rust-std-{version}-{host}.tar.xz");
|
||||
let pattern = format!("rust-std-{host}");
|
||||
download_ci_component(builder, filename, &pattern, commit);
|
||||
let filename = format!("rustc-{channel}-{host}.tar.xz");
|
||||
let filename = format!("rustc-{version}-{host}.tar.xz");
|
||||
download_ci_component(builder, filename, "rustc", commit);
|
||||
// download-rustc doesn't need its own cargo, it can just use beta's.
|
||||
let filename = format!("rustc-dev-{channel}-{host}.tar.xz");
|
||||
let filename = format!("rustc-dev-{version}-{host}.tar.xz");
|
||||
download_ci_component(builder, filename, "rustc-dev", commit);
|
||||
|
||||
builder.fix_bin_or_dylib(&bin_root.join("bin").join("rustc"));
|
||||
|
|
|
|||
|
|
@ -260,8 +260,8 @@ fn download_ci_llvm(builder: &Builder<'_>, llvm_sha: &str) {
|
|||
} else {
|
||||
&builder.config.stage0_metadata.config.artifacts_server
|
||||
};
|
||||
let channel = builder.config.artifact_channel(llvm_sha);
|
||||
let filename = format!("rust-dev-{}-{}.tar.xz", channel, builder.build.build.triple);
|
||||
let version = builder.config.artifact_version_part(llvm_sha);
|
||||
let filename = format!("rust-dev-{}-{}.tar.xz", version, builder.build.build.triple);
|
||||
let tarball = rustc_cache.join(&filename);
|
||||
if !tarball.exists() {
|
||||
let help_on_error = "error: failed to download llvm from ci
|
||||
|
|
|
|||
|
|
@ -289,7 +289,6 @@ store.register_group(true, "clippy::all", Some("clippy_all"), vec![
|
|||
LintId::of(ranges::MANUAL_RANGE_CONTAINS),
|
||||
LintId::of(ranges::REVERSED_EMPTY_RANGES),
|
||||
LintId::of(rc_clone_in_vec_init::RC_CLONE_IN_VEC_INIT),
|
||||
LintId::of(read_zero_byte_vec::READ_ZERO_BYTE_VEC),
|
||||
LintId::of(redundant_clone::REDUNDANT_CLONE),
|
||||
LintId::of(redundant_closure_call::REDUNDANT_CLOSURE_CALL),
|
||||
LintId::of(redundant_field_names::REDUNDANT_FIELD_NAMES),
|
||||
|
|
|
|||
|
|
@ -59,7 +59,6 @@ store.register_group(true, "clippy::correctness", Some("clippy_correctness"), ve
|
|||
LintId::of(ptr::INVALID_NULL_PTR_USAGE),
|
||||
LintId::of(ptr::MUT_FROM_REF),
|
||||
LintId::of(ranges::REVERSED_EMPTY_RANGES),
|
||||
LintId::of(read_zero_byte_vec::READ_ZERO_BYTE_VEC),
|
||||
LintId::of(regex::INVALID_REGEX),
|
||||
LintId::of(serde_api::SERDE_API_MISUSE),
|
||||
LintId::of(size_of_in_element_count::SIZE_OF_IN_ELEMENT_COUNT),
|
||||
|
|
|
|||
|
|
@ -25,11 +25,14 @@ store.register_group(true, "clippy::nursery", Some("clippy_nursery"), vec![
|
|||
LintId::of(non_send_fields_in_send_ty::NON_SEND_FIELDS_IN_SEND_TY),
|
||||
LintId::of(nonstandard_macro_braces::NONSTANDARD_MACRO_BRACES),
|
||||
LintId::of(option_if_let_else::OPTION_IF_LET_ELSE),
|
||||
LintId::of(read_zero_byte_vec::READ_ZERO_BYTE_VEC),
|
||||
LintId::of(redundant_pub_crate::REDUNDANT_PUB_CRATE),
|
||||
LintId::of(regex::TRIVIAL_REGEX),
|
||||
LintId::of(strings::STRING_LIT_AS_BYTES),
|
||||
LintId::of(suspicious_operation_groupings::SUSPICIOUS_OPERATION_GROUPINGS),
|
||||
LintId::of(trailing_empty_array::TRAILING_EMPTY_ARRAY),
|
||||
LintId::of(trait_bounds::TRAIT_DUPLICATION_IN_BOUNDS),
|
||||
LintId::of(trait_bounds::TYPE_REPETITION_IN_BOUNDS),
|
||||
LintId::of(transmute::TRANSMUTE_UNDEFINED_REPR),
|
||||
LintId::of(unused_peekable::UNUSED_PEEKABLE),
|
||||
LintId::of(unused_rounding::UNUSED_ROUNDING),
|
||||
|
|
|
|||
|
|
@ -88,8 +88,6 @@ store.register_group(true, "clippy::pedantic", Some("clippy_pedantic"), vec![
|
|||
LintId::of(return_self_not_must_use::RETURN_SELF_NOT_MUST_USE),
|
||||
LintId::of(semicolon_if_nothing_returned::SEMICOLON_IF_NOTHING_RETURNED),
|
||||
LintId::of(strings::STRING_ADD_ASSIGN),
|
||||
LintId::of(trait_bounds::TRAIT_DUPLICATION_IN_BOUNDS),
|
||||
LintId::of(trait_bounds::TYPE_REPETITION_IN_BOUNDS),
|
||||
LintId::of(transmute::TRANSMUTE_PTR_TO_PTR),
|
||||
LintId::of(types::LINKEDLIST),
|
||||
LintId::of(types::OPTION_OPTION),
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ declare_clippy_lint! {
|
|||
/// ```
|
||||
#[clippy::version = "1.63.0"]
|
||||
pub READ_ZERO_BYTE_VEC,
|
||||
correctness,
|
||||
nursery,
|
||||
"checks for reads into a zero-length `Vec`"
|
||||
}
|
||||
declare_lint_pass!(ReadZeroByteVec => [READ_ZERO_BYTE_VEC]);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue