Commit graph

7003 commits

Author SHA1 Message Date
Lzu Tao
abafec5640 macos: symlink rustc dev libs to /usr/local/lib
Due to System Integrity Protection (SIP), exporting
LD_LIBRARY_PATH will not work on macOS systems.
Therefore, rather than disable SIP, we could symlink
those rust dev libs to /usr/local/bin.
I already tried install_name_tool(1) but couldn't make
clippy-driver work on CI for whatever reasons.
2019-10-22 10:14:39 +07:00
Lzu Tao
b869eeb2a4 build: improve script and travis config
* fix a diff failure on windows

See https://travis-ci.com/rust-lang/rust-clippy/jobs/245971932#L1625
for an example.

* use cmp instead of diff > /dev/null

* clone single branch instead of clone then checking out

* do not decrypt key if have no diff change
2019-10-22 10:14:39 +07:00
bors
1d0f62570b Auto merge of #4702 - lzutao:build/debug-integration-clippy, r=phansch
build: use clippy's debug build in integration test

changelog: none
2019-10-20 11:02:36 +00:00
Lzu Tao
d4fef9f4d0 build: use clippy's debug build in integration test 2019-10-19 21:09:16 +07:00
bors
cbedd97b3a Auto merge of #4692 - lzutao:use-opt-profile-rtim, r=phansch
build: use release build of RTIM

rustup-toolchain-install-master on Travis Windows builds is
unexpectedly slower compared to when run on other OSes.
This commit tries to use release build of RTIM as a mean to
improve performance there.

changelog: none
2019-10-19 09:14:29 +00:00
bors
dbc40400de Auto merge of #4700 - lzutao:rustup-65535, r=phansch
rustup https://github.com/rust-lang/rust/pull/65535

cc https://github.com/rust-lang/rust/issues/65585
changelog: none
2019-10-19 05:41:18 +00:00
Lzu Tao
4c7387e965 rustup https://github.com/rust-lang/rust/pull/65535 2019-10-19 12:27:21 +07:00
bors
850ad526df Auto merge of #4696 - rust-lang:need-not-use-proc-macro, r=phansch
Omit proc macros from `must_use_candidate`

This fixes #4684.

changelog: none
2019-10-18 19:40:45 +00:00
Andre Bogus
d723b35aee Omit proc macros from must_use_candidate 2019-10-18 15:54:25 +02:00
bors
c0b2411f06 Auto merge of #4657 - Licenser:additional-restrictions, r=flip1995
Additional restrictions

Add restriction lints for `panic!`, `unreachable!`, `todo!` and `.expect(...)`

changelog: Add 5 new `restriction` lints: `panic`, `unreachable`, `todo`, `option_expect_used`, `result_expect_used`
2019-10-18 10:32:01 +00:00
Lzu Tao
7d7451a67a build: use release build of RTIM
rustup-toolchain-install-master on Travis Windows builds is
unexpectedly slower when it was running on other OSes.
This commit tries to use release build of RTIM as a mean to
improve performance there.
2019-10-18 14:58:26 +07:00
Heinz N. Gies
7f454d8d06 Split out tests 2019-10-18 07:40:48 +02:00
Heinz N. Gies
a7ad78f3eb Add expect
Co-Authored-By: Philipp Krones <hello@philkrones.com>
2019-10-18 07:37:58 +02:00
Heinz N. Gies
98dc3aabea Add todo and tests 2019-10-18 07:37:58 +02:00
Heinz Gies
8d911fe988 add restirction for unreachable and panic 2019-10-18 07:35:25 +02:00
bors
ee6fc1bead Auto merge of #4687 - lzutao:before-cache-appveyor, r=Manishearth
appveyor: on_finish run after saving cache

According to <https://www.appveyor.com/docs/build-configuration/#build-pipeline>
on_finish step runs after saving cache step, we should use after_test instead.

changelog: none
2019-10-18 04:53:16 +00:00
bors
77092a54d7 Auto merge of #4685 - HMPerson1:patch-1, r=Manishearth
Update adding_lints.md

changelog: none
2019-10-18 02:51:04 +00:00
bors
feb7e624bb Auto merge of #4686 - lzutao:fix-travis-windows-stuck, r=Manishearth
travis: Windows build might be stuck as non-supported languages

See <https://docs.travis-ci.com/user/reference/windows/#supported-languages>
for list of Windows supported languages.

I'm sorry for making Travis Windows build stuck.

changelog: none
2019-10-18 01:02:08 +00:00
bors
14a0f36617 Auto merge of #4683 - HMPerson1:inefficient_to_string, r=Manishearth
Add `inefficient_to_string` lint

Closes #4586

changelog: Add `inefficient_to_string` lint, which checks for calling `to_string` on `&&str`, which would bypass the `str`'s specialization
2019-10-17 23:48:55 +00:00
Michael Zhang
2106a23966
Update help text in inefficient_to_string
Co-Authored-By: Manish Goregaokar <manishsmail@gmail.com>
2019-10-17 19:13:32 -04:00
bors
e979eb4cc5 Auto merge of #4689 - Manishearth:rustup, r=Yaahc
Rustup to rustc 1.40.0-nightly (fa0f7d008 2019-10-17)

changelog: none
2019-10-17 23:00:08 +00:00
Manish Goregaokar
fcad3cb9ea syntax::ext -> syntax_expand 2019-10-17 15:57:48 -07:00
Lzu Tao
607f795349 appveyor: on_finish run after saving cache
Use after_test instead
2019-10-18 01:09:37 +07:00
Lzu Tao
c6159961ae travis: Windows build might be stuck as non-supported languages
See <https://docs.travis-ci.com/user/reference/windows/#supported-languages>
for list of Windows supported languages.
2019-10-18 01:09:32 +07:00
bors
4a388e1fd5 Auto merge of #4659 - lzutao:caching, r=phansch
Cache cargo binaries

changelog: none
2019-10-17 17:16:36 +00:00
HMPerson1
ffb53e7457
Add run-rustfix to inefficient_to_string 2019-10-17 12:41:45 -04:00
Michael Zhang
3328cb25ce
Update adding_lints.md 2019-10-17 12:33:42 -04:00
HMPerson1
106a72592c
Dogfood for inefficient_to_string 2019-10-16 17:12:41 -04:00
HMPerson1
76b44f34b9
Add inefficient_to_string lint 2019-10-16 15:54:20 -04:00
Lzu Tao
d81191e87d Use CI caching and cargo feature install-upgrade
* do not force to install rustfmt
* use cargo-cache
* disable bash trace
* clone single branch
2019-10-16 13:14:24 +07:00
bors
07c06738b7 Auto merge of #4669 - lzutao:minimal-rustup, r=phansch
build: use rustup minimal profile to speed up Rust installation time

changelog: none
2019-10-16 04:13:38 +00:00
bors
52cebb1f8f Auto merge of #4673 - Manishearth:rustup, r=phansch
Rustup to rustc 1.40.0-nightly (237d54ff6 2019-10-15)

changelog: none
2019-10-15 19:58:52 +00:00
Lzu Tao
7de7d0c97b build: use rustup minimal profile to speed up Rust installation time 2019-10-16 02:38:31 +07:00
Manish Goregaokar
608d09c26c Rustup to rustc 1.40.0-nightly (237d54ff6 2019-10-15) 2019-10-15 12:29:28 -07:00
bors
ddb5cb787d Auto merge of #4668 - lzutao:update-rtim, r=flip1995
build: switch back to latest official RTIM release

Closes #4666

changelog: none
2019-10-15 18:34:30 +00:00
bors
778ace37e5 Auto merge of #4671 - flip1995:ice-4671, r=phansch
Fix ICE in `use_self` lint

The ICE is produced by building this span:
55e7818a06/clippy_lints/src/use_self.rs (L55-L60)

`span` can start in the file the macro is defined in and end where the macro is called.

changelog: Fix ICE in `use_self` lint
2019-10-15 17:57:10 +00:00
flip1995
2f108079da
Enable integration tests again
futures-rs, hyper, rls
2019-10-15 15:13:09 +02:00
flip1995
c9dc2b5f6e
Fix ICE in use_self lint 2019-10-15 15:11:29 +02:00
flip1995
2d6adb9424
Add regression test for ICE in use-self lint 2019-10-15 15:02:09 +02:00
Lzu Tao
0b39946b20 travis: break out before_script stage to test setup-toolchain work 2019-10-15 16:47:16 +07:00
Lzu Tao
63a4cd60cd build: do not trace deploy step 2019-10-15 16:47:16 +07:00
Lzu Tao
f4ea5251cb Early exit if there is any errors 2019-10-15 16:47:16 +07:00
Lzu Tao
02dcd629ae build: switch back to latest official RTIM release 2019-10-15 16:47:11 +07:00
bors
55e7818a06 Auto merge of #4619 - james9909:unused-self, r=flip1995
Add a lint for unused self

changelog: Adds a new lint: `unused_self`

Closes #4550.
2019-10-15 08:16:39 +00:00
James Wang
adf58868e9
Change terminology from static to associated 2019-10-15 09:58:12 +02:00
James Wang
8b50599cb4
Switch to OnlyBodies 2019-10-15 09:58:12 +02:00
James Wang
e23a424b31
Change lint to be pedantic 2019-10-15 09:58:11 +02:00
James Wang
e64b27525b
Remove prints 2019-10-15 09:58:11 +02:00
James Wang
664522badd
Add a new lint for unused self 2019-10-15 09:58:11 +02:00
bors
8fae2dd3c1 Auto merge of #4560 - rust-lang:must-use-pure, r=phansch
new lints around`#[must_use]`

changelog: Add `must_use_candidate` lint,  add `must-use-unit` lint, add `double_must_use` lint

The first one checks if an public function or method has no mutable argument and mutates no non-local data and lints if it has no `#[must_use]` attribute. It will skip inner functions, because those are usually highly local and the attribute doesn't have as much benefit there.

The second lints `#[must_use]` attributes on functions and methods that return unit. Those attributes are likely a remnant from a refactoring that removed the return value.

The last one lints for `#[must_use]` attributrs without text on functions that return a type which is already marked `#[must_use]`. This has no auto-suggestion, because while it would be easy to do, there may be value in writing a detailed text for the attribute instead.

This fixes #4526
2019-10-14 17:33:30 +00:00