Oliver Scherer
b8654eaa6c
Stabilize tool lints
2018-10-11 12:16:22 +02:00
Devon Hollowood
eef2e8948b
Fix cast_possible_truncation warnings
2018-10-08 21:40:21 -07:00
Manish Goregaokar
e9c025ea70
Add license header to Rust files
2018-10-06 09:43:08 -07:00
O01eg
8695c2c34b
Allow to debug rustc_driver via logs.
2018-10-03 21:41:02 +03:00
Eduard-Mihai Burtescu
9219fc6c5c
Reintroduce extern crate
for non-Cargo dependencies.
2018-09-15 11:10:51 +03:00
flip1995
f49f133cba
Fix pedantic filter_map warnings
2018-09-14 12:56:25 +02:00
Matthias Krüger
fa11aad92a
print git commit hash and commit date in version output
...
clippy 0.0.212 (964fcbe0 2018-09-06)
2018-09-06 14:45:12 +02:00
Michael Wright
4f7a260472
driver: Improve check for rustc arg
...
The rustc arg might not be exactly "rustc". It may be any path to a rustc
executable (especially if the RUSTC environment variable is set when
executing cargo). Rather check that it is a path with 'rustc' file stem.
2018-09-06 07:01:56 +02:00
flip1995
daa4f0ad34
Implement backwards compatibility changes introduced by rust-lang/rust#53762
2018-08-29 11:08:29 -07:00
flip1995
f3bb161f0e
Adapt codebase to the tool_lints
2018-08-29 11:08:29 -07:00
Oliver Schneider
caa59e2e27
Use the compilers exit code computation instead of rolling our own
2018-08-26 15:57:17 +02:00
Matthias Krüger
8ab16b678c
remove macro_vis_matcher feature gate since it is stable now.
...
Warning was:
warning: the feature `macro_vis_matcher` has been stable since 1.29.0 and no longer requires an attribute to enable
--> src/lib.rs:4:12
|
4 | #![feature(macro_vis_matcher)]
| ^^^^^^^^^^^^^^^^^
|
= note: #[warn(stable_features)] on by default
2018-08-23 15:40:51 +02:00
Manish Goregaokar
a7bea134d3
Remove implied rust_2018 feature
...
We are already on the edition and this feature is implied.
2018-08-19 19:14:47 -07:00
Michael Wright
bbd67c9b78
Fix #2927
2018-08-15 08:11:07 +02:00
Oliver Schneider
afd91248ed
Rustup
2018-07-23 13:01:12 +02:00
Oliver Schneider
ff0e5f967f
Rewrite the print/write macro checks as a PreExpansionPass
2018-07-23 00:19:07 +02:00
Mateusz Mikuła
a6601f2d02
Enable rust_2018_idioms warning
2018-06-25 20:56:25 +02:00
Fraser Hutchison
5be00bcd18
Ensure a non-zero value is returned by clippy if compilation fails
2018-06-21 05:20:14 +01:00
Mateusz Mikuła
b45fb35ec4
Cleanup of driver code
2018-06-07 22:13:24 +02:00
Mateusz Mikuła
52deb3b086
Prepare for upcoming breakage
2018-06-07 19:16:41 +02:00
Mateusz Mikuła
26f3feb980
Add rust_2018_preview feature and fix rustfmt annotation
2018-05-30 10:10:01 +02:00
Mateusz Mikuła
3c6503eb4b
Format code
2018-05-22 10:21:42 +02:00
Oliver Schneider
b60ffa780d
Stop compilation after linting
2018-05-19 18:49:57 +02:00
utam0k
df1b7c5f19
Rename trans to codegen
2018-05-19 14:29:20 +09:00
Oliver Schneider
fd8a1d20cc
Remove all mention and testing of #[plugin(clippy)] and warn if used
2018-05-11 13:20:39 +02:00
Philipp Hansch
a854874e6a
Fix latest nightly breakage
...
I'm not sure if there are better ways to use the RwLock API, though. But
it seems to work.
2018-04-18 20:25:43 +02:00
Manish Goregaokar
399488079b
argh
2018-04-04 19:15:22 -07:00
Manish Goregaokar
ab28118449
Fix driver dogfood bug
2018-04-04 18:56:21 -07:00
Michael Wright
a8bb8925cb
Fix clippy warning
2018-04-04 07:08:35 +02:00
Michael Wright
add4434ee3
Support non-unicode paths for dogfood test
2018-04-02 09:28:08 +02:00
Michael Wright
609dd47410
Fix clippy warnings from last commit
2018-04-01 10:18:05 +02:00
Michael Wright
1ab96db791
Make dogfood test output to seperate directory
...
This commit makes `cargo clippy` output the build artifacts to a
separate directory if the `CLIPPY_DOGFOOD` env var is set. This should
prevent dogfood builds from interfering with regular builds.
This should help with issue #2595 .
2018-04-01 09:44:30 +02:00
Benjamin Gill
8db845c189
Delete all code for handling manifest path
...
Now that we're using cargo check, we can stop needing to find out the
manifest path ourselves. Instead, we can delegate to cargo check, which
is perfectly capable of working out for itself what needs to be built.
This fixes #1707 and #2518 .
Note that this PR will change the output. We will no longer output `bin:
foo` before each crate. This a bit unfortunate. However, given that
we're now going to be building in parallel (which is *much* faster), I
think this is acceptable - we'll be no worse than cargo itself.
2018-03-28 23:27:49 +01:00
Oliver Schneider
66a98d2658
Use cargo check instead of cargo rustc
2018-03-28 11:50:17 +02:00
Oliver Schneider
9b10c4be8c
Undo current_dir -> CARGO_MANIFEST_DIR move
2018-03-27 13:00:02 +02:00
Oliver Schneider
96d5af36f8
Version bump
2018-03-27 12:14:46 +02:00
Oliver Schneider
bef1afac5b
Undo a temporary fix for a cargo bug
...
Fixes #2566
2018-03-25 08:52:00 +02:00
Oliver Schneider
47a706682c
Version bump
2018-03-19 09:26:05 +01:00
Mateusz Mikuła
23bfa396a0
Format code
...
Signed-off-by: Mateusz Mikuła <mati865@gmail.com>
2018-03-16 10:54:49 +01:00
Oliver Schneider
21f387d278
Update dependencies
2018-03-13 16:54:13 +01:00
TomasKralCZ
42120141bd
Suggestion fixed, simplified lint logic.
2018-02-12 11:26:00 +01:00
Seiichi Uchida
a2fec0e3e3
Rustup to rustc 1.25.0-nightly (97520ccb1 2018-01-21)
2018-01-22 13:23:57 +09:00
Oliver Schneider
26f83d6218
Readd the .exe extension on windows
2018-01-19 13:14:44 +01:00
Manish Goregaokar
3c4f5bfae2
Use rustc_driver::run ( fixes #2303 )
...
This internally uses monitor() which catches panics and stuff
2018-01-17 14:04:42 +01:00
Oliver Schneider
8ddcb81a15
Rustup and lazy_static version mismatch fix
...
fixes #2274
2017-12-15 10:05:32 +01:00
Oliver Schneider
127c41f700
Apply changes that were required for running in the rustc test suite
2017-11-14 14:56:00 +01:00
topecongiro
7a06d312fd
Cargo fmt
2017-11-05 04:55:56 +09:00
Oliver Schneider
47be692723
Merge pull request #2194 from martinlindhe/master
...
fix some typos
2017-11-02 10:30:10 +01:00
topecongiro
6fc9fe2eba
Fix a typo
2017-11-02 07:18:34 +09:00
topecongiro
49392fce53
Avoid panicking when no arg is given to clippy_driver
2017-11-02 07:13:14 +09:00
topecongiro
1326accdcf
Use is_ok()
2017-11-02 07:09:46 +09:00
Martin Lindhe
7bce43b66b
fix some typos
2017-10-31 08:34:27 +01:00
Manish Goregaokar
c526c51923
Update clippy for rustc 1.23.0-nightly (f0fe716db 2017-10-30)
2017-10-31 00:07:10 -07:00
Oliver Schneider
50ffaca4c9
Reduce the hackiness of cargo-clippy
2017-10-03 12:07:24 +02:00
Aaron Hill
4da0aeb40e
Set RUSTC_WRAPPER instead of RUSTC when invoking Cargo
...
Some build scripts rely on the RUSTC binary being the actual compiler
(e.g. parsing the output of 'RUSTC --version'). To prevent clippy from
breaking these build scripts, this commit sets RUSTC_WRAPPER instead.
This will cause Cargo to leave RUSTC unchanged, making the use of clippy
transparent to build scripts.
2017-09-28 13:59:51 -04:00
topecongiro
86e178e786
Add a missing argument
2017-09-14 13:18:08 +09:00
Oliver Schneider
e4524ac4de
Run nightly rustfmt
2017-09-05 12:39:27 +02:00
Oliver Schneider
992d88ab58
Merge pull request #1977 from rust-lang-nursery/panic
...
Fix a panic and a false positive
2017-08-22 10:20:02 +02:00
Oliver Schneider
56068b1b67
Fix ICE #1969
2017-08-21 12:57:33 +02:00
Benjamin Gill
6c665893d5
Add help text for --all
2017-08-20 05:10:13 +01:00
Benjamin Gill
5d72cc9b08
Run Rustfmt-nightly
2017-08-20 05:04:12 +01:00
Benjamin Gill
1265b46478
Basic implementation of cargo clippy --all
...
This implements workspace support for `cargo clippy` by running clippy
over all packages in the workspace (in serial).
This should probably be parallelised in future (as `cargo build --all`).
2017-08-20 05:00:49 +01:00
Oliver Schneider
0e4c49b145
Handfix dogfood issues with the rustfmt changes
2017-08-14 09:43:26 +02:00
Oliver Schneider
b25b6b3355
Rustfmt
2017-08-14 09:43:26 +02:00
Arnavion
d3bdec216b
Canonicalize --manifest-path argument before comparing it to cargo metadata.
...
Before this change, a relative path like `--manifest-path=./Cargo.toml` would
fail to find a matching package in the cargo metadata. With this change,
both the argument and the cargo metadata path are canonicalized before
comparison.
2017-07-28 15:22:31 -07:00
Arnavion
db7a5c69f1
Fix logic that determines closest parent crate when invoked from a subdirectory.
...
The previous logic incorrectly matches the deepest child of the current
directory that is a crate.
2017-07-27 00:04:17 -07:00
Oliver Schneider
e88c29cf34
Merge pull request #1860 from Vurich/master
...
Allow cargo-clippy to work in subdirectories
2017-07-04 19:32:09 +02:00
Oliver Schneider
01bb0f9e51
ignore needless_lifetimes false positive
2017-07-04 16:07:33 +02:00
Oliver Schneider
b8ecdc1cef
Merge pull request #1852 from Manishearth/notrans
...
Use `--emit=metadata` instead of `-Zno-trans`
2017-07-03 09:29:54 +02:00
messense
edadbff4ea
Fix compilation on rustc 1.20.0-nightly (067971139 2017-07-02)
2017-07-03 12:26:03 +08:00
Vurich
956a98c0c7
Allow cargo-clippy to work in subdirectories
2017-06-29 12:57:28 +02:00
Oliver Schneider
22dd3eef0b
Use --emit=metadata
instead of -Zno-trans
...
fixes #1500
2017-06-26 14:49:30 +02:00
Oliver Schneider
5842463562
Run rustfmt
2017-04-12 11:06:32 +02:00
Oliver Schneider
8f88ead7d6
Remove some legacy code
2017-03-27 14:51:37 +02:00
Techcable
9aebb59a68
Fix compilation on latest nightly
...
The ability for plugins to add MIR passes was removed as of 4ca9c97ac.
Luckily, we don't use this feature at all and can safely ignore it.
Fixes #1618
2017-03-12 20:13:20 -07:00
Oliver Schneider
a78ca9e955
Run rustfmt
2017-02-28 14:29:06 +01:00
Oliver Schneider
5c2549482a
Get cargo clippy working on 64 bit windows again
...
fixes #1244
2017-02-28 12:47:48 +01:00
Ben Boeckel
1b0749a6d0
main: end error messages with a newline
2017-02-16 13:18:00 -05:00
Andre Bogus
ad01fa9b57
Remove stabilized feature flag
2017-02-11 01:42:14 +01:00
Oliver Schneider
4a70a46d2d
run rustfmt
2017-01-26 11:31:26 +01:00
Oliver Schneider
26e8558d8a
remove rustc-serialize dependency and factor util::cargo
out into a crate
2017-01-26 11:31:26 +01:00
Andre Bogus
94c97d2ec9
formatting
2017-01-15 01:12:16 +01:00
Andre Bogus
dbde3b8e1c
dogfood fallout
2017-01-15 00:33:29 +01:00
Oliver Schneider
0553de8573
run rustfmt on clippy, not only on clippy_lints
2016-12-21 12:36:25 +01:00
Oliver Schneider
ed9d71f2c9
remove nondeterminism by adjusting thresholds
2016-12-21 10:25:14 +01:00
Oliver Schneider
0a7ae5fec8
run rustfmt
2016-12-20 10:20:41 +01:00
mcarton
7dd3679ac3
Fix a couple warnings
2016-12-19 20:31:39 +01:00
Oliver Schneider
2cfe1e7b64
Merge pull request #1328 from Machtan/master
...
Add '--version' flag and allow version and help flags when called as 'cargo-clippy'
2016-11-09 10:49:16 +01:00
Jakob Lautrup Nysom
2d9386f86d
Remove unnecessary #[allow]
2016-11-09 10:44:55 +01:00
debris
d16cc47ae8
fixed #1331
2016-11-08 21:50:35 +01:00
Machtan
e5a5a95a10
Add '--version' flag and use version and help flags when called as 'cargo-clippy'
2016-11-08 14:28:46 +01:00
Machtan
3800bff4de
Add '--version' flag and allow version and help flags when called as 'cargo-clippy'
2016-11-08 13:54:08 +01:00
Oliver 'ker' Schneider
6a73c8f8e3
--sysroot isn't necessary anymore for the outer cargo clippy call
2016-11-08 11:35:26 +01:00
Epicat Supercell
e25b010847
fixed callback changes from rustc 1.14.0-nightly (7c69b0d5a 2016-11-01)
2016-11-02 21:27:42 +02:00
mcarton
ec893a198f
Fix small nits on the help message
2016-10-25 15:09:56 +02:00
mcarton
da943f5ec8
Allow --help
to be any argument
...
Also dogfoog.
2016-10-24 16:29:36 +02:00
mcarton
409b8e7343
Revert "Revert "Automatically defines the clippy
feature""
...
This reverts commit e4dceef7e7
.
2016-10-24 16:04:00 +02:00
mcarton
4923415930
Be more helping with cargo clippy --help
2016-10-24 15:31:11 +02:00
Arnavion
604694bc0b
Use .expect() for extracting the current_dir.
2016-10-23 12:29:33 -07:00
Arnavion
2315a817ce
Changed signature of cargo::metadata according to review comment.
2016-10-23 12:24:16 -07:00
Arnavion
ebbd00b1ab
Don't assume the first package in the result of cargo metadata
is the current crate.
...
Instead find the one with the manifest path that matches the --manifest-path argument or the current directory.
Fixes #1247
2016-10-22 18:15:42 -07:00
mcarton
eec5425b34
Rustup to *rustc 1.14.0-nightly (289f3a4ca 2016-09-29)*
2016-09-30 22:03:21 +02:00
Oliver Schneider
c89c5d21c1
Merge remote-tracking branch 'origin/master' into examples
2016-09-19 15:38:38 +02:00
mcarton
c090c3df21
Rustup to *rustc 1.13.0-nightly (cbe4de78e 2016-09-05)*
2016-09-06 19:04:38 +02:00
mcarton
36d8ca04a1
Add a MISSING_DOCS_IN_PRIVATE_ITEMS
lint
2016-08-23 18:28:39 +02:00
Oliver Schneider
7b717d3152
fallout
2016-08-17 18:35:25 +02:00
Oliver Schneider
59c31d319a
plugin mode still needs to work
2016-08-17 18:26:58 +02:00
Oliver Schneider
e3723cb938
running cargo clippy on a crate that has the clippy plugin enabled errors out due to duplicate lints
2016-08-17 18:09:35 +02:00
Oliver Schneider
0dab78b3e6
unify "test", "bench", "example" and "bin" into one branch
2016-08-17 18:09:35 +02:00
Oliver Schneider
32a0069f67
no println output
2016-08-17 18:09:35 +02:00
Oliver Schneider
6d7269a675
also run clippy on examples
2016-08-17 18:09:35 +02:00
Manish Goregaokar
f006805c4a
Bump to 0.0.82
2016-08-17 09:20:20 +05:30
Sascha Hanse
9aa7701262
make clippy compile again with the latest nightly after rust-lang/rust@65eb024542
2016-08-17 00:21:58 +02:00
Oliver Schneider
871f8dcab3
don't run clippy on dependencies when running cargo clippy
2016-07-04 13:33:48 +02:00
mcarton
3c4af49662
Rustup to ea0dc9297283daff6486807f43e190b4eb561412
2016-07-01 17:44:17 +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
36c5026c48
fix cargo clippy when using with --manifest-path
2016-06-21 12:31:30 +02:00
Manish Goregaokar
5b1d849c7e
Revert "fix cargo clippy when using with --manifest-path
"
...
This reverts commit b31bebeea4
.
2016-06-21 15:24:04 +05:30
Oliver Schneider
b31bebeea4
fix cargo clippy when using with --manifest-path
2016-06-21 11:35:34 +02:00
mcarton
489576437d
Cleanup dependencies and features
2016-06-10 00:09:17 +02:00
mcarton
11665a0d79
Dogfood
2016-06-10 00:08:14 +02:00
mcarton
90453fd893
Run rustfmt
...
Only partially apply suggestions.
2016-06-10 00:08:14 +02:00
mcarton
d7ba66bf44
Automatically defines the clippy
feature
2016-06-08 21:53:58 +02:00
Oliver Schneider
8d5524f1da
clippy should work on all systems
2016-06-06 16:43:58 +02:00
Oliver Schneider
a81181b758
don't abort after successfully linting a target
2016-06-06 11:28:09 +02:00
Oliver Schneider
078cc68c52
no indexing
2016-06-02 17:39:28 +02:00
Oliver Schneider
7bb8ba4631
process more kinds of metadata
2016-06-02 17:29:25 +02:00
Oliver Schneider
80e81d351d
add version check to the unit tests
2016-05-30 12:47:04 +02:00
Oliver Schneider
e6a089efa9
dogfood
2016-05-30 11:32:02 +02:00
Oliver Schneider
0818e70497
don't require cargo clippy
to pass a --lib
or --bin x
argument
2016-05-30 11:32:02 +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
mcarton
8ac545d0fe
Fix documentation
2016-05-26 00:08:31 +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
Oliver Schneider
e90a0be923
simplify mut_mut
lint
2016-05-25 10:40:25 +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
Benoît Zugmeyer
7a9dac4e1c
Let cargo-clippy exit with a code > 0 if some error occured
2016-05-23 22:35:00 +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
Manish Goregaokar
973ae82d72
Merge branch 'pr-942'
2016-05-18 13:13:35 +05:30
mcarton
ca05e93c10
Rustup to *1.10.0-nightly (cd6a40017 2016-05-16)*
2016-05-17 23:25:20 +02:00
Manish Goregaokar
6a309af2f3
Don't panic if cargo rustc fails
2016-05-16 23:13:47 +05:30
Manish Goregaokar
f2f5fefd00
Allow invalid upcast comparisons
2016-05-16 22:52:22 +05:30
Martin Carton
4c4b1af03c
Merge pull request #928 from oli-obk/unnecessary_operation
...
add a companion lint to `no_effect` with suggestions for partially (in-)effective statements
2016-05-13 17:45:58 +02:00
Oliver Schneider
1e897f1552
add a companion lint to no_effect
with suggestions for partially effective statements
2016-05-13 16:43:47 +02:00
Martin Carton
e890bb5e4b
Merge pull request #921 from afck/master
...
fix typos
2016-05-13 12:13:23 +02:00
Andreas Fackler
87df6ae8cb
fix typos
2016-05-13 08:50:51 +03:00
mcarton
a9bea1f52b
Rustup to *1.10.0-nightly (22ac88f1a 2016-05-11)*
2016-05-12 21:22:38 +02:00
Oliver Schneider
610883b7aa
don't suggest closures over constants
...
fixes #917
2016-05-12 10:23:06 +02:00
llogiq
8fa68f1e08
Merge pull request #913 from oli-obk/assign_ops
...
suggest `a op= b` over `a = a op b`
2016-05-11 23:36:10 +02:00
llogiq
c170aa262a
Merge pull request #915 from Manishearth/sysroot
...
Use rustc --print sysroot, bump to v66 r? @llogiq
2016-05-11 21:56:52 +02:00
llogiq
f966778770
Merge pull request #914 from oli-obk/non_expressive_names
...
similar_names fixes
2016-05-11 21:55:38 +02:00
Manish Goregaokar
03a309d182
Use rustc --print sysroot, bump to v66
2016-05-11 11:07:37 -07:00
Oliver Schneider
b0d008bc9d
add known problems
2016-05-11 17:04:27 +02:00
Oliver Schneider
f004120495
properly lint function argument patterns in similar_names
2016-05-11 16:45:06 +02:00
Oliver Schneider
49e2570b77
don't lint at the use-site of bad struct field bindings if they're shorthand
...
fixes #899
2016-05-11 16:44:43 +02:00
Oliver Schneider
c6b4b19a43
suggest a op= b
over a = a op b
2016-05-11 15:32:20 +02:00
Josh Stone
11987f5b6f
Support either rustup or multirust environment variables
...
Fixes #910
2016-05-10 13:45:37 -07:00
Manish Goregaokar
855b292cda
Merge pull request #681 from oli-obk/split
...
cargo clippy
2016-05-10 00:41:34 -07:00
Seo Sanghyeon
f227225acd
Remove unused imports
2016-05-10 00:35:51 +09:00
Oliver Schneider
654154d8e7
cargo clippy
subcommand
2016-05-09 16:47:32 +02:00
Oliver Schneider
ba8653a8da
fallout
2016-05-09 13:08:00 +02:00
Oliver Schneider
6edc6a13d4
needless borrows found in clippy
2016-05-09 13:07:55 +02:00
Oliver Schneider
87faaec7a3
add needless_borrow lint
2016-05-09 13:07:43 +02:00
Manish Goregaokar
d70e7bb5fc
Merge pull request #906 from Manishearth/birkenfeld-master
...
Rustup to *rustc 1.10.0-nightly (62e2b2fb7 2016-05-06)*
2016-05-07 21:31:21 -07:00
mcarton
aa10c93e8f
Fix tests
2016-05-08 01:13:05 +02:00
Oliver Schneider
0a3ab78bde
fix markdown generated from code
2016-05-06 16:09:05 +02:00
mcarton
3ce60e9731
Don’t warn in titles in DOC_MARKDOWN
2016-05-05 21:49:57 +02:00
mcarton
e14e1a7148
Fix issue with DOC_MARKDOWN
and punctuation
2016-05-05 21:33:46 +02:00
Georg Brandl
ca743ecb77
rustup: fix breakage in diagnostics API
...
Also adds a function to add the clippy wiki note, which is used a few times.
2016-05-04 08:54:59 +02:00
Oliver Schneider
3a32c2c596
doc markdown lint shows the exact word location
2016-05-02 14:36:48 +02:00
Oliver Schneider
365644e9e6
doc markdown lint's span shows the line instead of the item
2016-05-02 14:36:33 +02:00
Manish Goregaokar
f6290b622c
Merge branch 'pr-890'
2016-05-02 14:43:11 +05:30
Oliver Schneider
ee35c3722a
similar_names should be allow-by-default
2016-05-02 10:53:09 +02:00
Oliver Schneider
10f468e679
don't lint similar_names inside #[test] functions
2016-05-02 10:52:55 +02:00
Andre Bogus
0b40ae178a
fixed tests, added clippy_restrictions lint group
2016-04-30 23:54:10 +02:00
Andre Bogus
a967440186
lint remainder, document test w/ half expr
2016-04-30 17:11:59 +02:00
Andre Bogus
9a99979cc4
fix #887 : New lints for integer/floating-point arithmetic
2016-04-30 04:01:47 +02:00
mcarton
0664394a49
Centralize more paths
2016-04-26 13:43:23 +02:00
mcarton
cf5c1ab0b6
Fix paths resolution
...
Put more paths into the `utils::paths` module.
2016-04-26 13:31:52 +02:00
Manish Goregaokar
08818de9b7
Rustup to rustc 1.10.0-nightly (645dd013a 2016-04-24); release 0.0.64
2016-04-26 02:10:48 +05:30
Manish Goregaokar
c3d75ad80d
Improve new_without_default docs
2016-04-24 17:15:54 +05:30
Oliver 'ker' Schneider
bf4221c51a
cc: early returns are special
2016-04-23 14:30:05 +02:00
llogiq
30f7651271
Merge pull request #867 from Manishearth/#830
...
Check type for `SINGLE_CHAR_PATTERN`
2016-04-23 10:54:22 +02:00
Andre Bogus
e3d86800ff
allow items_after_statements by default
2016-04-23 07:52:45 +02:00
Taylor Cramer
8866ba9e2a
Fixed destructor detection in mem_forget
2016-04-21 09:36:39 -07:00
Taylor Cramer
77427b6ead
Limited mem_forget error to only Drop types (fails)
2016-04-20 19:24:31 -07:00
Taylor Cramer
5158a08c5b
Changed std::mem::forget errors to mem::forget
2016-04-20 18:55:41 -07:00
Taylor Cramer
12ae306630
Ticks around std::mem::forget
2016-04-20 13:33:05 -07:00
Taylor Cramer
7961f59303
Ran update_lints and updated CHANGELOG.md to reflect addition of mem_forget
2016-04-20 13:11:55 -07:00
Taylor Cramer
447940c889
Added lint for mem_forget
2016-04-20 13:10:23 -07:00
mcarton
de9a80cd10
Check type for SINGLE_CHAR_PATTERN
...
It’d be nicer to actually check for `Pattern` bounds but in the meantime
this needs to be fixed.
2016-04-20 21:16:59 +02:00
Taylor Cramer
4be11e9116
Removed unnecessary restriction of unsafe_removed_from_name to top-level use statements
2016-04-19 21:41:45 -07:00
Taylor Cramer
b793ad7f2f
Ran update_lints script
2016-04-19 16:32:04 -07:00
Taylor Cramer
038f528f45
Added lint for use imports which remove unsafe from name
2016-04-19 16:31:26 -07:00
llogiq
0bc067089e
add neg_multiply lint ( #862 )
...
add neg_multiply lint
2016-04-17 23:33:21 +02:00
Georg Brandl
12b8a0ac14
Make if_not_else lint Allow by default ( fixes #859 )
2016-04-17 12:54:38 +02:00
mcarton
578cc3dc71
Fix the REGEX_MACRO
lint
...
[rust-lang-nursery/regex#183 ](https://github.com/rust-lang-nursery/regex/pull/183 ) has made the following change that broke the lint:
src/re.rs → src/re_unicode.rs
2016-04-15 00:10:17 +02:00
mcarton
a878916ad5
rustfmt all the things
2016-04-14 20:14:03 +02:00
mcarton
cd12a2369a
s/paths::LL/paths::LINKED_LIST
...
All other paths had non-abbreviated names.
2016-04-14 18:41:38 +02:00
mcarton
48a672b4ee
Move paths to their own module
2016-04-14 18:38:28 +02:00
mcarton
1789430a49
Add a TEMPORARY_CSTRING_AS_PTR
lint
2016-04-14 17:26:07 +02:00
mcarton
831b8fc1b5
Ignore #[test]
fns in cyclomatic_complexity
2016-04-14 17:26:07 +02:00
mcarton
fe6e8dac35
More tests in DOC_MARKDOWN
2016-04-13 16:02:44 +02:00
Manish Goregaokar
fbf8fa9daf
Merge pull request #851 from Manishearth/doc
...
Fix FP with `DOC_MARKDOWN` and reference links
2016-04-12 09:22:39 +05:30
mcarton
6c0a486e8b
Fix FP with DOC_MARKDOWN
and reference links
2016-04-12 00:18:58 +02:00
Andre Bogus
29c058f0af
add a note of rust-lang/rust/#31439 to the wiki text
2016-04-11 23:59:52 +02:00
mcarton
9c4ae9295d
Markdownify more doc
2016-04-11 23:24:14 +02:00
mcarton
532446d3f8
Rustup to 1.9.0-nightly (7979dd608 2016-04-07)
2016-04-08 17:31:47 +02:00
mcarton
c24ba91123
Rustup to 1.9.0-nightly (bf5da36f1 2016-04-06)
2016-04-08 02:23:14 +02:00
mcarton
ee907b73a4
Fix false positive with DOC_MARKDOWN
and 32MiB
2016-04-04 20:25:21 +02:00
mcarton
f46e96405f
Rustup to 1.9.0-nightly (5ab11d72c 2016-04-02)
2016-04-03 17:22:10 +02:00
mcarton
eada860aa7
Small fixes in #802
2016-04-02 15:51:28 +02:00
mcarton
51e63a1ae2
Rustup PR #802
2016-04-02 15:43:58 +02:00
Taylor Cramer
d050d601fc
Added eq and neq handling to invalid upcast comparisons
2016-04-02 15:32:57 +02:00
Taylor Cramer
90a6117729
Reverted to manual implementation of PartialEq for FullInt
2016-04-02 15:32:57 +02:00
Taylor Cramer
d52d23d662
Erased numeric type to reduce branching
2016-04-02 15:32:57 +02:00
Taylor Cramer
106ae7da44
Invalid upcast comparison cleanup
2016-04-02 15:32:57 +02:00
Taylor Cramer
8687949a29
Tests passing for invalid_upcast_comparisons
2016-04-02 15:32:57 +02:00
Taylor Cramer
c81edfc7b9
Updated lints with script
2016-04-02 15:32:56 +02:00
Taylor Cramer
498e0fba7f
Initial attempt at linting invalid upcast comparisons
2016-04-02 15:32:36 +02:00
Manish Goregaokar
c150ae7824
Merge pull request #826 from Manishearth/patho-bool
...
Ignore pathological cases in boolean lint
2016-04-01 21:32:41 +05:30
Manish Goregaokar
6b0eb10769
Ignore pathological cases in boolean lint ( #825 )
2016-04-01 21:24:31 +05:30
mcarton
f16da4fdda
Fix false positive with DOC_MARKDOWN
and links
2016-04-01 17:24:55 +02:00
mcarton
8bfe38c432
Improve the match_same_arms
doc
2016-04-01 13:14:39 +02:00
Andre Bogus
4c6c84e0a1
fix #820
2016-04-01 10:33:17 +02:00
Oliver Schneider
73ee3e6f36
whitelist more non-expressive-name false positives
2016-03-31 17:35:00 +02:00
mcarton
9438f4f263
Rustup to 1.9.0-nightly (30a3849f2 2016-03-30)
2016-03-31 17:15:23 +02:00
mcarton
7095b5df31
Fix FP in REDUNDANT_CLOSURE
with divergent functions
2016-03-30 23:12:24 +02:00
Oliver Schneider
f03d93e05e
better whitelisting of "confusable" binding names
2016-03-30 17:05:15 +02:00
Oliver Schneider
d3362a2222
don't lint on binding names where only a numeric char changes to another numeric
2016-03-30 16:40:21 +02:00
Oliver Schneider
77652243ae
minor code readability improvements
2016-03-30 16:39:25 +02:00
Oliver Schneider
2917484130
make nonminimal_bool
allow-by-default
2016-03-30 12:55:59 +02:00
Oliver Schneider
fa48ee678a
dogfood
2016-03-29 17:20:30 +02:00
Oliver Schneider
e9c87c777c
!(a == b)
--> a != b
2016-03-29 17:18:47 +02:00
Oliver Schneider
b05dd13f2c
added brackets and fixed compiler comments
2016-03-29 16:55:38 +02:00
Oliver Schneider
216edbae59
accidentally forgot about improvements if there were multiplie candidates
2016-03-29 16:27:06 +02:00
Oliver Schneider
96be287f12
detect negations of terminals like a != b vs a == b
2016-03-29 10:45:45 +02:00
Oliver Schneider
3a0791e680
make sure a < b
and a >= b
are considered equal by SpanlessEq
2016-03-29 10:45:45 +02:00
Oliver Schneider
25bbde091a
a small refactoring for readability
2016-03-29 10:45:45 +02:00
Oliver Schneider
dd6bee3b3f
collect stats on bool ops and negations in an expression
2016-03-29 10:45:45 +02:00
Oliver Schneider
0f92f84f16
String::extend -> String::push_str
2016-03-29 10:45:45 +02:00
Oliver Schneider
e7013a3e9c
update lints
2016-03-29 10:45:45 +02:00
Oliver Schneider
76ab801001
if a < b { ... } if a >= b { ... } what am I doing?
2016-03-29 10:45:18 +02:00
Oliver Schneider
37cee84c44
negations around expressions can make things simpler
2016-03-29 10:45:18 +02:00
Oliver Schneider
03833f666f
differentiate between logic bugs and optimizable expressions
2016-03-29 10:45:18 +02:00
Oliver Schneider
288ea79963
treat macros as terminals to prevent cfg!
from giving platform specific hints
2016-03-29 10:45:18 +02:00
Oliver Schneider
050d7fd308
fallout and tests
2016-03-29 10:45:18 +02:00
Oliver Schneider
5911ccaba8
merge multiple equal terminals into one
2016-03-29 10:45:18 +02:00
Oliver Schneider
25ed62ff23
improve lint attribute detail
2016-03-29 10:45:18 +02:00
Oliver Schneider
1f1f09ba92
also compute minimal product of sum form
2016-03-29 10:45:18 +02:00
Oliver Schneider
57faa5a9f5
improve bracket display
2016-03-29 10:45:18 +02:00
Oliver Schneider
93d097eb12
better simplification
2016-03-29 10:45:18 +02:00
mcarton
0939f5a2ec
Fix false positive in MATCH_SAME_ARMS
and guards
2016-03-29 01:39:35 +02:00
mcarton
777e810a39
Add for _ in vec![…]
to the USELESS_VEC
lint
2016-03-28 23:32:55 +02:00
mcarton
371a5537eb
Address nits in DOC_MARKDOWN
2016-03-28 21:24:52 +02:00
mcarton
b1d1f095f1
Improve the DOC_MARKDOWN lint
...
`_` can be used for emphasize text. `::` is equality as bad outside
ticks.
2016-03-28 21:24:36 +02:00
mcarton
42bf37f49f
Add a lint for bad documentation formatting
2016-03-28 21:24:36 +02:00
mcarton
941ec6e4f5
Beautify more docs
2016-03-28 21:24:36 +02:00
mcarton
7877a42308
Fix some spelling mistakes here and there
2016-03-28 21:24:36 +02:00
mcarton
e7158dc8f1
s/cx.span_lint/span_lint(cx, /
2016-03-28 18:05:43 +02:00
mcarton
2d5e3f3118
Lint transmute from ptr to ref
2016-03-28 18:05:43 +02:00
Manish Goregaokar
204034e8fa
Fix ICE
2016-03-28 01:58:57 +05:30
josephDunne
aa819b7748
Update rust-clippy to rustc 1.9.0-nightly (d5a91e695 2016-03-26)
...
move cfg, infer, traits and ty from middle to top-level
move middle::subst into middle::ty
track the extern-crate def-id rather than path (rustc ab9b844)
2016-03-27 20:24:10 +01:00
Manish Goregaokar
f51293c399
Rm extraneous infcx
2016-03-27 04:57:25 +05:30
Manish Goregaokar
fcfda681e5
Stop using ast_ty_to_ty_cache
...
It's not reliable and gets cleared`
2016-03-27 04:24:55 +05:30
Manish Goregaokar
07dc709ba4
Allow trailing commas in if_let_chain
2016-03-27 04:24:42 +05:30
Manish Goregaokar
f3fdbd0d89
Fix ICE with unknown defids
2016-03-27 02:46:37 +05:30
Manish Goregaokar
e37ff5a5c7
Fix ICE with relating late bound regions
2016-03-27 02:46:36 +05:30
Taylor Cramer
b07360eb28
Cleanup and added transmute to ugly path list
2016-03-24 16:38:16 -07:00
Taylor Cramer
6adb9cb53f
Added crosspointer transmute error and tests
2016-03-24 15:48:38 -07:00
Manish Goregaokar
7e65493599
Merge pull request #795 from mcarton/deprecated
...
Deprecates 4 lints
2016-03-25 00:40:37 +05:30
mcarton
15e55f5df5
Deprecates 4 lints
...
Namely STR_TO_STRING, STRING_TO_STRING, UNSTABLE_AS_SLICE and
UNSTABLE_AS_MUT_SLICE.
2016-03-24 19:56:48 +01:00
Vincent Prouillet
341b7d3f6b
Update float_cmp message
2016-03-24 17:07:55 +00:00
Jascha
a7f662d8f2
Match attributes in FnKind patterns
2016-03-23 16:11:24 +01:00
Manish Goregaokar
523c596171
Merge pull request #727 from oli-obk/similar_names
...
lint on binding-names that are too similar
2016-03-21 10:35:36 +05:30
Andre Bogus
6164eabc3c
fixed the build
2016-03-20 21:24:18 +01:00
Jan-Erik Rediger
7d3e6da3cb
Fix typo in new_without_default docu
2016-03-20 20:32:22 +01:00
mcarton
ef72110684
Fix new_without_default
with lts and generics
2016-03-18 19:12:32 +01:00
Oliver Schneider
6a566a1009
use snippet_opt and span_suggestion
2016-03-18 14:06:39 +01:00
Oliver Schneider
9dc282e31d
improve needless_bool to catch odd construct in non_expressive_names
2016-03-18 14:06:39 +01:00
Oliver Schneider
ea1c2406cc
make single char names threshold configurable
2016-03-18 14:06:39 +01:00
Oliver Schneider
24cdb14d5a
refactor for speed
2016-03-18 14:06:39 +01:00
Oliver Schneider
aa1ecb6fce
fix and rebase
2016-03-18 14:06:39 +01:00
Oliver Schneider
077481053c
refactoring and bugfix
2016-03-18 14:06:39 +01:00
Oliver Schneider
463897fd39
lint on too many single character bindings
2016-03-18 14:06:39 +01:00
Oliver Schneider
5373ffdeb8
suggest inserting underscores for simple cases
2016-03-18 14:06:39 +01:00
Oliver Schneider
06ca1fc0a6
lint on binding-names that are too similar
2016-03-18 14:06:39 +01:00
Oliver Schneider
64110f16dd
fix Eq
+Hash
for Constant
2016-03-17 12:23:54 +01:00
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