Skip to content

Implement multipart for netty-future, netty-cats & netty-zio#5315

Open
ajozwik wants to merge 1 commit into
softwaremill:masterfrom
ajozwik:netty-multipart-future-4851
Open

Implement multipart for netty-future, netty-cats & netty-zio#5315
ajozwik wants to merge 1 commit into
softwaremill:masterfrom
ajozwik:netty-multipart-future-4851

Conversation

@ajozwik

@ajozwik ajozwik commented Jun 14, 2026

Copy link
Copy Markdown
Contributor

Proposal of multipart implementation for netty - see #4851 - only multipart.

Implementation based on nettyServerSync implementation - but without OxStreams.

According to Note: Netty's multipart decoder does not expose other part headers, nor other disposition params. the test with netty ignoring part headers - partOtherHeaderSupport = false

Implementation of writeBytesToFile for cats is based on synchronized method, for zio it used ZIO.fromCompletableFuture

What is missing?

  • Part headers if netty api expose it
  • Configuration for multipart temp directory and minimum disk size
  • Streaming - but it is not part of multipart.

For sync implementation multipart depends on OxStreams - what is not needed and can be moved to other submodule.

@ajozwik ajozwik force-pushed the netty-multipart-future-4851 branch 2 times, most recently from 4841966 to c1a01be Compare June 15, 2026 11:02
@ajozwik ajozwik force-pushed the netty-multipart-future-4851 branch from 78ea9a8 to 8d9e390 Compare June 15, 2026 15:54
@ajozwik

ajozwik commented Jun 15, 2026

Copy link
Copy Markdown
Contributor Author

PR is ready. It can contains more changes - just on master, because I squashed commits with just merged (to master) changes ....

Main part is based on MonadSubscriber - implementation of Subscriber - who subscribe to Netty publisher. In implementation java.util.concurrent.Condition is used.

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