-
Notifications
You must be signed in to change notification settings - Fork 78
Merge package:stream_transform
#1657
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
Merged
Merged
Changes from all commits
Commits
Show all changes
167 commits
Select commit
Hold shift + click to select a range
84801f0
New package stream_transform
natebosch 05740a1
Add public library and buffer utility (dart-lang/stream_transform#2)
natebosch c24bf71
Add `debounce` utilities and prepare for publish (dart-lang/stream_tr…
natebosch 92af9f8
Implement concat (dart-lang/stream_transform#6)
natebosch 4d7b858
Fix analyzer error (dart-lang/stream_transform#8)
natebosch ef70491
Implement merge and mergeAll (dart-lang/stream_transform#7)
natebosch 6c0c44d
Drop copy of combineAllMatcher
natebosch 95ec1fc
Implement tap (dart-lang/stream_transform#9)
natebosch 6610696
Implement switchMap and switchLatest (dart-lang/stream_transform#10)
natebosch 507dd70
Add throttle, audit, and scan (dart-lang/stream_transform#11)
jonahwilliams df9ae5c
Bump version for publish
natebosch 7f491e9
Fix non-strong compile (dart-lang/stream_transform#12)
natebosch 164a80d
Add `asyncWhere` (dart-lang/stream_transform#13)
natebosch 5139e40
README for asyncWhere
natebosch b878740
Run non-strong analyzer on travis (dart-lang/stream_transform#15)
natebosch 9f817bc
Add `fromHandlers` for easier broadcast streams (dart-lang/stream_tra…
natebosch 03eed27
Fix broadcast bug for Audit and clarify behavior (dart-lang/stream_tr…
natebosch dff871c
Fix throttle broadcast bug (dart-lang/stream_transform#23)
natebosch 11bb00f
Call `tap` data callback once per event (dart-lang/stream_transform#26)
natebosch d7a7825
Use sync forwarders in `fromHandlers` (dart-lang/stream_transform#27)
natebosch 9a20c98
Use sync forwarders for `merge` (dart-lang/stream_transform#28)
natebosch 5b3c27c
Ensure timers are started before awaits in tests (dart-lang/stream_tr…
natebosch cb14253
Use sync forwarders for `switchLatest` (dart-lang/stream_transform#30)
natebosch a7466a6
Rewrite concat (dart-lang/stream_transform#32)
natebosch 52ecefc
Use sync forwarders in buffer (dart-lang/stream_transform#31)
natebosch 1ef29b6
Fix asyncWhere for broadcast streams (dart-lang/stream_transform#33)
natebosch ffb0e43
Prepare to publish 0.0.6
natebosch 17ede92
Add fromBind to replace direct StreamTransformer (dart-lang/stream_tr…
natebosch a365c36
Add startWith, startWithMany, and startWithStream (dart-lang/stream_t…
natebosch a5980fe
Prepare to publish 0.0.7
natebosch 09210cd
Add takeUntil (dart-lang/stream_transform#38)
natebosch 8d577d0
Add asyncMapBuffer (dart-lang/stream_transform#39)
natebosch 4e93049
Enable some lints
kevmoo 5d9b067
Add missing copyright headers
kevmoo f5af29b
test on Chrome and Firefox
kevmoo 75ed4c2
Updates for Dart 2.0 core library changes (wave 2.2)
leafpetersen 9fc4f3a
Exclude stable and old SDK on travis
natebosch fc8fadf
Merge pull request dart-lang/stream_transform#42 from dart-lang/corel…
leafpetersen b1a5ca6
Rename concat as followedBy (dart-lang/stream_transform#43)
natebosch 9d17768
Clean up internal uses of concat (dart-lang/stream_transform#44)
natebosch 83e552b
Explicitly handle null callback for tap (dart-lang/stream_transform#45)
natebosch 2e9888b
Use latest conventions for Travis (dart-lang/stream_transform#46)
natebosch a05045b
Add `chainTransformers` and `map` utilities (dart-lang/stream_transfo…
natebosch fd4b5f4
Allow Iterable argument to mergeAll (dart-lang/stream_transform#48)
natebosch 55d124c
Forward errors thrown during `asyncWhere` (dart-lang/stream_transform…
natebosch 3c2c0ca
Add `concurrentAsyncMap` (dart-lang/stream_transform#50)
natebosch 5bd79f1
Cast Stream of Streams (dart-lang/stream_transform#52)
natebosch 40f6dad
Stop running --no-strong analyzer (dart-lang/stream_transform#53)
natebosch cc4e216
Allow the non-dev Dart 2 SDK (dart-lang/stream_transform#54)
natebosch 1ef7d9a
Run dartfmt --fix to drop optional `new` (dart-lang/stream_transform#55)
natebosch 584b855
Skip tests on dev channel (dart-lang/stream_transform#56)
kevmoo 6ab1113
Add more lints used in package:pedantic (dart-lang/stream_transform#58)
natebosch 4254811
Drop `fromBind` utility (dart-lang/stream_transform#59)
natebosch 1a13cc1
Add whereType transformer (dart-lang/stream_transform#60)
natebosch 2deb47d
enable pedantic lints (dart-lang/stream_transform#61)
kevmoo f2f0626
Allow a `FutureOr` return in `scan` (dart-lang/stream_transform#64)
natebosch cda88ae
Add `combineLatest` (dart-lang/stream_transform#65)
natebosch 75611df
Add `combineLatestAll` (dart-lang/stream_transform#67)
brettapeters aa9fc6e
Change onListen bailouts to asserts (dart-lang/stream_transform#68)
natebosch 3918079
Enable a bunch of lints
natebosch 9ab34fc
Enforce and fix cascade_invocations
natebosch 252870c
Enforce and fix prefer_const_constructors
natebosch cd105db
Enforce and fix prefer_typting_uninitialized_variables
natebosch 6901653
Enforce and mark for unawaited_futures
natebosch 62cd8f5
Enforce and fix unnecessary_parenthesis
natebosch 252cf30
Add missing copyright header (dart-lang/stream_transform#70)
brettapeters 073f53f
Remove usage of Set literal (dart-lang/stream_transform#72)
natebosch ccea759
Bump minimum SDK to 2.2.0 (dart-lang/stream_transform#73)
natebosch d39ec72
Explicitly test on earliest supported stable SDK (dart-lang/stream_tr…
natebosch 34adff9
Make tap's onError arguments have specific types (dart-lang/stream_tr…
TastyPi 13aa1c3
Prepare to release 0.0.17 (dart-lang/stream_transform#76)
natebosch 8503dd7
Enable and fix strict-raw-types checks (dart-lang/stream_transform#78)
natebosch 45f181a
Add asyncMapSample transform (dart-lang/stream_transform#79)
natebosch a1cfd86
enable prefer_generic_function_type_aliases lint (dart-lang/stream_tr…
kevmoo dbc38a6
Inline some typedefs (dart-lang/stream_transform#81)
natebosch 3ff2e66
Rewrite transformers as extension methods (dart-lang/stream_transform…
natebosch 14455ec
Add extension comments and regroup them (dart-lang/stream_transform#84)
natebosch b0e2e74
Merge asyncWhere and whereType to same extension (dart-lang/stream_tr…
natebosch eecbabd
Add an example (dart-lang/stream_transform#86)
natebosch 13df7f2
Prepare to publish (dart-lang/stream_transform#87)
natebosch 085d395
Drop non-extension methods (dart-lang/stream_transform#88)
natebosch 44ed28d
Add concurrentAsyncExpand (dart-lang/stream_transform#90)
natebosch 32cda0d
Fix travis to fail on analysis lints (dart-lang/stream_transform#91)
natebosch ad2a637
Refactor tracking of multiple stream subscriptions (dart-lang/stream_…
natebosch a6e207e
Prepare to publish (dart-lang/stream_transform#94)
natebosch 19df27c
Remove author from pubspec (dart-lang/stream_transform#95)
natebosch b501497
Fix newly enforced package:pedantic lints (dart-lang/stream_transform…
natebosch 9cac3ae
Handle `null` returns from cancelled subscriptions (dart-lang/stream_…
natebosch 58e0f74
Drop the _WhereType transformer definition (dart-lang/stream_transfor…
natebosch 82db7f1
Fix the description of debounce (dart-lang/stream_transform#101)
natebosch 0a210ab
Strengthen Travis checks (dart-lang/stream_transform#102)
natebosch c4ab194
Add leading and trailing support to debounce (dart-lang/stream_transf…
natebosch 8ea51b3
Prepare to publish (dart-lang/stream_transform#104)
natebosch 1512a1e
Refactor to avoid `.cast<S>()` (dart-lang/stream_transform#105)
natebosch 2b3cbd2
docs: fix spelling of debounce (dart-lang/stream_transform#107)
maxlapides 6aa8aeb
Improve docs for switchMap (dart-lang/stream_transform#109)
creativecreatorormaybenot e11a46d
Readme: badgese for travis and package version (dart-lang/stream_tran…
kevmoo 56a2cad
Bump min SDK to workaround broken analyzer (dart-lang/stream_transfor…
natebosch 7e0545d
Remove unused async import. (dart-lang/stream_transform#113)
MichaelRFairhurst 6e78dd3
Put examples in code blocks for better dart doc (dart-lang/stream_tra…
jtmcdole 2664a19
Remove error upgrades (dart-lang/stream_transform#118)
natebosch 0bbb6d0
Migrate to null safety (dart-lang/stream_transform#119)
natebosch ce8d082
Refactor to remove StreamTransformer instantiation (dart-lang/stream_…
natebosch 8bb79ad
Add trailing argument to throttle (dart-lang/stream_transform#123)
natebosch 7cd0d9e
Allow null values in asyncMapSample and buffer (dart-lang/stream_tran…
natebosch 69f0c13
Close sink on trailing throttle without pending (dart-lang/stream_tra…
natebosch dce07a6
Prepare to publish (dart-lang/stream_transform#126)
natebosch cc74a72
Migrate to GitHub Actions (dart-lang/stream_transform#127)
athomas 417cb8a
Publish stable version of stream_transform (dart-lang/stream_transfor…
kevmoo 3a7b15b
Update LICENSE (dart-lang/stream_transform#130)
franklinyow d486804
Fix newly enforced lint (dart-lang/stream_transform#131)
kevmoo 9ec8e84
Add dependabot
kevmoo ef2074e
Bump dart-lang/setup-dart from 0.3 to 1 (dart-lang/stream_transform#133)
dependabot[bot] fbeb8df
Dart format with latest SDK (dart-lang/stream_transform#134)
kevmoo a8d719c
Wait for cancel before next listen in switchLatest (dart-lang/stream_…
lrhn 942fd9b
Migrate to pkg:lints recommended (dart-lang/stream_transform#138)
kevmoo fcf4b0f
Refactor a callback to async/await (dart-lang/stream_transform#139)
natebosch 06fe43d
Bump actions/checkout from 2 to 3 (dart-lang/stream_transform#141)
dependabot[bot] da50cb8
Make a separate library for async expand methods (dart-lang/stream_tr…
natebosch 2a73eac
Start table with comparisons to ReactiveX (dart-lang/stream_transform…
natebosch dab46d1
Implement `sample`, add `longPoll` to `buffer` (dart-lang/stream_tran…
natebosch 8cdeeec
Rephrase "Returns a stream" docs (dart-lang/stream_transform#149)
natebosch b11fead
Remove deprecated experimental invariant_booleans lint rule (dart-lan…
srawlins e282122
Extend timing buffer in audit test (dart-lang/stream_transform#154)
natebosch 1f4638d
update CI; prep for publishing (dart-lang/stream_transform#155)
devoncarew 3a55d4c
Add whereNotNull (dart-lang/stream_transform#156)
natebosch 27b9483
Fix test compatibility with Dart 3 (dart-lang/stream_transform#159)
natebosch a6f370c
Bump actions/checkout from 3.1.0 to 3.2.0 (dart-lang/stream_transform…
dependabot[bot] fefc4f8
Migrate from no-implicit-casts to strict-casts (dart-lang/stream_tran…
srawlins e0a8088
Fix CI badge in readme
kevmoo 0d8f173
Drop legacy SDK test, bump min SDK to 2.18, update and fix lints (dar…
kevmoo 4e0b41c
Call out missed events in startWith Doc (dart-lang/stream_transform#151)
natebosch 884efe9
Bump actions/checkout from 3.2.0 to 3.3.0 (dart-lang/stream_transform…
dependabot[bot] 8e5d502
Bump dart-lang/setup-dart from 1.3 to 1.4 (dart-lang/stream_transform…
dependabot[bot] befcb88
Use fake_async over waiting for timers with delays (dart-lang/stream_…
natebosch daf63d8
Forward errors from trigger in takeUntil (dart-lang/stream_transform#…
natebosch 1c2c48d
Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (dart-lang/stream_trans…
dependabot[bot] 1a4c148
Bump actions/checkout from 3.3.0 to 3.5.0 (dart-lang/stream_transform…
dependabot[bot] 3d1658e
Bump actions/checkout from 3.5.0 to 3.5.2 (dart-lang/stream_transform…
dependabot[bot] 50c6c54
blast_repo fixes (dart-lang/stream_transform#170)
devoncarew b2e160b
Bump actions/checkout from 3.5.2 to 3.5.3 (dart-lang/stream_transform…
dependabot[bot] 8406831
Bump actions/checkout from 3.5.3 to 3.6.0 (dart-lang/stream_transform…
dependabot[bot] 0415b4b
Bump dart-lang/setup-dart from 1.5.0 to 1.5.1 (dart-lang/stream_trans…
dependabot[bot] bb46069
Bump actions/checkout from 3.6.0 to 4.1.0 (dart-lang/stream_transform…
dependabot[bot] c49647c
Bump actions/checkout from 4.1.0 to 4.1.1 (dart-lang/stream_transform…
dependabot[bot] db300b6
Bump dart-lang/setup-dart from 1.5.1 to 1.6.0 (dart-lang/stream_trans…
dependabot[bot] 3d8fb7f
Update and fix latest lints, bump min SDK to 3.1 (dart-lang/stream_tr…
kevmoo 1db723d
Bump dart-lang/setup-dart from 1.6.0 to 1.6.2 (dart-lang/stream_trans…
dependabot[bot] ccc92b5
Bump actions/checkout from 4.1.1 to 4.1.2 (dart-lang/stream_transform…
dependabot[bot] 8578165
Bump actions/checkout from 4.1.2 to 4.1.4 (dart-lang/stream_transform…
dependabot[bot] 6830fed
Bump dart-lang/setup-dart from 1.6.2 to 1.6.4 (dart-lang/stream_trans…
dependabot[bot] 883a88e
blast_repo fixes (dart-lang/stream_transform#184)
devoncarew 5014aaf
Bump actions/checkout from 4.1.4 to 4.1.5 in the github-actions group…
dependabot[bot] 83fd0d6
Bump actions/checkout from 4.1.5 to 4.1.6 in the github-actions group…
dependabot[bot] 28436bf
Remove default onData for transformByHandlers (dart-lang/stream_trans…
natebosch 7d1c52c
Replace Future.wait with Iterable<Future>.wait (dart-lang/stream_tran…
natebosch 630a441
Drop checks for unsound null values (dart-lang/stream_transform#189)
natebosch 0d0621e
Bump the github-actions group with 2 updates (dart-lang/stream_transf…
dependabot[bot] 28e8006
Bump actions/checkout from 4.1.7 to 4.2.0 in the github-actions group…
dependabot[bot] bc01cd9
Add a shared ignoreArgument callback (dart-lang/stream_transform#190)
natebosch 3a87059
fix "throttle" docs typo (dart-lang/stream_transform#193)
bryanoltman 00223b4
Bump actions/checkout from 4.2.0 to 4.2.2 in the github-actions group…
dependabot[bot] d83abd9
Bump dart-lang/setup-dart in the github-actions group (dart-lang/stre…
dependabot[bot] d07a900
Merge package:stream_transform into the tools monorepo
mosuem 9ee62d4
Add issue template and other fixes
mosuem 19a4b38
Moving fixes
mosuem 80e4dfd
Merge branch 'main' into merge-stream_transform-package
mosuem File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| --- | ||
| name: "package:stream_transform" | ||
| about: "Create a bug or file a feature request against package:stream_transform." | ||
| labels: "package:stream_transform" | ||
| --- |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,73 @@ | ||
| name: package:stream_transform | ||
|
|
||
| on: | ||
| # Run on PRs and pushes to the default branch. | ||
| push: | ||
| branches: [ main ] | ||
| paths: | ||
| - '.github/workflows/stream_transform.yaml' | ||
| - 'pkgs/stream_transform/**' | ||
| pull_request: | ||
| branches: [ main ] | ||
| paths: | ||
| - '.github/workflows/stream_transform.yaml' | ||
| - 'pkgs/stream_transform/**' | ||
| schedule: | ||
| - cron: "0 0 * * 0" | ||
|
|
||
| env: | ||
| PUB_ENVIRONMENT: bot.github | ||
|
|
||
|
|
||
| defaults: | ||
| run: | ||
| working-directory: pkgs/stream_transform/ | ||
|
|
||
| jobs: | ||
| # Check code formatting and static analysis on a single OS (linux) | ||
| # against Dart dev. | ||
| analyze: | ||
| runs-on: ubuntu-latest | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| sdk: [dev] | ||
| steps: | ||
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | ||
| - uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94 | ||
| with: | ||
| sdk: ${{ matrix.sdk }} | ||
| - id: install | ||
| name: Install dependencies | ||
| run: dart pub get | ||
| - name: Check formatting | ||
| run: dart format --output=none --set-exit-if-changed . | ||
| if: always() && steps.install.outcome == 'success' | ||
| - name: Analyze code | ||
| run: dart analyze --fatal-infos | ||
| if: always() && steps.install.outcome == 'success' | ||
|
|
||
| # Run tests on a matrix consisting of two dimensions: | ||
| # 1. OS: ubuntu-latest, (macos-latest, windows-latest) | ||
| # 2. release channel: dev | ||
| test: | ||
| needs: analyze | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| # Add macos-latest and/or windows-latest if relevant for this package. | ||
| os: [ubuntu-latest] | ||
| # Bump SDK for Legacy tests when changing min SDK. | ||
| sdk: [3.1, dev] | ||
| steps: | ||
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | ||
| - uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94 | ||
| with: | ||
| sdk: ${{ matrix.sdk }} | ||
| - id: install | ||
| name: Install dependencies | ||
| run: dart pub get | ||
| - name: Run tests | ||
| run: dart test -p chrome,vm --test-randomize-ordering-seed=random | ||
| if: always() && steps.install.outcome == 'success' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| .pub/ | ||
| .dart_tool/ | ||
| build/ | ||
| packages | ||
| pubspec.lock | ||
| .packages |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,185 @@ | ||
| ## 2.1.1 | ||
|
|
||
| - Require Dart 3.1 or greater | ||
| - Forward errors from the `trigger` future through to the result stream in | ||
| `takeUntil`. Previously an error would have not closed the stream, and instead | ||
| raised as an unhandled async error. | ||
| - Move to `dart-lang/tools` monorepo. | ||
|
|
||
| ## 2.1.0 | ||
|
|
||
| - Add `whereNotNull`. | ||
|
|
||
| ## 2.0.1 | ||
|
|
||
| - Require Dart 2.14 or greater. | ||
| - Wait for the future returned from `StreamSubscription.cancel()` before | ||
| listening to the subsequent stream in `switchLatest` and `switchMap`. | ||
|
|
||
| ## 2.0.0 | ||
|
|
||
| - Migrate to null safety. | ||
| - Improve tests of `switchMap` and improve documentation with links and | ||
| clarification. | ||
| - Add `trailing` argument to `throttle`. | ||
|
|
||
| ## 1.2.0 | ||
|
|
||
| - Add support for emitting the "leading" event in `debounce`. | ||
|
|
||
| ## 1.1.1 | ||
|
|
||
| - Fix a bug in `asyncMapSample`, `buffer`, `combineLatest`, | ||
| `combineLatestAll`, `merge`, and `mergeAll` which would cause an exception | ||
| when cancelling a subscription after using the transformer if the original | ||
| stream(s) returned `null` from cancelling their subscriptions. | ||
|
|
||
| ## 1.1.0 | ||
|
|
||
| - Add `concurrentAsyncExpand` to interleave events emitted by multiple sub | ||
| streams created by a callback. | ||
|
|
||
| ## 1.0.0 | ||
|
|
||
| - Remove the top level methods and retain the extensions only. | ||
|
|
||
| ## 0.0.20 | ||
|
|
||
| - Add extension methods for most transformers. These should be used in place | ||
| of the current methods. All current implementations are deprecated and will | ||
| be removed in the next major version bump. | ||
| - Migrating typical use: Instead of | ||
| `stream.transform(debounce(Duration(seconds: 1)))` use | ||
| `stream.debounce(Duration(seconds: 1))`. | ||
| - To migrate a usage where a `StreamTransformer` instance is stored or | ||
| passed see "Getting a StreamTransformer instance" on the README. | ||
| - The `map` and `chainTransformers` utilities are no longer useful with the | ||
| new patterns so they are deprecated without a replacement. If you still have | ||
| a need for them they can be replicated with `StreamTransformer.fromBind`: | ||
|
|
||
| ``` | ||
| // Replace `map(convert)` | ||
| StreamTransformer.fromBind((s) => s.map(convert)); | ||
|
|
||
| // Replace `chainTransformers(first, second)` | ||
| StreamTransformer.fromBind((s) => s.transform(first).transform(second)); | ||
| ``` | ||
|
|
||
| ## 0.0.19 | ||
|
|
||
| - Add `asyncMapSample` transform. | ||
|
|
||
| ## 0.0.18 | ||
|
|
||
| - Internal cleanup. Passed "trigger" streams or futures now allow `<void>` | ||
| generic type rather than an implicit `dynamic>` | ||
|
|
||
| ## 0.0.17 | ||
|
|
||
| - Add concrete types to the `onError` callback in `tap`. | ||
|
|
||
| ## 0.0.16+1 | ||
|
|
||
| - Remove usage of Set literal which is not available before Dart 2.2.0 | ||
|
|
||
| ## 0.0.16 | ||
|
|
||
| - Allow a `combine` callback to return a `FutureOr<T>` in `scan`. There are no | ||
| behavior changes for synchronous callbacks. **Potential breaking change** In | ||
| the unlikely situation where `scan` was used to produce a `Stream<Future>` | ||
| inference may now fail and require explicit generic type arguments. | ||
| - Add `combineLatest`. | ||
| - Add `combineLatestAll`. | ||
|
|
||
| ## 0.0.15 | ||
|
|
||
| - Add `whereType`. | ||
|
|
||
| ## 0.0.14+1 | ||
|
|
||
| - Allow using non-dev Dart 2 SDK. | ||
|
|
||
| ## 0.0.14 | ||
|
|
||
| - `asyncWhere` will now forward exceptions thrown by the callback through the | ||
| result Stream. | ||
| - Added `concurrentAsyncMap`. | ||
|
|
||
| ## 0.0.13 | ||
|
|
||
| - `mergeAll` now accepts an `Iterable<Stream>` instead of only `List<Stream>`. | ||
|
|
||
| ## 0.0.12 | ||
|
|
||
| - Add `chainTransformers` and `map` for use cases where `StreamTransformer` | ||
| instances are stored as variables or passed to methods other than `transform`. | ||
|
|
||
| ## 0.0.11 | ||
|
|
||
| - Renamed `concat` as `followedBy` to match the naming of `Iterable.followedBy`. | ||
| `concat` is now deprecated. | ||
|
|
||
| ## 0.0.10 | ||
|
|
||
| - Updates to support Dart 2.0 core library changes (wave | ||
| 2.2). See [issue 31847][sdk#31847] for details. | ||
|
|
||
| [sdk#31847]: https://github.com/dart-lang/sdk/issues/31847 | ||
|
|
||
| ## 0.0.9 | ||
|
|
||
| - Add `asyncMapBuffer`. | ||
|
|
||
| ## 0.0.8 | ||
|
|
||
| - Add `takeUntil`. | ||
|
|
||
| ## 0.0.7 | ||
|
|
||
| - Bug Fix: Streams produced with `scan` and `switchMap` now correctly report | ||
| `isBroadcast`. | ||
| - Add `startWith`, `startWithMany`, and `startWithStream`. | ||
|
|
||
| ## 0.0.6 | ||
|
|
||
| - Bug Fix: Some transformers did not correctly add data to all listeners on | ||
| broadcast streams. Fixed for `throttle`, `debounce`, `asyncWhere` and `audit`. | ||
| - Bug Fix: Only call the `tap` data callback once per event rather than once per | ||
| listener. | ||
| - Bug Fix: Allow canceling and re-listening to broadcast streams after a | ||
| `merge` transform. | ||
| - Bug Fix: Broadcast streams which are buffered using a single-subscription | ||
| trigger can be canceled and re-listened. | ||
| - Bug Fix: Buffer outputs one more value if there is a pending trigger before | ||
| the trigger closes. | ||
| - Bug Fix: Single-subscription streams concatted after broadcast streams are | ||
| handled correctly. | ||
| - Use sync `StreamControllers` for forwarding where possible. | ||
|
|
||
| ## 0.0.5 | ||
|
|
||
| - Bug Fix: Allow compiling switchLatest with Dart2Js. | ||
| - Add `asyncWhere`: Like `where` but allows an asynchronous predicate. | ||
|
|
||
| ## 0.0.4 | ||
| - Add `scan`: fold which returns intermediate values | ||
| - Add `throttle`: block events for a duration after emitting a value | ||
| - Add `audit`: emits the last event received after a duration | ||
|
|
||
| ## 0.0.3 | ||
|
|
||
| - Add `tap`: React to values as they pass without being a subscriber on a stream | ||
| - Add `switchMap` and `switchLatest`: Flatten a Stream of Streams into a Stream | ||
| which forwards values from the most recent Stream | ||
|
|
||
| ## 0.0.2 | ||
|
|
||
| - Add `concat`: Appends streams in series | ||
| - Add `merge` and `mergeAll`: Interleaves streams | ||
|
|
||
| ## 0.0.1 | ||
|
|
||
| - Initial release with the following utilities: | ||
| - `buffer`: Collects events in a `List` until a `trigger` stream fires. | ||
| - `debounce`, `debounceBuffer`: Collect or drop events which occur closer in | ||
| time than a given duration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| Copyright 2017, the Dart project authors. | ||
|
|
||
| Redistribution and use in source and binary forms, with or without | ||
| modification, are permitted provided that the following conditions are | ||
| met: | ||
|
|
||
| * Redistributions of source code must retain the above copyright | ||
| notice, this list of conditions and the following disclaimer. | ||
| * Redistributions in binary form must reproduce the above | ||
| copyright notice, this list of conditions and the following | ||
| disclaimer in the documentation and/or other materials provided | ||
| with the distribution. | ||
| * Neither the name of Google LLC nor the names of its | ||
| contributors may be used to endorse or promote products derived | ||
| from this software without specific prior written permission. | ||
|
|
||
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | ||
| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.