Commit graph

4526 commits

Author SHA1 Message Date
Fabian Zaiser
81821acd59 Implement lint that checks for unidiomatic unwrap() (fixes #1770)
This checks for things like

    if x.is_some() {
        x.unwrap()
    }

which should be written using `if let` or `match` instead.

In the process I moved some logic to determine which variables are
mutated in an expression to utils/usage.rs.
2018-06-08 05:29:25 +02:00
Mateusz Mikuła
b45fb35ec4 Cleanup of driver code 2018-06-07 22:13:24 +02:00
Mateusz Mikuła
3693a4ea53 Formatting 2018-06-07 22:01:46 +02:00
Philipp Hansch
d0620ae4eb
Merge pull request #2835 from FauxFaux/patch-1
Tiny typo in rust-update script
2018-06-07 20:00:45 +02:00
Mateusz Mikuła
52deb3b086 Prepare for upcoming breakage 2018-06-07 19:16:41 +02:00
Chris West
e3fd348cd4
Tiny typo in rust-update script 2018-06-07 17:47:11 +01:00
Oliver Schneider
2a2e602f2a
Merge pull request #2833 from phansch/cannot_relate_bound_region_without_ICE_cream
Fix cargo late bound region mismatch ICE
2018-06-07 11:52:32 +02:00
Philipp Hansch
17aff1d774
Fix cargo late bound region mismatch ICE 2018-06-07 07:42:45 +02:00
Donald Robertson
e70632215e Combining if statements per lint warnings on build 2018-06-06 20:38:13 +01:00
Donald Robertson
9c73f7ff18 Amending use of Some with discarded value to use is_some 2018-06-06 17:13:31 +01:00
Donald Robertson
e67d2b2663 Added check to ensure format macro only being handled, refactored extraction and checks to smaller functions. 2018-06-06 16:53:11 +01:00
Oliver Schneider
7563d8155b
Merge pull request #2804 from utaal/expr-call-author
Add support for ExprCall in clippy::author
2018-06-06 15:17:47 +02:00
Donald Robertson
451fd5feb9 Extracting arguments to format to pass directly to panic when appropriate 2018-06-05 21:15:08 +01:00
Oliver Schneider
1e1b4e26ea
Merge pull request #2814 from VKlayd/fn_to_int
WIP: Add lint on cast Fn to all numerical except usize.
2018-06-05 17:08:33 +02:00
Donald Robertson
32404741c6 Replacing match block with if block as conditional was boolean 2018-06-04 19:43:03 +01:00
Donald Robertson
1ead12c500 Adding handling and tests for custom type with implemented expect method 2018-06-04 19:43:03 +01:00
Donald Robertson
fe8c9d5965 Ensuring correct lint message is output for Option and Result type 2018-06-04 19:43:03 +01:00
Donald Robertson
2b36017bad Removing unnecessary allow 2018-06-04 19:43:03 +01:00
Donald Robertson
05c1ccebaf Warn if non-trivial work is done inside .expect
- added tests for common usages of format and as_str arguments to expect
- added tests for usages of Option and Result types
- given performance impact of passing non literal expressions to expect, added to perf group
2018-06-04 19:43:03 +01:00
Oliver Schneider
3d7cdd4ac5
Merge pull request #2827 from 0ndorio/lint/cmp_operators_on_partial_cmp
Added lint to avoid negated comparisions on partially ordered types. (fixes #2626)
2018-06-03 23:23:59 +02:00
Bruno Kirschner
28f735bb26 Cleaned implements_ord helper function in boolean lint file. 2018-06-03 22:56:17 +02:00
Bruno Kirschner
80728a2201 Reduced scope of nonminimal_bool so that it doesn't evaluate only partially orded types. 2018-06-03 21:46:09 +02:00
Bruno Kirschner
09ea75bee9 Fixed spelling and indentation issues in neg_cmp_op_on_partial_ord related files. 2018-06-03 21:46:09 +02:00
Bruno Kirschner
86304d8dde Use declare_clippy_lint instead of declare_lint. 2018-06-03 21:46:09 +02:00
Bruno Kirschner
6d51559f62 Added lint to avoid negated comparisions on partially ordered types. 2018-06-03 21:46:09 +02:00
Oliver Schneider
c6d53ad2c0
Merge pull request #2813 from terry90/master
unreadable_literal: Fills hexadecimal values with 0 to allow better grouping
2018-06-03 12:53:45 +02:00
Terry Raimondo
2c1451817c Compute digits vec only once 2018-06-03 12:26:50 +02:00
Oliver Schneider
1c6c79f92c Version bump 2018-06-03 08:59:10 +02:00
Victor Korkin
24ab207671 Divide FN_TO_NUMERIC lint into two.
FN_TO_NUMERIC_CAST_WITH_TRUNCATION is correctness check
FN_TO_NUMERIC_CAST is only style check
2018-06-01 23:08:11 +07:00
Oliver Schneider
1ba658772a
Merge pull request #2816 from mockersf/multiple-impl
adding to restriction a lint that check for multiple inherent implementations
2018-05-31 13:33:35 +02:00
Oliver Schneider
41f23f5b4d
Merge pull request #2819 from zayenz/no-op-ref-in-macro
avoid op-ref in macros
2018-05-31 12:02:09 +02:00
Oliver Schneider
4e9a08bcde
Merge pull request #2825 from Nemo157/test-toml
Get compile-test tests for configuration working
2018-05-31 11:53:48 +02:00
Victor Korkin
ded2576957 Add one more test 2018-05-31 09:00:13 +07:00
Wim Looman
edcb8f6976 Use compiletest::make_tests to allow it to setup the output folders 2018-05-30 21:26:09 +02:00
Wim Looman
3244d122fd Get compile-test tests for configuration working 2018-05-30 20:37:18 +02:00
Oliver Schneider
bb2f6a5011
Merge pull request #2821 from mati865/rust-2018-migration
Rust 2018 migration
2018-05-30 15:55:11 +02:00
Victor Korkin
e6811b9c26 Fix 'help' message 2018-05-30 16:55:03 +07:00
Mateusz Mikuła
cc8c52c961 Update integration test 2018-05-30 11:20:34 +02:00
Mateusz Mikuła
551c02ecbf Upgrade to edition 2018 2018-05-30 10:18:52 +02:00
Mateusz Mikuła
424a33720d Run rustfix 2018-05-30 10:15:50 +02:00
Mateusz Mikuła
26f3feb980 Add rust_2018_preview feature and fix rustfmt annotation 2018-05-30 10:10:01 +02:00
Victor Korkin
b69520f5fd Fixes for suggestion message, tests and lint explanation. 2018-05-30 11:48:46 +07:00
Victor Korkin
e4b2a97401 weird thing 2018-05-30 07:55:48 +07:00
Oliver Schneider
b799c1eeb5
Merge pull request #2759 from devonhollowood/transmute-same-ptr-ptr
Don't lint lifetime-only transmutes
2018-05-29 21:46:47 +02:00
François Mockers
d372f1674d move lint to restriction group 2018-05-29 21:28:52 +02:00
François Mockers
6a7204f32a only install remark if not on an integration build to avoid ddosing npm 2018-05-29 21:28:52 +02:00
François Mockers
44f4ea6dbf adding to pedantic a lint that check for multiple inherent implementations 2018-05-29 21:28:52 +02:00
Devon Hollowood
9118cd633e Simplify lifetime-differences-only detection
Now instead of reinventing the wheel with differ_only_in_lifetimes(), we
use TyCtxt's erase_regions()
2018-05-29 09:18:49 -07:00
Devon Hollowood
8134863c13 Fix behavior with generic lifetime parameters 2018-05-29 09:18:49 -07:00
Devon Hollowood
96b11a5888 Test that we allow non-static lifetime transmutes 2018-05-29 09:18:49 -07:00