Skip to content
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 17 pull requests #63544

Merged
merged 49 commits into from
Aug 14, 2019
Merged

Rollup of 17 pull requests #63544

merged 49 commits into from
Aug 14, 2019

Commits on Jul 30, 2019

  1. Deduplicate some error messages

    chansuke committed Jul 30, 2019
    Configuration menu
    Copy the full SHA
    a1df132 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2019

  1. Configuration menu
    Copy the full SHA
    43a2cbd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a694782 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d9294a2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f395787 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5ce8f7a View commit details
    Browse the repository at this point in the history

Commits on Aug 9, 2019

  1. Configuration menu
    Copy the full SHA
    2644205 View commit details
    Browse the repository at this point in the history

Commits on Aug 10, 2019

  1. Configuration menu
    Copy the full SHA
    51ce121 View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2019

  1. Configuration menu
    Copy the full SHA
    fa7a40c View commit details
    Browse the repository at this point in the history
  2. ci: move mirrors to their standalone bucket

    Currently mirrors are stored in the rust-lang-ci2 S3 bucket along with
    CI toolchains. This is problematic for multiple reasons:
    
    - CI IAM credentials are allowed to both edit and delete those files.
      A malicious user gaining access to those credentials would be able to
      change our mirrored dependencies, possibly backdooring the compiler.
    
    - Contents of the rust-lang-ci2 bucket are disposable except for the
      mirrors' content. When we implement backups for S3 buckets we'd have
      to replicate just that part of the bucket, complicating the backup
      logic and increasing the chance of mistakes. A standalone bucket will
      be way easier to backup.
    
    This commit switches our CI to use the new rust-lang-ci-mirrors bucket.
    pietroalbini committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    eb832b2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    91af5c2 View commit details
    Browse the repository at this point in the history
  4. DiagnosticBuilder docs

    RalfJung committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    fecf305 View commit details
    Browse the repository at this point in the history
  5. Apply suggestions from code review

    Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
    Observer42 and Centril committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    e30480c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    34dcca2 View commit details
    Browse the repository at this point in the history
  7. typeck: Prohibit RPIT types that inherit lifetimes

    This commit prohibits return position `impl Trait` types that "inherit
    lifetimes" from the parent scope. The intent is to forbid cases that are
    challenging until they can be addressed properly.
    davidtwco committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    861d1bb View commit details
    Browse the repository at this point in the history
  8. use ParamName to track in-scope lifetimes instead of Ident

    This allows us to record "fresh" lifetime names for cases like `impl
    Foo<'_>`.
    nikomatsakis committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    18e5453 View commit details
    Browse the repository at this point in the history
  9. revamp how we handle elision in async fn

    We now always make fresh lifetimne parameters for all elided
    lifetimes, whether they are in the inputs or outputs. But then
    we generate `'_` in the case of elided lifetimes from the outputs.
    
    Example:
    
    ```rust
    async fn foo<'a>(x: &'a u32) -> &u32 { .. }
    ```
    
    becomes
    
    ```rust
    type Foo<'a, 'b> = impl Future<Output = &'b u32>;
    fn foo<'a>(x: &'a u32) -> Foo<'a, '_>
    ```
    nikomatsakis committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    03e7b96 View commit details
    Browse the repository at this point in the history
  10. use modern everywhere

    nikomatsakis committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    cbe8518 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a02a171 View commit details
    Browse the repository at this point in the history
  12. revamp comment

    nikomatsakis committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    948739f View commit details
    Browse the repository at this point in the history
  13. fix README.md

    nikomatsakis committed Aug 12, 2019
    Configuration menu
    Copy the full SHA
    ad214fe View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2019

  1. clear in-scope lifetimes for nested items in HIR lowering

    This was causing us to incorrectly think the lifetimes were
    already declared on the scope for the nested item, when in fact
    they are not inherited.
    nikomatsakis committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    e4756e6 View commit details
    Browse the repository at this point in the history
  2. bless tests

    nikomatsakis committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    d7c7c52 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d824edf View commit details
    Browse the repository at this point in the history
  4. ci: add a check for clock drift

    Recently we encountered multiple spurious failures where the crates.io
    certificate was reported as expired, even though it's currently due to
    expire in a few months. This adds some code to our CI to check for clock
    drifts, to possibly find the cause or rule out a bad VM clock.
    pietroalbini committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    686553d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    84cab92 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    18d69c8 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    105b3a0 View commit details
    Browse the repository at this point in the history
  8. RELEASES.md: ? is one of three Kleene operators

    The slash and quotes in ?/“Kleene” appeared to define “Kleene” as the
    name for the ? operator, which is not the case.  Rust has three Kleene
    operators *, +, ?.
    
    (Pointed out by /u/Sharlinator on Reddit.)
    
    Signed-off-by: Anders Kaseorg <andersk@mit.edu>
    andersk committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    c259d1c View commit details
    Browse the repository at this point in the history
  9. Fix typo in error message.

    ehuss committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    ea1a9a0 View commit details
    Browse the repository at this point in the history
  10. review comments

    estebank committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    84e202e View commit details
    Browse the repository at this point in the history
  11. Apply Centril's suggestion

    Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
    ehuss and Centril committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    643ddfa View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2019

  1. Rollup merge of rust-lang#62760 - chansuke:dedupe-error-messages, r=z…

    …ackmdavis
    
    Deduplicate error messages in `librsctc_mir`
    
    Deduplicated the error messages in `librustc_mir`. rust-lang#62022
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    dda33ca View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#62849 - davidtwco:prohibit-inheriting-lifet…

    …imes, r=nikomatsakis
    
    typeck: Prohibit RPIT types that inherit lifetimes
    
    Part of rust-lang#61949.
    
    This PR prohibits return position `impl Trait` types that "inherit
    lifetimes" from the parent scope. The intent is to forbid cases that are
    challenging until they can be addressed properly.
    
    cc @nikomatsakis
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    3f18112 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#63383 - Centril:async-lifetime-elision-test…

    …s, r=nikomatsakis
    
    `async fn` lifetime elision tests
    
    Add `async fn` version of the tests in rust-lang#61207 per the first checkbox in rust-lang#62121 (comment).
    Works towards resolving blockers in rust-lang#63209.
    
    r? @nikomatsakis
    cc @cramertj
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    3d5387d View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#63421 - clarfon:escape_default, r=dtolnay

    Implement Clone, Display for ascii::EscapeDefault
    
    This will mimic the same behaviour as the `char` version; `Display`ing the iterator will give its string representation without advancing it.
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    b5df4bb View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#63459 - eddyb:issue-63430, r=petrochenkov

    syntax: account for CVarArgs being in the argument list.
    
    Fixes rust-lang#63430 by testing for `1` argument (the `CVarArgs` itself) instead of `0`.
    
    Note that the error has basically been impossible to trigger since the change that caused rust-lang#63430, so perhaps we need an audit of untested errors.
    
    Also, this check probably belongs in AST validation/HIR lowering, but I'd rather fix it in place for now.
    
    r? @petrochenkov cc @dlrobertson
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    76bd7d6 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#63475 - iluuu1994:issue-62632, r=Centril

    Bring back suggestion for splitting `<-` into `< -`
    
    Closes rust-lang#62632
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    c824839 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#63485 - pietroalbini:new-mirror-bucket, r=a…

    …lexcrichton
    
    ci: move mirrors to their standalone bucket
    
    Currently mirrors are stored in the rust-lang-ci2 S3 bucket along with
    CI toolchains. This is problematic for multiple reasons:
    
    - CI IAM credentials are allowed to both edit and delete those files.
      A malicious user gaining access to those credentials would be able to
      change our mirrored dependencies, possibly compromising the compiler.
    
    - Contents of the rust-lang-ci2 bucket are disposable except for the
      mirrors' content. When we implement backups for S3 buckets we'd have
      to replicate just that part of the bucket, complicating the backup
      logic and increasing the chance of mistakes. A standalone bucket will
      be way easier to backup.
    
    This commit switches our CI to use the new rust-lang-ci-mirrors bucket.
    
    r? @alexcrichton
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    6092519 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#63486 - Observer42:document-from-trait-in-b…

    …inaryheap, r=Centril
    
    Document `From` trait for `BinaryHeap`
    
    This PR solves part of rust-lang#51430. (cc @skade)
    
    The comments described allocation and time complexity of the conversion from Vec to BinaryHeap
    
    The complexity description of BinaryHeap operations is available at mod level:
    https://doc.rust-lang.org/alloc/collections/binary_heap/index.html
    
    But it doesn't show up at BinaryHeap page:
    https://doc.rust-lang.org/alloc/collections/binary_heap/struct.BinaryHeap.html
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    4e1b865 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#63488 - RalfJung:diagnostic-docs, r=zackmdavis

    improve DiagnosticBuilder docs
    
    Cc @estebank @oli-obk
    
    Is there any way to do something like `span_note` but with a label attached to the span? I thought `.span_note().span_label()` would do it, but no, that does not work.
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    f47226e View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#63493 - sd234678:remove-unneeded-comment-fr…

    …om-src/libcore/hash, r=Centril
    
    Remove unneeded comment in src/libcore/hash/mod.rs
    
    Split out from larger PR rust-lang#63347 - other sections in there require further discussion.
    
    r? @Centril
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    0098d0c View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#63499 - nikomatsakis:issuee-63388-async-fn-…

    …elision-self-mut-self, r=cramertj
    
    handle elision in async fn correctly
    
    We now always make fresh lifetimne parameters for all elided
    lifetimes, whether they are in the inputs or outputs. But then
    we generate `'_` in the case of elided lifetimes from the outputs.
    
    Example:
    
    ```rust
    async fn foo<'a>(x: &'a u32) -> &u32 { .. }
    ```
    
    becomes
    
    ```rust
    type Foo<'a, 'b> = impl Future<Output = &'b u32>;
    fn foo<'a>(x: &'a u32) -> Foo<'a, '_>
    ```
    
    Fixes rust-lang#63388
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    4134241 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#63501 - nikomatsakis:issue-63500-async-anon…

    …-impl-lifetime, r=cramertj
    
    use `ParamName` to track in-scope lifetimes instead of Ident
    
    Also, clear in-scope lifetimes when visiting nested items.
    
    Fixes rust-lang#63500.
    Fixes rust-lang#63225.
    Fixes rust-lang#52532.
    
    r? @cramertj
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    5741e29 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#63508 - estebank:compromice, r=petrochenkov

    Do not ICE when synthesizing spans falling inside unicode chars
    
    Fix rust-lang#61226.
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    43f4990 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#63511 - pietroalbini:pa-ci-date, r=Mark-Sim…

    …ulacrum
    
    ci: add a check for clock drift
    
    Recently we encountered multiple spurious failures where the crates.io
    certificate was reported as expired, even though it's currently due to
    expire in a few months. This adds some code to our CI to check for clock
    drifts, to possibly find the cause or rule out a bad VM clock.
    
    cc rust-lang#63510
    r? @Mark-Simulacrum
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    051598b View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#63512 - 95th:master, r=cramertj

    Provide map_ok and map_err method for Poll<Option<Result<T, E>>>
    
    Currently `map_ok` and `map_err` methods are given for `Poll<Result<T, E>>`.
    
    This PR adds these methods for `Poll<Option<Result<T, E>>>` as they are helpful in stream building code.
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    d5dd097 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#63529 - andersk:release-notes-kleene, r=Cen…

    …tril
    
    RELEASES.md: ? is one of three Kleene operators
    
    The slash and quotes in ?/“Kleene” appeared to define “Kleene” as the name for the `?` operator, which is not the case. Rust has three Kleene operators `*`, `+`, `?`.
    
    ([Pointed out](https://www.reddit.com/r/rust/comments/cprt0z/rust_1370_prerelease_testing/ewr90y3/) by /u/Sharlinator on Reddit.)
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    92e5508 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#63530 - ehuss:typo-statemement, r=centril

    Fix typo in error message.
    Centril committed Aug 14, 2019
    Configuration menu
    Copy the full SHA
    a8bb375 View commit details
    Browse the repository at this point in the history