New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 7 pull requests #65990
Rollup of 7 pull requests #65990
Commits on Oct 26, 2019
-
Update comments re type parameter hack in object safety
To check if a method's receiver type is object safe, we create a new receiver type by substituting in a bogus type parameter (let's call it `U`) for `Self`, and checking that the unmodified receiver type implements `DispatchFromDyn<receiver type with Self = U>`. It would be better to use `dyn Trait` directly, and the only reason we don't is because it triggers another check that `Trait` is object safe, resulting in a query cycle. Once the feature `object_safe_for_dispatch` (tracking issue rust-lang#43561) is stabilized, this will no longer be the case, and we'll be able to use `dyn Trait` as the unsized `Self` type. I've updated the comments in object_safety.rs accordingly.
Commits on Oct 29, 2019
-
-
ci: upload toolstates.json to rust-lang-ci2
Uploading the toolstate data for each commit will help our release tooling understand which components are failing, to possibly skip shipping broken tools to users.
-
Co-Authored-By: lzutao <taolzu@gmail.com>
Commits on Oct 30, 2019
-
ci: revert msys2 ca-certificates hack
The hack was added because upstream msys2 broke the ca-certificates package, but since then it has been fixed. This reverts CI to use the upstream package.
-
-
-
ci: move toolstates.json to /tmp/toolstate/ and docker mount it
Before this commit toolstates.json was stored in /tmp and it wasn't mounted outside the build container. That caused uploading the file in the upload-artifacts task to fail, as the file was missing on the host. Mounting /tmp/toolstates.json alone is not the best approach: if the file is missing when the container is started the Docker engine will create a *directory* named /tmp/toolstates.json. The Docker issue could be solved by pre-creating an empty file named /tmp/toolstates.json, but doing that could cause problems if bootstrap fails to generate the file and the toolstate scripts receive an empty JSON. The approach I took in this commit is to instead mount a /tmp/toolstate directory inside Docker, and create the toolstates.json file in it. That also required a small bootstrap change to ensure the directory is created if it's missing.
-
-
Change CrateMetadata's source_map_import_info from RwLock to Once
This field is created lazily on first use and after that is read only. That's exactly what Once is for.
-
Commits on Oct 31, 2019
-
Rollup merge of rust-lang#65274 - pietroalbini:ci-upload-toolstate, r…
…=alexcrichton Upload toolstates.json to rust-lang-ci2 This PR does two things: * Following up with rust-lang#65202, it migrates deploying artifacts to CI in a script. Both uploading release artifacts and CPU stats were merged into the same script, designing it to be easily extended. * Uploads the toolstate JSON to `rust-lang-ci2` along with the release artifacts, both for Linux and Windows. This is needed because @RalfJung wants to stop shipping MIRI when its tests are failing, and the toolstate repo doesn't have entries for each commit. Having the toolstate data (just for that specific commit) on `rust-lang-ci2` will simplify the code a lot. r? @alexcrichton cc @RalfJung
-
Rollup merge of rust-lang#65434 - GuillaumeGomez:long-err-explanation…
…-E0577, r=Dylan-DPC Add long error explanation for E0577 Part of rust-lang#61137. r? @kinnison
-
Rollup merge of rust-lang#65850 - mikeyhew:patch-1, r=nikomatsakis
Update comments re type parameter hack in object safety To check if a method's receiver type is object safe, we create a new receiver type by substituting in a bogus type parameter (let's call it `U`) for `Self`, and checking that the unmodified receiver type implements `DispatchFromDyn<receiver type with Self = U>`. It would be better to use `dyn Trait` directly, and the only reason we don't is because it triggers another check that `Trait` is object safe, resulting in a query cycle. Once the feature `object_safe_for_dispatch` (tracking issue rust-lang#43561) is stabilized, this will no longer be the case, and we'll be able to use `dyn Trait` as the unsized `Self` type. I've updated the comments in object_safety.rs accordingly. cc @Centril @nikomatsakis @bovinebuddha
-
Rollup merge of rust-lang#65955 - pietroalbini:master-revert-msys2-ha…
…ck, r=Mark-Simulacrum ci: revert msys2 ca-certificates hack The hack was added because upstream msys2 broke the ca-certificates package, but since then it has been fixed. This reverts CI to use the upstream package. Part of rust-lang#65767
-
Rollup merge of rust-lang#65959 - vext01:immediate-docstring, r=david…
…twco Fix an incorrect docstring for Immediate in librustc_mir/interpret. I suspect `Immediate` was once called `Value`?
-
Rollup merge of rust-lang#65979 - spastorino:crate-metadata-mutexes, …
…r=Mark-Simulacrum Switch CrateMetadata's source_map_import_info from RwLock to Once
-
Rollup merge of rust-lang#65981 - RalfJung:check-your-gates, r=Centril
work around aggressive syntax feature gating This works around rust-lang#65860; fixing `rustc +nightly lib.rs --test --edition 2018` for libcore and thus unblocking https://github.com/RalfJung/miri-test-libstd.