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

Plans to support permessage-deflate? #6

Open
quinnj opened this issue Jun 21, 2022 · 1 comment
Open

Plans to support permessage-deflate? #6

quinnj opened this issue Jun 21, 2022 · 1 comment

Comments

@quinnj
Copy link

quinnj commented Jun 21, 2022

Hey, great package! I feel silly not knowing this existed, as I recently tried to look over various websocket packages in Julia to see if we needed to keep the half-working implementation in HTTP.jl or if I needed to overhaul. If I would have found this, I think we could have directed folks here. In any case, I ended up overhauling the code, including doing integrated testing against the autobahn testsuite.

Anyway, I'm going around finding HTTP.jl dependents who may need help updating to 1.0 and that's how I found the package here.

Long story short, I'm now curious if there are plans to support the permessage-deflate extension to the websocket protocol? We had this issue opened up for HTTP.jl recently and I'm just wondering if people have ideas on the best way to support.

Cheers!

@citkane
Copy link
Owner

citkane commented Jun 22, 2022

Hi quinnj, thanks!

In short - No immediate plans to support permessage-deflate.
I have however left Sec-WebSocket-Extensions hooks for the client here and here and the server here.

This is partly because I have not yet implemented Sec-WebSocket-Extensions and need to take time to understand the working innards of permessage-deflate. ATM I cannot afford to do this, and the package does for me what I need it to do.

This project is pretty much an architectural translation of NODEjs websocket into Julia. The API interface with event hooks, error handlers, auth functions and emit and broadcast server methods is a very powerful toolkit for building higher level application logic.

I started development here by trying to use HTTP.Websockets as a dependency, and then wrap my API logic around this, but found that the code did not give me the handles I needed out of the box. It would be nice if all the low level WebSocket stuff was exposed, documented and maintained as a standards compliant library in HTTP.WebSockets. This could enable any number of Julia WebSocket API libraries (such as this one) to evolve around (and contribute to) a common solid foundation.

Anyway - I have no idea how you are fixed.
I am not going to be in a position to do timely maintenance and admin on this repository, but I am happy to invite you as a collaborator if you wish to work things in parallel.

All the best,
M

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

No branches or pull requests

2 participants