WebSocket-for-Python v0.4.0 Release Notes

Release Date: 2017-03-24 // about 7 years ago
  • Full Changelog

    Implemented enhancements:

    • ๐Ÿ‘ป exception not catch in websocket.py always #70

    ๐Ÿ›  Fixed bugs:

    • Last send never happens #167

    Closed issues:

    • ๐Ÿš€ PyPI latest release 0.3.5 does not include #205 and therefore breaks with cherrypy #209
    • Unable to reconnect #207
    • CherryPy does not use its own wsgiserver anymore, which ws4py depended on #205
    • py2exe / python2.7 / syntax error in "yield from" lines #202
    • Missing 0.3.5 changelog and tag #192
    • ws4py 0.3.5 doesn't receive all messages over wss #191
    • SSL: received_message not getting called #183
    • ๐Ÿ‘ Python 2.6 support #182
    • ๐Ÿ Overridden close() not called under windows #178
    • Enabling cpstats causes ws4py to crash #177
    • ๐Ÿ‘ Only support Python 3.0+ ? #175
    • IOError(interrupted system call) on dropping privilages #172
    • ๐Ÿ”ง error: configure_logger(stdout=False, filepath="ws4py.log") #171
    • Python 3.4 and gevent 1.1 #170
    • Is it possible to extract headers from WebSocketProtocol using asyncio #169
    • server, opened() is called each time a message is send #162
    • tlm #160
    • In opened(), closing connection would crash the server #159
    • Server crashes with broken pipe if client disconnects ungracefully? #150
    • Client connection hangs when using Cherrypy #146
    • low priority: wsgiref example doesn't work #145
    • CherryPy: simple example of an echo server #140
    • WebSocketClient.closed() always returns code 1006 if reason string empty. #137
    • Server Side Connection Drops Immediately #134
    • Calling WebSocketClient.terminate() results in AttributeError #131
    • ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it #130
    • AttributeError: 'NoneType' object has no attribute 'fileno' #129
    • wss is always one message behind #128
    • Asyncio Issues #125

    ๐Ÿ”€ Merged pull requests:

    • ๐Ÿ”„ change cherrypy.wsgiserver to cheroot.server #206 (raven38)
    • This change is to address the issue with run_forever() terminating too early. #201 (steowens)
    • Don't crash with broken pipe when trying to close a connection #198 (cristi8)
    • โž• adding heartbeat for gevent_client #195 (alexmnt)
    • minor - typo #193 (johnwheeler)
    • Eliminate a protocol error when first chunk is last too. #186 (plu9in)
    • ๐Ÿ‘ Allow WebSocketWSGIHandler to work even in presence of a middleware #185 (bozzzzo)
    • ๐Ÿ“œ Give application status code 1005 when no good status code is parsed/received #181 (isonmad)
    • ๐Ÿ›  Fix server "Bad file descriptor" error under gevent 1.1, #170 #180 (hyt-hz)
    • ๐Ÿ”– Version of example that doesn't need jquery, fix IOError on resume, fโ€ฆ #173 (EternityForest)
    • ๐Ÿ›  Fix typo #161 (hexchain)
    • โž• added a word #157 (Mrmaxmeier)
    • โœ‚ Removed unnecessary try/except and cleaned for some PEP8 #155 (warvariuc)
    • ๐Ÿ‘Œ Improve Origin handling in Client #154 (rdbhost)
    • ๐Ÿ›  Fix: closing handshake does not work correctly when reason is empty #149 (schiermike)
    • pass ssl_options to SSLIOStream() to ensure certificate validation works #147 (szweep)
    • Explained why wsgiref not for produciton #144 (Seanny123)
    • โž• Added Port to Host in handshake header. #139 (thiagorcdl)
    • Don't fail when websocket was not inited. #135 (eraviart)
    • ws4py/__init__.py: fix configure_logger by importing loging.handlers as handlers #133 (andrew-canaday)