Matthias Krüger
94a73d7b11
add shortcut "dev-crater" command to build and run "cargo dev crater"
2021-01-23 02:18:11 +01:00
Matthias Krüger
ec1902ce43
cargo dev crater: throw an error if we can't find our specified crate in the .toml list
2021-01-23 02:18:11 +01:00
Matthias Krüger
b6ef1e282e
clippy dev crater: add option to only check a single one of the listed crates with --only crate
2021-01-23 02:18:11 +01:00
Matthias Krüger
d257101109
make stats stable
2021-01-23 02:18:11 +01:00
Matthias Krüger
e56c9a5253
cargo dev crater: gather and save lint statistics (how often a lint triggered)
2021-01-23 02:18:11 +01:00
Matthias Krüger
4ec9cb84bb
cargo dev crater: refactor to get a list of all ClippyWarnings
2021-01-23 02:18:11 +01:00
Matthias Krüger
6c5bf2778f
clippy dev crater: use and parse clippy messages as json message, to get the lint name of a warning
2021-01-23 02:18:11 +01:00
Matthias Krüger
62337f2842
remove duplicate code and other cleanup
2021-01-23 02:18:11 +01:00
Matthias Krüger
22824d21da
rename symbols: krate -> crate
2021-01-23 02:18:11 +01:00
Matthias Krüger
f986d78c5e
cargo dev crater: support multiple versions per crate
2021-01-23 02:18:11 +01:00
Matthias Krüger
588efa7da9
use a .toml file to list the crates we want to check
...
Also sort lint results alphabetically.
2021-01-23 02:18:11 +01:00
Matthias Krüger
a9fce6d2d0
allow clippy::filter_map
2021-01-23 02:18:11 +01:00
Matthias Krüger
ccfaa338ed
cargo dev crater: share target dir between clippy runs, enable pedantic and cargo lints, ignore tokei for now.
2021-01-23 02:18:11 +01:00
Matthias Krüger
1e5ac1dfd2
cargo dev crater: add more crates to be checked
2021-01-23 02:18:11 +01:00
Matthias Krüger
728dc06d88
add the log file
2021-01-23 02:18:11 +01:00
Matthias Krüger
dbb8c0020e
cargo dev crater: save all warnings into a file
2021-01-23 02:18:11 +01:00
Matthias Krüger
7314133722
cargo dev crater: cleanup, don't re-download and reextract crates on every run
2021-01-23 02:18:11 +01:00
Matthias Krüger
734d2052df
print all clippy warnings in the end
2021-01-23 02:18:11 +01:00
Matthias Krüger
2360a7cad0
cargo clippy dev: collecting one-line clippy warnings works now
2021-01-23 02:18:11 +01:00
Matthias Krüger
69c0757334
clippy cargo dev: fix checking of crates
2021-01-23 02:18:11 +01:00
Matthias Krüger
e69147486e
cargo clippy dev: fix extraction of downloaded crates
2021-01-23 02:18:11 +01:00
Matthias Krüger
63176834c2
cargo dev crater: fixes and debug prints
2021-01-23 02:18:11 +01:00
Matthias Krüger
30d85942cf
crater: hook into main.rs
2021-01-23 02:18:11 +01:00
Matthias Krüger
5353591b1b
cargo dev crater: work on downloading and extracting crate sources
2021-01-23 02:18:11 +01:00
Matthias Krüger
bec916d02d
cargo dev crater: lay out the base plan
2021-01-23 02:18:11 +01:00
bors
70386ff352
Auto merge of #6403 - camsteffen:similar-names-underscore, r=Manishearth
...
Similar names ignore underscore prefixed names
changelog: Ignore underscore-prefixed names for similar_names
IMO, this lint is not very helpful for underscore-prefixed variables. Usually they are unused or are just there to ignore part of a destructuring.
2021-01-22 23:44:12 +00:00
bors
41d750c76c
Auto merge of #6619 - camsteffen:collapsible-match, r=camsteffen
...
Improve collapsible_match
changelog: Fix collapsible_match false negatives
Allow `&` and/or `*` on the binding and make sure the type still matches.
2021-01-22 22:45:43 +00:00
Cameron Steffen
50abde20c9
Fix dogfood
2021-01-22 16:44:47 -06:00
Cameron Steffen
66afdd1f42
Enhance collapsible_match for adjusted bindings
2021-01-22 16:44:47 -06:00
bors
3c3f4a75b4
Auto merge of #6591 - camsteffen:manual-filter-map, r=llogiq
...
`manual_filter_map` and `manual_find_map`
changelog: Add `manual_filter_map` and replace `find_map` with `manual_find_map`
Replaces #6453
Fixes #3188
Fixes #4193
~Depends on #6567 (to fix an internal lint false positive)~
This replaces `filter_map` and `find_map` with `manual_filter_map` and `manual_find_map` respectively. However, `filter_map` is left in place since it is used for a variety of other cases. See discussion in #6453 .
2021-01-22 22:28:41 +00:00
Manish Goregaokar
65d003a112
Clean up suggestion span; clarify help message
2021-01-22 12:08:47 -08:00
Manish Goregaokar
752274eabd
Fix indentation of suggestion
2021-01-22 11:59:36 -08:00
Manish Goregaokar
8cb7e85006
Add exhaustive_structs lint
2021-01-22 11:59:36 -08:00
flip1995
8c00304bbb
Make more traits of the From/Into family diagnostic items
...
Following traits are now diagnostic items:
- `From` (unchanged)
- `Into`
- `TryFrom`
- `TryInto`
This also adds symbols for those items:
- `into_trait`
- `try_from_trait`
- `try_into_trait`
2021-01-22 18:07:00 +01:00
Mara Bos
e9b2cf4f64
Rollup merge of #81236 - estebank:everybody-loop-now, r=oli-obk
...
Gracefully handle loop labels missing leading `'` in different positions
Fix #81192 .
* Account for labels when suggesting `loop` instead of `while true`
* Suggest `'a` when given `a` only when appropriate
* Add loop head span to hir
* Tweak error for invalid `break expr`
* Add more misspelled label tests
* Avoid emitting redundant "unused label" lint
* Parse loop labels missing a leading `'`
Each commit can be reviewed in isolation.
2021-01-22 14:30:19 +00:00
bors
fbc374d0a6
Auto merge of #6621 - giraffate:improve_the_example_in_ref_in_deref, r=flip1995
...
Improve the example in `ref_in_deref`
Add a suggested code to the example in doc
changelog: none
2021-01-22 14:04:31 +00:00
Takayuki Nakata
23662d1353
Improve the example in ref_in_deref
2021-01-22 22:51:06 +09:00
bors
a1b89f07f0
Auto merge of #81135 - jyn514:no-backticks, r=flip1995
...
Fix formatting for removed lints
- Don't add backticks for the reason a lint was removed. This is almost
never a code block, and when it is the backticks should be in the reason
itself.
- Don't assume clippy is the only tool that needs to be checked for
backwards compatibility
I split this out of https://github.com/rust-lang/rust/pull/80527/ because it kept causing tests to fail, and it's a good change to have anyway.
r? `@flip1995`
2021-01-22 06:13:19 +00:00
Esteban Küber
3a5ede6ef4
Fix clippy and comment
2021-01-21 21:43:28 -08:00
Esteban Küber
612a7fc18e
Add loop head span to hir
2021-01-21 21:41:46 -08:00
Cameron Steffen
82bab19a01
Deprecate find_map lint
2021-01-21 18:19:55 -06:00
Cameron Steffen
a22915bf48
Remove unneeded allow's
2021-01-21 18:19:53 -06:00
Cameron Steffen
a752d31e0a
Replace find_map with manual_find_map
2021-01-21 18:18:21 -06:00
Cameron Steffen
c92bdc4dbb
Split filter_map into manual_filter_map
2021-01-21 18:18:18 -06:00
Cameron Steffen
7a8660861e
Add expr_fallback to SpanlessEq
2021-01-21 18:17:25 -06:00
Cameron Steffen
e89ad4ba71
Fix comment
2021-01-21 18:17:25 -06:00
Cameron Steffen
2d509f8b40
Check if let guard in collapsible_match
2021-01-21 18:13:36 -06:00
xFrednet
a905cf6737
Added documentation for common abbreviations
...
This list was created as a collaborative effort on Zulip and the [thread] is definitely worth a read as we had quite some fun. A big **THANK YOU** goes out to everyone who participated you make this project fun to work on!!!
The Zulip [thread]: https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/Common.20abbreviations.20in.20basics.2Emd/near/223548065
2021-01-22 00:25:24 +01:00
Manish Goregaokar
09d4d49299
ExhaustiveEnums -> ExhaustiveItems
2021-01-21 13:39:00 -08:00
Manish Goregaokar
f6cb96ef07
Make exhaustive_enums only warn on exported items
2021-01-21 13:34:44 -08:00