1. 04 6月, 2021 14 次提交
    • B
      Auto merge of #85984 - JohnTitor:rollup-rq0g9ph, r=JohnTitor · 4afa3a80
      bors 提交于
      Rollup of 8 pull requests
      
      Successful merges:
      
       - #85717 (Document `From` impls for cow.rs)
       - #85850 (Remove unused feature gates)
       - #85888 (Fix typo in internal documentation for `TrustedRandomAccess`)
       - #85889 (Restoring the `num_def_ids` function in the CStore API )
       - #85899 (jsondocck small cleanup)
       - #85937 (Fix bad suggestions for code from proc_macro)
       - #85963 (Show `::{{constructor}}` in std::any::type_name().)
       - #85977 (Fix linkcheck script from getting out of sync.)
      
      Failed merges:
      
      r? `@ghost`
      `@rustbot` modify labels: rollup
      4afa3a80
    • Y
      Rollup merge of #85977 - ehuss:linkcheck-nightly, r=Mark-Simulacrum · edb8f653
      Yuki Okushi 提交于
      Fix linkcheck script from getting out of sync.
      
      When there are changes to the linkcheck script, the CI jobs used in the books would download the latest version on master, but run it against nightly. During that 24 hour window, the CI can fail if the script has changes that are incompatible with the last nightly. This fixes it so that it downloads the linkchecker that matches the version of nightly.
      
      This also includes a fix to build with release to make it run much faster (I forgot to add this in #85652).
      edb8f653
    • Y
      Rollup merge of #85963 - m-ou-se:constructor-type-name, r=yaahc · 0a124319
      Yuki Okushi 提交于
      Show `::{{constructor}}` in std::any::type_name().
      
      Fix #84666
      
      Before:
      ```
      [src/main.rs:6] type_name::<T>() = "playground::Velocity"
      [src/main.rs:6] type_name::<T>() = "playground::Velocity"
      ```
      
      After:
      ```
      [src/main.rs:6] type_name::<T>() = "scratchpad::Velocity::{{constructor}}"
      [src/main.rs:6] type_name::<T>() = "scratchpad::Velocity"
      ```
      
      cc ``@scottmcm``
      0a124319
    • Y
      Rollup merge of #85937 - m-ou-se:macro-ref-suggestions, r=estebank · 99fc56b9
      Yuki Okushi 提交于
      Fix bad suggestions for code from proc_macro
      
      Fixes #85932
      
      This disables these suggestions for spans from external macros, while keeping them for macros defined locally:
      
      Before:
      ```
      3 | #[hello]
        | ^^^^^^^^
        | |
        | expected `&mut i32`, found integer
        | help: consider mutably borrowing here: `&mut #[hello]`
      ```
      
      After:
      ```
      3 | #[hello]
        | ^^^^^^^^ expected `&mut i32`, found integer
      ```
      
      Unchanged:
      ```
      26 | macro_rules! bla { () => { x(123); } }
         |                              ^^^
         |                              |
         |                              expected `&mut i32`, found integer
         |                              help: consider mutably borrowing here: `&mut 123`
      ...
      29 |     bla!();
         |     ------- in this macro invocation
      ```
      99fc56b9
    • Y
      Rollup merge of #85899 - klensy:jsondocck-f, r=Mark-Simulacrum · 5b0a49ef
      Yuki Okushi 提交于
      jsondocck small cleanup
      
      updated `shlex` (there was some fix https://github.com/comex/rust-shlex/commit/6db4704fcad8393dd6947b1d31720327546a84a2)
      replaced `lazy_static` with `once_cell`
      removed `serde` direct dependency (`serde_json` will pull it)
      5b0a49ef
    • Y
      Rollup merge of #85889 - denismerigoux:master, r=petrochenkov · 3500e763
      Yuki Okushi 提交于
      Restoring the `num_def_ids` function in the CStore API
      
      ## The context
      
      I am the maintainer of https://github.com/hacspec/hacspec, an embedded Rust DSL aimed at cryptographic specifications. As it is normal for an embedded DSL, Hacspec's compiler relies on being plugged to the internal API of the Rust compiler, which is unstable and subject to changes.
      
      ## The problem
      
      The Hacspec compiler features its own typechecker, that performs an additional, more restrictive typechecking pass over the Rust code of a crate. To complete this typechecking, the Hacspec compiler needs to retrieve the signature of functions defined in non-local imported crates. Rather than retrieving these signatures on-demand, the Hacspec compiler pre-populates its typechecking context with all the Hacspec-compatible symbols defined in non-local crates first. This requires having a way to iterate over all the definitions in a non-local crate.
      
      I used to do this with `CrateMetadata::all_def_path_hashes_and_def_ids`, but this function was deleted in 908bf5a3. Then, I fellback on `CStore::num_def_ids`, exploiting the fact that all the `DefIds` for a crate have the same `krate_num` and range from `0` to `num_def_ids(krate_num)`. But `num_def_ids` was deleted in b6120bfb.
      
      I looked to the `Cstore::item_children_untracked` function to replicate the feature of traversing through all the `DefId` for a crate, using `CRATE_DEF_INDEX` as the root, but this does not work as recursive `Cstore::item_children_untracked` calls do not reach all the symbols I was able to reach using the two previous methods.
      
      ## Description of this PR
      
      This PR simply restores in the public API of `CStore` the `num_def_ids` function, giving the size of the definition table for a given crate.
      3500e763
    • Y
      Rollup merge of #85888 - steffahn:fix_internal_trustedrandomaccess_docs, r=Mark-Simulacrum · f6aaf053
      Yuki Okushi 提交于
      Fix typo in internal documentation for `TrustedRandomAccess`
      
      `next_back` is a method of DoubleEndedIterator, not Iterator.
      f6aaf053
    • Y
      Rollup merge of #85850 - bjorn3:less_feature_gates, r=jyn514 · 36f1ed6d
      Yuki Okushi 提交于
      Remove unused feature gates
      
      The first commit removes a usage of a feature gate, but I don't expect it to be controversial as the feature gate was only used to workaround a limitation of rust in the past. (closures never being `Clone`)
      
      The second commit uses `#[allow_internal_unstable]` to avoid leaking the `trusted_step` feature gate usage from inside the index newtype macro. It didn't work for the `min_specialization` feature gate though.
      
      The third commit removes (almost) all feature gates from the compiler that weren't used anyway.
      36f1ed6d
    • Y
      Rollup merge of #85717 - fee1-dead:document-cow, r=yaahc · df9ea79f
      Yuki Okushi 提交于
      Document `From` impls for cow.rs
      df9ea79f
    • B
      Auto merge of #85954 - flip1995:clippyup, r=Manishearth · 1c82bb29
      bors 提交于
      Update Clippy
      
      Bi-weekly Clippy update.
      
      r? `@Manishearth`
      1c82bb29
    • B
      Auto merge of #85867 - steffahn:remove_unnecessary_specfromiter_impls, r=Mark-Simulacrum · f1cee2c6
      bors 提交于
      Remove unnecessary SpecFromIter impls
      
      Unless I’m missing something, these `SpecFromIter<&'a T, …> for Vec<T>` implementations were completely unused.
      f1cee2c6
    • E
      Build linkcheck script as release to run faster. · 095f09a5
      Eric Huss 提交于
      095f09a5
    • E
      Fix linkcheck script from getting out of sync. · 98c90522
      Eric Huss 提交于
      98c90522
    • B
      Auto merge of #85617 - hi-rustin:rustin-patch-fix, r=estebank · cc77ba46
      bors 提交于
      shrinking the deprecated method span
      
      part of https://github.com/rust-lang/rust/issues/85403
      
      r? `@estebank`
      cc77ba46
  2. 03 6月, 2021 26 次提交