Releases: fireflyprotocol/firefly-client-python
Releases · fireflyprotocol/firefly-client-python
v0.6.1
What's Changed
- [EXC-1509] added postOnly flag by @NidaKarimAli in #80
- tasks await on callback by @NidaKarimAli in #82
- [EXC-1536] update socket examples in ts and python client to match by @NidaKarimAli in #83
- [EXC-1525] Updated Web3 Version From v5 To v6 by @burhanuddin03 in #81
- [EXC-1506] Added Growth Service Routes by @malikkulsoom in #84
- Socket client refactor by @NidaKarimAli in #87
- Create security-pipeline.yml by @GradiusX in #86
- Added Close Position Contract Call by @burhanuddin03 in #90
- EXC-1560 Added get_orders_by_type route by @DanyalKhawaja in #85
- [EXC-1589] added set_UUID method by @NidaKarimAli in #89
- EXC-1670 Added userTradesHistory route by @DanyalKhawaja in #91
- added cancelOnRevert to python client by @NidaKarimAli in #92
- [ECOS-85] added enum by @NidaKarimAli in #93
- Update api_service.py by @ibadia in #94
- [ECOS-53] partial depth stream by @NidaKarimAli in #95
- fixing the tif isue by @ibadia in #96
New Contributors
- @burhanuddin03 made their first contribution in #81
- @ibadia made their first contribution in #94
Full Changelog: v0.6.0...v0.6.1
v0.6.0
What's Changed
- Socketio sockets subscription status by @YameenMalik in #66
- [EXC-886] python client implementation for DMS API by @NidaKarimAli in #67
- Radheem/quant 564 fix firefly python client documentation by @radheem in #68
- [EXC-1053] Transfer History And Other Missing Routes by @malikkulsoom in #70
- added checks for content-type by @NidaKarimAli in #74
- Implement python apis to take readonly token by @NidaKarimAli in #71
- Nida/exc 1227 python client add support to getauthoriserevoke by @NidaKarimAli in #75
- added x-mm-id to header by @NidaKarimAli in #76
- [EXC-1305] add auto re connection and re subscription logic to sockets by @NidaKarimAli in #77
New Contributors
- @NidaKarimAli made their first contribution in #67
- @malikkulsoom made their first contribution in #70
Full Changelog: v0.2.2...v0.6.0
Get Orders - v0.2.2
Updated GetOrdersRequest
interface to have additional optional parameters:
orderType
orderHashes
orderId
Cancel Orders - v0.2.0
The client now allows users to specify the status of orders that they wish to cancel. In previous versions of the client cancel_all_open_orders
method was hardcoded to only cancel the OPEN
and PARTIAL_FILLED
orders but the extension allows users to specify any status of orders that they want to cancel.
Breaking Changes:
cancel_all_open_orders
is now renamed tocancel_all_orders
.- The method
cancel_all_orders
now accepts a mendatory parameterstatus: List[ORDER_STATUS]
. All orders for the provided order statuses will be fetched, signed and sent for cancellation on exchange.
Sub Account - v0.1.3
Added missing functionality to the client to allow sub accounts to perform actions on parent's behalf.
-
Updated the following interfaces with an optional parentAddress field:
- GetFundingHistoryRequest
- GetOrderRequest
- GetUserTradesRequest
- GetPositionRequest
- OrderCancelSignatureRequest
-
Updated following methods to expect an optional parentAddress field
- get_user_account_data
- get_user_leverage
- create_signed_cancel_order
- create_signed_cancel_orders
- cancel_all_open_orders
- adjust_leverage
- adjust_margin
-
Added ARB-PERP to enums
Async Calls
- Switched to using
aiohttp
inapi_service.py
for get/post/delete calls to exchange. - Removed async call to
get_contract_addresses()
method from exchange client constructor - Added a new async
init()
method to the client that must be invoked after creating a client instance. - Added a top-level module, all enums, constants, etc.. are now housed in
firefly_exchange_client
directory in site-packages. This implies that all imports must be made from firefly_exchange_client
Breaking Change:
- The number of arguments to client initialization are reduced to 3. The last argument
user_onboarding
has been removed from the constructor and is now part of the new async initialization method calledinit()
- After client construction, the client must be initialized using
await client.init()
, without this, the user is not onboarded on to exchange and the contract addresses are not fetched from server.