Commit graph

394 commits

Author SHA1 Message Date
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