Commit Graph

708 Commits

Author SHA1 Message Date
Davide Casale
c02d6d7bf8 Fix bug in module bfxapi.websocket._event_emitter. 2023-10-26 06:53:35 +02:00
Davide Casale
2734ff9e1a Drop modules bfxapi.enums, bfxapi.rest.enums and bfxapi.websocket.enums. 2023-10-26 06:53:35 +02:00
Davide Casale
8e915e42eb Improve fidelity to pylint's standard rules. 2023-10-26 06:53:11 +02:00
Davide Casale
ac50f8f884 Fix and rewrite module bfx_websocket_inputs in bfxapi.websocket._client. 2023-10-25 05:52:55 +02:00
Davide Casale
ddce83be0c Apply some refactoring to sub-package bfxapi.websocket. 2023-10-16 05:59:24 +02:00
Davide Casale
133db74a72 Add automatic deletion for buckets that reach zero subscriptions (e.g. after a call to BfxWebSocketClient::unsubscribe). 2023-10-16 04:45:47 +02:00
Davide Casale
e5ec94b757 Remove wss-event event from BfxWebSocketClient and BfxWebSocketBucket. 2023-10-13 17:38:25 +02:00
Davide Casale
374b632c6c Add pause/resume logic in class BfxWebSocketClient. 2023-10-13 17:05:11 +02:00
Davide Casale
122d692684 Rewrite all logic regarding connection multiplexing. 2023-10-13 05:44:26 +02:00
Davide Casale
378e89b504 Fix small bug in module bfxapi.exceptions. 2023-10-09 16:27:04 +02:00
Davide Casale
25881e77c8 Fix and rewrite some logic in class BfxWebSocketClient. 2023-10-09 16:25:46 +02:00
Davide Casale
de0ee54900 Add new module bfxapi._utils.json_decoder. 2023-10-09 04:58:34 +02:00
Davide Casale
9872adf60f Fix type hinting in module bfxapi._utils.json_encoder. 2023-10-09 04:58:25 +02:00
Davide Casale
5ae576e36a Fix and rewrite all logic in class BfxWebSocketBucket. 2023-10-09 04:57:17 +02:00
Davide Casale
628c3a0d66 Rewrite implementation for abstract class Connection (_connection.py). 2023-10-09 04:56:37 +02:00
Davide Casale
206ebe7941 Remove circular import from file bfx_websocket_client.py. 2023-10-09 04:56:37 +02:00
Davide Casale
22451f674e Remove inner class Connection.Authenticable (_connection.py). 2023-10-09 04:56:37 +02:00
Davide Casale
82a3307205 Fix bug in local class _Delay (bfx_websocket_client.py). 2023-10-09 04:56:37 +02:00
Davide Casale
ca4050a35b Rename event <disconnection> to <disconnected> (to mantain compliance). 2023-10-09 04:56:37 +02:00
Davide Casale
8a1632d3c2 Write new implementation for class BfxEventEmitter (bfxapi.websocket._event_emitter). 2023-10-09 04:56:34 +02:00
Davide Casale
f6c49f677d Remove block for negative checksums (and replace crcmod with native zlip module). 2023-10-08 19:08:18 +02:00
Davide Casale
875d1d61e0 Add order book checksum handling in /examples/websocket/public/raw_order_book.py. 2023-10-08 19:08:18 +02:00
Davide Casale
3a06b22247 Add order book checksum handling in /examples/websocket/public/order_book.py. 2023-10-08 19:08:18 +02:00
Davide Casale
f39b054397 Add implementation for BfxWebSocketClient::resubscribe and BfxWebSocketBucket::resubscribe. 2023-10-08 19:08:18 +02:00
Davide Casale
26f25e5848 Fix bug in method BfxWebSocketBucket::unsubscribe. 2023-10-08 19:08:18 +02:00
Davide Casale
ce23a8991a Block negative checksums for possible race condition (PublicChannelsHandler::__checksum_handler). 2023-10-08 19:08:18 +02:00
Davide Casale
3c02232f42 Add event handler for checksum messages (PublicChannelsHandler). 2023-10-08 19:08:18 +02:00
Davide Casale
d9267de009 Add config to enable checksums in BfxWebSocketBucket. 2023-10-08 19:08:18 +02:00
Davide Casale
3038027f35 Add fix to handle InvalidStatusCode exception (for 408 Request Timeout). 2023-10-08 19:08:18 +02:00
Davide Casale
da2b411265 Fix missing return statement in public_channels_handler.__raw_book_channel_handler. 2023-10-08 19:08:18 +02:00
Davide Casale
4ba6b28f5b Rename bfxapi._utils.logger to bfxapi._utils.logging (and update references). 2023-10-08 19:08:18 +02:00
Davide Casale
faffb7fe82 Add and implement new IncompleteCredentialError in bfxapi.client. 2023-10-08 19:07:44 +02:00
Davide Casale
755ee767a8 Improve bfxapi._utils.logger (and update usage in Client). 2023-06-23 17:09:03 +02:00
Davide Casale
bae48b2901 Improve wss_timeout implementation in BfxWebSocketClient. 2023-06-20 20:34:59 +02:00
Davide Casale
9edbd7a415 Rename bfxapi.utils to _utils (and update references). 2023-06-20 18:37:33 +02:00
Davide Casale
f1e678e043 Add type hinting support to bfxapi.websocket.client.bfx_websocket_client. 2023-06-20 18:37:21 +02:00
Davide Casale
8b196b8f9c Add type hinting support to bfxapi.websocket.client.bfx_websocket_bucket. 2023-06-18 17:44:09 +02:00
Davide Casale
080ec40395 Add sub-package bfxapi.websocket._event_emitter (with bfx_event_emitter.py). 2023-06-18 16:46:12 +02:00
Davide Casale
1d911a250c Rename bfxapi.websocket.client to _client and bfxapi.websocket.handlers to _handlers (according to PEP8). 2023-06-18 01:02:59 +02:00
Davide Casale
fc84389564 Remove support for BfxWebSocketClient's instance variable events_for_subscription. 2023-06-18 00:54:56 +02:00
Davide Casale
d9733e8d38 Change visibility of decorators require_websocket_connection and require_websocket_authentication (and hardcode HEARTBEAT). 2023-06-17 22:24:27 +02:00
Davide Casale
b12fedb7a3 Replace use of asyncio.locks.Event with asyncio.locks.Condition in bfx_websocket_bucket.py. 2023-06-17 22:20:31 +02:00
Davide Casale
cc5f9f5b0e Remove type hinting for decorators _require_websocket_connection and _require_websocket_authentication. 2023-06-12 16:17:45 +02:00
Davide Casale
d63c2c63c3 Rename RestAuthenticatedEndpoints to RestAuthEndpoints (and bfxapi.rest.endpoints.rest_authenticated_endpoints to rest_auth_endpoints). 2023-06-12 15:58:17 +02:00
Davide Casale
f343fce20f Fix comment on top of examples in both examples.rest.auth and examples.websocket.auth. 2023-06-12 15:42:52 +02:00
Davide Casale
708fdc87c7 Add new event liquidation_feed_update to PublicChannelsHandler (and improve overall type hinting). 2023-06-12 15:37:05 +02:00
Davide Casale
7059846843 Remove support for datetime type and improve typing in several files. 2023-05-26 18:48:27 +02:00
Davide Casale
bc0f83d408 Improve JSONEncoder class in bfxapi.utils.json_encoder. 2023-05-26 18:02:41 +02:00
Davide Casale
dbc61ab275 Add type hints and type checks in bfxapi.websocket.client.bfx_websocket_inputs. 2023-05-25 20:42:55 +02:00
Davide Casale
c8290f144b Upgrade to Mypy 1.3.0 (old: 0.991). Fix compatibility problems with Mypy. Add type hints to bfxapi.websocket.handlers. 2023-05-19 22:13:15 +02:00