Commit graph

1015 commits

Author SHA1 Message Date
Sascha Hanse
9aa7701262 make clippy compile again with the latest nightly after rust-lang/rust@65eb024542 2016-08-17 00:21:58 +02:00
Oliver Schneider
871f8dcab3
don't run clippy on dependencies when running cargo clippy 2016-07-04 13:33:48 +02:00
mcarton
3c4af49662
Rustup to ea0dc9297283daff6486807f43e190b4eb561412 2016-07-01 17:44:17 +02:00
mcarton
e4dceef7e7
Revert "Automatically defines the clippy feature"
This reverts commit d7ba66bf44.

It was causing problems with crates with:

```rust
#![cfg_attr(feature="clippy", plugin(clippy))]
```
2016-06-29 14:29:25 +02:00
Oliver Schneider
36c5026c48
fix cargo clippy when using with --manifest-path 2016-06-21 12:31:30 +02:00
Manish Goregaokar
5b1d849c7e Revert "fix cargo clippy when using with --manifest-path"
This reverts commit b31bebeea4.
2016-06-21 15:24:04 +05:30
Oliver Schneider
b31bebeea4
fix cargo clippy when using with --manifest-path 2016-06-21 11:35:34 +02:00
mcarton
489576437d
Cleanup dependencies and features 2016-06-10 00:09:17 +02:00
mcarton
11665a0d79
Dogfood 2016-06-10 00:08:14 +02:00
mcarton
90453fd893
Run rustfmt
Only partially apply suggestions.
2016-06-10 00:08:14 +02:00
mcarton
d7ba66bf44
Automatically defines the clippy feature 2016-06-08 21:53:58 +02:00
Oliver Schneider
8d5524f1da
clippy should work on all systems 2016-06-06 16:43:58 +02:00
Oliver Schneider
a81181b758
don't abort after successfully linting a target 2016-06-06 11:28:09 +02:00
Oliver Schneider
078cc68c52
no indexing 2016-06-02 17:39:28 +02:00
Oliver Schneider
7bb8ba4631
process more kinds of metadata 2016-06-02 17:29:25 +02:00
Oliver Schneider
80e81d351d
add version check to the unit tests 2016-05-30 12:47:04 +02:00
Oliver Schneider
e6a089efa9
dogfood 2016-05-30 11:32:02 +02:00
Oliver Schneider
0818e70497
don't require cargo clippy to pass a --lib or --bin x argument 2016-05-30 11:32:02 +02:00
Oliver Schneider
bf227f4729
split clippy into lints, plugin and cargo-clippy 2016-05-27 13:03:58 +02:00
Oliver Schneider
5eca09793e
needless_borrow reported on &&T when only &T implements Trait and &Trait is required 2016-05-27 12:12:38 +02:00
mcarton
8ac545d0fe Fix documentation 2016-05-26 00:08:31 +02:00
llogiq
4c347320be Merge pull request #955 from Manishearth/regexes
Regexes
2016-05-26 00:00:07 +02:00
mcarton
51d166f17a Support RegexBuilder 2016-05-25 21:36:51 +02:00
mcarton
4f11f84dee Lint binary regexes 2016-05-25 21:14:14 +02:00
Oliver Schneider
bb69e60b30
fix no_effect lint 2016-05-25 18:51:35 +02:00
Oliver Schneider
e90a0be923
simplify mut_mut lint 2016-05-25 10:40:25 +02:00
Andre Bogus
9cfc42275d Split new_without_default and new_without_default_derive.
This is still very slow, because we do a trait lookup for each field.
Perhaps storing the visited types in a set to reuse types would improve
performance somewhat. Also we may want to pre-decide some known types
(e.g. `Vec<T>`, `Option<T>`).
2016-05-24 18:22:18 +02:00
Benoît Zugmeyer
7a9dac4e1c Let cargo-clippy exit with a code > 0 if some error occured 2016-05-23 22:35:00 +02:00
mcarton
ac2e175c1b
Rustup to *1.10.0-nightly (476fe6eef 2016-05-21)* 2016-05-23 16:36:10 +02:00
mcarton
6dd608e53e
Rustup to *1.10.0-nightly (764ef92ae 2016-05-19)* 2016-05-23 16:11:28 +02:00
mcarton
2a5416d662
Rustup to *1.10.0-nightly (9c6904ca1 2016-05-18)* 2016-05-23 16:11:19 +02:00
Manish Goregaokar
973ae82d72 Merge branch 'pr-942' 2016-05-18 13:13:35 +05:30
mcarton
ca05e93c10 Rustup to *1.10.0-nightly (cd6a40017 2016-05-16)* 2016-05-17 23:25:20 +02:00
Manish Goregaokar
6a309af2f3 Don't panic if cargo rustc fails 2016-05-16 23:13:47 +05:30
Manish Goregaokar
f2f5fefd00
Allow invalid upcast comparisons 2016-05-16 22:52:22 +05:30
Martin Carton
4c4b1af03c Merge pull request #928 from oli-obk/unnecessary_operation
add a companion lint to `no_effect` with suggestions for partially (in-)effective statements
2016-05-13 17:45:58 +02:00
Oliver Schneider
1e897f1552 add a companion lint to no_effect with suggestions for partially effective statements 2016-05-13 16:43:47 +02:00
Martin Carton
e890bb5e4b Merge pull request #921 from afck/master
fix typos
2016-05-13 12:13:23 +02:00
Andreas Fackler
87df6ae8cb fix typos 2016-05-13 08:50:51 +03:00
mcarton
a9bea1f52b
Rustup to *1.10.0-nightly (22ac88f1a 2016-05-11)* 2016-05-12 21:22:38 +02:00
Oliver Schneider
610883b7aa
don't suggest closures over constants
fixes #917
2016-05-12 10:23:06 +02:00
llogiq
8fa68f1e08 Merge pull request #913 from oli-obk/assign_ops
suggest `a op= b` over `a = a op b`
2016-05-11 23:36:10 +02:00
llogiq
c170aa262a Merge pull request #915 from Manishearth/sysroot
Use rustc --print sysroot, bump to v66 r? @llogiq
2016-05-11 21:56:52 +02:00
llogiq
f966778770 Merge pull request #914 from oli-obk/non_expressive_names
similar_names fixes
2016-05-11 21:55:38 +02:00
Manish Goregaokar
03a309d182
Use rustc --print sysroot, bump to v66 2016-05-11 11:07:37 -07:00
Oliver Schneider
b0d008bc9d
add known problems 2016-05-11 17:04:27 +02:00
Oliver Schneider
f004120495
properly lint function argument patterns in similar_names 2016-05-11 16:45:06 +02:00
Oliver Schneider
49e2570b77
don't lint at the use-site of bad struct field bindings if they're shorthand
fixes #899
2016-05-11 16:44:43 +02:00
Oliver Schneider
c6b4b19a43
suggest a op= b over a = a op b 2016-05-11 15:32:20 +02:00
Josh Stone
11987f5b6f Support either rustup or multirust environment variables
Fixes #910
2016-05-10 13:45:37 -07:00
Manish Goregaokar
855b292cda Merge pull request #681 from oli-obk/split
cargo clippy
2016-05-10 00:41:34 -07:00
Seo Sanghyeon
f227225acd Remove unused imports 2016-05-10 00:35:51 +09:00
Oliver Schneider
654154d8e7
cargo clippy subcommand 2016-05-09 16:47:32 +02:00
Oliver Schneider
ba8653a8da
fallout 2016-05-09 13:08:00 +02:00
Oliver Schneider
6edc6a13d4
needless borrows found in clippy 2016-05-09 13:07:55 +02:00
Oliver Schneider
87faaec7a3
add needless_borrow lint 2016-05-09 13:07:43 +02:00
Manish Goregaokar
d70e7bb5fc Merge pull request #906 from Manishearth/birkenfeld-master
Rustup to *rustc 1.10.0-nightly (62e2b2fb7 2016-05-06)*
2016-05-07 21:31:21 -07:00
mcarton
aa10c93e8f
Fix tests 2016-05-08 01:13:05 +02:00
Oliver Schneider
0a3ab78bde
fix markdown generated from code 2016-05-06 16:09:05 +02:00
mcarton
3ce60e9731 Don’t warn in titles in DOC_MARKDOWN 2016-05-05 21:49:57 +02:00
mcarton
e14e1a7148 Fix issue with DOC_MARKDOWN and punctuation 2016-05-05 21:33:46 +02:00
Georg Brandl
ca743ecb77 rustup: fix breakage in diagnostics API
Also adds a function to add the clippy wiki note, which is used a few times.
2016-05-04 08:54:59 +02:00
Oliver Schneider
3a32c2c596 doc markdown lint shows the exact word location 2016-05-02 14:36:48 +02:00
Oliver Schneider
365644e9e6 doc markdown lint's span shows the line instead of the item 2016-05-02 14:36:33 +02:00
Manish Goregaokar
f6290b622c Merge branch 'pr-890' 2016-05-02 14:43:11 +05:30
Oliver Schneider
ee35c3722a similar_names should be allow-by-default 2016-05-02 10:53:09 +02:00
Oliver Schneider
10f468e679 don't lint similar_names inside #[test] functions 2016-05-02 10:52:55 +02:00
Andre Bogus
0b40ae178a fixed tests, added clippy_restrictions lint group 2016-04-30 23:54:10 +02:00
Andre Bogus
a967440186 lint remainder, document test w/ half expr 2016-04-30 17:11:59 +02:00
Andre Bogus
9a99979cc4 fix #887: New lints for integer/floating-point arithmetic 2016-04-30 04:01:47 +02:00
mcarton
0664394a49 Centralize more paths 2016-04-26 13:43:23 +02:00
mcarton
cf5c1ab0b6 Fix paths resolution
Put more paths into the `utils::paths` module.
2016-04-26 13:31:52 +02:00
Manish Goregaokar
08818de9b7
Rustup to rustc 1.10.0-nightly (645dd013a 2016-04-24); release 0.0.64 2016-04-26 02:10:48 +05:30
Manish Goregaokar
c3d75ad80d
Improve new_without_default docs 2016-04-24 17:15:54 +05:30
Oliver 'ker' Schneider
bf4221c51a cc: early returns are special 2016-04-23 14:30:05 +02:00
llogiq
30f7651271 Merge pull request #867 from Manishearth/#830
Check type for `SINGLE_CHAR_PATTERN`
2016-04-23 10:54:22 +02:00
Andre Bogus
e3d86800ff allow items_after_statements by default 2016-04-23 07:52:45 +02:00
Taylor Cramer
8866ba9e2a Fixed destructor detection in mem_forget 2016-04-21 09:36:39 -07:00
Taylor Cramer
77427b6ead Limited mem_forget error to only Drop types (fails) 2016-04-20 19:24:31 -07:00
Taylor Cramer
5158a08c5b Changed std::mem::forget errors to mem::forget 2016-04-20 18:55:41 -07:00
Taylor Cramer
12ae306630 Ticks around std::mem::forget 2016-04-20 13:33:05 -07:00
Taylor Cramer
7961f59303 Ran update_lints and updated CHANGELOG.md to reflect addition of mem_forget 2016-04-20 13:11:55 -07:00
Taylor Cramer
447940c889 Added lint for mem_forget 2016-04-20 13:10:23 -07:00
mcarton
de9a80cd10 Check type for SINGLE_CHAR_PATTERN
It’d be nicer to actually check for `Pattern` bounds but in the meantime
this needs to be fixed.
2016-04-20 21:16:59 +02:00
Taylor Cramer
4be11e9116 Removed unnecessary restriction of unsafe_removed_from_name to top-level use statements 2016-04-19 21:41:45 -07:00
Taylor Cramer
b793ad7f2f Ran update_lints script 2016-04-19 16:32:04 -07:00
Taylor Cramer
038f528f45 Added lint for use imports which remove unsafe from name 2016-04-19 16:31:26 -07:00
llogiq
0bc067089e add neg_multiply lint (#862)
add neg_multiply lint
2016-04-17 23:33:21 +02:00
Georg Brandl
12b8a0ac14 Make if_not_else lint Allow by default (fixes #859) 2016-04-17 12:54:38 +02:00
mcarton
578cc3dc71 Fix the REGEX_MACRO lint
[rust-lang-nursery/regex#183](https://github.com/rust-lang-nursery/regex/pull/183) has made the following change that broke the lint:

src/re.rs → src/re_unicode.rs
2016-04-15 00:10:17 +02:00
mcarton
a878916ad5 rustfmt all the things 2016-04-14 20:14:03 +02:00
mcarton
cd12a2369a s/paths::LL/paths::LINKED_LIST
All other paths had non-abbreviated names.
2016-04-14 18:41:38 +02:00
mcarton
48a672b4ee Move paths to their own module 2016-04-14 18:38:28 +02:00
mcarton
1789430a49 Add a TEMPORARY_CSTRING_AS_PTR lint 2016-04-14 17:26:07 +02:00
mcarton
831b8fc1b5 Ignore #[test] fns in cyclomatic_complexity 2016-04-14 17:26:07 +02:00
mcarton
fe6e8dac35 More tests in DOC_MARKDOWN 2016-04-13 16:02:44 +02:00
Manish Goregaokar
fbf8fa9daf Merge pull request #851 from Manishearth/doc
Fix FP with `DOC_MARKDOWN` and reference links
2016-04-12 09:22:39 +05:30
mcarton
6c0a486e8b Fix FP with DOC_MARKDOWN and reference links 2016-04-12 00:18:58 +02:00
Andre Bogus
29c058f0af add a note of rust-lang/rust/#31439 to the wiki text 2016-04-11 23:59:52 +02:00
mcarton
9c4ae9295d Markdownify more doc 2016-04-11 23:24:14 +02:00
mcarton
532446d3f8 Rustup to 1.9.0-nightly (7979dd608 2016-04-07) 2016-04-08 17:31:47 +02:00
mcarton
c24ba91123 Rustup to 1.9.0-nightly (bf5da36f1 2016-04-06) 2016-04-08 02:23:14 +02:00
mcarton
ee907b73a4 Fix false positive with DOC_MARKDOWN and 32MiB 2016-04-04 20:25:21 +02:00
mcarton
f46e96405f Rustup to 1.9.0-nightly (5ab11d72c 2016-04-02) 2016-04-03 17:22:10 +02:00
mcarton
eada860aa7 Small fixes in #802 2016-04-02 15:51:28 +02:00
mcarton
51e63a1ae2 Rustup PR #802 2016-04-02 15:43:58 +02:00
Taylor Cramer
d050d601fc Added eq and neq handling to invalid upcast comparisons 2016-04-02 15:32:57 +02:00
Taylor Cramer
90a6117729 Reverted to manual implementation of PartialEq for FullInt 2016-04-02 15:32:57 +02:00
Taylor Cramer
d52d23d662 Erased numeric type to reduce branching 2016-04-02 15:32:57 +02:00
Taylor Cramer
106ae7da44 Invalid upcast comparison cleanup 2016-04-02 15:32:57 +02:00
Taylor Cramer
8687949a29 Tests passing for invalid_upcast_comparisons 2016-04-02 15:32:57 +02:00
Taylor Cramer
c81edfc7b9 Updated lints with script 2016-04-02 15:32:56 +02:00
Taylor Cramer
498e0fba7f Initial attempt at linting invalid upcast comparisons 2016-04-02 15:32:36 +02:00
Manish Goregaokar
c150ae7824 Merge pull request #826 from Manishearth/patho-bool
Ignore pathological cases in boolean lint
2016-04-01 21:32:41 +05:30
Manish Goregaokar
6b0eb10769 Ignore pathological cases in boolean lint (#825) 2016-04-01 21:24:31 +05:30
mcarton
f16da4fdda Fix false positive with DOC_MARKDOWN and links 2016-04-01 17:24:55 +02:00
mcarton
8bfe38c432 Improve the match_same_arms doc 2016-04-01 13:14:39 +02:00
Andre Bogus
4c6c84e0a1 fix #820 2016-04-01 10:33:17 +02:00
Oliver Schneider
73ee3e6f36 whitelist more non-expressive-name false positives 2016-03-31 17:35:00 +02:00
mcarton
9438f4f263 Rustup to 1.9.0-nightly (30a3849f2 2016-03-30) 2016-03-31 17:15:23 +02:00
mcarton
7095b5df31 Fix FP in REDUNDANT_CLOSURE with divergent functions 2016-03-30 23:12:24 +02:00
Oliver Schneider
f03d93e05e better whitelisting of "confusable" binding names 2016-03-30 17:05:15 +02:00
Oliver Schneider
d3362a2222 don't lint on binding names where only a numeric char changes to another numeric 2016-03-30 16:40:21 +02:00
Oliver Schneider
77652243ae minor code readability improvements 2016-03-30 16:39:25 +02:00
Oliver Schneider
2917484130 make nonminimal_bool allow-by-default 2016-03-30 12:55:59 +02:00
Oliver Schneider
fa48ee678a dogfood 2016-03-29 17:20:30 +02:00
Oliver Schneider
e9c87c777c !(a == b) --> a != b 2016-03-29 17:18:47 +02:00
Oliver Schneider
b05dd13f2c added brackets and fixed compiler comments 2016-03-29 16:55:38 +02:00
Oliver Schneider
216edbae59 accidentally forgot about improvements if there were multiplie candidates 2016-03-29 16:27:06 +02:00
Oliver Schneider
96be287f12 detect negations of terminals like a != b vs a == b 2016-03-29 10:45:45 +02:00
Oliver Schneider
3a0791e680 make sure a < b and a >= b are considered equal by SpanlessEq 2016-03-29 10:45:45 +02:00
Oliver Schneider
25bbde091a a small refactoring for readability 2016-03-29 10:45:45 +02:00
Oliver Schneider
dd6bee3b3f collect stats on bool ops and negations in an expression 2016-03-29 10:45:45 +02:00
Oliver Schneider
0f92f84f16 String::extend -> String::push_str 2016-03-29 10:45:45 +02:00
Oliver Schneider
e7013a3e9c update lints 2016-03-29 10:45:45 +02:00
Oliver Schneider
76ab801001 if a < b { ... } if a >= b { ... } what am I doing? 2016-03-29 10:45:18 +02:00
Oliver Schneider
37cee84c44 negations around expressions can make things simpler 2016-03-29 10:45:18 +02:00
Oliver Schneider
03833f666f differentiate between logic bugs and optimizable expressions 2016-03-29 10:45:18 +02:00
Oliver Schneider
288ea79963 treat macros as terminals to prevent cfg! from giving platform specific hints 2016-03-29 10:45:18 +02:00
Oliver Schneider
050d7fd308 fallout and tests 2016-03-29 10:45:18 +02:00
Oliver Schneider
5911ccaba8 merge multiple equal terminals into one 2016-03-29 10:45:18 +02:00
Oliver Schneider
25ed62ff23 improve lint attribute detail 2016-03-29 10:45:18 +02:00
Oliver Schneider
1f1f09ba92 also compute minimal product of sum form 2016-03-29 10:45:18 +02:00
Oliver Schneider
57faa5a9f5 improve bracket display 2016-03-29 10:45:18 +02:00
Oliver Schneider
93d097eb12 better simplification 2016-03-29 10:45:18 +02:00
mcarton
0939f5a2ec Fix false positive in MATCH_SAME_ARMS and guards 2016-03-29 01:39:35 +02:00
mcarton
777e810a39 Add for _ in vec![…] to the USELESS_VEC lint 2016-03-28 23:32:55 +02:00
mcarton
371a5537eb Address nits in DOC_MARKDOWN 2016-03-28 21:24:52 +02:00
mcarton
b1d1f095f1 Improve the DOC_MARKDOWN lint
`_` can be used for emphasize text. `::` is equality as bad outside
ticks.
2016-03-28 21:24:36 +02:00
mcarton
42bf37f49f Add a lint for bad documentation formatting 2016-03-28 21:24:36 +02:00