Skip to content

Commit 31fee97

Browse files
Merge pull request #98 from InjectiveLabs/f/add_close_functions
feat: add functions to close chain/exchange channels
2 parents bb80bef + 2d6d129 commit 31fee97

File tree

4 files changed

+36
-14
lines changed

4 files changed

+36
-14
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ python pyinjective/fetch_metadata.py
8686
* Add support for multiple subaccounts in StreamTrades and StreamPosition
8787
* Add K8S endpoint to mainnet network options
8888
* Add MsgRegisterAsDMM to the composer
89+
* Add functions to close chain/exchange channels
8990
* Re-gen ini files
9091

9192

pyinjective/async_client.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,12 @@ def __init__(
108108
self.exchange_channel
109109
)
110110

111+
async def close_exchange_channel(self):
112+
await self.exchange_channel.close()
113+
114+
async def close_chain_channel(self):
115+
await self.chain_channel.close()
116+
111117
# default client methods
112118
async def get_latest_block(self) -> tendermint_query.GetLatestBlockResponse:
113119
return await self.stubCosmosTendermint.GetLatestBlock(

pyinjective/client.py

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -65,41 +65,47 @@ def __init__(
6565
credentials = grpc.ssl_channel_credentials(f.read())
6666

6767
# chain stubs
68-
chain_channel = (
68+
self.chain_channel = (
6969
grpc.insecure_channel(network.grpc_endpoint)
7070
if insecure else grpc.secure_channel(network.grpc_endpoint, credentials)
7171
)
72-
self.stubCosmosTendermint = tendermint_query_grpc.ServiceStub(chain_channel)
73-
self.stubAuth = auth_query_grpc.QueryStub(chain_channel)
74-
self.stubAuthz = authz_query_grpc.QueryStub(chain_channel)
75-
self.stubTx = tx_service_grpc.ServiceStub(chain_channel)
72+
self.stubCosmosTendermint = tendermint_query_grpc.ServiceStub(self.chain_channel)
73+
self.stubAuth = auth_query_grpc.QueryStub(self.chain_channel)
74+
self.stubAuthz = authz_query_grpc.QueryStub(self.chain_channel)
75+
self.stubTx = tx_service_grpc.ServiceStub(self.chain_channel)
7676
self.chain_cookie = ""
7777
self.exchange_cookie = ""
7878

7979
# exchange stubs
80-
exchange_channel = (
80+
self.exchange_channel = (
8181
grpc.insecure_channel(network.grpc_exchange_endpoint)
8282
if insecure else grpc.secure_channel(network.grpc_exchange_endpoint, credentials)
8383
)
8484

85-
self.stubMeta = exchange_meta_rpc_grpc.InjectiveMetaRPCStub(exchange_channel)
85+
self.stubMeta = exchange_meta_rpc_grpc.InjectiveMetaRPCStub(self.exchange_channel)
8686
self.stubExchangeAccount = exchange_accounts_rpc_grpc.InjectiveAccountsRPCStub(
87-
exchange_channel
87+
self.exchange_channel
8888
)
89-
self.stubOracle = oracle_rpc_grpc.InjectiveOracleRPCStub(exchange_channel)
89+
self.stubOracle = oracle_rpc_grpc.InjectiveOracleRPCStub(self.exchange_channel)
9090
self.stubInsurance = insurance_rpc_grpc.InjectiveInsuranceRPCStub(
91-
exchange_channel
91+
self.exchange_channel
9292
)
9393
self.stubSpotExchange = spot_exchange_rpc_grpc.InjectiveSpotExchangeRPCStub(
94-
exchange_channel
94+
self.exchange_channel
9595
)
9696
self.stubDerivativeExchange = (
9797
derivative_exchange_rpc_grpc.InjectiveDerivativeExchangeRPCStub(
98-
exchange_channel
98+
self.exchange_channel
9999
)
100100
)
101-
self.stubExplorer = explorer_rpc_grpc.InjectiveExplorerRPCStub(exchange_channel)
102-
self.stubAuction = auction_rpc_grpc.InjectiveAuctionRPCStub(exchange_channel)
101+
self.stubExplorer = explorer_rpc_grpc.InjectiveExplorerRPCStub(self.exchange_channel)
102+
self.stubAuction = auction_rpc_grpc.InjectiveAuctionRPCStub(self.exchange_channel)
103+
104+
def close_exchange_channel(self):
105+
self.exchange_channel.close()
106+
107+
def close_chain_channel(self):
108+
self.chain_channel.close()
103109

104110
# cookie helper methods
105111
def get_cookie(self, type):

pyinjective/denoms_mainnet.ini

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,15 @@ min_display_price_tick_size = 0.001
304304
min_quantity_tick_size = 0.01
305305
min_display_quantity_tick_size = 0.01
306306

307+
[0xc60c2ba4c11976e4c10ed7c1f5ca789b63282d0b3782ec3d7fc29dec9f43415e]
308+
description = 'Mainnet Derivative STX/USDT PERP'
309+
base = 0
310+
quote = 6
311+
min_price_tick_size = 1000
312+
min_display_price_tick_size = 0.001
313+
min_quantity_tick_size = 0.1
314+
min_display_quantity_tick_size = 0.1
315+
307316
[WETH]
308317
peggy_denom = peggy0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
309318
decimals = 18

0 commit comments

Comments
 (0)