-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Put mtime-on-use behind a feature flag. #6573
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
r? @dwijnand (rust_highfive has picked a reviewer for you, use r? to override) |
SGTM. I think fixing a performance regression trumps here. |
📌 Commit 5f6ede2 has been approved by |
Put mtime-on-use behind a feature flag. This places #6477 behind the `-Z mtime-on-use` feature flag. The change to update the mtime each time a crate is used has caused a performance regression on the rust playground (rust-lang/rust#57774). It is using about 241 pre-built crates in a Docker container. Due to the copy-on-write nature of Docker, it can take a significant amount of time to update the timestamps (over 10 seconds on slower systems). cc @Mark-Simulacrum
☀️ Test successful - checks-travis, status-appveyor |
Update cargo Pull in fix for #57774. 6 commits in ffe65875fd05018599ad07e7389e99050c7915be..907c0febe7045fa02dff2a35c5e36d3bd59ea50d 2019-01-17 23:57:50 +0000 to 2019-01-20 22:31:07 +0000 - Put mtime-on-use behind a feature flag. (rust-lang/cargo#6573) - Fix a typo in the unstable docs (rust-lang/cargo#6569) - Perhaps you meant: foo, bar or foobar (rust-lang/cargo#6550) - Refactor: Create uninstall submodule (rust-lang/cargo#6557) - Fix spurious Windows errors with switch_features_rerun. (rust-lang/cargo#6561) - Stop building on master on Travis. (rust-lang/cargo#6562) r? @Mark-Simulacrum
Thank you for the fast fix. In the long run I think this will be easier to experiment with as an environment variable (that can be set once) then as a flag (that needs to be set on each invocation). cc rust-lang/crates.io#1602. Have we used unstable environment variables in cargo in the past? Similar to how the rollout of incremental compilation had a environment variable. How should they be set up? I am happy to do the work, just could use some guidance. |
This places #6477 behind the
-Z mtime-on-use
feature flag.The change to update the mtime each time a crate is used has caused a performance regression on the rust playground (rust-lang/rust#57774). It is using about 241 pre-built crates in a Docker container. Due to the copy-on-write nature of Docker, it can take a significant amount of time to update the timestamps (over 10 seconds on slower systems).
cc @Mark-Simulacrum