Commit graph

108 commits

Author SHA1 Message Date
Matthias Krüger 7a15061fbc tests: use std:🧵:available_parallelism() instead of num_cpus to get thread count
removes the dependency added in https://github.com/rust-lang/rust-clippy/pull/8451
2022-03-01 21:32:18 +01:00
flip1995 bca4ee7971
Implement internal lint for MSRV lints
This internal lint checks if the `extract_msrv_attrs!` macro is used if
a lint has a MSRV. If not, it suggests to add this attribute to the lint
pass implementation.
2022-03-01 09:40:07 +00:00
Matthias Krüger a89c7958f5 tests: default to more threads for ui-tests
Benchmarks (tested on i5-7200U, 2 core 4 threads)

```
master branch:

cargo test // prime caches
cargo --color=always test  70,39s user 21,91s system 180% cpu 51,035 total
cargo --color=always test  70,77s user 22,13s system 180% cpu 51,579 total
cargo --color=always test  70,97s user 22,12s system 180% cpu 51,673 total

cargo --color=always nextest run  78,74s user 22,27s system 220% cpu 45,829 total
cargo --color=always nextest run  78,46s user 21,92s system 224% cpu 44,674 total
cargo --color=always nextest run  78,31s user 22,21s system 228% cpu 43,909 total

Patched (ui_speedup branch)

cargo test // prime cache
cargo --color=always test  97,51s user 32,02s system 288% cpu 44,905 total
cargo --color=always test  99,19s user 31,91s system 276% cpu 47,436 total
cargo --color=always test  98,47s user 31,84s system 284% cpu 45,744 total

cargo --color=always nextest run  102,18s user 30,80s system 350% cpu 37,902 total
cargo --color=always nextest run  99,75s user 29,86s system 350% cpu 36,935 total
cargo --color=always nextest run  100,36s user 29,93s system 351% cpu 37,061 total
```
2022-02-20 14:07:41 +01:00
Cameron Steffen 88fd090531 Factor out ui_test suite 2022-02-08 15:11:48 -06:00
Alex Macleod 04dce4aed4 Support cargo dev bless for tests with revisions 2022-02-06 13:00:17 +00:00
Cameron Steffen 3afbae33ab Remove __CLIPPY_INTERNAL_TESTS env var 2022-01-17 12:37:05 -06:00
Cameron Steffen 51dbbf3c4c Refactor test utils 2022-01-10 15:22:17 -06:00
Cameron Steffen e2ce4f9462 Combine internal features in clippy_lints 2022-01-09 18:35:12 -06:00
Nick Mathewson 65d1f83d2c Extend [unused_io_amount] to cover AsyncRead and AsyncWrite.
Clippy helpfully warns about code like this, telling you that you
probably meant "write_all":

    fn say_hi<W:Write>(w: &mut W) {
       w.write(b"hello").unwrap();
    }

This patch attempts to extend the lint so it also covers this
case:

    async fn say_hi<W:AsyncWrite>(w: &mut W) {
       w.write(b"hello").await.unwrap();
    }

(I've run into this second case several times in my own programming,
and so have my coworkers, so unless we're especially accident-prone
in this area, it's probably worth addressing?)

This patch covers the Async{Read,Write}Ext traits in futures-rs,
and in tokio, since both are quite widely used.

changelog: [`unused_io_amount`] now supports AsyncReadExt and AsyncWriteExt.
2021-12-31 12:10:59 -05:00
bors f82bf470d0 Auto merge of #7957 - surechen:fix_for_7854, r=giraffate
Support suggestion for #7854

I think the detection of parking_lot's mutex and rwlock is valuable, so submit this pr, please help judge and review, thank you.

Make let_underscore_lock support parking_lot.(Fixes #7854)

changelog: Make let_underscore_lock support parking_lot
2021-11-15 00:50:28 +00:00
surechen 634e79c655 Support suggestion for #7854
I think the detection of parking_lot's mutex and rwlock is valuable, so submit this pr, please help judge and review, thank you.

Make let_underscore_lock support parking_lot.

changelog: Make let_underscore_lock support parking_lot
2021-11-15 08:36:36 +08:00
Andre Bogus a4ede72b3d update most tests to 2021 edition 2021-10-30 14:50:53 +02:00
Andre Bogus e88c956e1e avoid eq_op in test code 2021-10-19 21:02:30 +02:00
Cameron Steffen f6c5d580b8 Improve depinfo error 2021-09-24 10:27:11 -05:00
Labelray 543b638dbe Add new lint if_then_panic 2021-09-24 22:14:20 +08:00
Cameron Steffen 1074bad06d Rename test_build_base to test 2021-09-08 14:07:03 -05:00
Cameron Steffen ecaf7acd4f Use relative path for test builds 2021-09-08 14:07:03 -05:00
Cameron Steffen e3b171dcf0 Use relative exe paths 2021-09-08 14:07:03 -05:00
Cameron Steffen 2e15c8054d Make host libs -L flag optional 2021-09-08 14:07:03 -05:00
Cameron Steffen cea46dd9fe Use relative deps path 2021-09-08 14:07:03 -05:00
Cameron Steffen 5d3fc6fc08 Deny warnings in test modules 2021-09-08 08:21:06 -05:00
Cameron Steffen 8c05a15f0a
Use binary-dep-depinfo to resolve UI dependencies 2021-09-08 11:13:45 +02:00
Jason Newcomb a7f376fbd3
Add lint manual_split_once 2021-08-16 09:34:58 -04:00
Cameron Steffen 3c517b3b24 Improve conflicting rlibs error again 2021-07-26 11:38:53 -05:00
Cameron Steffen ea97a5a5d7 Add clippy_utils and if_chain to extern crate list 2021-07-23 17:00:00 -05:00
Igor Aleksanov 310a204306 Provide different message for bootstrapped compiler 2021-06-21 06:57:57 +03:00
Igor Aleksanov faa2fa7490 Improve appearance 2021-06-20 08:32:43 +03:00
Igor Aleksanov d4c9fe7549 Improve visibility&helpfulness of the 'found multiple rlibs' error 2021-06-20 08:25:30 +03:00
Cameron Steffen c51472b4b0 Add clippy.toml to project and tests 2021-05-26 16:53:13 -05:00
Joshua Nelson af0dde24b9 Implement x.py test src/tools/clippy --bless
- Add clippy_dev to the rust workspace

  Before, it would give an error that it wasn't either included or
  excluded from the workspace:

  ```
  error: current package believes it's in a workspace when it's not:
  current:   /home/joshua/rustc/src/tools/clippy/clippy_dev/Cargo.toml
  workspace: /home/joshua/rustc/Cargo.toml

  this may be fixable by adding `src/tools/clippy/clippy_dev` to the `workspace.members` array of the manifest located at: /home/joshua/rustc/Cargo.toml
  Alternatively, to keep it out of the workspace, add the package to the `workspace.exclude` array, or add an empty `[workspace]` table to the package's manifest.
  ```

- Change clippy's copy of compiletest not to special-case
  rust-lang/rust. Using OUT_DIR confused `clippy_dev` and it couldn't find
  the test outputs. This is one of the reasons why `cargo dev bless` used
  to silently do nothing (the others were that `CARGO_TARGET_DIR` and
  `PROFILE` weren't set appropriately).

- Run clippy_dev on test failure

I tested this by removing a couple lines from a stderr file, and they
were correctly replaced.

- Fix clippy_dev warnings
2021-04-27 16:57:29 +00:00
flip1995 f6d1f368db Merge commit 'b40ea209e7f14c8193ddfc98143967b6a2f4f5c9' into clippyup 2021-04-08 17:50:13 +02:00
flip1995 f64149dd04 Merge commit '928e72dd10749875cbd412f74bfbfd7765dbcd8a' into clippyup 2021-02-25 11:25:22 +01:00
flip1995 8b9f4a0d34 Merge commit '70c0f90453701e7d6d9b99aaa1fc6a765937b736' into clippyup 2021-02-11 15:04:38 +01:00
flip1995 ac912be984 Merge commit '95c0459217d1661edfa794c8bb122452b92fb485' into clippyup 2021-01-30 18:06:34 +01:00
flip1995 488153ff2f Merge commit '953f024793dab92745fee9cd2c4dee6a60451771' into clippyup 2021-01-15 10:56:44 +01:00
flip1995 8eca423ea1 Merge commit 'c1664c50b27a51f7a78c93ba65558e7c33eabee6' into clippyup 2020-12-06 15:01:03 +01:00
flip1995 fbf2430f02 Merge commit '2f6439ae6a6803d030cceb3ee14c9150e91b328b' into clippyup 2020-10-09 12:45:29 +02:00
flip1995 027780ca2c Merge commit '09bd400243ed6f7059fedc0c1623aae3792521d6' into clippyup 2020-08-11 17:50:45 +02:00
flip1995 6f25adbd5a Merge commit '2ca58e7dda4a9eb142599638c59dc04d15961175' into clippyup 2020-07-14 14:59:59 +02:00
Aaron Hill e11b873c70 Stop using old version of syn in rustc-workspace-hack
None of the tools seem to need syn 0.15.35, so we can just build syn
1.0.

This was causing an issue with clippy's `compile-test` program: since
multiple versions of `syn` would exist in the build directory, we would
non-deterministically pick one based on filesystem iteration order. If
the pre-1.0 version of `syn` was picked, a strange build error would
occur (see
https://github.com/rust-lang/rust/pull/73594#issuecomment-647671463)

To prevent this kind of issue from happening again, we now panic if we
find multiple versions of a crate in the build directly, instead of
silently picking the first version we find.
2020-06-22 13:29:39 -04:00
Lzu Tao 8db24840f7 Merge commit 'ff0993c5e9162ddaea78e83d0f0161e68bd4ea73' into clippy 2020-06-09 14:36:01 +00:00
flip1995 b6c58f0d72 Temp fix: don't run cargo lint tests in rustc test suite 2020-05-28 17:19:30 +02:00
flip1995 a0e9f9bd0d Merge commit '7ea7cd165ad6705603852771bf82cc2fd6560db5' into clippyup2 2020-05-28 15:45:24 +02:00
Lzu Tao 9eb913a7e2 Fix error E0460 when compiled on Rustc repo 2020-02-09 19:02:27 +07:00
Lzu Tao 4c2a5f857a compile-test: Handle CARGO_TARGET_DIR and transitive deps 2020-02-05 21:55:03 +07:00
xiongmao86 bf9e6ca9f6 Fix lint warning in compile-test.rs 2020-01-12 19:54:17 +08:00
Manish Goregaokar aa5a95f00c Rustup to rustc 1.41.0-nightly (a0d40f8bd 2019-11-18) 2019-11-18 23:49:58 -08:00
msizanoen1 805fef0301 Only pass rlibs in target deps directory 2019-11-10 11:14:29 +07:00
msizanoen1 7d2e813634 Add target libs directory to search path 2019-11-08 12:54:28 +07:00
msizanoen1 52f9927ff5 Add the TARGET_LIBS environment variable for rustc CI testing 2019-11-07 22:48:14 +07:00