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 4 pull requests #90313

Closed
wants to merge 8 commits into from

Commits on Oct 26, 2021

  1. Configuration menu
    Copy the full SHA
    6b449b4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cdee839 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    60ffac0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f934429 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#90296 - CAD97:rip-lerp, r=Mark-Simulacrum

    Remove fNN::lerp
    
    Lerp is [surprisingly complex with multiple tradeoffs depending on what guarantees you want to provide](rust-lang#86269 (comment)) (and what you're willing to drop for raw speed), so we don't have consensus on what implementation to use, let alone what signature - `t.lerp(a, b)` nicely puts `a, b` together, but makes dispatch to lerp custom types with the same signature basically impossible, and major ecosystem crates (e.g. nalgebra, glium) use `a.lerp(b, t)`, which is easily confusable. It was suggested to maybe provide a `Lerp<T>` trait and `t.lerp([a, b])`, which _could_ be implemented by downstream math libraries for their types, but also significantly raises the bar from a simple fNN method to a full trait, and does nothing to solve the implementation question. (It also raises the question of whether we'd support higher-order bezier interpolation.)
    
    The only consensus we have is the lack of consensus, and the [general temperature](rust-lang#86269 (comment)) is that we should just remove this method (giving the method space back to 3rd party libs) and revisit this if (and likely only if) IEEE adds lerp to their specification.
    
    If people want a lerp, they're _probably_ already using (or writing) a math support library, which provides a lerp function for its custom math types and can provide the same lerp implementation for the primitive types via an extension trait.
    
    See also [previous Zulip discussion](https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs/topic/lerp.20API.20design)
    
    cc `@clarfonthey` (original PR author), `@m-ou-se` (original r+), `@scottmcm` (last voice in tracking issue, prompted me to post this)
    
    Closes rust-lang#86269 (removed)
    matthiaskrgr authored Oct 26, 2021
    Configuration menu
    Copy the full SHA
    68eeecc View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#90302 - GuillaumeGomez:rm-unneeded-into_ite…

    …r, r=jyn514
    
    Remove unneeded into_iter
    
    As `@camelid` mentionned [here](rust-lang#89430 (comment)), the `into_iter` was unneeded.
    
    r? `@camelid`
    matthiaskrgr authored Oct 26, 2021
    Configuration menu
    Copy the full SHA
    5feb198 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#90303 - WaffleLapkin:regression_test_90164,…

    … r=JohnTitor
    
    Add regression test for issue 90164
    
    Closes rust-lang#90164 (previously fixed by rust-lang#90181)
    matthiaskrgr authored Oct 26, 2021
    Configuration menu
    Copy the full SHA
    d7822b5 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#90305 - vandenheuvel:test_issue_87258, r=Ma…

    …rk-Simulacrum
    
    Add regression test for rust-lang#87258
    
    Closes rust-lang#87258.
    matthiaskrgr authored Oct 26, 2021
    Configuration menu
    Copy the full SHA
    7bb3917 View commit details
    Browse the repository at this point in the history