Commit graph

1762 commits

Author SHA1 Message Date
Josh Holmer
061b2f3057 Apply applicability 2018-09-03 23:29:44 -04:00
Josh Holmer
dfed9751bd Majority of PR changes 2018-09-03 23:29:44 -04:00
Josh Holmer
fbc93c0166 Lint against needless uses of collect()
Handles cases of `.collect().len()`, `.collect().is_empty()`, and
`.collect().contains()`. This lint is intended to be generic enough to
be added to at a later time with other similar patterns that could be
optimized.

Closes #3034
2018-09-03 23:29:44 -04:00
Nick Cameron
4050a68989 Make Default do what default used to do 2018-09-04 09:13:48 +12:00
daubaris
2f0a99a3a4 fixed known problems expression 2018-09-03 23:01:28 +03:00
daubaris
1f3676f7d0 Merge branch 'master' of https://github.com/rust-lang-nursery/rust-clippy into range-plus-one 2018-09-03 18:24:47 +03:00
daubaris
b825578a4a backticks and testcase 2018-09-03 18:24:38 +03:00
Philipp Hansch
c0513097ab
Merge pull request #3092 from illicitonion/issue-2879
default_trait_access skips <F as Default>::default()
2018-09-03 17:24:33 +02:00
daubaris
1615a8a2b6 Merge branch 'master' of https://github.com/rust-lang-nursery/rust-clippy into range-plus-one 2018-09-03 17:21:13 +03:00
Josh Triplett
779988303a iter conservation efforts: save the endangered .iter() and .into_iter()
Make explicit_iter_loop and explicit_into_iter_loop allow-by-default, so
that people can turn them on if they want to enforce that style; avoid
presenting them as *the* idiomatic Rust style, rather than just *a* style.
2018-09-03 01:24:46 -07:00
Nick Cameron
d6f01f3a6c Make Conf::default available
Fixes RLS
2018-09-03 13:57:50 +12:00
Daniel Wagner-Hall
9f0216d520 Merge branch 'master' into issue-2879 2018-09-03 00:01:57 +01:00
Daniel Wagner-Hall
939d842ea1 Simplify 2018-09-02 23:42:07 +01:00
Daniel Wagner-Hall
368223a341 Use types rather than strings 2018-09-02 23:37:28 +01:00
Michael Wright
19157c02cb Fix #3112 2018-09-02 09:38:25 +02:00
daubaris
846c3dba2c resolved conflicts 2018-09-01 09:37:42 +03:00
Manish Goregaokar
c81d70e6bd
Merge pull request #2977 from flip1995/tool_lints
Implement tool_lints
2018-09-01 11:22:23 +05:30
Manish Goregaokar
20dfaf7842 declare_lint -> declare_tool_lint 2018-08-31 00:34:48 -07:00
Oliver Schneider
73e8416df3
Merge pull request #3081 from mikerite/fix-3078
Fix #3078
2018-08-31 09:05:39 +02:00
Michael Wright
c6074a94b9 Merge branch 'master' into fix-3078 2018-08-31 06:17:11 +02:00
Michael Wright
daacac6b97 Revert "fix-3078: verify test case"
This reverts commit 6256ad05ba.
2018-08-31 06:15:55 +02:00
daubaris
679bc32f46 range_plus_one suggestion should not remove braces fix 2018-08-30 20:06:13 +03:00
Philipp Hansch
b87ab5ccf2
Merge pull request #3076 from mbrubeck/patch-1
Remove incorrect note from string_add_assign docs
2018-08-29 20:09:38 +01:00
Manish Goregaokar
e0ad732226
Merge pull request #3105 from frewsxcv/frewsxcv-private
Make clippy_lints::{utils,consts} modules private, remove unused items.
2018-08-29 11:24:00 -07:00
flip1995
daa4f0ad34 Implement backwards compatibility changes introduced by rust-lang/rust#53762 2018-08-29 11:08:29 -07:00
flip1995
d1f2f0c34c Fix some rebase fallout 2018-08-29 11:08:29 -07:00
flip1995
f3bb161f0e Adapt codebase to the tool_lints 2018-08-29 11:08:29 -07:00
flip1995
8c07772dbb Switch to declare_tool_lint macro 2018-08-29 11:08:29 -07:00
flip1995
392235d6e1 Switch to tool_lints 2018-08-29 11:08:29 -07:00
Corey Farwell
f42442b6e0 dont deref 2018-08-29 09:07:09 -05:00
Corey Farwell
53928d5367 clippy suggestion 2018-08-29 08:27:32 -05:00
Corey Farwell
6445a5d79d derive copy/clone 2018-08-29 08:01:05 -05:00
Corey Farwell
d5534ca9db bring back sugg::range 2018-08-29 07:46:03 -05:00
Corey Farwell
9a8f206662 eof newline 2018-08-29 07:43:40 -05:00
Corey Farwell
2a486528ee utilize carrier 2018-08-29 07:42:43 -05:00
Corey Farwell
2fa7351c1e suggest wrapping_offset as well 2018-08-29 07:40:00 -05:00
Corey Farwell
61c20c148e if no suggestion, dont add suggestion 2018-08-29 07:12:22 -05:00
Corey Farwell
f7d1ef90a0 utilize .is_unsafe_ptr 2018-08-29 07:08:59 -05:00
Corey Farwell
a48a6ef10f utilize cx.tcx.types.usize 2018-08-29 07:07:23 -05:00
Corey Farwell
a7c1ea96c4 tweak comment 2018-08-29 07:03:50 -05:00
Corey Farwell
feb3e9fd5f switch lint from 'style' to 'complexity' 2018-08-29 07:02:26 -05:00
Corey Farwell
5ebae01c1e New lint: Suggest ptr.add([usize]) over ptr.offset([usize] as isize).
First part of #3047.
2018-08-28 23:21:29 -05:00
Corey Farwell
05f637cf88 Make clippy_lints::{utils,consts} modules private, remove unused items. 2018-08-28 21:32:20 -05:00
Oliver Schneider
d99cea0f16 Update imports and rustup 2018-08-28 13:13:42 +02:00
Daniel Wagner-Hall
350036a0c7 default_trait_access skips <F as Default>::default()
This includes the type name, so is clear, and may be necessary.

There doesn't seem to be an obviously cleaner way to pull out the
literal text of the named type here.

Fixes #2879
2018-08-27 23:22:07 +01:00
Matthias Krüger
fc31dc01de docs: make example in new_without_default lint syntax highlighted 2018-08-27 17:35:30 +02:00
Philipp Krones
9ce826ade1
Merge pull request #3082 from mikerite/move-range-lints
Move some range lints to complexity
2018-08-26 15:08:21 +02:00
Michael Wright
95fedd2273 Revert "Fix E0502 warnings"
This reverts commit 98dbce4fe4.

The compiler no longer emits the warnings in #2982 with the original
code.
2018-08-26 11:21:22 +02:00
Michael Wright
eef3ffab35 Remove iterator_find_map feature attribute
Closes #3083
2018-08-26 11:11:47 +02:00
Michael Wright
cc87dc7539 Move some range lints to complexity
Recategorize `range_plus_one` and `range_minus_one` to `complexity`.
This moves `range_plus_one` out of the nursery as the inclusive range
syntax is now stable. Both are moved to `complexity` as it is more
consistent with other lints such as `int_plus_one`.
2018-08-26 10:57:04 +02:00
Michael Wright
6256ad05ba fix-3078: verify test case
Check the crash test case by commenting out the fix
2018-08-25 22:35:06 +02:00
Michael Wright
45ceecc79c Fix #3078 2018-08-25 14:49:56 +02:00
Philipp Hansch
296b79bdb8
Merge pull request #3079 from matthiaskrgr/update_cargo_metadata
deps: update cargo_metadata from 0.5 to 0.6.
2018-08-24 20:09:50 +02:00
Philipp Krones
b1620f5d3a
Merge pull request #3080 from matthiaskrgr/manual_swap_example
add how-to example for std::mem::transmute() usage instead of manual swap
2018-08-24 19:47:17 +02:00
Matthias Krüger
f7be2a0416 add how-to example for std::mem::transmute() usage instead of manual swap 2018-08-24 18:41:49 +02:00
Philipp Krones
e91147832c
Merge pull request #3048 from goodmanjonathan/assign_op
deprecate assign_ops lint
2018-08-24 18:29:31 +02:00
Philipp Krones
562c576ed3
Merge pull request #3059 from elpiel/writeln_empty_string_harcoded-suggestion
#3016 writeln_empty_string Hardcoded suggestion
2018-08-24 18:28:50 +02:00
Matthias Krüger
2224fbb5f7 deps: update cargo_metadata from 0.5 to 0.6. 2018-08-24 18:14:49 +02:00
Niklas Fiekas
afdf350060 Add copy_iterator lint (#1534) 2018-08-24 11:57:48 +02:00
Matthias Krüger
c98987f390 fix clippy breakage due to https://github.com/rust-lang/rust/pull/52602 2018-08-23 21:41:30 +02:00
Matt Brubeck
6a0703664b
Remove incorrect note from string_add_assign docs
The docs claim that `String::push_str` is better than `String::add` because `String::add` allocates a new string and drops the old one, but this is not true.  In fact, `add` reuses the existing string and grows it only if its capacity is exceeded, exactly like `push_str`.  Their performance is identical since `add` is just a wrapper for `push_str`:

```
    fn add(mut self, other: &str) -> String {
        self.push_str(other);
        self
    }
```

35bf1ae257/src/liballoc/string.rs (L1922-L1925)
2018-08-23 08:38:41 -07: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
flip1995
37099ae034
Remove now stable tool_attributes feature 2018-08-23 15:36:07 +02:00
Matthias Krüger
712d2d4fa1 rustup, fix breakage introduced by https://github.com/rust-lang/rust/pull/53581 2018-08-22 23:34:52 +02:00
Lachezar Lechev
76f7bfcefd #3016 Add backticks for the msg 2018-08-20 15:50:15 +02:00
Lachezar Lechev
c292b80783 #3016 Add feedback and implement test for fixed hardcoded suggestion 2018-08-20 15:33:43 +02:00
Lachezar Lechev
3015987f27 #3016 [WIP] Implement feedback and suggestions 2018-08-20 14:03:13 +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
Manish Goregaokar
76321d3300 codemap -> source_map
https://github.com/rust-lang/rust/pull/52953
2018-08-19 19:06:54 -07:00
Lachezar Lechev
6cb94630fb WIP of #3016 for hardocded suggestion for writeln on empty string 2018-08-16 18:20:06 +02:00
Michael Wright
1c681b6ab6 fix-2927: Update formatting 2018-08-16 07:13:52 +02:00
Michael Wright
bbd67c9b78 Fix #2927 2018-08-15 08:11:07 +02:00
Manish Goregaokar
bac76afb5a Rustup to rustc 1.30.0-nightly (23f09bbed 2018-08-14) 2018-08-14 11:26:28 -07:00
Philipp Krones
84aa49935d
Merge pull request #3026 from dwijnand/fxhash
Add an internal lint for FxHashMap/FxHashSet
2018-08-14 13:04:48 +02:00
Philipp Krones
b2a4013c14
Merge pull request #3014 from estk/allow-write-multi-newline
Allow print/write with multiple newlines
2018-08-14 12:54:05 +02:00
Philipp Krones
826d998cd2
Merge pull request #3036 from matthiaskrgr/clippy_self
fix 2 clippy warnings
2018-08-14 12:53:01 +02:00
Dale Wijnand
7933d445d1
Move shadow_unrelated to pedantic 2018-08-14 09:52:27 +01:00
Dale Wijnand
22ff5a3ef1
Avoid new_without_default_derive in DefaultHashTypes 2018-08-14 09:25:09 +01:00
Jonathan Goodman
160b41dae3 deprecate assign_ops lint 2018-08-13 16:12:41 -05:00
Dale Wijnand
1812707d39
Use utils::span_lint_and_sugg in default_hash_types 2018-08-13 11:49:57 +01:00
Dale Wijnand
8fc425b676
Add an internal lint for FxHashMap/FxHashSet 2018-08-12 16:15:36 +01:00
Matthias Krüger
88d693918f docs: add more suggestions on how to fix clippy findings to the online lint list. 2018-08-12 11:29:44 +02:00
Matthias Krüger
66ca3954ec fix 2 clippy warnings 2018-08-11 23:16:47 +02:00
Oliver Schneider
99a087bea5 Update to rustc master 2018-08-08 13:19:07 +02:00
Oliver Schneider
d722489e71
Merge pull request #2823 from flip1995/thingies_things
Replace cfg_attr(rustfmt... with rustfmt::skip
2018-08-08 13:14:20 +02:00
Nick Cameron
b109e10334 Fix build 2018-08-08 18:01:06 +12:00
Evan Simmons
550ff84ecd Allow print/write with multiple newlines 2018-08-07 12:01:10 -08:00
Oliver Schneider
328fea3e0d Rustup 2018-08-07 16:34:17 +02:00
Oliver Schneider
77025557f9
Merge pull request #3009 from dwijnand/option-map_or
Use Option::map_or
2018-08-07 13:11:30 +02:00
Oliver Schneider
1af90085a1
Merge pull request #3008 from dwijnand/remove-workaround
Remove #[allow(rust_2018_idioms)] workaround
2018-08-07 13:10:54 +02:00
Oliver Schneider
dc5ee5aa19
Merge pull request #3010 from mikerite/issue2971
Fix #2971
2018-08-07 13:10:26 +02:00
Scott McMurray
73e097e9f1 Fix the build after https://github.com/rust-lang/rust/pull/53016
In-band lifetimes are no longer in the edition, so update the one place that was using them.
2018-08-07 00:05:09 -07:00
Michael Wright
a3d7698fd9 Fix #2971 2018-08-07 05:37:11 +02:00
Dale Wijnand
7a5ede677b
Use Option::map_or 2018-08-06 17:52:09 +01:00
Dale Wijnand
1a310bfdf7
Remove #[allow(rust_2018_idioms)] workaround 2018-08-06 17:51:04 +01:00
Oliver Schneider
b18a3c5b60
Merge pull request #3007 from mikerite/issue3000
Fix #3000
2018-08-06 09:16:42 +02:00
Michael Wright
ffce3c77e4 Fix #3000 2018-08-06 08:20:50 +02:00
Philipp Hansch
f6c4e303c9
Merge pull request #2999 from flip1995/single_char_pattern
Fix single_char_pattern lint for escaped chars
2018-08-06 07:05:04 +01:00
Philipp Hansch
32e4897854
Merge pull request #2975 from aaudiber/lint-identity-into-iter
Lint using identity into_iter conversion
2018-08-05 20:38:28 +01:00
Philipp Hansch
a016d4efe0
Merge pull request #2991 from mikerite/issue2979
Fix #2979
2018-08-05 20:35:55 +01:00