| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Refactor and fix reconnect and ping
- Dispatcher: do not reconnect in loop
- Avoid reconnect in recursion and hit maximum recursion depth
- Close websocket before reconnect to avoid unclosed ssl.SSLSocket warnings
- Start ping thread on socket connect
- Stop ping thread on socket disconnect
- Add reconnect test
- Add callback exception test
* Remove duplicate function
* Also check passed app in testCallbackException
* Test exception in callback method
Co-authored-by: Jan Schneider <j.schneider@uib.de>
Co-authored-by: engn33r <engn33r@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* create_dispatcher() w/ is_ssl determined by url instead of sslopt
* added .lower() (per @rm-you's suggestion)
* create_dispatcher() w/ parse_url()-derived is_ssl
* Fix failing test, missing wss
Co-authored-by: engn33r <engn33r@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* rel example
* tweaked rel example for linter
* added rel note to examples.rst
* slightly more compact example
* added example header
* matched wording
* _socket.recv(): _recv() except socket.error - changed or to and; added except TimeoutError - raise WebSocketTimeoutException
* _app - custom dispatcher check_callback() integration (and fixed pyevent compatibility): WrappedDispatcher (for use with generic event dispatchers such as pyevent and rel); create_dispatcher() accepts dispatcher kwarg (default None), and if it is specified, returns a WrappedDispatcher; use create_dispatcher() (passing specified dispatcher if any) every time (regardless of dispatcher specification)
* Add clarifying comment, rerun CI tests
* Add space to make linter happy
* working reconnect
* rmed logs
* added _logging.warning() disconnected/reconnected notifications to handleDisconnect()
* moved connect notification and dispatcher.read() (if doread kwarg [default False] is True) to setSock() (prevents those lines from running on ConnectionRefusedError)
* run_forever(): reconnect kwarg now specifies sleep() time (defualt 5)
* handleDisconnect(): fixed log msg
* run_forever() refactor: stabilized stack frame count (at least in rel mode); added stack frame count to disconnect (warning) log; grossly oversimplified ;)
* dispatcher simplification via DispatcherBase and DispatcherBase/WrappedDispatcher.timeout()
* _logging: info(); enableTrace() supports level kwarg (default "DEBUG")
* handleDisconnect() uses info() log
* Fix linting errors
* moved timeout() from Dispatcher to DispatcherBase (thus also applying to SSLDispatcher)
* reconnect()s for DispatcherBase (uses while loop) and WrappedDispatcher (uses timeout()); setSock() reconnecting (default False) kwarg - if reconnecting, skip handleDisconnect(); handleDisconnect() calls dispatcher.reconnect()
* custom_dispatcher switch in handleDisconnect()
* WrappedDispatcher constructor registers keyboard interrupt signal
* DispatcherBase.reconnect(): wrapped while loop in KeyboardInterrupt try/except
* fixed lint errors
* _app: RECONNECT (default 5) and setReconnect() setter; WebSocketApp.run_forever() reconnect kwarg defaults to RECONNECT
* tests.test_app: ws.setReconnect(0) (may fix test stall issue)
* oops, added setReconnect import to websocket __init__
* blank line for linter
* linter line
* added rel to setup extras_require{test}[]
* adjusted testRunForeverDispatcher() to use rel (including dispatch())
* setup: moved rel dep from extras_require{test}[] to tests_require[]
* meh trying install_requires[] (tests_require[] depped??)
* set RECONNECT (run_forever() reconnect kwarg default) to 0 (can be altered with setReconnect()) to preserve old (non-reconnecting) default behavior for existing integrations
* rmed rel from install_requires[] (only added for tests, and was not working...)
* test_app: rmed ws.setReconnect(0) (0 is new default)
* run_forever() reconnect->RECONNECT fallback in func instead of kwarg default
* test_app: disabled rel import (unsure how to set up test dependency) and testRunForeverDispatcher() (also not working previously afaik)
* linter fixes
* linter comment spaces
* run_forever() returns False to pass testRunForeverTeardownCleanExit test
* run_forever() returns False unless error (handleDisconnect() changes to True before calling on_error callback)
* rval->self.has_errored
Co-authored-by: engn33r <engn33r@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
called (#788)
* fix!: `WebSocketApp.run_forever()` returning `None` after `close()` is called
BREAKING CHANGE: the return value of `WebSocketApp.run_forever()` will no longer return the (undocumented) `None` value.
* fix(tests): replace the defunct `wss://stream.meetup.com/2/rsvps` with `wss://api.bitfinex.com/ws/2` in several tests
* test: added two new local server tests to cover the changes in #785
* Remove newline to fix lint error
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Remove implied and redundant object class type declarations
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The recent addition of python-socks required it to be a dependency. This
was mentioned in #728. Additional changes were made to prevent python-socks from becoming a required dependency for every install, so now it is only required for SOCKS proxy usage.
Additionally, because echo.websockets.org was experiencing downtime
issues during this fix, echo.websockets.org was replaced in unit tests with a local echo server from the Python websockets library. This should speed up tests, avoid test errors cause by external website downtime, and reduce traffic to echo.websocket.org caused by this project.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|