Skip to content

Commit 7bacfa8

Browse files
committed
Add configuration values auto markdown links to CHANGELOG.md and update_lints
1 parent fdb0b04 commit 7bacfa8

File tree

4 files changed

+62
-1
lines changed

4 files changed

+62
-1
lines changed

CHANGELOG.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5311,4 +5311,58 @@ Released 2018-09-13
53115311
[`zero_sized_map_values`]: https://rust-lang.github.io/rust-clippy/master/index.html#zero_sized_map_values
53125312
[`zero_width_space`]: https://rust-lang.github.io/rust-clippy/master/index.html#zero_width_space
53135313
[`zst_offset`]: https://rust-lang.github.io/rust-clippy/master/index.html#zst_offset
5314+
[`arithmetic-side-effects-allowed`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#arithmetic-side-effects-allowed
5315+
[`arithmetic-side-effects-allowed-binary`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#arithmetic-side-effects-allowed-binary
5316+
[`arithmetic-side-effects-allowed-unary`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#arithmetic-side-effects-allowed-unary
5317+
[`avoid-breaking-exported-api`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#avoid-breaking-exported-api
5318+
[`msrv`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#msrv
5319+
[`blacklisted-names`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#blacklisted-names
5320+
[`cognitive-complexity-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#cognitive-complexity-threshold
5321+
[`cyclomatic-complexity-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#cyclomatic-complexity-threshold
5322+
[`disallowed-names`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#disallowed-names
5323+
[`semicolon-inside-block-ignore-singleline`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#semicolon-inside-block-ignore-singleline
5324+
[`semicolon-outside-block-ignore-multiline`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#semicolon-outside-block-ignore-multiline
5325+
[`doc-valid-idents`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#doc-valid-idents
5326+
[`too-many-arguments-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#too-many-arguments-threshold
5327+
[`type-complexity-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#type-complexity-threshold
5328+
[`single-char-binding-names-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#single-char-binding-names-threshold
5329+
[`too-large-for-stack`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#too-large-for-stack
5330+
[`enum-variant-name-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#enum-variant-name-threshold
5331+
[`enum-variant-size-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#enum-variant-size-threshold
5332+
[`verbose-bit-mask-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#verbose-bit-mask-threshold
5333+
[`literal-representation-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#literal-representation-threshold
5334+
[`trivial-copy-size-limit`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#trivial-copy-size-limit
5335+
[`pass-by-value-size-limit`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#pass-by-value-size-limit
5336+
[`too-many-lines-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#too-many-lines-threshold
5337+
[`array-size-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#array-size-threshold
5338+
[`vec-box-size-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#vec-box-size-threshold
5339+
[`max-trait-bounds`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#max-trait-bounds
5340+
[`max-struct-bools`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#max-struct-bools
5341+
[`max-fn-params-bools`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#max-fn-params-bools
5342+
[`warn-on-all-wildcard-imports`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#warn-on-all-wildcard-imports
5343+
[`disallowed-macros`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#disallowed-macros
5344+
[`disallowed-methods`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#disallowed-methods
5345+
[`disallowed-types`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#disallowed-types
5346+
[`unreadable-literal-lint-fractions`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#unreadable-literal-lint-fractions
5347+
[`upper-case-acronyms-aggressive`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#upper-case-acronyms-aggressive
5348+
[`matches-for-let-else`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#matches-for-let-else
5349+
[`cargo-ignore-publish`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#cargo-ignore-publish
5350+
[`standard-macro-braces`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#standard-macro-braces
5351+
[`enforced-import-renames`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#enforced-import-renames
5352+
[`allowed-scripts`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allowed-scripts
5353+
[`enable-raw-pointer-heuristic-for-send`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#enable-raw-pointer-heuristic-for-send
5354+
[`max-suggested-slice-pattern-length`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#max-suggested-slice-pattern-length
5355+
[`await-holding-invalid-types`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#await-holding-invalid-types
5356+
[`max-include-file-size`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#max-include-file-size
5357+
[`allow-expect-in-tests`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allow-expect-in-tests
5358+
[`allow-unwrap-in-tests`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allow-unwrap-in-tests
5359+
[`allow-dbg-in-tests`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allow-dbg-in-tests
5360+
[`allow-print-in-tests`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allow-print-in-tests
5361+
[`large-error-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#large-error-threshold
5362+
[`ignore-interior-mutability`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#ignore-interior-mutability
5363+
[`allow-mixed-uninlined-format-args`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#allow-mixed-uninlined-format-args
5364+
[`suppress-restriction-lint-in-const`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#suppress-restriction-lint-in-const
5365+
[`missing-docs-in-crate-items`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#missing-docs-in-crate-items
5366+
[`future-size-threshold`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#future-size-threshold
5367+
[`unnecessary-box-size`]: https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md#unnecessary-box-size
53145368
<!-- end autogenerated links to lint list -->

clippy_dev/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ itertools = "0.10.1"
1111
opener = "0.5"
1212
shell-escape = "0.1"
1313
walkdir = "2.3"
14+
clippy_lints = { path = "../clippy_lints" }
1415

1516
[features]
1617
deny-warnings = []

clippy_dev/src/update_lints.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use crate::clippy_project_root;
22
use aho_corasick::AhoCorasickBuilder;
3+
use clippy_lints::get_configuration_metadata;
34
use indoc::writedoc;
45
use itertools::Itertools;
56
use rustc_lexer::{tokenize, unescape, LiteralKind, TokenKind};
@@ -17,6 +18,7 @@ const GENERATED_FILE_COMMENT: &str = "// This file was generated by `cargo dev u
1718
// Manual edits will be overwritten.\n\n";
1819

1920
const DOCS_LINK: &str = "https://rust-lang.github.io/rust-clippy/master/index.html";
21+
const CONF_DOCS_LINK: &str = "https://github.com/rust-lang/rust-clippy/blob/master/book/src/lint_configuration.md"; // Couldn't use a book link, as the book isn't updated every time a configuration value is added.
2022

2123
#[derive(Clone, Copy, PartialEq, Eq)]
2224
pub enum UpdateMode {
@@ -46,6 +48,7 @@ fn generate_lint_files(
4648
) {
4749
let internal_lints = Lint::internal_lints(lints);
4850
let mut usable_lints = Lint::usable_lints(lints);
51+
let metadata = get_configuration_metadata();
4952
usable_lints.sort_by_key(|lint| lint.name.clone());
5053

5154
replace_region_in_file(
@@ -87,6 +90,9 @@ fn generate_lint_files(
8790
{
8891
writeln!(res, "[`{lint}`]: {DOCS_LINK}#{lint}").unwrap();
8992
}
93+
for conf in metadata.iter().map(|x| &x.name) {
94+
writeln!(res, "[`{conf}`]: {CONF_DOCS_LINK}#{conf}").unwrap();
95+
}
9096
},
9197
);
9298

clippy_lints/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,7 @@ mod zero_sized_map_values;
334334
// end lints modules, do not remove this comment, it’s used in `update_lints`
335335

336336
pub use crate::utils::conf::{lookup_conf_file, Conf};
337-
use crate::utils::{
337+
pub use crate::utils::{
338338
conf::{metadata::get_configuration_metadata, TryConf},
339339
FindAll,
340340
};

0 commit comments

Comments
 (0)