Cameron Steffen
cbf9d492b9
Fix some website syntax highlighting
2021-01-26 17:38:52 -06:00
xFrednet
52fabbf08b
Added the rustbot claim command to the contribution guide.
2021-01-26 18:36:43 +01:00
bors
be0125bed4
Auto merge of #6469 - matthiaskrgr:clippy_dev_crater, r=flip1995
...
add "cargo dev crater" to run clippy on a fixed set of crates and diff the lint warnings
`cargo dev crater` now does the following:
build clippy in debug mode
for a fixed set of crates:
download and extract the crate
run compiled clippy on the crate
dump the warnings into a file that is inside the repo
We can then do a "git diff" and see what effects our clippy changes had on a tiny fraction of the rust ecosystem and can see when an change unexpectedly added or silenced a lot of warnings.
Checking all the crates took less than 5 minutes on my system.
Should help with https://github.com/rust-lang/rust-clippy/issues/6429
---
*Please write a short comment explaining your change (or "none" for internal only changes)*
changelog: extend cargo dev to run clippy against a fixed set of crates and compare warnings
2021-01-26 06:58:04 +00:00
bors
8d57cee9ca
Auto merge of #6617 - Manishearth:exhaustive_enums, r=camsteffen
...
New lint: exhaustive_enums, exhaustive_structs
Fixes #6616
changelog: Added restriction lint: `exhaustive_enums`, `exhaustive_structs`
2021-01-25 23:06:39 +00:00
Manish Goregaokar
3e3dff7135
Add test with attrs
2021-01-25 14:39:03 -08:00
Manish Goregaokar
e0ae980fab
Better suggestion span
2021-01-25 14:35:57 -08:00
xFrednet
69f2b8f0f8
Updated some NITs in the documentation from #6630
2021-01-25 19:46:19 +01:00
bors
c56b32899f
Auto merge of #6630 - xFrednet:0000-configuration-documentation, r=llogiq
...
Documentation for adding configuration to a lint and common abbreviations
This PR adds some commonly used abbreviations to the `basis.md` file and a guide on how to implement a configuration value for a lint.
* [Rendered `/doc/basics.md` (Abbreviation list)](https://github.com/xFrednet/rust-clippy/blob/0000-configuration-documentation/doc/basics.md#common-abbreviations )
* [Rendered `/doc/adding_lints.md` (Configuration value guide)](https://github.com/xFrednet/rust-clippy/blob/0000-configuration-documentation/doc/adding_lints.md#adding-configuration-to-a-lint )
I'm not sure if the guide is written in the best way. Style suggestions are appreciated. 🙃
---
Again a big **thank you** for everyone who helped to collect the abbreviation list over on [zulip]. I had a lot of fun, and it was also very informative. Keep up the good work 🙃
[zulip]: https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/Common.20abbreviations.20in.20basics.2Emd/near/223548065
---
changelog: none
2021-01-25 00:25:31 +00:00
xFrednet
0373dc3ade
Added documentation for adding a configuration to lints
...
* Fixed some spelling
2021-01-24 21:16:41 +01:00
ThibsG
051891173d
Add more tests for match_overlapping_arm
lint
2021-01-24 12:28:59 +01:00
Matthias Krüger
5b6a18362b
lintcheck: fix paths in the logs
2021-01-23 02:18:11 +01:00
Matthias Krüger
d0d28b11d7
update lintcheck-logs
2021-01-23 02:18:11 +01:00
Matthias Krüger
83fcf95f52
rename cargo dev crater to cargo dev lintcheck
2021-01-23 02:18:11 +01:00
Matthias Krüger
48fc948ca3
clippy dev crater: address more review commetns
...
make serde a feature-dep
save clippy version in the crater log
2021-01-23 02:18:11 +01:00
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