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

distinct perf updates #2049

Merged
merged 4 commits into from
Oct 26, 2016
Merged

distinct perf updates #2049

merged 4 commits into from
Oct 26, 2016

Commits on Oct 24, 2016

  1. feat(distinct): remove distinctKey, distinct signature change and…

    … perf improvements
    
    - Adds a limited Set ponyfill for runtimes that do not support `Set`
    - `distinct` now supports an optional keySelector argument that the user can use to select the value to check distinct on
    - `distinctKey` is removed as it is redundant
    - `distinct` no longer supports a comparer function argument, as there is little to no use case for such an argument that could not be covered by the keySelector
    - updates tests to remove tests that do not make sense and test new functionality
    
    BREAKING CHANGE: `distinctKey` has been removed. Use `distinct`
    BREAKING CHANGE: `distinct` operator has changed, first argument is an
    optional `keySelector`. The custom `compare` function is no longer
    supported.
    
    resolves #2009
    benlesh committed Oct 24, 2016
    Configuration menu
    Copy the full SHA
    30f76c3 View commit details
    Browse the repository at this point in the history
  2. perf(distinct): increase distinct() perf by improving deopts

    - moves keySelector call to a different function with a try catch to improve V8 optimization
    - distinct calls with no keySelector passed now take a fully optimized path, doubling speed again
    
    related #2009
    benlesh committed Oct 24, 2016
    Configuration menu
    Copy the full SHA
    b2373a1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    11894d0 View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2016

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