Commit graph

1003 commits

Author SHA1 Message Date
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
Oliver Schneider
432d9fec38 refactor clippy-consts to use ConstInt 2016-03-17 12:23:54 +01:00
Martin Carton
fe1ded0228 Merge pull request #773 from mcarton/rustup
Rustup to *1.9.0-nightly (c66d2380a 2016-03-15)*
2016-03-16 20:05:38 +01:00
mcarton
1ac6efedd1 Rustup to *1.9.0-nightly (c66d2380a 2016-03-15)* 2016-03-16 19:27:59 +01:00
mcarton
8282a3a426 Fix problem in PANIC_PARAMS with inner format! 2016-03-15 21:05:37 +01:00
mcarton
251c3eefd1 Use span_suggestion in STRING_LIT_AS_BYTES 2016-03-15 20:35:41 +01:00
mcarton
6d4e1bd73d Fix false positive with STRING_LIT_AS_BYTES and stringify! 2016-03-15 20:35:41 +01:00
mcarton
1546cc4798 Fix ICE in OUT_OF_BOUNDS_INDEXING with ranges 2016-03-15 20:35:41 +01:00
Oliver 'ker' Schneider
d65953330b rustup const eval changes 2016-03-15 20:09:53 +01:00
Manish Goregaokar
20123eef98 Update to rustc 1.9.0-nightly (6d215fe04 2016-03-14) 2016-03-15 22:55:07 +05:30
Oliver Schneider
d5a01e8789 prevent cc lint from panicking on unreachable code 2016-03-14 17:24:55 +01:00
Manish Goregaokar
eed9baa4fb Merge pull request #698 from mcarton/conf
Add a configuration file and a POC `BLACKLISTED_NAME` lint
2016-03-13 19:33:03 +05:30
mcarton
0774b203f4 Fix false-positive in panic_params
It might still have false positives, but it’s even less likely.
2016-03-12 21:23:57 +01:00
mcarton
7eef989ff4 Add str to types considered by len_zero 2016-03-12 21:23:56 +01:00
mcarton
04d81799a2 Dogfood 2016-03-12 21:23:56 +01:00
mcarton
14dcb60bf8 s/Clippy.toml/clippy.toml 2016-03-12 14:52:09 +01:00
mcarton
aa4daea364 Lint function with too many arguments 2016-03-12 14:52:06 +01:00
mcarton
95e582a338 Don’t make conf errors fatal errors 2016-03-12 14:51:47 +01:00
mcarton
d118b27abb mv src/conf.rs src/utils 2016-03-12 14:51:47 +01:00
mcarton
403c54ec5b White-list third-party in conf files 2016-03-12 14:51:47 +01:00
mcarton
c7db94aee6 Rustfmt 2016-03-12 14:51:47 +01:00
mcarton
a3031e34f9 Add a BLACKLISTED_NAME lint 2016-03-12 14:51:45 +01:00
mcarton
232710cd43 Add configuration variables to wiki 2016-03-12 14:50:46 +01:00
mcarton
1841804d43 Use configuration in the TYPE_COMPLEXITY lint 2016-03-12 14:50:46 +01:00
mcarton
29c0c2bb09 Start implementing a configuration file 2016-03-12 14:50:46 +01:00
mcarton
2f13c3bdef Small nits on INDEXING_SLICING 2016-03-11 22:10:40 +01:00
Adolfo Ochagavía
87ef5f4d3b Lint against indexing and slicing
This can be useful to prevent panics in a codebase. ATM it is a pedantic
lint, but in the future it should be added to the restricions group.
2016-03-11 21:30:35 +01:00
mcarton
a38958b8d9 Fix unsugar_range with .. 2016-03-11 20:27:33 +01:00
mcarton
c6316df19f Rustup to 1.9.0-nightly (c9629d61c 2016-03-10) 2016-03-11 14:18:56 +01:00
mcarton
9cfc6124a3 Improve the MATCH_REF_PATS suggestions 2016-03-09 16:22:31 +01:00
mcarton
3ab4914a29 Handle the new TryDesugar variant 2016-03-09 16:10:24 +01:00
Manish Goregaokar
d9b5b2a264 Merge pull request #730 from mcarton/unused-labels
Lint unused labels and types with `fn new() -> Self` and no `Default` impl
2016-03-09 11:26:44 +05:30
mcarton
052f5984e7 Fix types comparison 2016-03-08 17:00:44 +01:00
mcarton
8e9e858b78 Remove uses of ast_ty_to_ty_cache 2016-03-08 17:00:44 +01:00
mcarton
d7129f560d Lint types with fn new() -> Self and no Default impl 2016-03-08 17:00:37 +01:00
mcarton
204c12c99e Lint unused labels 2016-03-08 16:43:40 +01:00
Oliver Schneider
bf20b40664 fix cyclomatic complexity lint triggering because of short circuit operations 2016-03-08 15:10:02 +01:00
llogiq
08b7931b6b Merge pull request #741 from martiansideofthemoon/blastoise
Linting classical overflow checks
2016-03-08 09:50:00 +01:00
KALPESH KRISHNA
9faffd2870 Adding symmetric lints and test cases 2016-03-08 13:39:44 +05:30
mcarton
8bbd8b0b92 Fix ICE in for_loop with globals 2016-03-07 23:32:43 +01:00
KALPESH KRISHNA
d6d409414e Adding underflow checks and tests 2016-03-08 02:57:45 +05:30
KALPESH KRISHNA
55fbf59f3b Linting classical overflow checks. 2016-03-08 02:48:42 +05:30
mcarton
3c3a4549a8 Fix tests with inclusive ranges 2016-03-07 16:55:12 +01:00
mcarton
13bb22a68b Remove all ExprRange
Rustup to rustc 1.9.0-nightly (998a6720b 2016-03-07)
2016-03-07 16:31:38 +01:00
mcarton
eb0a493442 Implement struct literal equality 2016-03-07 16:30:02 +01:00
mcarton
2abb775de5 Fix dogfood 2016-03-06 14:10:04 +01:00
Manish Goregaokar
f69e09ab0e Merge branch 'pr-737' 2016-03-05 23:41:34 +05:30
KALPESH KRISHNA
e421a0f8a3 Warn about calling a closure in the same expression where it's defined. 2016-03-05 22:41:52 +05:30
Oliver Schneider
e7fa117ff8 simplify cyclomatic complexity auxiliarly value computation
previously the HIR was unnecessarily traversed twice
2016-03-04 16:27:03 +01:00
mcarton
c7bf068121 s/ctxt/TyCtxt 2016-03-04 14:25:34 +01:00
mcarton
79b0ad7441 vec! now uses box 2016-03-03 20:09:31 +01:00
Manish Goregaokar
100ca33742 Rust upgrade to 2016-03-02 nightly 2016-03-03 01:24:20 +05:30
Manish Goregaokar
bd45cfd273 rustfmt 2016-02-29 21:35:51 +05:30
Oliver Schneider
3b7720f992 lint ! and != in if expressions with else branches 2016-02-29 12:34:48 +01:00
Oliver Schneider
67213c9be4 lint unportable clike enum discriminants 2016-02-29 09:36:13 +01:00
llogiq
105a14f547 Merge pull request #721 from mcarton/while_let_loop
Fix wrong suggestion in `WHILE_LET_LOOP`
2016-02-28 22:49:56 +01:00
mcarton
76004306cc Lint manual swaps 2016-02-28 12:16:13 +01:00
mcarton
5fadfb3ea6 Fix wrong suggestion in WHILE_LET_LOOP
Ok, I lied in the title. This basically *removes* the problematic part
but:
  1) it was ugly with big bodies;
  2) it was not indented properly;
  3) it wasn’t very smart (see #675).
2016-02-28 12:09:28 +01:00
mcarton
72ef26272d Lint foo = bar; bar = foo sequences 2016-02-28 00:02:43 +01:00
mcarton
05178c92b9 Cleanup 2016-02-27 18:18:58 +01:00
mcarton
3a5b9a707c Fix (new?) rustc warnings 2016-02-27 18:18:58 +01:00
mcarton
1c3cce8ba5 Add a lint about suspiciously formatted else if 2016-02-27 18:18:53 +01:00
mcarton
810de56079 Add a lint about suspiciously formatted =@ ops
For `@` in {`*`, `!`, `-`}.
2016-02-27 17:57:36 +01:00
mcarton
62cbd87728 Fix false positive in FOR_KV_MAP and &mut refs 2016-02-26 12:51:26 +01:00
llogiq
b3ffc1868f Merge pull request #689 from mcarton/entries
Improve the `MAP_ENTRY` lint
2016-02-26 12:18:34 +01:00
Manish Goregaokar
f13b841282 Merge branch 'pr-704'
Conflicts:
	src/len_zero.rs
2016-02-25 01:38:08 +05:30
mcarton
783437eef0 Use span_suggestion in loops lints 2016-02-24 20:54:35 +01:00
mcarton
7b1a0a9434 Macro check len_zero 2016-02-24 20:53:15 +01:00
mcarton
c1b2fe31b7 Use span_suggestion in len_zero 2016-02-24 20:52:47 +01:00
mcarton
b753e77cbe Rustfmt and sort all use items 2016-02-24 17:38:57 +01:00
mcarton
3b783152cc Fix ICE with match_def_path 2016-02-22 20:00:51 +01:00
mcarton
2a0fb1fb44 Limit USELESS_FORMAT with args to string args 2016-02-22 17:54:46 +01:00
Martin Carton
c47d5a615f Merge pull request #690 from quininer/fix-nightly
fix nightly (2016-02-17)
2016-02-21 15:38:31 +01:00
mcarton
d77ccdc338 Fix USELESS_FORMAT wiki 2016-02-21 13:21:04 +01:00
mcarton
1a64a4890c Small cleanup 2016-02-20 21:20:56 +01:00
mcarton
ba3be83488 Lint about format!("{}", foo) 2016-02-20 21:15:05 +01:00
mcarton
b6443b9928 Replace all format!("{}", foo) calls 2016-02-20 21:03:45 +01:00
mcarton
ef4401d4ac Lint about usage of format!("string literal") 2016-02-20 17:46:20 +01:00
mcarton
222086d62b Remove all use of format!("string literal") 2016-02-20 17:46:20 +01:00
mcarton
5fe6e9f911 Build the import lint in update_lints.py 2016-02-20 17:46:16 +01:00
quininer kel
35a48bf512 fix nightly
9b40e1e5b3
2016-02-19 04:16:39 +08:00
Manish Goregaokar
78b31c61bd Merge pull request #688 from Manishearth/fix-671
improve str_add_assign lint description
2016-02-19 01:43:23 +05:30
mcarton
aa1df8e9ff Improve the MAP_ENTRY lint
Don’t span a suggestion when not appropriate but use a note and don’t
force it to be `if !cond`.
2016-02-18 20:19:16 +01:00
llogiq
1fd0676fa3 improve str_add_assign lint description 2016-02-18 20:12:33 +01:00
Oliver Schneider
add483afed fix enum glob use (again) 2016-02-18 16:08:45 +01:00
Manish Goregaokar
05afde821c Merge pull request #673 from oli-obk/fix/665
don't lint on all caps enum variants starting with the same char
2016-02-18 11:12:58 +05:30
Manish Goregaokar
e659ce1437 Merge pull request #664 from Manishearth/fix_regex
remove Visitor from regex_macro
2016-02-18 10:28:12 +05:30
Martin Carton
7250738edf Merge pull request #679 from mcarton/rustup
Rustup to 1.8.0-nightly (57c357d89 2016-02-16)
2016-02-17 15:53:28 +01:00
mcarton
227ff8c4ad Rustup to 1.8.0-nightly (57c357d89 2016-02-16) 2016-02-17 13:38:44 +01:00
Oliver Schneider
cf536d7a4f fallout 2016-02-17 13:33:32 +01:00
Oliver Schneider
e809eb61d7 fix enum_variant_names linting on all caps enum variants 2016-02-17 13:33:32 +01:00
llogiq
59c8f6210b Merge pull request #669 from shssoichiro/single-char-pattern
Lint single-character strings as P: Pattern args
2016-02-16 14:24:22 +01:00
mcarton
b5ba621f61 Make DERIVE_HASH_NOT_EQ symmetric 2016-02-16 00:15:11 +01:00
Manish Goregaokar
2641c4e126 Merge pull request #670 from Manishearth/better-ice-fix
Make derive lint handle generics correctly
2016-02-16 04:41:23 +05:30
mcarton
cd35b9e38d Fix wrong reported lint for EXPL_IMPL_CLONE_ON_COPY 2016-02-15 22:29:07 +01:00
mcarton
00b27bf7be Fix suggestion in COLLAPSIBLE_IF lint 2016-02-15 17:43:16 +01:00
Joshua Holmer
c22ded11e5 Reword lint documentation
char is faster, proven by benchmark.
2016-02-15 10:32:04 -05:00
Joshua Holmer
643a223f71 Address nits 2016-02-15 09:10:31 -05:00
mcarton
570b963535 Replace potentially ICEgen ast_ty_to_ty_cache 2016-02-15 13:44:59 +01:00
mcarton
d755b1ebe2 Cleanup 2016-02-15 13:25:29 +01:00
Manish Goregaokar
1ca5903138 Make derive lint handle generics correctly 2016-02-15 10:20:26 +05:30
Joshua Holmer
7eea67605a Lint single-character strings as P: Pattern args
Fixes #650
2016-02-14 22:40:43 -05:00
mcarton
1b93d71645 Fix ICE in EXPL_IMPL_CLONE_ON_COPY 2016-02-14 20:31:23 +01:00
llogiq
30a8dfb31a remove Visitor from regex_macro 2016-02-14 16:55:02 +01:00
llogiq
6a624fe77c Merge pull request #662 from mcarton/#601
Fix #601
2016-02-14 12:58:36 +01:00
mcarton
cbe2de7fd2 Address small nit 2016-02-14 12:07:56 +01:00
llogiq
5521a75707 Merge pull request #654 from mcarton/new
Lints about `new` methods
2016-02-13 22:19:36 +01:00
mcarton
4562040d6b Fix false positive in NEEDLESS_RANGE_LOOP 2016-02-13 22:09:17 +01:00
mcarton
d589a2d516 Fix comment 2016-02-13 22:08:15 +01:00
mcarton
49e2501c63 Fix false positive for ifs_same_cond and cfg! 2016-02-13 15:36:57 +01:00
mcarton
1efc88f10a Rustup to 1.8.0-nightly (ce4b75f25 2016-02-12) 2016-02-13 13:17:48 +01:00
mcarton
e8c2aa2997 Lint about new methods not returning Self 2016-02-13 13:03:28 +01:00
mcarton
edc0d19a3f Add new to WRONG_SELF_CONVENTION 2016-02-13 01:42:46 +01:00
mcarton
7f567ce1d1 Fix false negative with OK_EXPECT 2016-02-13 01:38:55 +01:00
mcarton
90f1f0d71c Merge branch 'master' into copies2 2016-02-12 18:56:27 +01:00
Oliver 'ker' Schneider
3f34b65747 fix nightly breakage 2016-02-12 18:35:44 +01:00
mcarton
07228a1041 Fix Hash implementation for Constant 2016-02-12 15:51:55 +01:00
mcarton
68ecd06f4c Small optimisation of most common cases 2016-02-12 14:30:52 +01:00
mcarton
f309dc3c0f Add the MATCH_SAME_ARMS lint 2016-02-12 14:30:52 +01:00
mcarton
cbbc667b1b Dogfood for future MATCH_SAME_ARMS lint 2016-02-12 14:30:26 +01:00
mcarton
5ddc615a40 Add missing types to eq_ty 2016-02-12 14:30:26 +01:00
mcarton
ee830ba55e Extend IF_SAME_THEN_ELSE to ifs sequences 2016-02-12 14:30:26 +01:00
mcarton
88beb35194 Implement Expr spanless-hashing 2016-02-12 14:30:26 +01:00
mcarton
afee209d5a Add missing ExprLoop to SpanlessEq 2016-02-12 14:30:26 +01:00
mcarton
91c16fc8e6 Refactor Expr comparisons 2016-02-12 14:30:26 +01:00
mcarton
e1c7914c2e Add missing ExprIndex to is_exp_equal 2016-02-12 14:30:26 +01:00
llogiq
9ee462625b Merge pull request #637 from mcarton/debug
Lint usage of `Debug`-based formatting
2016-02-12 12:18:15 +01:00
Oliver Schneider
eed9ec15fb improve the no_effect lint 2016-02-11 13:50:41 +01:00
Manish Goregaokar
1013026f18 Merge branch 'pr-645' 2016-02-10 10:20:23 +05:30
Joshua Holmer
7e06737d6f Improve testing and suggestion messages on bool_comparison 2016-02-09 15:44:07 -05:00
mcarton
2db6965c81 Lint usage of Debug-based formatting 2016-02-09 21:22:54 +01:00
mcarton
1a8b8cd28f Don’t use {:?} and use span_suggestion in TOPLEVEL_REF_ARG 2016-02-09 21:22:30 +01:00
mcarton
d27aa960b6 Remove unused Display implementation for consts 2016-02-09 21:22:30 +01:00
mcarton
34812e82d0 Use const_eval in loops 2016-02-09 21:22:30 +01:00
Joshua Holmer
2687a3f6b5 Update lints 2016-02-09 14:52:20 -05:00
Joshua Holmer
14292674b0 display suggestion separately from lint 2016-02-09 14:44:42 -05:00
Manish Goregaokar
93461afffc Merge branch 'pr-613'
Conflicts:
	src/lib.rs
	src/types.rs
2016-02-10 01:03:26 +05:30
Joshua Holmer
56b3e7b4c2 lint comparison to bool (e.g. y == true)
Addresses #630
2016-02-09 14:10:22 -05:00
llogiq
275795fab3 speed up lint using blocks and types 2016-02-09 06:18:08 +01:00
llogiq
3b0b9e0e06 Merge remote-tracking branch 'origin/master' into regex_macro 2016-02-08 23:51:30 +01:00
llogiq
6525471214 fix #595 2016-02-08 23:48:04 +01:00
Oliver Schneider
672beb4138 prevent panic in enum glob import lint if a crate's elements are glob imported
fixes #639
2016-02-08 11:28:18 +01:00
llogiq
ceb9a8bdd7 regex macro lint 2016-02-07 22:50:54 +01:00
mcarton
a9e1b1fba0 Small cleanup 2016-02-07 14:40:45 +01:00
mcarton
344698377f Fix typo 2016-02-07 13:27:09 +01:00
mcarton
cd7a913200 Add - and / to EQ_OP 2016-02-07 13:26:34 +01:00
mcarton
8e22d08129 Improve is_exp_equal 2016-02-07 13:26:34 +01:00
mcarton
d862495d19 Lint ifs with the same then and else blocks 2016-02-07 13:26:34 +01:00
mcarton
fe6f2a22ba Lint about consecutive ifs with same condition 2016-02-07 13:26:34 +01:00
Manish Goregaokar
9ba5d45509 Merge branch 'pr-581'
Conflicts:
	README.md
2016-02-07 17:40:48 +05:30
mcarton
d9a2a7ac3c Fix false negative in TRIVIAL_REGEX 2016-02-06 18:13:19 +01:00
Manish Goregaokar
f53a830c8c Merge pull request #623 from mcarton/redundant
Be more consistent in lint declarations
2016-02-06 12:14:03 +05:30
mcarton
83a82a1d86 Remove redundancy in lint documentation
The default level is always given in the declare_lint! macro, no need to
add it inconsistently in the documentation.
2016-02-06 00:41:54 +01:00
mcarton
13f245f6c9 Fix util/update_wiki.py warnings and be consistent in declare_lint! invocations 2016-02-06 00:13:29 +01:00
mcarton
a02b8124de Lint about trivial regexes 2016-02-05 23:10:48 +01:00
mcarton
70124cf591 Fix case conventions 2016-02-05 21:54:29 +01:00
mcarton
c0063e172d Improve error message 2016-02-05 19:46:11 +01:00
mcarton
0f50b0981d Check for pattern use in FOR_KV_MAP 2016-02-05 19:14:02 +01:00
mcarton
431c446746 Lint looping on maps ignoring the keys or values 2016-02-05 19:13:14 +01:00
llogiq
2adc906a75 Merge branch 'master' into regex_syntax 2016-02-05 17:34:09 +01:00
llogiq
a14514f7c8 fixed span position and README 2016-02-05 17:29:41 +01:00
Manish Goregaokar
4eb9a921d4 Lint on cloning double pointer
fixes #620
2016-02-05 16:04:15 +05:30
llogiq
3d85cc24e7 new regex syntax lint, fixes #597 2016-02-05 00:36:06 +01:00
Oliver Schneider
af07ccc16c fallout 2016-02-03 15:39:22 +01:00
Oliver Schneider
3b8375d90b warn on useing all variants of an enum 2016-02-03 15:38:23 +01:00
mcarton
fab10c07e8 Fix confusing message for STRING_TO_STRING 2016-02-03 13:52:19 +01:00
scurest
908fb143ef Extend ABSURD_UNSIGNED_COMPARISONS to handle more types 2016-02-03 05:08:00 -06:00
Manish Goregaokar
5eb884b7b0 Merge branch 'pr-593'
Conflicts:
	README.md
	src/lib.rs
2016-02-03 03:26:51 +05:30
mcarton
db205c82a4 Add a lint about using clone on Copy types 2016-02-02 22:35:01 +01:00
mcarton
47e26ab287 Fix warnings about the rustfmt_skip attribute 2016-02-02 22:34:20 +01:00
mcarton
c0d2fdc723 Partially apply rustfmt 2016-02-02 22:34:20 +01:00
mcarton
0c726e8077 Restore some of rustfmt madness 2016-02-02 22:34:20 +01:00
inrustwetrust
d93eca29fc Fix typo in drop_ref lint description. 2016-02-02 20:47:38 +01:00
inrustwetrust
bd86922c4f Add lint to warn for calls to std::mem::drop with a reference argument 2016-02-02 20:24:41 +01:00
llogiq
3a31576d76 fixed #606 2016-02-01 20:37:07 +01:00
llogiq
1dd19fbae3 Merge pull request #609 from oli-obk/prefixed_enum_variants
lint against enums where all variants share a prefix/postfix
2016-02-01 20:36:18 +01:00
Oliver Schneider
3b1df8d381 fallout 2016-02-01 13:01:16 +01:00
Oliver Schneider
328d2c7626 add lint to check for enums where all variants have the same pre-/postfix 2016-02-01 13:01:16 +01:00
Seo Sanghyeon
35ec57c116 Skip escape analysis for closure arguments 2016-02-01 20:35:01 +09:00
Oliver Schneider
07ace32ac9 fallout 2016-02-01 11:29:04 +01:00
Oliver 'ker' Schneider
d6c0435c81 lint on single match expressions with a value in the else path 2016-02-01 11:29:03 +01:00
llogiq
a2ad0c6695 fixed #528 2016-01-31 23:25:10 +01:00
scurest
e48fbba864 Add a lint to suggest uint == 0 over uint <= 0 2016-01-29 21:21:12 -06:00
llogiq
5402ef3d27 Merge branch 'devonhollowood-for-loop-over-option'
Conflicts:
	README.md
2016-01-30 01:34:35 +01:00
Devon Hollowood
405d7c691e Add for_loop_over_result lint 2016-01-29 15:24:17 -08:00
mcarton
f7bab322f6 Fix formatting on wiki 2016-01-29 22:49:48 +01:00
mcarton
95599c6a62 Synchronise comments with wiki
Wiki commits bfa439b and 9b8ced8.
2016-01-29 22:42:19 +01:00
mcarton
3a39bbaf74 Small cleanup 2016-01-29 22:31:17 +01:00
mcarton
1b9fbd8801 Fix false positive in NEEDLESS_LIFETIMES 2016-01-29 22:31:12 +01:00
mcarton
afb7e67217 Add a lint to warn about &vec![_] if &[_] would do 2016-01-29 17:41:52 +01:00
Devon Hollowood
f5cc94c96a Add for_loop_over_option lint 2016-01-28 23:39:00 -08:00
Manish Goregaokar
4c14d98c9f Merge pull request #549 from mcarton/ifs
Remove and lint about useless braces in `else { if .. }`
2016-01-29 03:39:27 +05:30
mcarton
da93643357 Add a lint to warn about use of print{,ln}! 2016-01-28 19:34:52 +01:00
llogiq
291b73b8e8 Merge master and re-run update_lints.py 2016-01-27 22:23:21 +01:00
Florian Hartwig
cee96fab39 Point out that char is 32 bit value 2016-01-27 21:10:35 +01:00
Florian Hartwig
23dfb2fbc0 Make update_lints script accept digits in lint names 2016-01-27 20:59:19 +01:00
Florian Hartwig
04f9d35f64 Add a lint for casts from char literals to u8 2016-01-27 20:23:59 +01:00
llogiq
5d5e50d67e fixed suggestion for iter case 2016-01-27 14:51:30 +01:00
llogiq
d152e5c683 fixed argument check 2016-01-26 23:51:06 +01:00
llogiq
2d97f916eb added more test, now works with vecs and iter 2016-01-25 19:46:56 +01:00
llogiq
ed96583677 extend_from_slice lint 2016-01-25 14:02:47 +01:00
mcarton
8ef0b86fab Lint explicit Clone implementations on Copy type 2016-01-24 15:33:23 +01:00
Oliver 'ker' Schneider
2a51f8d2be lint on items following statements 2016-01-24 10:16:56 +01:00
Manish Goregaokar
61bfaeb644 Merge branch 'rustup' 2016-01-22 18:36:23 +05:30
Manish Goregaokar
c86a5ccd2e Upgrade Rust to rustc 1.8.0-nightly (18b851bc5 2016-01-22)
fixes #573
2016-01-22 18:35:48 +05:30
mcarton
c6c0edb19b Add a lint about deriving Hash and implementing PartialEq 2016-01-21 19:56:31 +01:00
mcarton
7a26cfc991 Add macro checks in src/methods.rs lints 2016-01-20 18:32:17 +01:00
mcarton
91ff1db5bc Add a lint for starts_with 2016-01-20 12:57:14 +01:00
mcarton
5ac6659814 Handle Entry types in OR_FUN_CALL lint 2016-01-20 11:42:25 +01:00
Florian Hartwig
ea26ae3888 Add macro check 2016-01-19 20:08:56 +01:00
Florian Hartwig
01eda52cb5 Add lint for "string literal".as_bytes() 2016-01-19 19:17:50 +01:00
Florian Hartwig
6a4d77aa32 Fix deprecation warning on latest nightly 2016-01-19 13:53:49 +01:00
llogiq
5623e9e601 Merge pull request #559 from mcarton/redundant_closure
Fix redundant_closure false positive
2016-01-18 19:33:42 +01:00
mcarton
9d5e9cfd97 Fix redundant_closure false positive 2016-01-18 19:28:06 +01:00
mcarton
3713fd3dce Check types in the CMP_OWNED lint 2016-01-18 15:35:50 +01:00
Manish Goregaokar
5ab5a8801e Merge pull request #556 from mcarton/or_fun_call
New lint, new utility functions and nightly fix
2016-01-18 18:57:35 +05:30
mcarton
21ba315102 Update to rustc 1.7.0-nightly (d0bac3f14 2016-01-18) 2016-01-18 13:27:42 +01:00
mcarton
b5f65ec699 Improve OR_FUN_CALL to suggest unwrap_or_default 2016-01-18 13:11:07 +01:00
mcarton
fb6b3bed0f Add utility functions to check for trait impl 2016-01-18 13:10:26 +01:00
mcarton
90cbc858e9 Fix spelling mistake 2016-01-18 13:09:46 +01:00
Florian Hartwig
7e85db645e Fix another false positive in lifetime elision lint
The false positive occurred when we have an anonymous input lifetime and a
named output lifetime. This is not elidable, because if we elided the output
lifetime, it would be inferred to be the same as the input.
2016-01-17 17:53:41 +01:00
mcarton
c6604bb281 Add a lint to warn about call to .*or(foo(..)) 2016-01-16 18:47:45 +01:00
llogiq
840d87022e Merge pull request #523 from sanxiyn/escape-arg
Extend escape analysis to arguments
2016-01-16 00:03:58 +01:00
llogiq
da8a788b77 Merge pull request #551 from fhartwig/unused-lifetimes-fix
Consider lifetime in self parameter in unused_lifetime lint
2016-01-16 00:02:08 +01:00
mcarton
387e0991e3 Handle more iterator adapter cases in for loops 2016-01-14 20:58:32 +01:00
Florian Hartwig
7499f3c7a9 Consider lifetime in self paramter in unused_lifetime lint 2016-01-14 19:27:24 +01:00
mcarton
c2444c6043 Lint about else { if .. } with useless braces 2016-01-13 18:32:55 +01:00
mcarton
375b8168e4 Remove useless curly braces in else { if .. } 2016-01-13 18:32:05 +01:00
mcarton
6fa9bf64d7 Use span_suggestion in ENTRY lint 2016-01-13 17:27:49 +01:00
mcarton
f63329761f Cleanup utils, mostly doc 2016-01-13 17:27:49 +01:00
mcarton
09129c1b41 Add BTreeMap to the HASHMAP_ENTRY rule
Fixes #433
2016-01-13 17:27:36 +01:00
mcarton
44daa8bd72 Use span_suggestion in matches lints
Ref #442
2016-01-13 13:17:11 +01:00
mcarton
9f641a1009 Add known enums to SINGLE_MATCH 2016-01-13 01:19:27 +01:00
llogiq
37707b5a34 added semver lint 2016-01-09 02:05:43 +01:00
Manish Goregaokar
a21108a296 Stronger macro check 2016-01-08 21:21:12 +05:30
Manish Goregaokar
f27cfdb51a Fix warnings for unused attributes 2016-01-07 12:06:16 +05:30
Manish Goregaokar
002c8c34f8 re-add missing comments 2016-01-04 20:01:08 +05:30
Manish Goregaokar
c1a99fdd90 Fix dogfood failures by refactoring open_options 2016-01-04 12:06:37 +05:30
Manish Goregaokar
c9342d0121 fmt clippy 2016-01-04 09:56:12 +05:30
mcarton
9945bd82a8 Add better error messages for HashMapLint 2016-01-03 17:19:49 +01:00
mcarton
d0bb71e6a2 Finish the HashMapLint 2016-01-03 17:04:08 +01:00
mcarton
54b70ed8e1 Move eq_op::is_exp_equal to utils 2016-01-03 17:04:08 +01:00
mcarton
0c6e385493 Implement a HashMapLint 2016-01-03 17:04:08 +01:00
Manish Goregaokar
4484448cd1 Merge branch 'pr-538'
Conflicts:
	README.md
2016-01-03 21:26:04 +05:30
Manish Goregaokar
780dedc500 fixups 2016-01-03 21:25:09 +05:30
mcarton
7a4d6aa8b7 Use same error message for OPTION_UNWRAP_USED and RESULT_UNWRAP_USED
IIRC, Result::expect wasn't stable until quite recently, which might be
why there was 2 different error messages.
2016-01-03 14:49:54 +01:00
Guillaume Gomez
abfb1d3ca1 Add new lint on function naming check (the '_') 2016-01-03 14:48:54 +01:00
mcarton
52fbf1989d Add missing WRONG_PUB_SELF_CONVENTION in lint_array! and corresponding test 2016-01-03 14:42:24 +01:00
llogiq
a02f34aba9 Merge pull request #520 from mcarton/#471
Implement #471
2016-01-02 21:07:56 +01:00
llogiq
3e20292877 Merge pull request #535 from GuillaumeGomez/improve_field_help
Add help on field binding
2016-01-02 21:05:22 +01:00
mcarton
542685dad1 Merge branch 'master' of https://github.com/Manishearth/rust-clippy into #471 2016-01-02 19:36:45 +01:00
Manish Goregaokar
d8d3ee907b Add macro check for box vec (fixes #529) 2016-01-02 21:49:53 +05:30
Manish Goregaokar
a745efd566 Add smarter macro check for block_in_if (fixes #528) 2016-01-02 21:41:53 +05:30
Manish Goregaokar
32cf6e32f6 Improve documentation on match_ref_pats (fixes #532) 2016-01-02 16:36:17 +05:30
Manish Goregaokar
1605ef6ed4 Rustup to syntax::errors changes 2016-01-02 16:10:15 +05:30
Guillaume Gomez
bd8a265000 Add help on field binding 2016-01-02 06:31:05 +01:00
Johannes Linke
f89e400578 Minor documentation cleanups 2016-01-01 17:49:01 +01:00
Johannes Linke
b287739c0b Remove reference to a fixed issue 2016-01-01 17:48:46 +01:00
Johannes Linke
06f30a61dd Add "warn/allow by default" to lint descriptions where it was missing. 2016-01-01 17:48:19 +01:00
Devon Hollowood
093582c102 Make MethodsPass lint notes clearer 2015-12-30 01:07:40 -08:00
Devon Hollowood
2c42d46468 Bug fix 2015-12-30 00:55:38 -08:00
Devon Hollowood
a6bd2d0622 Add SEARCH_IS_SOME lint 2015-12-30 00:38:03 -08:00
Devon Hollowood
bbd439ec9e Add FILTER_NEXT lint 2015-12-28 16:56:58 -08:00
Seo Sanghyeon
07830c44af Extend escape analysis to arguments 2015-12-28 23:12:57 +09:00
Devon Hollowood
29b53d600f Replace match_method_chain() with method_chain_args() 2015-12-27 14:15:09 -08:00
Devon Hollowood
f1aac931bd Refactor check_expr() impl for MethodsPass 2015-12-27 01:22:53 -08:00
Manish Goregaokar
dbf1cdf34a Fix panic lint 2015-12-24 15:27:31 +05:30
mcarton
592ca26e90 Fix #518 2015-12-23 22:37:52 +01:00
mcarton
4958878ad2 Fix missing parameter in panic! 2015-12-23 22:36:37 +01:00
mcarton
0fa8481ba3 Put tests in tests folder 2015-12-23 17:48:41 +01:00
mcarton
2fd3093395 Only run MATCH_OVERLAPPING_ARM on integral matches 2015-12-23 11:25:44 +01:00
mcarton
90efb7b76d Fix typo 2015-12-23 11:25:32 +01:00
mcarton
1aa3956b8a Update README 2015-12-23 02:45:17 +01:00
mcarton
0c8de9ed52 Split MatchPass::check_expr for dogfood 2015-12-23 02:42:01 +01:00
mcarton
3373ea43c0 Consider literal patterns in MATCH_OVERLAPPING_ARM 2015-12-23 02:42:01 +01:00
mcarton
7216e83189 Implement #471 2015-12-23 02:42:01 +01:00
Florian Hartwig
e4fbeb4947 Don't trigger block_in_if_condition_expr lint if the block is unsafe 2015-12-23 02:12:08 +01:00
Manish Goregaokar
dd16ac2ad7 Merge pull request #509 from mcarton/array-indexing
Implement #364
2015-12-22 10:22:06 +05:30
Manish Goregaokar
ea03c0d9e3 Merge pull request #514 from mcarton/remove-dup
Remove dup
2015-12-22 10:18:12 +05:30
mcarton
0e4259a827 Remove duplicated if_let_chain! macro definition 2015-12-22 00:48:50 +01:00
Markus Unterwaditzer
acc47a3bd5 Nightly fixes
As of
e3da2a9003 (diff-12e06f1e9ca371a11bdc4615f50a4071L59)
HirVec is syntax::ptr::P instead of Vec.
2015-12-22 00:22:35 +01:00
mcarton
826827fe94 Fix some typos 2015-12-21 20:47:19 +01:00