Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/python-trio/trio-websocket
WebSocket client and server implementation for Python Trio
https://github.com/python-trio/trio-websocket
14901b80cbce1aa31b3b6d344222c7cadf295346 authored about 6 years ago by John Belmonte <[email protected]>
Fix tests on OS X (#43) and set up Travis CI
307c9ba1b46b40a23fa942e0a71d5f7dda70019d authored about 6 years ago by John Belmonte <[email protected]>disable python 3.5 in CI build due to mysterious test hanging
f8b652ce9ddce937622a31d6c9ae86d22bac6df2 authored about 6 years ago by John Belmonte <[email protected]> * wsproto >= 0.12.0, tests hang on earlier versions
* pytest-trio >= 0.5.0, mininimum for u...
* Drop python3.5 support (see below)
* Pin some dependency versions that were breaking on Travis...
- Update sample server.
- Enable syntax highlighting for README code samples.
OS X resolves "localhost" to loopback ipv4 and ipv6 addresses,
whereas Ubuntu resolves it to jus...
79452ce195c42d646301cd32854ebeb43c1dc01c authored about 6 years ago by Mark E. Haase <[email protected]>
small fixes to server_webserver docs
6aac0aea11948dfa76a877ef6968fd40c12bed04 authored about 6 years ago by Mark E. Haase <[email protected]>trio.BrokenStreamError -> BrokenResourceError
379b79a09e6068c5b624d1b0388ba9fd5f76e7ba authored about 6 years ago by Mark E. Haase <[email protected]>Fixes #42.
cf159dcda350c82054dbe453b6de151b5148bc5e authored about 6 years ago by John Belmonte <[email protected]>
Requires trio 0.8.0.
Fixes #39.
d53c366c56c2803ae5d300f7f1f92ac8c9f8c34a authored about 6 years ago by Michael Elsdörfer <[email protected]>
Fix error handling for dropped connections (#23)
c4d56fa3ea4b0b8af3d6353a7ab66ce8d543b420 authored about 6 years ago by Mark E. Haase <[email protected]>
In addition to fixing the uncaught BrokenStreamError, I also tried to
clean up and clarify the c...
Arbitrary listeners and streams
4f512c339f108d5a2da52b831529bbe53dcb8f87 authored about 6 years ago by Mark E. Haase <[email protected]>This was identified during code review.
d28063cc87856c900e8955601196e102142909d7 authored about 6 years ago by Mark E. Haase <[email protected]>
* Use the term "Trio nursery start protocol* instead of just "Trio
nursery protocol".
* The wr...
* Fix example server's host argument.
* Change wrap_* methods to use Trio nursery protocol.
* Im...
370cef6bed4816df43e1a4344fc6a019f5bf10f3 authored about 6 years ago by Mark E. Haase <[email protected]>
534ebea0e7a1b9f6dd8cf7b251b3ba32fa0e9ccf authored about 6 years ago by Mark E. Haase <[email protected]>
This uncovered a couple bugs in the servers `port` and
`listeners` properties, which are also fi...
As a step towards supporting arbitrary listeners, the WebSocketServer
constructor now takes a li...
The server class did not handle the case where there are multiple
listeners correctly. Now, list...
This matches Trio's terms. Also improve the documentation for the
host argument.
Revisit optional nursery
10e0ddf430f7567e1b7a74104518a94b91038489 authored about 6 years ago by Mark E. Haase <[email protected]>This is passed down to serve_tcp(). Add tests to cover this feature.
22604e7c66f7f56455621e25a23ad228a2c9a1a8 authored about 6 years ago by Mark E. Haase <[email protected]>
In addition to open_websocket and open_websocket_url, which are
both context managers that do no...
4e583c6ee89c3dea406b7a07b78ede57522e808e authored about 6 years ago by Mark E. Haase <[email protected]>
"Channels" is an experimental feature in Trio that I
have checked into this project temporarily ...
231c8157869612c98d885757713a3bef667ab3ae authored over 6 years ago by Mark E. Haase <[email protected]>
ad747a0b3e47511d9a84c6f71a09ee7e3d2f3d91 authored over 6 years ago by Mark E. Haase <[email protected]>
It now uses the context manager. Running these tests
also helped me find a bug in the new connec...
This fixes #20
957643b57bdf547ab622fbcc04e8c82d505da693 authored over 6 years ago by Mark E. Haase <[email protected]>8db50a471bc6d97460ffd889488d9b9c5be2241d authored over 6 years ago by Mark E. Haase <[email protected]>
5d1452c4c42322d5360c84750873be6491f207ea authored over 6 years ago by Mark E. Haase <[email protected]>
Instead of instantiating a client object and calling connect(),
you now call open_websocket(), w...
3a572130468ad524472137b1c247757159f1cd05 authored over 6 years ago by Mark E. Haase <[email protected]>
90c352279fb76b3894e7fa66d985fc511e457e68 authored over 6 years ago by Mark E. Haase <[email protected]>
This is preparation for introducing AsyncResource as a base class.
cb9e4e9e04765adfbc5862e7ab9c94fd56bd8afc authored over 6 years ago by Mark E. Haase <[email protected]>path property and API connection semantics
2431751bc7b0ee603bbc83a331a586d298418ef1 authored over 6 years ago by Mark E. Haase <[email protected]>remove info-level logging
4aa3aba68bb517ae0c75e72fd437138f397e4cfa authored over 6 years ago by Mark E. Haase <[email protected]>use version with dev suffix on master
e7637b6c0070ebb59c277833b5e41b04b314d2d0 authored over 6 years ago by Mark E. Haase <[email protected]>semantics of the server connection handler and
client connect().
The server connection handler i...
2762972e0fc8de6154e133573c0bd4baf7d33ca6 authored over 6 years ago by John Belmonte <[email protected]>arguable, but it's probably too verbose to info log on every connection and server start
53ad958693614119ae461cd2c61cb9043d491c39 authored over 6 years ago by John Belmonte <[email protected]>
* following PEP 440
* last value in version tuple is reserved for API-compatible bugfix rel...
Fixes #15
94fc77b863f70b4d15c16bf44b602224c5b5426f authored over 6 years ago by Mark E. Haase <[email protected]>This closes #14
d3b477f5aaf56c83bd5e39b2b0e441d45d6097f7 authored over 6 years ago by Mark E. Haase <[email protected]>
I don't fully understand the problem, but this change is definitely
not harmful and it's easy to...
This essentially reverts 59819d. This should fix #12
and is a step towards implementing #3.
e992245ad75b2aa59cb82537f5346677364de5aa authored over 6 years ago by Mark E. Haase <[email protected]>
be24789c75c875705cc7db049285f5cf7e60d57f authored over 6 years ago by Mark E. Haase <[email protected]>
* listen() supports nursery start() protocol so we can
block on server being ready for c...
b787bf1a8a026ef1d9ca995d044bc97d42e7f727 authored over 6 years ago by Mark E. Haase <[email protected]>
530fb094f31a930aa36caa899c0e7462a566c09f authored over 6 years ago by Mark E. Haase <[email protected]>
9ca8fc128ae93f03cd1f743c92a03708121217a6 authored over 6 years ago by Mark E. Haase <[email protected]>
fb485029440b660db2eb2d1e70799bf3e243b040 authored over 6 years ago by Mark E. Haase <[email protected]>
This makes connection teardown a bit easier to reason
about.
The tests are not all passing, but the harness itself is working.
4faddc943c2c14afbc425cc0ff88f3a968f9bcbe authored over 6 years ago by Mark E. Haase <[email protected]>08ec3c78b202cacfa16fc649fbe1fba8c8535efa authored over 6 years ago by Mark E. Haase <[email protected]>
Also add exception handlers around send_eof(), which can fail if
the connection closed unexpecte...
Also moved the implementation from websocket.py to __init__.py
because it's so small that it doe...
The library basically works: text frames, binary frames, pings, pongs,
opening handshake, and cl...