-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 16 pull requests #81545
Rollup of 16 pull requests #81545
Commits on Jan 13, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 8539425 - Browse repository at this point
Copy the full SHA 8539425View commit details -
Configuration menu - View commit details
-
Copy full SHA for edf2e37 - Browse repository at this point
Copy the full SHA edf2e37View commit details
Commits on Jan 22, 2021
-
This patch adds the `core::stream` submodule and implements `core::stream::Stream` in accordance with RFC2996. Add feedback from @camelid
Configuration menu - View commit details
-
Copy full SHA for 0c8db16 - Browse repository at this point
Copy the full SHA 0c8db16View commit details
Commits on Jan 23, 2021
-
Make functional record update/struct update syntax works inside closu…
…res when feature capture_disjoint_fields is enabled
Configuration menu - View commit details
-
Copy full SHA for e94cf57 - Browse repository at this point
Copy the full SHA e94cf57View commit details -
This is a temporary change only, as we wait to resolve dynamic dispatch issues. The `Stream::next` method and corresponding documentation are expected to be fully restored once we have a path to proceed. Ref: rust-lang/rfcs#2996 (comment) update docs
Configuration menu - View commit details
-
Copy full SHA for a1b1132 - Browse repository at this point
Copy the full SHA a1b1132View commit details
Commits on Jan 26, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 328abfb - Browse repository at this point
Copy the full SHA 328abfbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 425a70a - Browse repository at this point
Copy the full SHA 425a70aView commit details -
Configuration menu - View commit details
-
Copy full SHA for c07e558 - Browse repository at this point
Copy the full SHA c07e558View commit details -
Configuration menu - View commit details
-
Copy full SHA for a623ea5 - Browse repository at this point
Copy the full SHA a623ea5View commit details
Commits on Jan 28, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d3c69a4 - Browse repository at this point
Copy the full SHA d3c69a4View commit details -
Co-authored-by: Oli Scherer <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 899aae4 - Browse repository at this point
Copy the full SHA 899aae4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 85ad773 - Browse repository at this point
Copy the full SHA 85ad773View commit details
Commits on Jan 29, 2021
-
rustdoc: Remove unnecessary optional
Previously, the HTML output format was represented by both `Some(OutputFormat::Html)` and `None` so there's no need to have an optional. Instead, `OutputFormat::Html` is explicitly the default and we no longer have a "tri-state enum".
Configuration menu - View commit details
-
Copy full SHA for f620b5c - Browse repository at this point
Copy the full SHA f620b5cView commit details -
Updated Vec::splice documentation
Replacing with equal number of values does not increase the length of the vec. Reference: https://stackoverflow.com/a/62559271/3990767
Configuration menu - View commit details
-
Copy full SHA for 02094f9 - Browse repository at this point
Copy the full SHA 02094f9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e983d7 - Browse repository at this point
Copy the full SHA 5e983d7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63714af - Browse repository at this point
Copy the full SHA 63714afView commit details -
Treat nightlies for a version as complete
This commit makes cfg(version) treat the nightlies for version 1.n.0 as 1.n.0, even though that nightly version might not have all stabilizations and features of the released 1.n.0. This is done for greater convenience for people who want to test a newly stabilized feature on nightly. For users who wish to pin nightlies, this commit adds a -Z assume-incomplete-release option that they can enable if there are any issues due to this change.
Configuration menu - View commit details
-
Copy full SHA for d8b5745 - Browse repository at this point
Copy the full SHA d8b5745View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd18c48 - Browse repository at this point
Copy the full SHA dd18c48View commit details -
Configuration menu - View commit details
-
Copy full SHA for c2c2e8d - Browse repository at this point
Copy the full SHA c2c2e8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for fd5fb86 - Browse repository at this point
Copy the full SHA fd5fb86View commit details -
Configuration menu - View commit details
-
Copy full SHA for 08141a5 - Browse repository at this point
Copy the full SHA 08141a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13ffa43 - Browse repository at this point
Copy the full SHA 13ffa43View commit details -
Configuration menu - View commit details
-
Copy full SHA for 718398c - Browse repository at this point
Copy the full SHA 718398cView commit details -
Don't print error output from rustup when detecting default build triple
Before, it could print this error if no toolchain was configured: ``` error: no default toolchain configured error: backtrace: error: stack backtrace: 0: error_chain::backtrace::imp::InternalBacktrace::new 1: rustup::config::Cfg::toolchain_for_dir 2: rustup_init::run_rustup_inner 3: rustup_init::main 4: std::rt::lang_start::{{closure}} 5: main 6: __libc_start_main 7: _start ```
Configuration menu - View commit details
-
Copy full SHA for 807b5f5 - Browse repository at this point
Copy the full SHA 807b5f5View commit details -
Don't clone LLVM submodule when download-ci-llvm is set
Previously, `downloading_llvm` would check `self.build` while it was still an empty string, and think it was always false. This fixes the check.
Configuration menu - View commit details
-
Copy full SHA for db115f1 - Browse repository at this point
Copy the full SHA db115f1View commit details -
Consider Scalar to be a bool only if its unsigned
This seems right, given that conceptually bools are unsigned, but the implications of this change may have more action at distance that I'm not sure how to exhaustively consider. For instance there are a number of cases where code attaches range metadata if `scalar.is_bool()` holds. Supposedly it would no longer be attached to the `repr(i8)` enums? Though I'm not sure why booleans are being special-cased here in the first place... Fixes rust-lang#80556
Configuration menu - View commit details
-
Copy full SHA for 915a04e - Browse repository at this point
Copy the full SHA 915a04eView commit details
Commits on Jan 30, 2021
-
Rollup merge of rust-lang#79023 - yoshuawuyts:stream, r=KodrAus
Add `core::stream::Stream` [[Tracking issue: rust-lang#79024](rust-lang#79024)] This patch adds the `core::stream` submodule and implements `core::stream::Stream` in accordance with [RFC2996](rust-lang/rfcs#2996). The RFC hasn't been merged yet, but as requested by the libs team in rust-lang/rfcs#2996 (comment) I'm filing this PR to get the ball rolling. ## Documentatation The docs in this PR have been adapted from [`std::iter`](https://doc.rust-lang.org/std/iter/index.html), [`async_std::stream`](https://docs.rs/async-std/1.7.0/async_std/stream/index.html), and [`futures::stream::Stream`](https://docs.rs/futures/0.3.8/futures/stream/trait.Stream.html). Once this PR lands my plan is to follow this up with PRs to add helper methods such as `stream::repeat` which can be used to document more of the concepts that are currently missing. That will allow us to cover concepts such as "infinite streams" and "laziness" in more depth. ## Feature gate The feature gate for `Stream` is `stream_trait`. This matches the `#[lang = "future_trait"]` attribute name. The intention is that only the APIs defined in RFC2996 will use this feature gate, with future additions such as `stream::repeat` using their own feature gates. This is so we can ensure a smooth path towards stabilizing the `Stream` trait without needing to stabilize all the APIs in `core::stream` at once. But also don't start expanding the API until _after_ stabilization, as was the case with `std::future`. __edit:__ the feature gate has been changed to `async_stream` to match the feature gate proposed in the RFC. ## Conclusion This PR introduces `core::stream::{Stream, Next}` and re-exports it from `std` as `std::stream::{Stream, Next}`. Landing `Stream` in the stdlib has been a mult-year process; and it's incredibly exciting for this to finally happen! --- r? `````@KodrAus````` cc/ `````@rust-lang/wg-async-foundations````` `````@rust-lang/libs`````
Configuration menu - View commit details
-
Copy full SHA for ecd7cb1 - Browse repository at this point
Copy the full SHA ecd7cb1View commit details -
Rollup merge of rust-lang#80562 - nagisa:nagisa/bools-are-unsigned, r…
…=eddyb Consider Scalar to be a bool only if its unsigned This seems right, given that conceptually bools are unsigned, but the implications of this change may have more action at distance that I'm not sure how to exhaustively consider. For instance there are a number of cases where code attaches range metadata if `scalar.is_bool()` holds. Supposedly it would no longer be attached to the `repr(i8)` enums? Though I'm not sure why booleans are being special-cased here in the first place... Fixes rust-lang#80556 cc `@eddyb`
Configuration menu - View commit details
-
Copy full SHA for a5c12ea - Browse repository at this point
Copy the full SHA a5c12eaView commit details -
Rollup merge of rust-lang#80886 - RalfJung:stable-raw-ref-macros, r=m…
…-ou-se Stabilize raw ref macros This stabilizes `raw_ref_macros` (rust-lang#73394), which is possible now that rust-lang#74355 is fixed. However, as I already said in rust-lang#73394 (comment), I am not particularly happy with the current names of the macros. So I propose we also change them, which means I am proposing to stabilize the following in `core::ptr`: ```rust pub macro const_addr_of($e:expr) { &raw const $e } pub macro mut_addr_of($e:expr) { &raw mut $e } ``` The macro name change means we need another round of FCP. Cc `````@rust-lang/libs````` Fixes rust-lang#73394
Configuration menu - View commit details
-
Copy full SHA for b94d84d - Browse repository at this point
Copy the full SHA b94d84dView commit details -
Rollup merge of rust-lang#80959 - jhpratt:unsigned_abs-stabilization,…
… r=m-ou-se Stabilize `unsigned_abs` Resolves rust-lang#74913. This PR stabilizes the `i*::unsigned_abs()` method, which returns the absolute value of an integer _as its unsigned equivalent_. This has the advantage that it does not overflow on `i*::MIN`. I have gone ahead and used this in a couple locations throughout the repository.
Configuration menu - View commit details
-
Copy full SHA for 91ea1cb - Browse repository at this point
Copy the full SHA 91ea1cbView commit details -
Rollup merge of rust-lang#81291 - sexxi-goose:fix-struct-update-funct…
…ional-record-update-syntax-error, r=nikomatsakis Support FRU pattern with `[feature(capture_disjoint_fields)]` In case of a functional record update syntax for creating a structure, `ExprUseVisitor` to only detect the precise use of some of the field in the `..x` part of the syntax. However, when we start building MIR, we 1. First, build the place for `x` 2. and then, add precise field projections so that only some parts of `x` end up getting read. When `capture_disjoint_fields` is enabled, and FRU is used within a closure `x` won't be completely captured, and therefore the first step will fail. This PR updates `mir_build` to create a place builder in the first step and then create place from the builder only after applying the field projection. Closes rust-lang/project-rfc-2229#32 r? ``````@nikomatsakis``````
Configuration menu - View commit details
-
Copy full SHA for 7fa991f - Browse repository at this point
Copy the full SHA 7fa991fView commit details -
Rollup merge of rust-lang#81409 - gilescope:chars_count, r=joshtriplett
Slight simplification of chars().count() Slight simplification: No need to call len(), we can just count the number of non continuation bytes. I can't see any reason not to do this, can you?
Configuration menu - View commit details
-
Copy full SHA for c26dd4d - Browse repository at this point
Copy the full SHA c26dd4dView commit details -
Rollup merge of rust-lang#81468 - est31:cfg_version, r=petrochenkov
cfg(version): treat nightlies as complete This PR makes cfg(version) treat the nightlies for version 1.n.0 as 1.n.0, even though that nightly version might not have all stabilizations and features of the released 1.n.0. This is done for greater convenience for people who want to test a newly stabilized feature on nightly, or in other words, give newly stabilized features as many eyeballs as possible. For users who wish to pin nightlies, this commit adds a -Z assume-incomplete-release option that they can enable if they run into any issues due to this change. Implements the suggestion in rust-lang#64796 (comment)
Configuration menu - View commit details
-
Copy full SHA for fe27dea - Browse repository at this point
Copy the full SHA fe27deaView commit details -
Rollup merge of rust-lang#81473 - sanxiyn:write-only-field, r=oli-obk
Warn write-only fields cc `@Boscop's` example in rust-lang#49256.
Configuration menu - View commit details
-
Copy full SHA for 774ba83 - Browse repository at this point
Copy the full SHA 774ba83View commit details -
Rollup merge of rust-lang#81495 - camelid:rustdoc-output_format-optio…
…nal, r=GuillaumeGomez rustdoc: Remove unnecessary optional Previously, the HTML output format was represented by both `Some(OutputFormat::Html)` and `None` so there's no need to have an optional. Instead, `OutputFormat::Html` is explicitly the default and we no longer have a "tri-state enum". r? `````@GuillaumeGomez`````
Configuration menu - View commit details
-
Copy full SHA for b43c1d5 - Browse repository at this point
Copy the full SHA b43c1d5View commit details -
Rollup merge of rust-lang#81499 - SOF3:patch-1, r=sanxiyn
Updated Vec::splice documentation Replacing with equal number of values does not increase the length of the vec. Reference: https://stackoverflow.com/a/62559271/3990767
Configuration menu - View commit details
-
Copy full SHA for 0f11a94 - Browse repository at this point
Copy the full SHA 0f11a94View commit details -
Rollup merge of rust-lang#81501 - calebcartwright:update-rustfmt, r=s…
…anxiyn update rustfmt to v1.4.34 Short summary: Various formatting fixes (several const generic related) and introduction of `imports_granularity` config option Long summary copied from changelog: #### Changed - `merge_imports` configuration has been deprecated in favor of the new `imports_granularity` option. Any existing usage of `merge_imports` will be automatically mapped to the corresponding value on `imports_granularity` with a warning message printed to encourage users to update their config files. #### Added - New `imports_granularity` option has been added which succeeds `merge_imports`. This new option supports several additional variants which allow users to merge imports at different levels (crate or module), and even flatten imports to have a single use statement per item. ([PR rust-lang/rustfmt#4634](rust-lang/rustfmt#4634), [PR rust-lang/rustfmt#4639](rust-lang/rustfmt#4639)) See the section on the configuration site for more information https://rust-lang.github.io/rustfmt/?version=v1.4.33&search=#imports_granularity #### Fixed - Fix erroneous removal of `const` keyword on const trait impl ([rust-lang/rustfmt#4084](rust-lang/rustfmt#4084)) - Fix incorrect span usage wit const generics in supertraits ([rust-lang/rustfmt#4204](rust-lang/rustfmt#4204)) - Use correct span for const generic params ([rust-lang/rustfmt#4263](rust-lang/rustfmt#4263)) - Correct span on const generics to include type bounds ([rust-lang/rustfmt#4310](rust-lang/rustfmt#4310)) - Idempotence issue on blocks containing only empty statements ([rust-lang/rustfmt#4627](rust-lang/rustfmt#4627) and [rust-lang#3868](rust-lang/rustfmt#3868)) - Fix issue with semicolon placement on required functions that have a trailing comment that ends in a line-style comment before the semicolon ([rust-lang/rustfmt#4646](rust-lang/rustfmt#4646)) - Avoid shared interned cfg_if symbol since rustfmt can re-initialize the rustc_ast globals on multiple inputs ([rust-lang/rustfmt#4656](rust-lang/rustfmt#4656)) - Don't insert trailing comma on (base-less) rest in struct literals within macros ([rust-lang/rustfmt#4675](rust-lang/rustfmt#4675))
Configuration menu - View commit details
-
Copy full SHA for 6090c57 - Browse repository at this point
Copy the full SHA 6090c57View commit details -
Rollup merge of rust-lang#81505 - henryboisdequin:cold_path-not-pub, …
…r=sanxiyn `fn cold_path` doesn't need to be pub Fixes rust-lang#81429 Note: this PR also fixes a small typo that I found
Configuration menu - View commit details
-
Copy full SHA for ba40cea - Browse repository at this point
Copy the full SHA ba40ceaView commit details -
Rollup merge of rust-lang#81512 - GuillaumeGomez:cleanup-fixme-rustdo…
…c, r=bugadani Add missing variants in match binding cc `````@bugadani````` `````@CraftSpider````` r? `````@camelid`````
Configuration menu - View commit details
-
Copy full SHA for 596b394 - Browse repository at this point
Copy the full SHA 596b394View commit details -
Rollup merge of rust-lang#81515 - eltociear:patch-7, r=jonas-schievink
Fix typo in pat.rs parentesized -> parenthesized
Configuration menu - View commit details
-
Copy full SHA for 5df611c - Browse repository at this point
Copy the full SHA 5df611cView commit details -
Rollup merge of rust-lang#81519 - jyn514:rustup-toolchain, r=Mark-Sim…
…ulacrum Don't print error output from rustup when detecting default build triple Before, it could print this error if no toolchain was configured: ``` error: no default toolchain configured error: backtrace: error: stack backtrace: 0: error_chain::backtrace::imp::InternalBacktrace::new 1: rustup::config::Cfg::toolchain_for_dir 2: rustup_init::run_rustup_inner 3: rustup_init::main 4: std::rt::lang_start::{{closure}} 5: main 6: __libc_start_main 7: _start ```
Configuration menu - View commit details
-
Copy full SHA for e3905aa - Browse repository at this point
Copy the full SHA e3905aaView commit details -
Rollup merge of rust-lang#81520 - jyn514:rustc2, r=Mark-Simulacrum
Don't clone LLVM submodule when download-ci-llvm is set Previously, `downloading_llvm` would check `self.build` while it was still an empty string, and think it was always false. This fixes the check. This addresses the worst part of rust-lang#76653. There are still some large submodules being downloaded (in particular, `rustc-by-example` is 146 MB, and all the submodules combined are 311 MB), but this is a lot better than the whopping 1.4 GB before.
Configuration menu - View commit details
-
Copy full SHA for 31e7634 - Browse repository at this point
Copy the full SHA 31e7634View commit details