Commit graph

984 commits

Author SHA1 Message Date
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
mcarton
941ec6e4f5 Beautify more docs 2016-03-28 21:24:36 +02:00
mcarton
7877a42308 Fix some spelling mistakes here and there 2016-03-28 21:24:36 +02:00
mcarton
e7158dc8f1 s/cx.span_lint/span_lint(cx, / 2016-03-28 18:05:43 +02:00
mcarton
2d5e3f3118 Lint transmute from ptr to ref 2016-03-28 18:05:43 +02:00
Manish Goregaokar
204034e8fa Fix ICE 2016-03-28 01:58:57 +05:30
josephDunne
aa819b7748 Update rust-clippy to rustc 1.9.0-nightly (d5a91e695 2016-03-26)
move cfg, infer, traits and ty from middle to top-level
move middle::subst into middle::ty
track the extern-crate def-id rather than path (rustc ab9b844)
2016-03-27 20:24:10 +01:00
Manish Goregaokar
f51293c399 Rm extraneous infcx 2016-03-27 04:57:25 +05:30
Manish Goregaokar
fcfda681e5 Stop using ast_ty_to_ty_cache
It's not reliable and gets cleared`
2016-03-27 04:24:55 +05:30
Manish Goregaokar
07dc709ba4 Allow trailing commas in if_let_chain 2016-03-27 04:24:42 +05:30
Manish Goregaokar
f3fdbd0d89 Fix ICE with unknown defids 2016-03-27 02:46:37 +05:30
Manish Goregaokar
e37ff5a5c7 Fix ICE with relating late bound regions 2016-03-27 02:46:36 +05:30
Taylor Cramer
b07360eb28 Cleanup and added transmute to ugly path list 2016-03-24 16:38:16 -07:00
Taylor Cramer
6adb9cb53f Added crosspointer transmute error and tests 2016-03-24 15:48:38 -07:00
Manish Goregaokar
7e65493599 Merge pull request #795 from mcarton/deprecated
Deprecates 4 lints
2016-03-25 00:40:37 +05:30
mcarton
15e55f5df5 Deprecates 4 lints
Namely STR_TO_STRING, STRING_TO_STRING, UNSTABLE_AS_SLICE and
UNSTABLE_AS_MUT_SLICE.
2016-03-24 19:56:48 +01:00
Vincent Prouillet
341b7d3f6b Update float_cmp message 2016-03-24 17:07:55 +00:00
Jascha
a7f662d8f2 Match attributes in FnKind patterns 2016-03-23 16:11:24 +01:00
Manish Goregaokar
523c596171 Merge pull request #727 from oli-obk/similar_names
lint on binding-names that are too similar
2016-03-21 10:35:36 +05:30
Andre Bogus
6164eabc3c fixed the build 2016-03-20 21:24:18 +01:00
Jan-Erik Rediger
7d3e6da3cb Fix typo in new_without_default docu 2016-03-20 20:32:22 +01:00
mcarton
ef72110684 Fix new_without_default with lts and generics 2016-03-18 19:12:32 +01:00
Oliver Schneider
6a566a1009 use snippet_opt and span_suggestion 2016-03-18 14:06:39 +01:00
Oliver Schneider
9dc282e31d improve needless_bool to catch odd construct in non_expressive_names 2016-03-18 14:06:39 +01:00
Oliver Schneider
ea1c2406cc make single char names threshold configurable 2016-03-18 14:06:39 +01:00
Oliver Schneider
24cdb14d5a refactor for speed 2016-03-18 14:06:39 +01:00
Oliver Schneider
aa1ecb6fce fix and rebase 2016-03-18 14:06:39 +01:00
Oliver Schneider
077481053c refactoring and bugfix 2016-03-18 14:06:39 +01:00
Oliver Schneider
463897fd39 lint on too many single character bindings 2016-03-18 14:06:39 +01:00
Oliver Schneider
5373ffdeb8 suggest inserting underscores for simple cases 2016-03-18 14:06:39 +01:00
Oliver Schneider
06ca1fc0a6 lint on binding-names that are too similar 2016-03-18 14:06:39 +01:00
Oliver Schneider
64110f16dd fix Eq+Hash for Constant 2016-03-17 12:23:54 +01:00