-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
Fix MutableProperty deadlock #2744
Conversation
return | ||
} | ||
|
||
disposable += property.withValue { value in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was implemented this way on purpose: the source of truth should be the producer
, not the signal
.
The implementation is now worse, so I would call this a workaround, not a fix. I'd love to find a real fix for the underlying issue (SignalProducer.start
), not just working around it in MutableProperty
.
@NachoSoto, could you please elaborate on why the source of truth for the property should be the
|
@jspahrsummers, will you please share your opinion? |
For one reason: code reuse. |
A glimpse to the past - this was once implemented but reverted in #2622 (#2622 (diff)). For this particular implementation, it slightly changed the semantic by breaking the guarantee of |
Thanks @NachoSoto and @andersio, your points are reasonable with respect to the state of RAC today. Just for the sake of a broader discussion on the future of the framework, let me bring a question to the table. It may sound heretical, but: Is the To my understanding, its existence contradicts second of the three key RAC advantages over other Rx frameworks, declared in the README:
And also there:
I think that
What are the common use cases of the
So why having two abstractions over the same implementation? What about deprecating the |
I'd vote for killing buffer and focusing on |
@neilpa, will you please share your opinion? |
But having said that, I can't think of a good use for |
All the usages of The only limitation that would create is that |
Agreed. I also think that |
Hey @NachoSoto, are there any reasons not to merge this soon? |
@olegshnitko Thank you for the pull request and for the discussion! #2764 has been merged, which supersedes this PR. |
No description provided.