Skip to content

Commit 1fae35f

Browse files
authored
Merge pull request #314 from InjectiveLabs/feat/reduce_calls_for_cookies
feat/reduce_calls_for_cookies
2 parents 8adf955 + 378e2ac commit 1fae35f

File tree

62 files changed

+792
-1528
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+792
-1528
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ All notable changes to this project will be documented in this file.
66
### Added
77
- Added support for all queries in the chain 'tendermint' module
88

9+
### Changed
10+
- Refactored cookies management logic to use all gRPC calls' responses to update the current cookies
11+
912
## [1.4.1] - 2024-03-12
1013
### Changed
1114
- Updates example scripts that were still using deprecated methods

pyinjective/async_client.py

Lines changed: 48 additions & 142 deletions
Large diffs are not rendered by default.

pyinjective/client/chain/grpc/chain_grpc_auction_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from grpc.aio import Channel
44

5+
from pyinjective.core.network import CookieAssistant
56
from pyinjective.proto.injective.auction.v1beta1 import (
67
query_pb2 as auction_query_pb,
78
query_pb2_grpc as auction_query_grpc,
@@ -10,9 +11,9 @@
1011

1112

1213
class ChainGrpcAuctionApi:
13-
def __init__(self, channel: Channel, metadata_provider: Callable):
14+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1415
self._stub = auction_query_grpc.QueryStub(channel)
15-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
16+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1617

1718
async def fetch_module_params(self) -> Dict[str, Any]:
1819
request = auction_query_pb.QueryAuctionParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_auth_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.cosmos.auth.v1beta1 import query_pb2 as auth_query_pb, query_pb2_grpc as auth_query_grpc
78
from pyinjective.utils.grpc_api_request_assistant import GrpcApiRequestAssistant
89

910

1011
class ChainGrpcAuthApi:
11-
def __init__(self, channel: Channel, metadata_provider: Callable):
12+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1213
self._stub = auth_query_grpc.QueryStub(channel)
13-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
14+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1415

1516
async def fetch_module_params(self) -> Dict[str, Any]:
1617
request = auth_query_pb.QueryParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_authz_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.cosmos.authz.v1beta1 import query_pb2 as authz_query, query_pb2_grpc as authz_query_grpc
78
from pyinjective.utils.grpc_api_request_assistant import GrpcApiRequestAssistant
89

910

1011
class ChainGrpcAuthZApi:
11-
def __init__(self, channel: Channel, metadata_provider: Callable):
12+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1213
self._stub = authz_query_grpc.QueryStub(channel)
13-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
14+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1415

1516
async def fetch_grants(
1617
self,

pyinjective/client/chain/grpc/chain_grpc_bank_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.cosmos.bank.v1beta1 import query_pb2 as bank_query_pb, query_pb2_grpc as bank_query_grpc
78
from pyinjective.utils.grpc_api_request_assistant import GrpcApiRequestAssistant
89

910

1011
class ChainGrpcBankApi:
11-
def __init__(self, channel: Channel, metadata_provider: Callable):
12+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1213
self._stub = bank_query_grpc.QueryStub(channel)
13-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
14+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1415

1516
async def fetch_module_params(self) -> Dict[str, Any]:
1617
request = bank_query_pb.QueryParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_distribution_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.cosmos.distribution.v1beta1 import (
78
query_pb2 as distribution_query_pb,
89
query_pb2_grpc as distribution_query_grpc,
@@ -11,9 +12,9 @@
1112

1213

1314
class ChainGrpcDistributionApi:
14-
def __init__(self, channel: Channel, metadata_provider: Callable):
15+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1516
self._stub = distribution_query_grpc.QueryStub(channel)
16-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
17+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1718

1819
async def fetch_module_params(self) -> Dict[str, Any]:
1920
request = distribution_query_pb.QueryParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_exchange_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.injective.exchange.v1beta1 import (
78
query_pb2 as exchange_query_pb,
89
query_pb2_grpc as exchange_query_grpc,
@@ -11,9 +12,9 @@
1112

1213

1314
class ChainGrpcExchangeApi:
14-
def __init__(self, channel: Channel, metadata_provider: Callable):
15+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1516
self._stub = exchange_query_grpc.QueryStub(channel)
16-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
17+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1718

1819
async def fetch_exchange_params(self) -> Dict[str, Any]:
1920
request = exchange_query_pb.QueryExchangeParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_token_factory_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from grpc.aio import Channel
44

5+
from pyinjective.core.network import CookieAssistant
56
from pyinjective.proto.injective.tokenfactory.v1beta1 import (
67
query_pb2 as token_factory_query_pb,
78
query_pb2_grpc as token_factory_query_grpc,
@@ -11,10 +12,10 @@
1112

1213

1314
class ChainGrpcTokenFactoryApi:
14-
def __init__(self, channel: Channel, metadata_provider: Callable):
15+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1516
self._query_stub = token_factory_query_grpc.QueryStub(channel)
1617
self._tx_stub = token_factory_tx_grpc.MsgStub(channel)
17-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
18+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1819

1920
async def fetch_module_params(self) -> Dict[str, Any]:
2021
request = token_factory_query_pb.QueryParamsRequest()

pyinjective/client/chain/grpc/chain_grpc_wasm_api.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
from grpc.aio import Channel
44

55
from pyinjective.client.model.pagination import PaginationOption
6+
from pyinjective.core.network import CookieAssistant
67
from pyinjective.proto.cosmwasm.wasm.v1 import query_pb2 as wasm_query_pb, query_pb2_grpc as wasm_query_grpc
78
from pyinjective.utils.grpc_api_request_assistant import GrpcApiRequestAssistant
89

910

1011
class ChainGrpcWasmApi:
11-
def __init__(self, channel: Channel, metadata_provider: Callable):
12+
def __init__(self, channel: Channel, cookie_assistant: CookieAssistant):
1213
self._stub = wasm_query_grpc.QueryStub(channel)
13-
self._assistant = GrpcApiRequestAssistant(metadata_provider=metadata_provider)
14+
self._assistant = GrpcApiRequestAssistant(cookie_assistant=cookie_assistant)
1415

1516
async def fetch_module_params(self) -> Dict[str, Any]:
1617
request = wasm_query_pb.QueryParamsRequest()

0 commit comments

Comments
 (0)