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

3.x: Flowable missing or incorrect marbles (tracking issue) #5813

Open
akarnokd opened this issue Jan 17, 2018 · 5 comments
Open

3.x: Flowable missing or incorrect marbles (tracking issue) #5813

akarnokd opened this issue Jan 17, 2018 · 5 comments

Comments

@akarnokd
Copy link
Member

akarnokd commented Jan 17, 2018

  • amb: indicate cancellation and request propagation
  • ambArray: indicate cancellation and request propagation
  • combineLatest + 4: missing diagram
  • combineLatestDelayError + 5: missing diagram
  • concatArrayDelayError: operator name, indicate error delayed
  • concatArrayEager + 1: missing diagram
  • concatArrayEagerDelayError + 1: missing diagram
  • concatDelayError + 2: missing diagram
  • concatEager + 4: missing diagram
  • concatEagerDelayError + 4: missing diagram
  • create: missing diagram
  • error(Callable): indicate callback that creates the Throwable
  • `error(Throwable): indicate parameter
  • fromArray: operator name, indicate items inside the box
  • fromCallable: indicate item is the result of the callback inside the box
  • fromFuture + 3: operator name
  • fromIterable: operator name, indicate items inside the box
  • fromPublisher: missing diagram
  • generate + 4: missing diagram
  • intervalRange + 1: missing diagram
  • just + 8: indicate item inside the box (as many as there are sources, so 1..9)
  • mergeArray + 1: operator name
  • mergeArrayDelayError + 1: operator name
  • mergeDelayError + 1: indicate inner sources are generated
  • sequenceEqual + 3: indicate cancellation after the mismatch has been found
  • switchOnNextDelayError + 1: operator name, indicate error delay
  • using + 1: indicate actual Flowable and items
  • zipArray: operator name
  • zipIterable: operator name
  • all: should return Single
  • ambWith: indicate cancellation and request propagation
  • exists: should return Single
  • as: missing diagram: operator removed
  • blockingFirst + 1: missing diagram
  • blockingForEach: operator name
  • blockingIterable + 1: operator name, indicate iterator call to hasNext() and next()
  • blockingLast + 1: operator name
  • blockingLatest: missing diagram
  • blockingMostRecent: operator name
  • blockingNext: operator name
  • blockingSingle + 1: operator name
  • toFuture: rework diagram to indicate Future
  • blockingSubscribe + 4: missing diagram
  • buffer(..., Callable) + 6: indicate custom collection
  • buffer(open, close) + 1: parameter name in the box
  • collect: indicate initial container supplier, should return Single
  • collectInto: indicate initial container, should return Single, operator name
  • compose: missing diagram
  • concatMap(prefetch): indicate prefetch effects through requests
  • concatMapDelayError + 1: missing diagram
  • concatMapEager + 1: missing diagram
  • concatMapEagerDelayError + 1: missing diagram
  • concatMapIterable + 1: missing diagram
  • concatWith: operator name
  • contains: should return Single
  • count: operator name
  • defaultIfEmpty: indicate non-empty case
  • delaySubscription(Publisher): missing diagram
  • dematerialize: indicate dematerializing a terminal notification cancels the source
  • doFinally: missing diagram
  • doAfterNext: missing diagram
  • doOnCancel: operator name, unsubscribe -> cancel in text
  • doOnComplete: indicate events pass through
  • doOnEach + 1: indicate events pass through
  • doOnError: indicate events pass through
  • doOnNext: indicate events pass through
  • doOnRequest: missing diagram
  • doOnTerminate: indicate events pass through, show both error and complete case
  • elementAt: should return Maybe, indicate if source is shorter than index
  • elementAtOrDefault: should return Single, indicate if source has that element
  • elementAtOrError: should return Single, indicate error case
  • firstElement: image aspect off, add case separator dashed vertical line
  • first: image aspect off
  • firstOrError: combine two sections, vertical separator, empty source arrow
  • flatMap(..., delayError): indicate error delay case
  • flatMap(..., maxConcurrency) + 2: missing diagram
  • flatMap(Function, Function, Callable, int): missing diagram
  • flatMap(Function, BiFunction, boolean, int) + 1: missing diagram
  • flatMap(Function, BiFunction, int): missing diagram
  • flatMapCompletable + 1: missing diagram
  • flatMapIterable + 1: image aspect looks off
  • flatMapMaybe + 1: missing diagram
  • flatMapSingle + 1: missing diagram
  • forEach: missing diagram
  • forEachWhile + 2: missing diagram
  • hide: missing diagram
  • isEmpty: should return Single
  • lastElement: operator name, should return Maybe
  • last(T): should return Single, operator name
  • lastOrError: combine sections into one, add vertical case separator
  • limit: missing diagram operator renamed to take
  • mergeWith: operator name, indicate the second source as parameter
  • onErrorResumeNext(Function): indicate error function
  • onErrorReturn: indicate error function
  • onErrorReturnItem: operator name
  • onTerminateDetach: missing diagram
  • publish(Function) + 1: rework diagram
  • rebatchRequests: missing diagram
  • reduce(seed, ...): indicate star as parameter
  • reduceWith(Callable,...): indicate star as a supplied value, operator name
  • repeat + 1: indicate resubscription
  • repeatUntil: indicate boolean supplier
  • replay + 7: remove publish box
  • replay(Function) + 7: rework diagram
  • retry(): indicate infinte resubscription
  • retry(BiPredicate): indicate function decision on retry
  • retry(long): indicate retry count effect
  • retry(long, Predicate): indicate predicate effects
  • retry(Predicate): indicate predicate effects
  • retryUntil: missing diagram
  • scan(R, ...): indicate initialValue as parameter
  • scan(Callable, ...): indicate initialValue is the result of a call
  • share: indicate the source gets cancelled
  • singleElement: operator name, should return Maybe
  • single: operator name, should return Single
  • singleOrError: combine cases into one box, add vertical case separators
  • skipUntil: indicate until cancels the main source
  • sorted + 1: missing diagram
  • startWith(Iterable): indicate iterable parameter, indicate subscription
  • startWith(Publisher): indicate subscription after the start element(s)
  • startWith(T): one start value, indicate subscription after the start element
  • startWithArray: operator name, indicate subscription after the start element(s)
  • switchMapDelayError + 1: operator name, indicate error is delayed
  • takeUntil(Predicate): indicate source is cancelled
  • takeUntil(Publisher): indicate source is cancelled
  • takeWhile: indicate source is cancelled
  • to: missing diagram
  • toList + 1: should return Single
  • toList(Callable): should return Single, indicate custom collection
  • toMap + 2: should return Single
  • toMultimap + 3: should return Single
  • toObservable: missing diagram
  • toSortedList + 4: should return Single
  • unsubscribeOn: missing diagram
  • withLatestFrom(s1, s2, ...): missing diagrams
  • withLatestFrom(Publisher[], ...): missing diagram
  • withLatestFrom(Iterable, ...): missing diagram
@ashishkrishnan
Copy link
Contributor

ashishkrishnan commented Jun 16, 2018

Would like to contribute. Can you give me an heads-up?

@akarnokd
Copy link
Member Author

Anything not checked is open for grabs. The list also hints about what should be done. The ones where only label needs to change are the easiest. Use any pixel painting software (I use Paint.NET). Post the png as comment here and I'll upload it to its proper place.

@ashishkrishnan
Copy link
Contributor

Do the changes like for e.g operator name or should return Single be done on existing diagrams from the documentation? Can you please give me an example?

@akarnokd
Copy link
Member Author

Example: http://reactivex.io/RxJava/2.x/javadoc/io/reactivex/Flowable.html#fromArray-T...-

@akarnokd akarnokd modified the milestones: 2.2, 2.2 backlog Jul 18, 2018
@akarnokd akarnokd added the 3.x label Jun 19, 2019
@akarnokd akarnokd modified the milestones: 2.2 backlog, 3.0 Jul 3, 2019
@akarnokd akarnokd changed the title 2.x: Flowable missing or incorrect marbles (tracking issue) 3.x: Flowable missing or incorrect marbles (tracking issue) Jan 29, 2020
@akarnokd akarnokd removed the 2.x label Jan 29, 2020
@akarnokd akarnokd modified the milestones: 3.0, 3.1 Jan 29, 2020
@skryvets
Copy link
Contributor

What does number in "+ number" description mean?

@akarnokd akarnokd modified the milestones: 3.1, 3.1-support Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants