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

Rework transport and internal implementation to support multiplexed transports #255

Merged
merged 1 commit into from
Oct 21, 2024

Conversation

whyoleg
Copy link
Member

@whyoleg whyoleg commented Apr 16, 2024

  • new Transport API (package io.rsocket.kotlin.transport)
  • new Internal implementation which supports both stream-oriented (QUIC, Aeron, HTTP2-streams, WebTransport) and connection-oriented transports (TCP, WebSocket)
  • migrate local to new Transport API and introduce multiplexed kind
  • fix some tests to use port 0 to auto-assign port

Note:

  • new Transport API is added in backward compatible way, old Transport API will be deprecated in one of the following PRs and will be removed in future release.
  • There are some TODOs in code, which will be resolved later BEFORE next release (0.16.0) after some improvements to tests

Motivation:

To support QUIC and other possible multiplexed transports, native support for streams on transport level is needed.
But internal implementation was not ready for this. Additionally, it was a good idea to fix some issues with inconsistent transport API and hard to maintain internals.

@whyoleg whyoleg requested a review from OlegDokuka April 16, 2024 17:10
@whyoleg whyoleg self-assigned this Apr 16, 2024
Copy link

github-actions bot commented Apr 16, 2024

Test Results

  825 files    825 suites   46m 11s ⏱️
3 417 tests 2 841 ✅   575 💤 1 ❌
7 056 runs  5 851 ✅ 1 204 💤 1 ❌

For more details on these failures, see this check.

Results for commit 0834fbc.

♻️ This comment has been updated with latest results.

Base automatically changed from workflows to master May 13, 2024 20:06
@whyoleg whyoleg force-pushed the rework-transport branch 2 times, most recently from 87696ca to c71adfb Compare May 15, 2024 05:52
…ransports

* new Transport API
* migrate local to new Transport API and introduce multiplexed kind
* fix some tests to use port 0 to auto-assign port
@whyoleg whyoleg merged commit c279c51 into master Oct 21, 2024
26 of 35 checks passed
@whyoleg whyoleg deleted the rework-transport branch October 21, 2024 18:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant