Davide Casale
bdd78a817d
Merge branch Davi0kProgramsThings:fix/refactoring into branch bitfinexcom:master. ( #238 )
...
# Description
<!--- Describe your changes in detail -->
PR includes some global refactoring in preparation for the v3.0.0 stable release.
## Motivation and Context
<!--- Why is this change required? What problem does it solve? -->
-
## Related Issue
<!--- If suggesting a new feature or change, please discuss it in an issue first -->
<!--- If fixing a bug, there should be an issue describing it with steps to reproduce -->
<!--- Please link to the issue here: -->
PR fixes the following issue: -
## Type of change
<!-- Select the most suitable choice and remove the others from the checklist -->
- [X] Bug fix (non-breaking change which fixes an issue);
# Checklist:
- [X] I've done a self-review of my code;
- [X] I've made corresponding changes to the documentation;
- [X] I've made sure my changes generate no warnings;
- [X] mypy returns no errors when run on the root package;
<!-- If you use pre-commit hooks you can always check off the following tasks -->
- [X] I've run black to format my code;
- [X] I've run isort to format my code's import statements;
- [X] flake8 reports no errors when run on the entire code base;
2024-04-03 22:34:23 +02:00
Davide Casale
5543b0b1d2
Fix all flake8 errors in all python files (+ edit configuration files).
2024-02-27 17:24:47 +01:00
Davide Casale
2344d44aa0
Remove all old '# pylint:' comments from all python files.
2024-02-26 20:04:09 +01:00
Davide Casale
38dbff1141
Apply black to all python files (bfxapi/**/*.py).
2024-02-26 19:43:14 +01:00
Davide Casale
2b7dfc5b8a
Apply isort to all python files (bfxapi/**/*.py).
2024-02-26 19:36:10 +01:00
Davide Casale
97bad7f4fb
Fix low latency bug in public method BfxWebSocketBucket::start.
2023-12-14 18:35:00 +01:00
Davide Casale
327d494e3c
Fix RuntimeError in method BfxWebSocketBucket::resubscribe.
2023-12-12 05:13:23 +01:00
Davide Casale
f3fe14b921
Add 'checksum' event in sub-package bfxapi.websocket._event_emitter.
2023-10-26 18:06:29 +02:00
Davide Casale
5e50aa6f67
Fix bug in BfxWebSocketClient::on's arguments (bfxapi/websocket/_client/bfx_websocket_client.py).
2023-10-26 18:04:00 +02:00
Davide Casale
9287723678
Fix several bugs in sub-package bfxapi.rest.endpoints.
2023-10-26 16:48:41 +02:00
Davide Casale
2bed2f6672
Fix bug in cancel_order_multi (both rest and websocket).
2023-10-26 16:48:41 +02:00
Davide Casale
b082891c41
Remove useless and redundant docstrings from custom exceptions.
2023-10-26 06:53:35 +02:00
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
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