[2.0.0] API improvements and other fixes
See original GitHub issueThere are some APIs that can be improved/simplified. This issue is to collect all the cases. This is also a good place to raise and discuss any proposals or concerns.
-
flatMap
- add default value for themaxConcurrency
argument, removeflatMap
variants without themaxConcurrency
argument -
flatMap
withresultSelector
- reorder arguments in the following way:resultSelector
,maxConcurrency
,mapper
-
observableInterval
- putstartDelayMillis
afterperiodMillis
and add default valuestartDelayMillis: Long = periodMillis
, remove anotherobservableInterval
variant -
Observable.replay
- add default forbufferSize
argument, remove the variant without arguments -
Completable.asMaybe
andCompletable.asObservable
- remove the generic parameter and make the return generic typeNothing
-
doOnAfterSuccess
- renameaction
argument toconsumer
- remove all deprecated code
-
repeat(count: Int = -1)
- the argument name should betimes
, for consistency withretry
and RxJava. The type should beLong
, and the default value should beLong.MAX_VALUE
. -
repeat
with value0
should return emptyObservable
,repeat
with value1
should subscribe only once, and so on. For consistency with RxJava. -
retry(times: Int)
- the argument type should beLong
, and the default value should beLong.MAX_VALUE
. -
Observable.scan(getSeed, accumulate)
andObservable.scan(accumulate)
, - theaccumulate
argument should be renamed toaccumulator
for consistency with RxJava. -
Observable.throttle
- should accept aScheduler
for timings instead of usingClock
implicitly, for better testing on the client side. - Review all
ExperimentalReaktiveApi
, perhaps we can stabilise something. - Add
collect
overload with collection supplier - Convert all
millis
durations to the newDuration
API, if it becomes stable - Wait for Multiple Receivers to become stable and extract all
subscribeXyz
extensions fromDisposableScope
, and alsoT.scope(dispose: (T) -> Unit)
- Stabilize the Plugins API
- Remove the old memory model support, optimize for the new memory model
- All
limit
arguments inObservable.buffer
operators should be of typeInt
Issue Analytics
- State:
- Created 2 years ago
- Comments:5 (3 by maintainers)
Top Results From Across the Web
Semantic Versioning 2.0.0 | Semantic Versioning
Bug fixes not affecting the API increment the patch version, backwards compatible API additions/changes increment the minor version, and backwards incompatible ...
Read more >Release notes — pandas 2.0.0.dev0+958.g083d030d47 ...
This is the list of changes to pandas between each release. ... Enhancements · Notable bug fixes · Backwards incompatible API changes ·...
Read more >WorkManager - Android Developers
API Changes. Remove @ExperimentalExpeditedWork APIs given the underlying platform APIs for Android 12 (S) are stable. (aosp/1792806). Bug Fixes.
Read more >Change log | Unity Transport | 2.0.0-pre.3
Status codes NetworkHeaderInvalid and NetworkArgumentMismatch are now marked as obsolete. Nothing in the API returns these status codes anymore. Fixes. Fixed ...
Read more >Changelog Highlights — Locust 2.0.0b4 documentation
Allow workers to bypass version check by sending -1 as version (2.0.0) https://github.com/locustio/locust/pull/ ... Other various bug fixes as improvements ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@plusmobileapps yes, we have this in the task list for v2. I will investigate and provide updates here.
@galdp Yes it is.
threadLocal
is useful for as long as the Kotlin/Native strict memory model is used. If you opt-in to the new relaxed memory model, then you can avoid usingthreadLocal
. Also as a side note, it is not quite related to the version of coroutines.