-
-
Notifications
You must be signed in to change notification settings - Fork 3k
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
turn mplex off by default #9958
Comments
👍 js-ipfs never got the yamux update, you have to add it in manually. Given js-ipfs isn't maintained anymore we should remove thoses integration tests, ideally have new ones with helia. I did not had the courage to touch some JS when I tried in #9641. |
@ipfs/kubo-maintainers Is this in scope for the next release? Any reason to not do this rather sooner than later? |
Thanks for surfacing. We haven't set the scope for the next release. We will do so next week. I've put this down for consideration. |
@marten-seemann : this won't make it in for 0.22 since we need to clean up the interoperability story as well: #10013 I have this slotted for the next release (0.23) instead. |
note: updated the title to note that this about removing mplex support given that mplex has been the non-recommended transport for quite a while now. |
@achingbrain does js-ipfs support yamux or just helia? Trying to understand the scope of things that will break (and their update stories) if/when mplex support is removed. |
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes ipfs#9958
Mplex does not implement backpressure, our implementation will randomly reset streams if buffers overflow instead of risking deadlocks. In the past we had a bug where kubo nodes would prefer mplex over yamux. Turning off mplex make our connections to thoses nodes negociate yamux. Closes #9958
I was not happy with the last PR, I wanted to turn it off by default for a release and remove it next release. This would give a 1 month gap for people to add yamux back to their js-ipfs instance or migrate to helia. |
Mplex has been turned off by default in #10070. I think this should be closed. I have already told @hacdias what were the mplex items and he already implemented them in #10095, #10095's remainings things are:
|
Thanks @Jorropo, you're right - my bad. Agreed this can stay close since we have met the done criteria and we're making sure new work (i.e., go-libp2p upgrade) continues to meet this criteria. |
Checklist
Description
libp2p has deprecated mplex for a long time. The implementation is not being maintained any more, and we're planning to drop it from our transport integration test suite due to its flakiness (read: bugs that we don't feel like debugging).
js-libp2p has had yamux support for a while now, as does rust-libp2p. Would it be a good time to say goodbye to our beloved mplex?
Done criteria
The text was updated successfully, but these errors were encountered: