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

README example cleanup

14901b80cbce1aa31b3b6d344222c7cadf295346 authored about 6 years ago by John Belmonte <[email protected]>
Merge pull request #51 from HyperionGray/fix_osx_tests

Fix tests on OS X (#43) and set up Travis CI

307c9ba1b46b40a23fa942e0a71d5f7dda70019d authored about 6 years ago by John Belmonte <[email protected]>
Restore python 3.5 support; prune imports

disable python 3.5 in CI build due to mysterious test hanging

f8b652ce9ddce937622a31d6c9ae86d22bac6df2 authored about 6 years ago by John Belmonte <[email protected]>
constrain requirements:

* wsproto >= 0.12.0, tests hang on earlier versions
* pytest-trio >= 0.5.0, mininimum for u...

399e5c7ae10c21ea26490bf38d5226291446374a authored about 6 years ago by John Belmonte <[email protected]>
Set up Travis & Coveralls

* Drop python3.5 support (see below)
* Pin some dependency versions that were breaking on Travis...

70baddc84251d0a356d5f0664a11a9d7a90aacca authored about 6 years ago by Mark E. Haase <[email protected]>
Modernize README.

- Update sample server.
- Enable syntax highlighting for README code samples.

296d4e47d8cb22ee06981dc7b9129b92da968d15 authored about 6 years ago by Michael Elsdörfer <[email protected]>
Fix breaking tests on OS X (#43)

OS X resolves "localhost" to loopback ipv4 and ipv6 addresses,
whereas Ubuntu resolves it to jus...

9fa4c8a9b3ef1a1165c29312f1b95939cfd299b4 authored about 6 years ago by Mark E. Haase <[email protected]>
Set trio dependency to >=0.8 (#39)

79452ce195c42d646301cd32854ebeb43c1dc01c authored about 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #46 from belm0/serve_websocket_docs

small fixes to server_webserver docs

6aac0aea11948dfa76a877ef6968fd40c12bed04 authored about 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #45 from belm0/trio_deprecations

trio.BrokenStreamError -> BrokenResourceError

379b79a09e6068c5b624d1b0388ba9fd5f76e7ba authored about 6 years ago by Mark E. Haase <[email protected]>
small fixes to server_webserver docs

Fixes #42.

cf159dcda350c82054dbe453b6de151b5148bc5e authored about 6 years ago by John Belmonte <[email protected]>
trio.BrokenStreamError -> BrokenResourceError

Requires trio 0.8.0.
Fixes #39.

8861a03522378e368a5f55bb92bb527b82539ad5 authored about 6 years ago by John Belmonte <[email protected]>
Move version to a separate file. (#44)

d53c366c56c2803ae5d300f7f1f92ac8c9f8c34a authored about 6 years ago by Michael Elsdörfer <[email protected]>
Merge pull request #40 from HyperionGray/server_leaks_exception

Fix error handling for dropped connections (#23)

c4d56fa3ea4b0b8af3d6353a7ab66ce8d543b420 authored about 6 years ago by Mark E. Haase <[email protected]>
Fix error handling for dropped connections (#23)

In addition to fixing the uncaught BrokenStreamError, I also tried to
clean up and clarify the c...

679f55a2285b0a83354e77017e20fff4c85515df authored about 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #37 from HyperionGray/arbitrary_listeners_and_streams

Arbitrary listeners and streams

4f512c339f108d5a2da52b831529bbe53dcb8f87 authored about 6 years ago by Mark E. Haase <[email protected]>
Make example server's host argument optional (#2)

This was identified during code review.

d28063cc87856c900e8955601196e102142909d7 authored about 6 years ago by Mark E. Haase <[email protected]>
More code review feedback (#2)

* Use the term "Trio nursery start protocol* instead of just "Trio
nursery protocol".
* The wr...

4647ff47111c274cb7a47392dc6c30e5683e8d29 authored about 6 years ago by Mark E. Haase <[email protected]>
Code review feedback (#2)

* Fix example server's host argument.
* Change wrap_* methods to use Trio nursery protocol.
* Im...

fd6ec738d5c83f72282cf5390188014746523e95 authored about 6 years ago by Mark E. Haase <[email protected]>
Add functions to wrap arbitrary streams (#2)

370cef6bed4816df43e1a4344fc6a019f5bf10f3 authored about 6 years ago by Mark E. Haase <[email protected]>
Add tests for multiple arbitrary listeners (#2)

534ebea0e7a1b9f6dd8cf7b251b3ba32fa0e9ccf authored about 6 years ago by Mark E. Haase <[email protected]>
Add tests for SSL connection (#2)

This uncovered a couple bugs in the servers `port` and
`listeners` properties, which are also fi...

7d07295b7599162f8773b907650b0ce630c273c4 authored about 6 years ago by Mark E. Haase <[email protected]>
Factor listener code out of server (#2)

As a step towards supporting arbitrary listeners, the WebSocketServer
constructor now takes a li...

98643020621404ca8e92b4378037b7beea94d45d authored about 6 years ago by Mark E. Haase <[email protected]>
Handle multiple listeners correctly (#2)

The server class did not handle the case where there are multiple
listeners correctly. Now, list...

fa9cf4e677ea977e972394a041e432d0f903d605 authored about 6 years ago by Mark E. Haase <[email protected]>
Change "ip" argument to "host"

This matches Trio's terms. Also improve the documentation for the
host argument.

2f88f5ba6fb81c1e6fd5f486902922d5a4c4da58 authored about 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #35 from HyperionGray/revisit_optional_nursery

Revisit optional nursery

10e0ddf430f7567e1b7a74104518a94b91038489 authored about 6 years ago by Mark E. Haase <[email protected]>
Add handler_nursery to server constructor (#31)

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]>
Implement optional nursery pattern for client (#31)

In addition to open_websocket and open_websocket_url, which are
both context managers that do no...

7b9a0fb6cd5f95f16134ac58b0299b11c273e169 authored about 6 years ago by Mark E. Haase <[email protected]>
Fix singular/plural of WebSocket #16

4e583c6ee89c3dea406b7a07b78ede57522e808e authored about 6 years ago by Mark E. Haase <[email protected]>
Try replacing message queue with channels

"Channels" is an experimental feature in Trio that I
have checked into this project temporarily ...

ca363e420b89ee78128cd6fe8607f5b9297a037d authored over 6 years ago by Mark E. Haase <[email protected]>
Merge branch 'remove_client_nursery'

231c8157869612c98d885757713a3bef667ab3ae authored over 6 years ago by Mark E. Haase <[email protected]>
Code review feedback for #27

ad747a0b3e47511d9a84c6f71a09ee7e3d2f3d91 authored over 6 years ago by Mark E. Haase <[email protected]>
Update autobahn client to use new connect function

It now uses the context manager. Running these tests
also helped me find a bug in the new connec...

315e6429aae0813609e2bc489471f3861b8ab716 authored over 6 years ago by Mark E. Haase <[email protected]>
Make the client's nursery argument optional

This fixes #20

957643b57bdf547ab622fbcc04e8c82d505da693 authored over 6 years ago by Mark E. Haase <[email protected]>
Update example/docs with new client API

8db50a471bc6d97460ffd889488d9b9c5be2241d authored over 6 years ago by Mark E. Haase <[email protected]>
Add support for opening WebSocket by URL

5d1452c4c42322d5360c84750873be6491f207ea authored over 6 years ago by Mark E. Haase <[email protected]>
Replace WebSocketClient class with context manager

Instead of instantiating a client object and calling connect(),
you now call open_websocket(), w...

9dc2fd597ccf06df3eb304a59a2a844b2f4bb557 authored over 6 years ago by Mark E. Haase <[email protected]>
Address code review feedback

3a572130468ad524472137b1c247757159f1cd05 authored over 6 years ago by Mark E. Haase <[email protected]>
WebSocketConnection now inherits from AsyncResource

90c352279fb76b3894e7fa66d985fc511e457e68 authored over 6 years ago by Mark E. Haase <[email protected]>
Introduce a few very basic tests.

This is preparation for introducing AsyncResource as a base class.

cb9e4e9e04765adfbc5862e7ab9c94fd56bd8afc authored over 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #21 from belm0/path_and_handler_semantics

path property and API connection semantics

2431751bc7b0ee603bbc83a331a586d298418ef1 authored over 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #19 from belm0/patch-2

remove info-level logging

4aa3aba68bb517ae0c75e72fd437138f397e4cfa authored over 6 years ago by Mark E. Haase <[email protected]>
Merge pull request #18 from belm0/patch-1

use version with dev suffix on master

e7637b6c0070ebb59c277833b5e41b04b314d2d0 authored over 6 years ago by Mark E. Haase <[email protected]>
Add path property to WebSocketConnection and change

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]>
remove info-level logging

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]>
use version with dev suffix on master

* following PEP 440
* last value in version tuple is reserved for API-compatible bugfix rel...

fb24dfed595da4cdfe02bf029d1ad1fefcbb3256 authored over 6 years ago by John Belmonte <[email protected]>
Prepare for publication on PyPI

Fixes #15

94fc77b863f70b4d15c16bf44b602224c5b5426f authored over 6 years ago by Mark E. Haase <[email protected]>
Switch from fork back to upstrea wsproto

This closes #14

d3b477f5aaf56c83bd5e39b2b0e441d45d6097f7 authored over 6 years ago by Mark E. Haase <[email protected]>
Reorder receive_some() and events() generator

I don't fully understand the problem, but this change is definitely
not harmful and it's easy to...

d85cca8673143fcfb5253382e1bcbaa43ceaa545 authored over 6 years ago by Mark E. Haase <[email protected]>
Factor out writer task

This essentially reverts 59819d. This should fix #12
and is a step towards implementing #3.

db2c17e17fa67ecdf6dd67a1a22a935df45e05c1 authored over 6 years ago by Mark E. Haase <[email protected]>
Merge branch 'server_listen'

e992245ad75b2aa59cb82537f5346677364de5aa authored over 6 years ago by Mark E. Haase <[email protected]>
Update installation instructions (should close #5)

be24789c75c875705cc7db049285f5cf7e60d57f authored over 6 years ago by Mark E. Haase <[email protected]>
WebSocketServer improvements:

* listen() supports nursery start() protocol so we can
block on server being ready for c...

fc31e0a9c4c4198c5c8876b34b0eaadeae6a26db authored over 6 years ago by John Belmonte <[email protected]>
Add basic client and server examples to README

b787bf1a8a026ef1d9ca995d044bc97d42e7f727 authored over 6 years ago by Mark E. Haase <[email protected]>
Add basic setup.py

530fb094f31a930aa36caa899c0e7462a566c09f authored over 6 years ago by Mark E. Haase <[email protected]>
Update Autobahn config: run all server tests

9ca8fc128ae93f03cd1f743c92a03708121217a6 authored over 6 years ago by Mark E. Haase <[email protected]>
Fix SSL argument bug in example client

fb485029440b660db2eb2d1e70799bf3e243b040 authored over 6 years ago by Mark E. Haase <[email protected]>
Refactor network writes into a separate task

This makes connection teardown a bit easier to reason
about.

59819d9e647908d5ae76865ddb9e431ee58fc25b authored over 6 years ago by Mark E. Haase <[email protected]>
Add Autobahn test scripts and configuration files

The tests are not all passing, but the harness itself is working.

4faddc943c2c14afbc425cc0ff88f3a968f9bcbe authored over 6 years ago by Mark E. Haase <[email protected]>
Add SSL/TLS support

08ec3c78b202cacfa16fc649fbe1fba8c8535efa authored over 6 years ago by Mark E. Haase <[email protected]>
Add an example JavaScript client.

Also add exception handlers around send_eof(), which can fail if
the connection closed unexpecte...

1c23868b2e5fc968a1dff11bdb91aebf9372234b authored over 6 years ago by Mark E. Haase <[email protected]>
Add guard conditions for operations on a closed WebSocket.

Also moved the implementation from websocket.py to __init__.py
because it's so small that it doe...

e3e6524f784fe3ab88e39d9f3bf695c089724f23 authored over 6 years ago by Mark E. Haase <[email protected]>
Initial commit

The library basically works: text frames, binary frames, pings, pongs,
opening handshake, and cl...

e0acd28b2f34ae1f4ed0bdde2f679e8c30c33ff3 authored over 6 years ago by Mark E. Haase <[email protected]>