Andre Bogus
2811dd64ec
added missing PatKind::Path + tests
2016-05-31 23:35:42 +02:00
Andre Bogus
1b112f96b8
added mcarton's test suggestion
2016-05-31 23:30:49 +02:00
Andre Bogus
ef5db37d9d
additional error in copies test annotated
2016-05-31 23:30:49 +02:00
Oliver Schneider
80e81d351d
add version check to the unit tests
2016-05-30 12:47:04 +02:00
mcarton
42879bcdcb
Add a USELESS_LET_IF_SEQ
lint
2016-05-29 12:19:12 +02:00
mcarton
a892a96eeb
Rustup to *1.10.0-nightly ( 7bddce693
2016-05-27)*
2016-05-28 16:35:38 +02:00
mcarton
97c9930a3f
Fix doc_markdown
and multiline quotes and links
2016-05-28 03:22:55 +02:00
mcarton
ac0bb4126c
Improve markdown parsing for the doc lint
2016-05-28 02:08:01 +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
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
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
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
mcarton
ca05e93c10
Rustup to *1.10.0-nightly ( cd6a40017
2016-05-16)*
2016-05-17 23:25:20 +02:00
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
llogiq
ecca55cd9f
Merge pull request #927 from oli-obk/german_windows_32bit
...
German windows 32bit
2016-05-13 15:41:49 +02:00
Oliver Schneider
d4e11acc1f
make sure compiletest works on windows
2016-05-13 14:16:08 +02:00
Oliver Schneider
c37300d899
ignore the portability test on 32 bit
...
it will fail in rustc
2016-05-13 13:45:53 +02:00
Oliver Schneider
86e4216a56
don't check for an exact error message
...
the system might change it, especially if the system language is changed
2016-05-13 13:45:25 +02:00
Andreas Fackler
87df6ae8cb
fix typos
2016-05-13 08:50:51 +03: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
Oliver Schneider
0bef7b5f74
merge struct similar_name test into the general test file
2016-05-11 17:01:34 +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
Oliver Schneider
654154d8e7
cargo clippy
subcommand
2016-05-09 16:47:32 +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
mcarton
3ce60e9731
Don’t warn in titles in DOC_MARKDOWN
2016-05-05 21:49:57 +02:00
mcarton
cc2774df60
Test previously reported false positive
2016-05-05 21:34:42 +02:00
mcarton
e14e1a7148
Fix issue with DOC_MARKDOWN
and punctuation
2016-05-05 21:33:46 +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
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
cf5c1ab0b6
Fix paths resolution
...
Put more paths into the `utils::paths` module.
2016-04-26 13:31:52 +02:00
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
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
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
84a480b02b
Expanded tests for unsafe_removed_from_name
2016-04-19 21:52:10 -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
d6073eb54e
Fix regex tests
2016-04-14 22:07:14 +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
7ae8516bb3
Remove #[feature(deprecated)]
...
Fixes `warning: this feature is stable. attribute no longer needed`.
2016-04-13 16:07:45 +02:00
mcarton
fe6e8dac35
More tests in DOC_MARKDOWN
2016-04-13 16:02:44 +02:00
mcarton
6c0a486e8b
Fix FP with DOC_MARKDOWN
and reference links
2016-04-12 00:18:58 +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
eada860aa7
Small fixes in #802
2016-04-02 15:51:28 +02:00
Taylor Cramer
44ab23703a
Added tests for eq and neq invalid upcast comparisons
2016-04-02 15:32:57 +02:00
Taylor Cramer
cf451d3bba
Added > and >= tests for upcast comparisons
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
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
a504ef488a
Add regression test for #825
2016-04-01 21:25:20 +05:30
mcarton
f8acc83449
Rustup to 1.9.0-nightly ( e1195c24b
2016-03-31)
...
This does not require a version bump, it only affects tests.
2016-04-01 17:48:13 +02:00
mcarton
f16da4fdda
Fix false positive with DOC_MARKDOWN
and links
2016-04-01 17:24:55 +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
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
be7288303a
more tests
2016-03-29 10:45:45 +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
6904fd5a49
add tests showing the current level of minimization with ==
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
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
0a78a795ab
bugfix in quine-mc_cluskey 0.2.1
2016-03-29 10:45:18 +02:00
Oliver Schneider
050d7fd308
fallout and tests
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
cfb1bc3723
chmod -x
test files
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
2d5e3f3118
Lint transmute from ptr to ref
2016-03-28 18:05:43 +02:00
Manish Goregaokar
3d9a7d9140
Add test for new() -> Self<'static>
2016-03-27 02:46:37 +05:30
Taylor Cramer
6adb9cb53f
Added crosspointer transmute error and tests
2016-03-24 15:48:38 -07:00
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
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
mcarton
ef72110684
Fix new_without_default
with lts and generics
2016-03-18 19:12:32 +01:00
Oliver Schneider
fa739e4a0b
update for compiletest update
2016-03-18 14:06:39 +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
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
976d17785e
Temporary fix for rustc warning false-positive?
2016-03-16 19:28:24 +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
1546cc4798
Fix ICE in OUT_OF_BOUNDS_INDEXING
with ranges
2016-03-15 20:35:41 +01:00
Manish Goregaokar
6c7a2ffdb5
Rust upgrade to rustc 1.9.0-nightly ( 74b886ab1
2016-03-13), update compiletest
2016-03-15 20:36:21 +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
aa4daea364
Lint function with too many arguments
2016-03-12 14:52:06 +01:00
mcarton
403c54ec5b
White-list third-party
in conf files
2016-03-12 14:51:47 +01:00
mcarton
a3031e34f9
Add a BLACKLISTED_NAME
lint
2016-03-12 14:51:45 +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
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
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
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
6ad2f645be
Put regex_macros tests in a separate feature
2016-03-07 19:39:49 +01:00
mcarton
3c3a4549a8
Fix tests with inclusive ranges
2016-03-07 16:55:12 +01:00
mcarton
7b135efa73
Remove bad test in for_loop
2016-03-07 16:42:49 +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
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
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
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
mcarton
783437eef0
Use span_suggestion
in loops lints
2016-02-24 20:54:35 +01:00
mcarton
c1b2fe31b7
Use span_suggestion
in len_zero
2016-02-24 20:52:47 +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
mcarton
ba3be83488
Lint about format!("{}", foo)
2016-02-20 21:15:05 +01:00
mcarton
ef4401d4ac
Lint about usage of format!("string literal")
2016-02-20 17:46:20 +01:00
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
Oliver Schneider
add483afed
fix enum glob use (again)
2016-02-18 16:08:45 +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
Joshua Holmer
b1e4b496e1
Address @ilogiq's nits
2016-02-15 13:36:10 -05:00
mcarton
00b27bf7be
Fix suggestion in COLLAPSIBLE_IF
lint
2016-02-15 17:43:16 +01:00
mcarton
d755b1ebe2
Cleanup
2016-02-15 13:25:29 +01:00
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
6a624fe77c
Merge pull request #662 from mcarton/#601
...
Fix #601
2016-02-14 12:58:36 +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
49e2501c63
Fix false positive for ifs_same_cond
and cfg!
2016-02-13 15:36:57 +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
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
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
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
34812e82d0
Use const_eval in loops
2016-02-09 21:22:30 +01: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
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
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
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
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
8f7b8524d3
Test for double-ref lint
2016-02-05 16:04:59 +05:30
llogiq
3d85cc24e7
new regex syntax lint, fixes #597
2016-02-05 00:36:06 +01:00
Oliver Schneider
3b8375d90b
warn on use
ing 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
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
Seo Sanghyeon
35ec57c116
Skip escape analysis for closure arguments
2016-02-01 20:35:01 +09: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
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
04f9d35f64
Add a lint for casts from char literals to u8
2016-01-27 20:23:59 +01:00
llogiq
a1ac3125de
fixed and extended tests
2016-01-27 20:13:15 +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
mcarton
c6c0edb19b
Add a lint about deriving Hash and implementing PartialEq
2016-01-21 19:56:31 +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
01eda52cb5
Add lint for "string literal".as_bytes()
2016-01-19 19:17:50 +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
8642306f09
Add a test for the OR_FUN_CALL lint
2016-01-18 13:36:58 +01:00
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
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
e6b905d925
Add a test for #398
2016-01-14 21:04:56 +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
6fa9bf64d7
Use span_suggestion in ENTRY lint
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
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
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
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
mcarton
bb59717915
Remove x rights on a test file
2016-01-03 14:49:59 +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
Manish Goregaokar
e3ab0fb6e7
Merge pull request #537 from GuillaumeGomez/fields_test
...
Add test for wild fields
2016-01-03 03:55:57 +05:30
Guillaume Gomez
4b9912c2b0
Add test for wild fields
2016-01-02 23:21:59 +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
1605ef6ed4
Rustup to syntax::errors changes
2016-01-02 16:10:15 +05:30
Devon Hollowood
093582c102
Make MethodsPass lint notes clearer
2015-12-30 01:07:40 -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
mcarton
592ca26e90
Fix #518
2015-12-23 22:37:52 +01:00
mcarton
0fa8481ba3
Put tests in tests folder
2015-12-23 17:48:41 +01:00
mcarton
d01987a40b
Include error message in tests
2015-12-23 11:26:35 +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
mcarton
3abdcd4709
Implement #364
2015-12-21 19:36:58 +01:00
Devon Hollowood
b6766a0dcf
Add RustcEncodable test
2015-12-21 01:40:19 -08:00
Devon Hollowood
b190aa7deb
Implement #507
...
Make `used_underscore_binding` lint compatible with MacroAttributes
expansions. TODO: Add a good test for this.
2015-12-21 01:03:12 -08:00
Manish Goregaokar
4a32445aa7
Add macro check to used_underscore
2015-12-20 04:53:29 +05:30
Manish Goregaokar
9dca15de3e
Merge pull request #499 from devonhollowood/underscore_binding
...
Add used_underscore_binding lint
2015-12-19 19:02:06 +05:30
Devon Hollowood
bd82c082cb
Add test for struct fields
2015-12-18 16:29:22 -08:00