Upgrading rxdart 0.20 to 0.21
Breaking0.20.0 → 0.21.0Breaking3New1Fixed1Other1
BreakingUpgrade verdict
2 breaking changes.
In plain terms
- Three APIs were removed. Replace bufferWithCount with bufferCount and windowWithCount with windowCount; tween is gone entirely.
- You now create a seeded BehaviorSubject with a dedicated constructor, which also lets you start it with a null value.
Must act 2 items need code or config changes
What you must change
Breaking2
Removes bufferWithCount, windowWithCount and tween; use bufferCount and windowCount instead.
bufferWithCountwindowWithCounttweenbufferCountwindowCountBehaviorSubject now has a separate factory constructor seeded() that allows seeding the Subject with a null value.
BehaviorSubjectBehaviorSubject.seeded()API changes
Generated by DepDelta from published Dart source. Not mixed with prose notes.
- removed:
class BufferWithCountStreamTransformer<T> extends StreamTransformerBase<T, List<T>> - removed:
class TweenStream extends Stream<double> - removed:
class WindowWithCountStreamTransformer<T> extends StreamTransformerBase<T, Stream<T>> - removed:
ctor BufferWithCountStreamTransformer(this.count, [this.skip]) - removed:
ctor TweenStream(double startValue, double changeInTime, Duration duration, int intervalMs, Ease ease) - removed:
ctor WindowWithCountStreamTransformer(this.count, [this.skip]) - removed:
enum Ease - removed:
field BufferWithCountStreamTransformer.count: final int - removed:
field BufferWithCountStreamTransformer.skip: final int - removed:
field TweenStream.controller: final StreamController<double> - removed:
field WindowWithCountStreamTransformer.count: final int - removed:
field WindowWithCountStreamTransformer.skip: final int - removed:
get easeIn: Sampler - removed:
get easeInOut: Sampler - removed:
get easeOut: Sampler - removed:
get linear: Sampler - removed:
member Ease.IN - removed:
member Ease.IN_OUT - removed:
member Ease.LINEAR - removed:
member Ease.OUT - removed:
method BufferWithCountStreamTransformer.bind(Stream<T> stream): Stream<List<T>> - removed:
method TweenStream.listen(void onData(double event), {Function onError, void onDone(), bool cancelOnError}): StreamSubscription<double> - removed:
method WindowWithCountStreamTransformer.bind(Stream<T> stream): Stream<Stream<T>> - removed:
static method BufferWithCountStreamTransformer.assertCountAndSkip(int count, [int skip]): void - removed:
static method Observable.tween( double startValue, double changeInTime, Duration duration, {int intervalMs = …, Ease ease = …}): Observable<double> - removed:
static method TweenStream.sampleFromValues<T>(Sampler sampler, double startValue, double changeInTime, int durationMs, int intervalMs): Stream<double> - removed:
static method WindowWithCountStreamTransformer.assertCountAndSkip(int count, [int skip]): void - removed:
typedef double Sampler( double startValue, double changeInTime, int currentTimeMs, int durationMs) - changed:
ctor BehaviorSubject({ T seedValue, void onListen(), void onCancel(), bool sync = …, }) → ctor BehaviorSubject({ void onListen(), void onCancel(), bool sync = …, }) - changed:
ctor PublishSubject({void onListen(), void onCancel(), bool sync = …}) → ctor PublishSubject( {void onListen(), void onCancel(), bool sync = …}) - changed:
ctor ValueConnectableObservable(Stream<T> source, {T seedValue}) → ctor ValueConnectableObservable(Stream<T> source) - changed:
method Observable.publishValue({T seedValue}): ValueConnectableObservable<T> → method Observable.publishValue(): ValueConnectableObservable<T> - changed:
method Observable.shareValue({T seedValue}): ValueObservable<T> → method Observable.shareValue(): ValueObservable<T> - added:
class GroupByObservable<T, S> extends Observable<T> - added:
class GroupByStreamTransformer<T, S> extends StreamTransformerBase<T, GroupByObservable<T, S>> - added:
ctor BehaviorSubject.seeded( T seedValue, { void onListen(), void onCancel(), bool sync = …, }) - added:
ctor GroupByObservable(this.key, Stream<T> stream) - added:
ctor GroupByStreamTransformer(this.grouper) - added:
ctor ValueConnectableObservable.seeded( Stream<T> source, T seedValue, ) - added:
field GroupByObservable.key: final S - added:
get BehaviorSubject.hasValue: bool - added:
get ValueConnectableObservable.hasValue: bool - added:
get ValueObservable.hasValue: bool - added:
method BehaviorSubject.onAddError(Object error, [StackTrace stackTrace]): void - added:
method GroupByStreamTransformer.Function(T): S - added:
method GroupByStreamTransformer.bind(Stream<T> stream): Stream<GroupByObservable<T, S>> - added:
method Observable.groupBy<S>(S grouper(T value)): Observable<GroupByObservable<T, S>> - added:
method Observable.publishValueSeeded(T seedValue): ValueConnectableObservable<T> - added:
method Observable.shareValueSeeded(T seedValue): ValueObservable<T> - added:
method Subject.onAddError(Object error, [StackTrace stackTrace]): void
- removed:
class TweenStream extends Stream<double> - removed:
ctor TweenStream(double startValue, double changeInTime, Duration duration, int intervalMs, Ease ease) - removed:
enum Ease - removed:
field TweenStream.controller: final StreamController<double> - removed:
get easeIn: Sampler - removed:
get easeInOut: Sampler - removed:
get easeOut: Sampler - removed:
get linear: Sampler - removed:
member Ease.IN - removed:
member Ease.IN_OUT - removed:
member Ease.LINEAR - removed:
member Ease.OUT - removed:
method TweenStream.listen(void onData(double event), {Function onError, void onDone(), bool cancelOnError}): StreamSubscription<double> - removed:
static method TweenStream.sampleFromValues<T>(Sampler sampler, double startValue, double changeInTime, int durationMs, int intervalMs): Stream<double> - removed:
typedef double Sampler( double startValue, double changeInTime, int currentTimeMs, int durationMs)
- changed:
ctor BehaviorSubject({ T seedValue, void onListen(), void onCancel(), bool sync = …, }) → ctor BehaviorSubject({ void onListen(), void onCancel(), bool sync = …, }) - changed:
ctor PublishSubject({void onListen(), void onCancel(), bool sync = …}) → ctor PublishSubject( {void onListen(), void onCancel(), bool sync = …}) - added:
ctor BehaviorSubject.seeded( T seedValue, { void onListen(), void onCancel(), bool sync = …, }) - added:
get BehaviorSubject.hasValue: bool - added:
method BehaviorSubject.onAddError(Object error, [StackTrace stackTrace]): void - added:
method Subject.onAddError(Object error, [StackTrace stackTrace]): void
- removed:
class BufferWithCountStreamTransformer<T> extends StreamTransformerBase<T, List<T>> - removed:
class WindowWithCountStreamTransformer<T> extends StreamTransformerBase<T, Stream<T>> - removed:
ctor BufferWithCountStreamTransformer(this.count, [this.skip]) - removed:
ctor WindowWithCountStreamTransformer(this.count, [this.skip]) - removed:
field BufferWithCountStreamTransformer.count: final int - removed:
field BufferWithCountStreamTransformer.skip: final int - removed:
field WindowWithCountStreamTransformer.count: final int - removed:
field WindowWithCountStreamTransformer.skip: final int - removed:
method BufferWithCountStreamTransformer.bind(Stream<T> stream): Stream<List<T>> - removed:
method WindowWithCountStreamTransformer.bind(Stream<T> stream): Stream<Stream<T>> - removed:
static method BufferWithCountStreamTransformer.assertCountAndSkip(int count, [int skip]): void - removed:
static method WindowWithCountStreamTransformer.assertCountAndSkip(int count, [int skip]): void - added:
class GroupByObservable<T, S> extends Observable<T> - added:
class GroupByStreamTransformer<T, S> extends StreamTransformerBase<T, GroupByObservable<T, S>> - added:
ctor GroupByObservable(this.key, Stream<T> stream) - added:
ctor GroupByStreamTransformer(this.grouper) - added:
field GroupByObservable.key: final S - added:
method GroupByStreamTransformer.Function(T): S - added:
method GroupByStreamTransformer.bind(Stream<T> stream): Stream<GroupByObservable<T, S>>