Commit Graph

595 Commits

Author SHA1 Message Date
mcarton
36d8ca04a1
Add a MISSING_DOCS_IN_PRIVATE_ITEMS lint 2016-08-23 18:28:39 +02:00
mcarton
507b626b36 Add zero_prefixed_literal lint 2016-08-23 18:15:12 +02:00
llogiq
cf2b0c8dd6 New cmp_null lint (fixes #1184) (#1186)
* new cmp_null lint (fixes #1184)

* adressed comments (still fails)

* fixed tests, dogfood, ran update_lints
2016-08-22 18:29:29 +02:00
Oliver Schneider
3ab6ad59c4
disallow lint attributes on use and extern crate items 2016-08-17 11:36:04 +02:00
Georg Brandl
ffad9a8c8c Lint print!("...\n") (closes #455) 2016-08-16 20:52:48 +02:00
Oliver Schneider
7ee4a9a659
lint modules that have the same name as their parent module 2016-08-16 14:29:21 +02:00
scurest
b0a96def09 Add lint for reads and writes that depend on evaluation order 2016-08-11 06:01:40 -05:00
Georg Brandl
b91c1a509e Make lint descriptions short and to the point; always fitting the column "triggers on". 2016-08-07 08:09:26 +02:00
Georg Brandl
2f8247ada5 Lint literal suffixes not separated by underscores (see #703) 2016-08-05 18:50:23 +02:00
Georg Brandl
ab58331f22 Lint inconsistent casing in hex literals (closes #703) 2016-08-05 18:30:49 +02:00
Manish Goregaokar
e00f77356b multirust -> rustup (fixes #1117) 2016-07-25 11:17:34 +05:30
Oliver Schneider
f7f9930b89
update lints 2016-07-20 17:34:58 +02:00
llogiq
a371558bdb Merge pull request #1093 from oli-obk/serde_specific_lint
lint on implementing `visit_string` without also implementing `visit_str`
2016-07-18 11:53:28 +02:00
mcarton
94fcdadd85 Update README 2016-07-17 13:38:17 +02:00
mcarton
13a30aed2d
Run ./util/update_lints.py 2016-07-16 00:30:08 +02:00
Oliver Schneider
319c66a2a4
lint on implementing visit_string without also implementing visit_str 2016-07-12 17:36:11 +02:00
llogiq
ad1cd99054 Merge pull request #1060 from Manishearth/sugg
Improve suggestions
2016-07-10 00:06:30 +02:00
Martin Pool
585a3b2565 Fix Markdown syntax in description of collapsible_if 2016-07-09 12:20:54 -07:00
Alberto Leal
b71b1a078c Add note on how to enable the optional dependency 2016-07-07 20:36:49 -04:00
mcarton
7778f314f2
Merge branch 'master' into sugg 2016-07-04 00:51:19 +02:00
mcarton
0e3dcd1376
Improve NOT_UNSAFE_PTR_ARG_DEREF with functions 2016-07-03 13:29:04 +05:30
mcarton
7781f1d7c5 Add a new not_unsafe_ptr_arg_deref lint 2016-07-03 13:28:34 +05:30
mcarton
d6182b365c
Merge remote-tracking branch 'origin/rustup' into sugg 2016-07-01 17:48:57 +02:00
mcarton
8d58a928e5
Use utils::sugg in ASSIGN_OPS 2016-07-01 17:12:48 +02:00
Andre Bogus
b73180231a fixed doc nit 2016-06-30 06:33:21 +02:00
Andre Bogus
a12e8394d7 new lint: double_neg 2016-06-30 01:00:25 +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
9ceb708727 Merge pull request #1053 from oli-obk/char_float_transmute
lint on unnecessary and plain wrong transmutes
2016-06-28 14:50:39 +02:00
Oliver Schneider
e06bc37477
lint on unnecessary and plain wrong transmutes 2016-06-28 14:08:08 +02:00
Manish Goregaokar
f4115f104e readme formatting nit 2016-06-27 21:08:16 +05:30
Xavier Bestel
a8e185646b *latest* nightly 2016-06-24 14:55:17 +02:00
Xavier Bestel
eeb847ada8 Suggest Rust nightly
Add one line to suggest that clippy won't compile with Rust stable.
2016-06-24 14:41:58 +02:00
Oliver Schneider
262148c946
update lint doc text 2016-06-22 13:03:59 +02:00
Oliver Schneider
5ccbf3d437
unify the lints 2016-06-22 10:44:46 +02:00
Oliver Schneider
77e2155778
update lints 2016-06-21 13:32:34 +02:00
Devon Hollowood
cfa0c5782e Extend iter_nth lint to work with iter_mut() and VecDeque 2016-06-16 14:46:29 -07:00
Oliver 'ker' Schneider
e628e4d513 allow by default 2016-06-16 18:37:56 +02:00
Devon Hollowood
74025be59d Make iter_nth work for Vecs too 2016-06-16 02:04:32 -07:00
Devon Hollowood
7764dc5ef4 Add slice_iter_nth lint 2016-06-16 01:36:11 -07:00
mcarton
d80436f9f2
Add a issue template and specify a *recent* nightly is needed 2016-06-10 13:47:47 +02:00
mcarton
d7ba66bf44
Automatically defines the clippy feature 2016-06-08 21:53:58 +02:00
mcarton
a7a6c0461d
Add environment variable to deactivate wiki links 2016-06-05 22:03:02 +02:00
mcarton
42879bcdcb
Add a USELESS_LET_IF_SEQ lint 2016-05-29 12:19:12 +02:00
mcarton
8ac545d0fe Fix documentation 2016-05-26 00:08:31 +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
2a5416d662
Rustup to *1.10.0-nightly (9c6904ca1 2016-05-18)* 2016-05-23 16:11:19 +02:00
Manish Goregaokar
f2f5fefd00
Allow invalid upcast comparisons 2016-05-16 22:52:22 +05:30
Oliver Schneider
1e897f1552 add a companion lint to no_effect with suggestions for partially effective statements 2016-05-13 16:43:47 +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
Oliver Schneider
a159f047dd
fix markdown 2016-05-06 16:07:47 +02:00
Manish Goregaokar
f6290b622c Merge branch 'pr-890' 2016-05-02 14:43:11 +05:30
Andre Bogus
9a99979cc4 fix #887: New lints for integer/floating-point arithmetic 2016-04-30 04:01:47 +02:00
Andre Bogus
e3d86800ff allow items_after_statements by default 2016-04-23 07:52:45 +02:00
Georg Brandl
efb5417439 Fix grammar. 2016-04-22 18:06:35 +02:00
Taylor Cramer
1e2cc78e08 Ran script to update README.md 2016-04-21 09:41:38 -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
b793ad7f2f Ran update_lints script 2016-04-19 16:32:04 -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
1789430a49 Add a TEMPORARY_CSTRING_AS_PTR lint 2016-04-14 17:26:07 +02:00
Taylor Cramer
106ae7da44 Invalid upcast comparison cleanup 2016-04-02 15:32:57 +02:00
Taylor Cramer
c81edfc7b9 Updated lints with script 2016-04-02 15:32:56 +02:00
Oliver Schneider
2917484130 make nonminimal_bool allow-by-default 2016-03-30 12:55:59 +02:00
Oliver Schneider
e7013a3e9c update lints 2016-03-29 10:45:45 +02:00
Oliver Schneider
93d097eb12 better simplification 2016-03-29 10:45:18 +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
2d5e3f3118 Lint transmute from ptr to ref 2016-03-28 18:05:43 +02:00
llogiq
deb0f3120d Merge pull request #797 from cramertj/master
Added crosspointer transmute error and tests
2016-03-25 00:59:47 +01:00
Taylor Cramer
bafffbd624 Ran python lint updater 2016-03-24 16:40:06 -07:00
Tim Neumann
e53babef8f Mention running optional clippy dependency with cargo rustc 2016-03-24 23:03:51 +01: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
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
06ca1fc0a6 lint on binding-names that are too similar 2016-03-18 14:06:39 +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
578750aae1 Document the configuration file 2016-03-12 14:51:47 +01:00
mcarton
a3031e34f9 Add a BLACKLISTED_NAME lint 2016-03-12 14:51:45 +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
3f112b1b8a Fix punctuation in README 2016-03-11 14:26:26 +01:00
Manish Goregaokar
1d41ec9846 Merge pull request #742 from ctjhoa/master
Add clippy linting service badge
2016-03-11 08:41:53 +05:30
Camille TJHOA
e67e21ca5d Add link with clippy service 2016-03-10 21:42:24 +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
KALPESH KRISHNA
55fbf59f3b Linting classical overflow checks. 2016-03-08 02:48:42 +05:30
Camille TJHOA
59f44eb17a add clippy service badge 2016-03-07 00:12:06 +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
mcarton
76004306cc Lint manual swaps 2016-02-28 12:16:13 +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
ef4401d4ac Lint about usage of format!("string literal") 2016-02-20 17:46:20 +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
Joshua Holmer
7eea67605a Lint single-character strings as P: Pattern args
Fixes #650
2016-02-14 22:40:43 -05:00
llogiq
5521a75707 Merge pull request #654 from mcarton/new
Lints about `new` methods
2016-02-13 22:19:36 +01:00
Manish Goregaokar
1e176cae5d Bump twice 2016-02-13 18:04:46 +05:30
Manish Goregaokar
d964e18b90 Wrong crate 2016-02-13 17:43:28 +05:30
Manish Goregaokar
9fd1745db6 +license 2016-02-13 17:38:08 +05:30
mcarton
e8c2aa2997 Lint about new methods not returning Self 2016-02-13 13:03:28 +01:00
Manish Goregaokar
d4ebd68df2 Clarify readme 2016-02-13 08:45:36 +05:30
mcarton
f309dc3c0f Add the MATCH_SAME_ARMS lint 2016-02-12 14:30:52 +01:00
llogiq
d305bca25b fixed README 2016-02-12 12:31:13 +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
Manish Goregaokar
1013026f18 Merge branch 'pr-645' 2016-02-10 10:20:23 +05:30
mcarton
2db6965c81 Lint usage of Debug-based formatting 2016-02-09 21:22:54 +01:00
Joshua Holmer
2687a3f6b5 Update lints 2016-02-09 14:52:20 -05:00
Manish Goregaokar
93461afffc Merge branch 'pr-613'
Conflicts:
	src/lib.rs
	src/types.rs
2016-02-10 01:03:26 +05:30
llogiq
3b0b9e0e06 Merge remote-tracking branch 'origin/master' into regex_macro 2016-02-08 23:51:30 +01:00
mcarton
344698377f Fix typo 2016-02-07 13:27:09 +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
a02b8124de Lint about trivial regexes 2016-02-05 23:10:48 +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
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
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
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
Oliver 'ker' Schneider
d6c0435c81 lint on single match expressions with a value in the else path 2016-02-01 11:29:03 +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
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
23dfb2fbc0 Make update_lints script accept digits in lint names 2016-01-27 20:59:19 +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
Florian Hartwig
01eda52cb5 Add lint for "string literal".as_bytes() 2016-01-19 19:17:50 +01:00
mcarton
c6604bb281 Add a lint to warn about call to .*or(foo(..)) 2016-01-16 18:47:45 +01:00
mcarton
c2444c6043 Lint about else { if .. } with useless braces 2016-01-13 18:32:55 +01:00
mcarton
09129c1b41 Add BTreeMap to the HASHMAP_ENTRY rule
Fixes #433
2016-01-13 17:27:36 +01:00
llogiq
37707b5a34 added semver lint 2016-01-09 02:05:43 +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
Guillaume Gomez
abfb1d3ca1 Add new lint on function naming check (the '_') 2016-01-03 14:48:54 +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
32cf6e32f6 Improve documentation on match_ref_pats (fixes #532) 2016-01-02 16:36:17 +05:30
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
mcarton
592ca26e90 Fix #518 2015-12-23 22:37:52 +01:00
mcarton
1aa3956b8a Update README 2015-12-23 02:45:17 +01:00
mcarton
3abdcd4709 Implement #364 2015-12-21 19:36:58 +01:00
Devon Hollowood
43b96d59ad Run update_lints.py 2015-12-12 21:39:10 -08:00
Andre Bogus
98c4dc185c updated lints 2015-12-08 06:32:55 +01:00
llogiq
3260b501a2 Merge pull request #483 from Manishearth/bored
Add lint for unused lifetimes (fixes #459)
2015-12-07 21:47:10 +01:00
Manish Goregaokar
e8686a3ecd Merge branch 'pr-482' 2015-12-07 07:23:52 -05:00
Guillaume Gomez
72117836f1 Add check on redundant _ bindings in structs 2015-12-07 13:16:59 +01:00
Manish Goregaokar
c7b87a06d2 Add lint for unused lifetimes (fixes #459) 2015-12-07 06:55:14 -05:00
Manish Goregaokar
18e81c1b59 Rudimentary escape analysis for Box<T> 2015-12-04 20:23:14 +05:30
Oliver Schneider
617c820e6b compute cyclomatic complexity (adjusted to not punish Rust's match) 2015-12-03 16:41:55 +01:00
Devon Hollowood
443e4556c2 Add lints suggesting map_or() and map_or_else()
In accordance with the latter lint, replace map().unwrap_or_else() in
src/mut_mut.rs with map_or_else()
2015-11-25 23:56:45 -08:00
Manish Goregaokar
84ad2be1df Merge branch 'pr-462'
Conflicts:
	README.md
2015-11-22 21:58:13 +05:30
John Quigley
d4cf288b38 Add block_in_if lint, #434 2015-11-22 21:52:06 +05:30
Florian Hartwig
516f648460 Run update_lints 2015-11-19 17:15:21 +01:00
Andrew Paseltiner
e8a239a1a2 Add lint for useless transmutes
Closes #441.
2015-11-11 10:53:11 -05:00
Manish Goregaokar
1a90bbff72 Merge branch 'pr-445' 2015-11-09 12:16:03 +05:30
Emanuel Czirai
44b2b26446 update readme to specify both lint groups are needed for the whole set
As a new user and newbie to rust, after reading this part of the readme("whole set"), I thought I was seeing a bug when I used `#![deny(clippy)]` but also had to add `#![deny(shadow_unrelated)]`.
But this explained it: 3322ffa8a0/src/lib.rs (L108)
2015-11-09 06:49:44 +01:00
Seo Sanghyeon
3322ffa8a0 New lint for assignment to temporary 2015-11-04 21:37:18 +09:00
wartman4404
764eedd050 check for Deref conversions 2015-11-03 21:11:40 -06:00
wartman4404
414c0d20f7 New lint for using .cloned() 2015-11-03 21:01:52 -06:00
Nathan Weston
d28b8e169f New lint for zip with array length instead of enumerate()
Fixes #11.
2015-11-03 15:55:20 -05:00
Seo Sanghyeon
0fe5981870 New lint for statement with no effect 2015-10-29 15:50:35 +09:00
Florian Hartwig
66419582b5 Fix error in README 2015-10-26 23:57:55 +01:00
Florian Hartwig
f6163fce61 Suggest for loop instead of while-let when looping over iterators 2015-10-26 23:57:50 +01:00
Manish Goregaokar
2b65473ac5 fix 2015-10-25 23:49:57 +05:30
Manish Goregaokar
5d3f627f47 bump version, add optional dep info 2015-10-25 23:43:27 +05:30
Seo Sanghyeon
d843257643 New lint for struct update that has no effect 2015-10-22 18:19:06 +09:00
Vikas Kumar
675c532eab Ran util/update_lints.py to auto gen doc and lib.rs 2015-10-20 10:25:37 -07:00
Manish Goregaokar
dea087dd17 Merge branch 'pr-394' 2015-10-18 00:54:03 +05:30
Florian Gilcher
39e93d572b Regnerate README.md 2015-10-15 21:33:47 +02:00
Florian Hartwig
871d9fc27c Make ptr_arg lint warn by default 2015-10-14 20:35:44 +02:00
Andre Bogus
cf1e83b6dc Merged #365 2015-10-14 12:22:57 +02:00
Andre Bogus
949c3545ce Merged #366 2015-10-14 12:06:28 +02:00
Andre Bogus
6f17e2e3a0 update lints 2015-10-13 18:38:08 +05:30
Andre Bogus
bed29a017b new lint to detect 2015-10-13 18:38:08 +05:30
swgillespie
b02e80c012 implement 0.0/0.0 -> NaN lint as described in #370
casing of NaN
2015-10-11 19:26:23 -07:00
Florian Hartwig
26b2733b15 Add a lint for sized integer types in a mutex 2015-10-07 22:58:34 +02:00
Pyriphlegethon
b7c6c30c88 Change lint description 2015-10-07 17:15:44 +02:00
Pyriphlegethon
7644f8e2a1 Add "nonsensical OpenOptions" lint 2015-10-07 13:46:51 +02:00
Florian Hartwig
f8aa0431bd Suggest using an atomic value instead of a Mutex where possible 2015-10-07 01:35:14 +02:00
Manish Goregaokar
3e475e9588 Merge pull request #354 from Pyriphlegethon/master
Add "unnecessary mut passed" lint
2015-10-07 04:18:02 +05:30
Georg Brandl
85ac834343 RingBuf was renamed to VecDeque (fixes #363) 2015-10-05 22:02:14 +02:00
Pyriphlegethon
e42f00e470 Change description of unnecessary mut passed lint 2015-09-29 18:52:19 +02:00
Pyriphlegethon
b8cdefb6cf Add unnecessary mut passed lint 2015-09-29 13:11:19 +02:00
llogiq
4838e8a3b4 Merge pull request #344 from Manishearth/reflet
Handle let ref in toplevel_ref_arg as well
2015-09-22 09:18:45 +02:00
Manish Goregaokar
3609a2211a Handle let ref in toplevel_ref_arg as well 2015-09-22 12:46:51 +05:30
llogiq
cf4e48d148 update lints 2015-09-21 06:24:46 +02:00
Manish Goregaokar
56b9682624 Update README.md 2015-09-19 19:16:59 +05:30
Nathan Weston
f87dd31f30 New lint: loop with explicit counter variable (fixes #159)
Avoiding false positives here turns out to be fairly complicated.
2015-09-15 09:41:25 -04:00
swgillespie
82c524b774 implement empty range lint as described in #330 2015-09-14 17:19:05 -07:00
Alex Burka
7b13a7b5e6 link to wiki 2015-09-10 02:26:15 -04:00
Alex Burka
f7ec0ef16c add warning about different rustc versions
Ref #322.
2015-09-10 02:06:52 -04:00
Manish Goregaokar
ce6ea58de0 add cargo clippy link 2015-09-10 07:01:28 +05:30
llogiq
4835372df5 made shadow_unrelated allow, added previous binding span note, fixed #319 2015-09-08 11:50:04 +02:00
Manish Goregaokar
0e658afc1b Fix mut_mut false positive, make Allow (fixes #309) 2015-09-08 02:29:13 +05:30
llogiq
92b04cd75d split wrong_self_convention in pub/default visibility part 2015-09-07 09:17:45 +02:00
Andre Bogus
b76ad366ab fixed bad_bit_mask false positive 2015-09-06 16:09:35 +02:00
llogiq
b66bccc45a update_lints 2015-09-05 14:22:33 +02:00
llogiq
cd91110ec0 new lint: min_max 2015-09-05 12:46:34 +02:00
llogiq
e11fd49b1c Unicode lints, second attempt: Lint whole strings, help with replacement 2015-09-04 16:18:46 +05:30
Georg Brandl
846c164709 don't say "did you mean to" - use the standard "consider..."
"Did you mean to ..." sounds a bit condescending to me, since
if I meant to write "if let" I probably wouldn't have written "match" :)
2015-09-02 16:46:14 +02:00
Georg Brandl
1007864198 new lint: self conventions for certain method names (fixes #267) 2015-09-01 18:52:48 +02:00
Manish Goregaokar
d3da9f6c81 Merge branch 'pr-260'
Conflicts:
	src/lib.rs
2015-08-31 15:06:53 +05:30
Georg Brandl
03abe275b2 new lint: unnecessary patterns (x@_ -> x) 2015-08-30 19:02:30 +02:00
Tim Neumann
ef0c933550 add precedence_negative_literal lint 2015-08-30 17:34:48 +02:00
Georg Brandl
16df79a054 new lint: using collect() to just exhaust an iterator
Should use a for loop instead.
2015-08-30 13:10:59 +02:00
Georg Brandl
b72ef5a173 new lint: loop-match-break, which could be while-let (fixes #118) 2015-08-30 12:40:39 +02:00
Manish Goregaokar
193e71be61 Merge branch 'pr-228'
Conflicts:
	README.md
	src/methods.rs
2015-08-27 11:09:40 +05:30
llogiq
9461a480bd Added automatic links to wiki for all lints. 2015-08-26 16:04:50 +02:00
llogiq
5225feceaa shadowing detection 2015-08-25 13:40:26 +02:00
Georg Brandl
56e8db476c new lint: inherent methods that should be trait impls (fixes #218) 2015-08-25 11:10:42 +02:00
llogiq
209e6981a3 shadowing detection 2015-08-24 16:59:02 +02:00
llogiq
380e41a914 improved README, added lint counter 2015-08-24 16:49:12 +02:00
R.Chavignat
e80f2470b7 Merge branch 'master' into cast_iusize_improvements 2015-08-23 00:08:16 +02:00
R.Chavignat
79ef13592e Completed the implementation of *size handling.
Added some more cases to the test, and implemented a new lint,
cast_possible_wrap, triggered when casting from an unsigned type to a
signed type of the same size.
2015-08-22 23:49:03 +02:00
Georg Brandl
017dac2301 new lint: using &Ref patterns instead of matching on *expr (fixes #187) 2015-08-22 14:34:39 +02:00
Georg Brandl
630bb76f96 new lint: type complexity (fixes #93)
Still very naive, but it's a start.
2015-08-22 08:57:11 +02:00
R.Chavignat
dbc9b7f46e Reworked the error messages for more heplfulness.
Renamed the cast_possible_overflow lint to cast_possible_truncation,
and updated the error message, readme and crate root accordingly.
Added some more information to the message for the cast_precision_loss
lint.
Updated the test case to reflect changes.
2015-08-20 22:44:40 +02:00
R.Chavignat
1846581baa Added examples to lint descriptions. 2015-08-20 14:24:26 +02:00
R.Chavignat
993239d33a Initial implementation of lossy cast lints.
Introduces 3 lints :
  cast_possible_overflow
  cast_precision_loss
  cast_sign_loss
Add a compile-test test case.
Fix errors spotted by dogfood script.
2015-08-20 01:04:06 +02:00
Georg Brandl
8f4499f3ae new lint: comparing unit types (fixes #201) 2015-08-19 08:11:00 +02:00
Georg Brandl
e9a41e2374 new lint: lint when iterating over any Iterator::next() result (fixes #182) 2015-08-17 07:28:40 +02:00
Nathan Weston
23a38c4170 New lint: Range::step_by(0) (fixes #95)
Uses type information so it can detect non-literal ranges as well
(Range or RangeFrom -- the other range types don't have step_by).
2015-08-16 12:58:54 -04:00
Georg Brandl
137a9f3def methods: allow Option.unwrap by default 2015-08-15 07:23:04 +02:00
Georg Brandl
9578403638 new lint: looping over x.iter() or x.iter_mut() (fixes #157) 2015-08-13 16:31:16 +02:00
Georg Brandl
e03b71606b update_lints: add a check mode for travis runs 2015-08-13 15:30:06 +02:00
Manish Goregaokar
1d64553bc6 Merge branch 'pr-152'
Conflicts:
	README.md
	src/lib.rs
	src/strings.rs
2015-08-13 18:38:08 +05:30
llogiq
0ba08715e5 Merge 2015-08-13 11:41:50 +02:00
llogiq
0b08e9e83e added string_add lint and fixed string_add_assign + test 2015-08-13 11:36:39 +02:00
llogiq
71b46d9ecd improved string_add/string_add_assign messages, Allow-by-default string_add_assign 2015-08-13 11:35:30 +02:00
Georg Brandl
2c2716f045 all: DRY for lint descriptions
* use the rustc style for lint descriptions
* add a script to parse all lint descriptions
  and put the generated table into README
2015-08-13 11:14:05 +02:00
Manish Goregaokar
79bf774e9b Update README.md 2015-08-12 21:25:26 +05:30
llogiq
2d55381a96 added string_add lint and fixed string_add_assign + test 2015-08-12 15:50:56 +02:00
Georg Brandl
2eacb3c146 README: update lint output 2015-08-12 07:52:45 +02:00
Georg Brandl
f6dc48fe3a new lint for "let x = EXPR; x" at the end of functions (fixes #104) 2015-08-11 22:25:47 +02:00
Georg Brandl
dfd1f42dd2 README: update with recently added lints 2015-08-11 21:31:04 +02:00
Georg Brandl
e318328d63 all: whitespace cleanup
* 4-space indentation
* no trailing whitespace
* no tabs
2015-08-11 20:22:50 +02:00
llogiq
b393752814 New string_add_assign lint (first part of #121), also formatting & refactoring 2015-08-05 15:10:45 +02:00
llogiq
251c5cfffd rustup, also first time clippy was used on itself, which led to a small refactoring 2015-07-16 08:53:02 +02:00
Ben S
e774fd1650 Remove redundant 'redundant_closure' description
There were two of them in the README, now there are one.
2015-06-17 18:24:31 +01:00
llogiq
23caf3cccc first unicode lint: zero_width_space 2015-06-11 11:35:00 +02:00
Michael Rutherford
a275d99628 Fixed spelling error
Fixed a spelling error and added a comma in the README.md file.
2015-06-06 13:28:58 -05:00
Manish Goregaokar
240d9716d8 Update README.md 2015-06-04 09:15:56 +05:30
llogiq
87047c3223 explained recently added lints 2015-06-02 09:23:22 +02:00
llogiq
5b1287f017 added description to README 2015-05-21 14:57:20 +02:00
llogiq
57a6b93ed0 Merge pull request #62 from Manishearth/len_zero_is_empty
Here goes nothing... 😄
2015-05-20 10:38:08 +02:00
llogiq
e8ca3c6eae new lints len_zero and len_without_is_empty 2015-05-20 08:52:19 +02:00
Manish Goregaokar
303c8f7b5e Update README.md 2015-05-18 16:02:25 +05:30
Camille TJHOA
04f48455e5 Specify languages for examples 2015-05-18 12:22:46 +02:00
Camille TJHOA
b533b084f3 Fix typo 2015-05-18 12:22:46 +02:00
Camille TJHOA
bac950b4d6 Fix and improve README 2015-05-18 12:22:45 +02:00
llogiq
96bfade4f1 New lint: mut_mut (closes issue #9) 2015-05-18 09:02:24 +02:00
llogiq
edf747ab76 new lint: identity_op, refactored bit_masks a bit 2015-05-15 18:46:43 +02:00
llogiq
6bec4f35df Added 'ineffective bit mask' lint 2015-05-15 14:09:29 +02:00
Manish Goregaokar
905509083c Update README.md 2015-05-14 14:41:33 +05:30
Manish Goregaokar
2ffbdfdcd0 oops 2015-05-10 16:13:02 +05:30
Manish Goregaokar
4eb47abde7 crates 2015-05-10 16:10:05 +05:30
Manish Goregaokar
2447e1d5be Add eta reduction (fixes #29) 2015-05-10 11:49:08 +05:30
llogiq
17bcf0e865 New lint: precedence, see issue #41 2015-05-06 12:59:08 +02:00
llogiq
ac151bb1f0 Added new 'float_cmp' lint (see issue #46) 2015-05-06 10:01:49 +02:00
llogiq
2cb84b9d15 New lint: approx_const 2015-05-04 12:01:34 +02:00
llogiq
8d2328d9a5 Added &String matching and renamed to vec_ptr_arg to ptr_arg, also added README section 2015-05-04 08:15:24 +02:00
llogiq
53fa76dff9 new lint: needless_bool (TODO: The warnings could give more specific directions) 2015-05-02 00:35:49 +02:00
llogiq
441b55b328 Added eq_op and bad_bit_mask from the extra_lints project (mostly plain copy, need to refactor to integrate better) 2015-04-30 11:48:43 +02:00
Manish Goregaokar
433c834897 more readme 2014-12-28 20:12:48 +05:30
Jonathan Castello
a7d5048d48 Update README.md for clippy_toplevel_ref_arg. 2014-12-24 18:37:50 -08:00
Manish Goregaokar
2703038f93 Add seanmonstar's StrToString lint 2014-12-16 00:46:39 +05:30
Manish Goregaokar
1e182b36fb Update README.md 2014-12-10 12:21:55 +05:30
Manish Goregaokar
e9c08c4b12 dlist readme 2014-11-20 13:44:22 +05:30
Manish Goregaokar
7cf7e4368f readme 2014-11-20 00:49:03 +05:30
Manish Goregaokar
507dc2b7ec Create README.md 2014-11-19 13:20:46 +05:30