Yep, and which branch we will develop and make stable. For instance when there will be new operator, shall it be implemented separately for v1 and v2? Wouldn’t be better to have just one branch?
Avelino
@avelino
@teivah You can open issues of upcoming migrations and deployment to version 2, to give visibility of next steps, break N issue, step by step to implement
For the double subscription. In case of v2 second subscription would receive same elements of just sequence as the first?
Teiva Harsanyi
@teivah
well, to be discussed maybe but in RxJava for example if you create an observable from an array, the second subscription is going to receive the same elements as the first one
here we just lose the messages as it is sent in a channel and retrieved during the first subscription
(and there's no way to retry it for the time being)
Artur Krysiak
@venth
If we will create function create that would receive function as argument then we could overcome the channel issue
this function would get emitter as the argument and will be responsible for emitting sequence elements
Teiva Harsanyi
@teivah
you mean as an end-user or as a maintainer of RxGo?
Artur Krysiak
@venth
Either. Such a function ease implementation of plenty of operators
Like empty - just emit complete
Teiva Harsanyi
@teivah
yes agreed
Artur Krysiak
@venth
error emit error
abd so forth
Teiva Harsanyi
@teivah
but I'm just pointing out that the current behavior is not similar to what we have in the other Rx implementations
Artur Krysiak
@venth
That’s right. Current behavior doesn’t comply to other implementations
Teiva Harsanyi
@teivah
I know the philosophy is to be based as most as possible on Idiomatic Go code
yet, for this very use-case I don't really get why we should have something different in RxGo
just my opinion obviously
Artur Krysiak
@venth
I come along with you.
Teiva Harsanyi
@teivah
and obviously, if we change that in the v2, it has to be highlighted to make sure end-users understand that the behavior is different
Artur Krysiak
@venth
+1
Teiva Harsanyi
@teivah
We need to start thinking about how to handle hot observable: values are emitted regardless whether there is an actual subscription, multicasting (one item caught by several observer)