web3 7.13.0__py3-none-any.whl → 7.14.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ens/async_ens.py +9 -5
- ens/base_ens.py +1 -1
- ens/specs/.DS_Store +0 -0
- ens/utils.py +2 -1
- web3/_utils/abi.py +5 -5
- web3/_utils/async_transactions.py +12 -9
- web3/_utils/batching.py +1 -1
- web3/_utils/caching/caching_utils.py +2 -2
- web3/_utils/contracts.py +5 -5
- web3/_utils/ens.py +1 -1
- web3/_utils/events.py +1 -1
- web3/_utils/http_session_manager.py +7 -0
- web3/_utils/module_testing/eth_module.py +133 -125
- web3/_utils/module_testing/go_ethereum_admin_module.py +7 -6
- web3/_utils/module_testing/go_ethereum_debug_module.py +5 -4
- web3/_utils/module_testing/go_ethereum_txpool_module.py +6 -3
- web3/_utils/module_testing/module_testing_utils.py +1 -1
- web3/_utils/module_testing/net_module.py +4 -3
- web3/_utils/module_testing/persistent_connection_provider.py +132 -20
- web3/_utils/module_testing/utils.py +7 -6
- web3/_utils/module_testing/web3_module.py +15 -11
- web3/_utils/normalizers.py +3 -3
- web3/_utils/transactions.py +2 -1
- web3/beacon/async_beacon.py +1 -1
- web3/contract/async_contract.py +13 -13
- web3/contract/base_contract.py +11 -12
- web3/contract/utils.py +7 -7
- web3/eth/async_eth.py +1 -1
- web3/gas_strategies/time_based.py +1 -1
- web3/main.py +24 -11
- web3/manager.py +9 -8
- web3/middleware/__init__.py +1 -1
- web3/middleware/base.py +5 -5
- web3/middleware/buffered_gas_estimate.py +1 -1
- web3/middleware/filter.py +10 -9
- web3/middleware/formatting.py +4 -4
- web3/middleware/gas_price_strategy.py +1 -1
- web3/middleware/names.py +4 -4
- web3/middleware/signing.py +3 -3
- web3/middleware/stalecheck.py +2 -2
- web3/middleware/validation.py +2 -2
- web3/module.py +3 -3
- web3/providers/async_base.py +2 -2
- web3/providers/base.py +2 -2
- web3/providers/eth_tester/defaults.py +2 -2
- web3/providers/eth_tester/main.py +1 -1
- web3/providers/eth_tester/middleware.py +2 -2
- web3/providers/persistent/persistent.py +4 -4
- web3/providers/persistent/persistent_connection.py +1 -1
- web3/providers/persistent/subscription_manager.py +1 -1
- web3/providers/persistent/utils.py +1 -1
- web3/providers/rpc/rpc.py +3 -6
- web3/types.py +18 -5
- web3/utils/subscriptions.py +3 -2
- {web3-7.13.0.dist-info → web3-7.14.1.dist-info}/METADATA +4 -4
- {web3-7.13.0.dist-info → web3-7.14.1.dist-info}/RECORD +59 -58
- {web3-7.13.0.dist-info → web3-7.14.1.dist-info}/WHEEL +1 -1
- {web3-7.13.0.dist-info → web3-7.14.1.dist-info}/licenses/LICENSE +0 -0
- {web3-7.13.0.dist-info → web3-7.14.1.dist-info}/top_level.txt +0 -0
web3/middleware/names.py
CHANGED
|
@@ -53,7 +53,7 @@ def _is_logs_subscription_with_optional_args(method: RPCEndpoint, params: Any) -
|
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
async def async_format_all_ens_names_to_address(
|
|
56
|
-
async_web3: "AsyncWeb3",
|
|
56
|
+
async_web3: "AsyncWeb3[Any]",
|
|
57
57
|
abi_types_for_method: Sequence[Any],
|
|
58
58
|
data: Sequence[Any],
|
|
59
59
|
) -> Sequence[Any]:
|
|
@@ -69,7 +69,7 @@ async def async_format_all_ens_names_to_address(
|
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
async def async_apply_ens_to_address_conversion(
|
|
72
|
-
async_web3: "AsyncWeb3",
|
|
72
|
+
async_web3: "AsyncWeb3[Any]",
|
|
73
73
|
params: Any,
|
|
74
74
|
abi_types_for_method: Union[Sequence[str], Dict[str, str]],
|
|
75
75
|
) -> Any:
|
|
@@ -125,7 +125,7 @@ class ENSNameToAddressMiddleware(Web3Middleware):
|
|
|
125
125
|
# eth_subscribe optional logs params are unique.
|
|
126
126
|
# Handle them separately here.
|
|
127
127
|
(formatted_dict,) = await async_apply_ens_to_address_conversion(
|
|
128
|
-
cast("AsyncWeb3", self._w3),
|
|
128
|
+
cast("AsyncWeb3[Any]", self._w3),
|
|
129
129
|
(params[1],),
|
|
130
130
|
{
|
|
131
131
|
"address": "address",
|
|
@@ -136,7 +136,7 @@ class ENSNameToAddressMiddleware(Web3Middleware):
|
|
|
136
136
|
|
|
137
137
|
else:
|
|
138
138
|
params = await async_apply_ens_to_address_conversion(
|
|
139
|
-
cast("AsyncWeb3", self._w3),
|
|
139
|
+
cast("AsyncWeb3[Any]", self._w3),
|
|
140
140
|
params,
|
|
141
141
|
abi_types_for_method,
|
|
142
142
|
)
|
web3/middleware/signing.py
CHANGED
|
@@ -93,7 +93,7 @@ _PrivateKey = Union[LocalAccount, PrivateKey, HexStr, bytes]
|
|
|
93
93
|
|
|
94
94
|
@to_dict
|
|
95
95
|
def gen_normalized_accounts(
|
|
96
|
-
val: Union[_PrivateKey, Collection[_PrivateKey]]
|
|
96
|
+
val: Union[_PrivateKey, Collection[_PrivateKey]],
|
|
97
97
|
) -> Iterable[Tuple[ChecksumAddress, LocalAccount]]:
|
|
98
98
|
if isinstance(
|
|
99
99
|
val,
|
|
@@ -158,7 +158,7 @@ class SignAndSendRawMiddlewareBuilder(Web3MiddlewareBuilder):
|
|
|
158
158
|
@curry
|
|
159
159
|
def build(
|
|
160
160
|
private_key_or_account: Union[_PrivateKey, Collection[_PrivateKey]],
|
|
161
|
-
w3: Union["Web3", "AsyncWeb3"],
|
|
161
|
+
w3: Union["Web3", "AsyncWeb3[Any]"],
|
|
162
162
|
) -> "SignAndSendRawMiddlewareBuilder":
|
|
163
163
|
middleware = SignAndSendRawMiddlewareBuilder(w3)
|
|
164
164
|
middleware._accounts = gen_normalized_accounts(private_key_or_account)
|
|
@@ -199,7 +199,7 @@ class SignAndSendRawMiddlewareBuilder(Web3MiddlewareBuilder):
|
|
|
199
199
|
return method, params
|
|
200
200
|
|
|
201
201
|
else:
|
|
202
|
-
w3 = cast("AsyncWeb3", self._w3)
|
|
202
|
+
w3 = cast("AsyncWeb3[Any]", self._w3)
|
|
203
203
|
|
|
204
204
|
formatted_transaction = format_transaction(params[0])
|
|
205
205
|
filled_transaction = await async_fill_transaction_defaults(
|
web3/middleware/stalecheck.py
CHANGED
|
@@ -51,7 +51,7 @@ class StalecheckMiddlewareBuilder(Web3MiddlewareBuilder):
|
|
|
51
51
|
@curry
|
|
52
52
|
def build(
|
|
53
53
|
allowable_delay: int,
|
|
54
|
-
w3: Union["Web3", "AsyncWeb3"],
|
|
54
|
+
w3: Union["Web3", "AsyncWeb3[Any]"],
|
|
55
55
|
skip_stalecheck_for_methods: Collection[str] = SKIP_STALECHECK_FOR_METHODS,
|
|
56
56
|
) -> Web3Middleware:
|
|
57
57
|
if allowable_delay <= 0:
|
|
@@ -82,7 +82,7 @@ class StalecheckMiddlewareBuilder(Web3MiddlewareBuilder):
|
|
|
82
82
|
async def async_request_processor(self, method: "RPCEndpoint", params: Any) -> Any:
|
|
83
83
|
if method not in self.skip_stalecheck_for_methods:
|
|
84
84
|
if not _is_fresh(self.cache["latest"], self.allowable_delay):
|
|
85
|
-
w3 = cast("AsyncWeb3", self._w3)
|
|
85
|
+
w3 = cast("AsyncWeb3[Any]", self._w3)
|
|
86
86
|
latest = await w3.eth.get_block("latest")
|
|
87
87
|
|
|
88
88
|
if _is_fresh(latest, self.allowable_delay):
|
web3/middleware/validation.py
CHANGED
|
@@ -121,7 +121,7 @@ def _chain_id_validator(web3_chain_id: int) -> Callable[..., Any]:
|
|
|
121
121
|
|
|
122
122
|
|
|
123
123
|
def _build_formatters_dict(
|
|
124
|
-
request_formatters: Dict[RPCEndpoint, Any]
|
|
124
|
+
request_formatters: Dict[RPCEndpoint, Any],
|
|
125
125
|
) -> FormattersDict:
|
|
126
126
|
return dict(
|
|
127
127
|
request_formatters=request_formatters,
|
|
@@ -149,7 +149,7 @@ def build_method_validators(w3: "Web3", method: RPCEndpoint) -> FormattersDict:
|
|
|
149
149
|
|
|
150
150
|
|
|
151
151
|
async def async_build_method_validators(
|
|
152
|
-
async_w3: "AsyncWeb3", method: RPCEndpoint
|
|
152
|
+
async_w3: "AsyncWeb3[Any]", method: RPCEndpoint
|
|
153
153
|
) -> FormattersDict:
|
|
154
154
|
request_formatters: Formatters = {}
|
|
155
155
|
if RPCEndpoint(method) in METHODS_TO_VALIDATE:
|
web3/module.py
CHANGED
|
@@ -60,7 +60,7 @@ TReturn = TypeVar("TReturn")
|
|
|
60
60
|
|
|
61
61
|
@curry
|
|
62
62
|
def retrieve_request_information_for_batching(
|
|
63
|
-
w3: Union["AsyncWeb3", "Web3"],
|
|
63
|
+
w3: Union["AsyncWeb3[Any]", "Web3"],
|
|
64
64
|
module: "Module",
|
|
65
65
|
method: Method[Callable[..., Any]],
|
|
66
66
|
) -> Union[
|
|
@@ -119,7 +119,7 @@ def retrieve_blocking_method_call_fn(
|
|
|
119
119
|
|
|
120
120
|
@curry
|
|
121
121
|
def retrieve_async_method_call_fn(
|
|
122
|
-
async_w3: "AsyncWeb3",
|
|
122
|
+
async_w3: "AsyncWeb3[Any]",
|
|
123
123
|
module: "Module",
|
|
124
124
|
method: Method[Callable[..., Any]],
|
|
125
125
|
) -> Callable[
|
|
@@ -167,7 +167,7 @@ def retrieve_async_method_call_fn(
|
|
|
167
167
|
class Module:
|
|
168
168
|
is_async = False
|
|
169
169
|
|
|
170
|
-
def __init__(self, w3: Union["AsyncWeb3", "Web3"]) -> None:
|
|
170
|
+
def __init__(self, w3: Union["AsyncWeb3[Any]", "Web3"]) -> None:
|
|
171
171
|
if self.is_async:
|
|
172
172
|
self.retrieve_caller_fn = retrieve_async_method_call_fn(w3, self)
|
|
173
173
|
else:
|
web3/providers/async_base.py
CHANGED
|
@@ -112,7 +112,7 @@ class AsyncBaseProvider:
|
|
|
112
112
|
return self._batching_context.get() is not None
|
|
113
113
|
|
|
114
114
|
async def request_func(
|
|
115
|
-
self, async_w3: "AsyncWeb3", middleware_onion: MiddlewareOnion
|
|
115
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: MiddlewareOnion
|
|
116
116
|
) -> Callable[..., Coroutine[Any, Any, RPCResponse]]:
|
|
117
117
|
middleware: Tuple[Middleware, ...] = middleware_onion.as_tuple_of_middleware()
|
|
118
118
|
|
|
@@ -129,7 +129,7 @@ class AsyncBaseProvider:
|
|
|
129
129
|
return self._request_func_cache[-1]
|
|
130
130
|
|
|
131
131
|
async def batch_request_func(
|
|
132
|
-
self, async_w3: "AsyncWeb3", middleware_onion: MiddlewareOnion
|
|
132
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: MiddlewareOnion
|
|
133
133
|
) -> Callable[..., Coroutine[Any, Any, Union[List[RPCResponse], RPCResponse]]]:
|
|
134
134
|
middleware: Tuple[Middleware, ...] = middleware_onion.as_tuple_of_middleware()
|
|
135
135
|
|
web3/providers/base.py
CHANGED
|
@@ -192,9 +192,9 @@ class JSONBaseProvider(BaseProvider):
|
|
|
192
192
|
# type ignore bc in order to wrap the method, we have to call
|
|
193
193
|
# `wrap_make_batch_request` with the accumulator_fn as the argument
|
|
194
194
|
# which breaks the type hinting for this particular case.
|
|
195
|
-
accumulator_fn = initialized.wrap_make_batch_request(
|
|
195
|
+
accumulator_fn = initialized.wrap_make_batch_request( # type: ignore
|
|
196
196
|
accumulator_fn
|
|
197
|
-
)
|
|
197
|
+
)
|
|
198
198
|
self._batch_request_func_cache = (middleware, accumulator_fn)
|
|
199
199
|
|
|
200
200
|
return self._batch_request_func_cache[-1]
|
|
@@ -116,7 +116,7 @@ def call_eth_tester(
|
|
|
116
116
|
|
|
117
117
|
|
|
118
118
|
def without_eth_tester(
|
|
119
|
-
fn: Callable[[TParams], TReturn]
|
|
119
|
+
fn: Callable[[TParams], TReturn],
|
|
120
120
|
) -> Callable[["EthereumTester", TParams], TReturn]:
|
|
121
121
|
# workaround for: https://github.com/pytoolz/cytoolz/issues/103
|
|
122
122
|
# @functools.wraps(fn)
|
|
@@ -127,7 +127,7 @@ def without_eth_tester(
|
|
|
127
127
|
|
|
128
128
|
|
|
129
129
|
def without_params(
|
|
130
|
-
fn: Callable[[TParams], TReturn]
|
|
130
|
+
fn: Callable[[TParams], TReturn],
|
|
131
131
|
) -> Callable[["EthereumTester", TParams], TReturn]:
|
|
132
132
|
# workaround for: https://github.com/pytoolz/cytoolz/issues/103
|
|
133
133
|
# @functools.wraps(fn)
|
|
@@ -82,7 +82,7 @@ class AsyncEthereumTesterProvider(AsyncBaseProvider):
|
|
|
82
82
|
self.api_endpoints = API_ENDPOINTS
|
|
83
83
|
|
|
84
84
|
async def request_func(
|
|
85
|
-
self, async_w3: "AsyncWeb3", middleware_onion: "MiddlewareOnion"
|
|
85
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: "MiddlewareOnion"
|
|
86
86
|
) -> Callable[..., Coroutine[Any, Any, RPCResponse]]:
|
|
87
87
|
# override the request_func to add the ethereum_tester_middleware
|
|
88
88
|
|
|
@@ -376,7 +376,7 @@ def fill_default(
|
|
|
376
376
|
|
|
377
377
|
|
|
378
378
|
async def async_guess_from(
|
|
379
|
-
async_w3: "AsyncWeb3", _: TxParams
|
|
379
|
+
async_w3: "AsyncWeb3[Any]", _: TxParams
|
|
380
380
|
) -> Optional[ChecksumAddress]:
|
|
381
381
|
accounts = await async_w3.eth.accounts
|
|
382
382
|
if accounts is not None and len(accounts) > 0:
|
|
@@ -388,7 +388,7 @@ async def async_guess_from(
|
|
|
388
388
|
async def async_fill_default(
|
|
389
389
|
field: str,
|
|
390
390
|
guess_func: Callable[..., Any],
|
|
391
|
-
async_w3: "AsyncWeb3",
|
|
391
|
+
async_w3: "AsyncWeb3[Any]",
|
|
392
392
|
transaction: TxParams,
|
|
393
393
|
) -> TxParams:
|
|
394
394
|
# type ignored b/c TxParams keys must be string literal types
|
|
@@ -106,7 +106,7 @@ class PersistentConnectionProvider(AsyncJSONBaseProvider, ABC):
|
|
|
106
106
|
# -- cached middleware request/response functions -- #
|
|
107
107
|
|
|
108
108
|
async def send_func(
|
|
109
|
-
self, async_w3: "AsyncWeb3", middleware_onion: "MiddlewareOnion"
|
|
109
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: "MiddlewareOnion"
|
|
110
110
|
) -> Callable[..., Coroutine[Any, Any, RPCRequest]]:
|
|
111
111
|
"""
|
|
112
112
|
Cache the middleware chain for `send`.
|
|
@@ -130,7 +130,7 @@ class PersistentConnectionProvider(AsyncJSONBaseProvider, ABC):
|
|
|
130
130
|
return self._send_func_cache[1]
|
|
131
131
|
|
|
132
132
|
async def recv_func(
|
|
133
|
-
self, async_w3: "AsyncWeb3", middleware_onion: "MiddlewareOnion"
|
|
133
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: "MiddlewareOnion"
|
|
134
134
|
) -> Any:
|
|
135
135
|
"""
|
|
136
136
|
Cache and compose the middleware stack for `recv`.
|
|
@@ -156,7 +156,7 @@ class PersistentConnectionProvider(AsyncJSONBaseProvider, ABC):
|
|
|
156
156
|
return self._recv_func_cache[1]
|
|
157
157
|
|
|
158
158
|
async def send_batch_func(
|
|
159
|
-
self, async_w3: "AsyncWeb3", middleware_onion: "MiddlewareOnion"
|
|
159
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: "MiddlewareOnion"
|
|
160
160
|
) -> Callable[..., Coroutine[Any, Any, List[RPCRequest]]]:
|
|
161
161
|
middleware = middleware_onion.as_tuple_of_middleware()
|
|
162
162
|
cache_key = hash(tuple(id(mw) for mw in middleware))
|
|
@@ -179,7 +179,7 @@ class PersistentConnectionProvider(AsyncJSONBaseProvider, ABC):
|
|
|
179
179
|
return self._send_batch_func_cache[1]
|
|
180
180
|
|
|
181
181
|
async def recv_batch_func(
|
|
182
|
-
self, async_w3: "AsyncWeb3", middleware_onion: "MiddlewareOnion"
|
|
182
|
+
self, async_w3: "AsyncWeb3[Any]", middleware_onion: "MiddlewareOnion"
|
|
183
183
|
) -> Callable[..., Coroutine[Any, Any, List[RPCResponse]]]:
|
|
184
184
|
middleware = middleware_onion.as_tuple_of_middleware()
|
|
185
185
|
cache_key = hash(tuple(id(mw) for mw in middleware))
|
|
@@ -30,7 +30,7 @@ class PersistentConnection:
|
|
|
30
30
|
via a `AsyncWeb3` instance instantiated with a `PersistentConnectionProvider` class.
|
|
31
31
|
"""
|
|
32
32
|
|
|
33
|
-
def __init__(self, w3: "AsyncWeb3"):
|
|
33
|
+
def __init__(self, w3: "AsyncWeb3[Any]"):
|
|
34
34
|
self._manager = w3.manager
|
|
35
35
|
self.provider = cast("PersistentConnectionProvider", self._manager.provider)
|
|
36
36
|
|
|
@@ -53,7 +53,7 @@ class SubscriptionManager:
|
|
|
53
53
|
"web3.providers.persistent.subscription_manager"
|
|
54
54
|
)
|
|
55
55
|
|
|
56
|
-
def __init__(self, w3: "AsyncWeb3") -> None:
|
|
56
|
+
def __init__(self, w3: "AsyncWeb3[Any]") -> None:
|
|
57
57
|
self._w3 = w3
|
|
58
58
|
self._provider = cast("PersistentConnectionProvider", w3.provider)
|
|
59
59
|
self._subscription_container = SubscriptionContainer()
|
|
@@ -26,7 +26,7 @@ def persistent_connection_provider_method(message: str = None) -> Callable[...,
|
|
|
26
26
|
|
|
27
27
|
def decorator(func: Callable[..., Any]) -> Callable[..., Any]:
|
|
28
28
|
@functools.wraps(func)
|
|
29
|
-
def inner(self: "AsyncWeb3", *args: Any, **kwargs: Any) -> Any:
|
|
29
|
+
def inner(self: "AsyncWeb3[Any]", *args: Any, **kwargs: Any) -> Any:
|
|
30
30
|
nonlocal message
|
|
31
31
|
if message is None:
|
|
32
32
|
message = (
|
web3/providers/rpc/rpc.py
CHANGED
|
@@ -72,7 +72,9 @@ class HTTPProvider(JSONBaseProvider):
|
|
|
72
72
|
**kwargs: Any,
|
|
73
73
|
) -> None:
|
|
74
74
|
super().__init__(**kwargs)
|
|
75
|
-
|
|
75
|
+
# Pass explicit session to manager so it's used for ALL requests,
|
|
76
|
+
# regardless of which thread makes them
|
|
77
|
+
self._request_session_manager = HTTPSessionManager(explicit_session=session)
|
|
76
78
|
|
|
77
79
|
if endpoint_uri is None:
|
|
78
80
|
self.endpoint_uri = (
|
|
@@ -84,11 +86,6 @@ class HTTPProvider(JSONBaseProvider):
|
|
|
84
86
|
self._request_kwargs = request_kwargs or {}
|
|
85
87
|
self._exception_retry_configuration = exception_retry_configuration
|
|
86
88
|
|
|
87
|
-
if session:
|
|
88
|
-
self._request_session_manager.cache_and_return_session(
|
|
89
|
-
self.endpoint_uri, session
|
|
90
|
-
)
|
|
91
|
-
|
|
92
89
|
def __str__(self) -> str:
|
|
93
90
|
return f"RPC connection {self.endpoint_uri}"
|
|
94
91
|
|
web3/types.py
CHANGED
|
@@ -62,6 +62,19 @@ ABIElementIdentifier = Union[str, Type[FallbackFn], Type[ReceiveFn]]
|
|
|
62
62
|
|
|
63
63
|
# bytes, hexbytes, or hexstr representing a 32 byte hash
|
|
64
64
|
_Hash32 = Union[Hash32, HexBytes, HexStr]
|
|
65
|
+
|
|
66
|
+
# --- ``TopicFilter`` type for event log filtering with AND/OR patterns --- #
|
|
67
|
+
# - ``None``: wildcard, matches any value at this position
|
|
68
|
+
# - ``_Hash32``: single topic that must match exactly
|
|
69
|
+
# - ``Sequence[Union[None, _Hash32]]``: OR condition, at least one must match
|
|
70
|
+
# - ``Sequence[Sequence[...]]``: nested OR conditions
|
|
71
|
+
TopicFilter = Union[
|
|
72
|
+
None,
|
|
73
|
+
_Hash32,
|
|
74
|
+
Sequence[Union[None, _Hash32]],
|
|
75
|
+
Sequence["TopicFilter"],
|
|
76
|
+
]
|
|
77
|
+
|
|
65
78
|
EnodeURI = NewType("EnodeURI", str)
|
|
66
79
|
ENS = NewType("ENS", str)
|
|
67
80
|
Nonce = NewType("Nonce", int)
|
|
@@ -143,7 +156,7 @@ class SetCodeAuthorizationParams(TypedDict):
|
|
|
143
156
|
chainId: int
|
|
144
157
|
address: Union[Address, ChecksumAddress, str]
|
|
145
158
|
nonce: Nonce
|
|
146
|
-
|
|
159
|
+
yParity: int
|
|
147
160
|
r: int
|
|
148
161
|
s: int
|
|
149
162
|
|
|
@@ -180,7 +193,7 @@ TxParams = TypedDict(
|
|
|
180
193
|
|
|
181
194
|
class WithdrawalData(TypedDict):
|
|
182
195
|
index: int
|
|
183
|
-
|
|
196
|
+
validatorIndex: int
|
|
184
197
|
address: ChecksumAddress
|
|
185
198
|
amount: Gwei
|
|
186
199
|
|
|
@@ -345,7 +358,7 @@ class FilterParams(TypedDict, total=False):
|
|
|
345
358
|
blockHash: HexBytes
|
|
346
359
|
fromBlock: BlockIdentifier
|
|
347
360
|
toBlock: BlockIdentifier
|
|
348
|
-
topics: Sequence[
|
|
361
|
+
topics: Sequence[TopicFilter]
|
|
349
362
|
|
|
350
363
|
|
|
351
364
|
class FeeHistory(TypedDict):
|
|
@@ -367,7 +380,7 @@ StateOverride = Dict[Union[str, Address, ChecksumAddress], StateOverrideParams]
|
|
|
367
380
|
|
|
368
381
|
|
|
369
382
|
GasPriceStrategy = Union[
|
|
370
|
-
Callable[["Web3", TxParams], Wei], Callable[["AsyncWeb3", TxParams], Wei]
|
|
383
|
+
Callable[["Web3", TxParams], Wei], Callable[["AsyncWeb3[Any]", TxParams], Wei]
|
|
371
384
|
]
|
|
372
385
|
|
|
373
386
|
|
|
@@ -667,4 +680,4 @@ class LogsSubscriptionArg(TypedDict, total=False):
|
|
|
667
680
|
ENS,
|
|
668
681
|
Sequence[Union[Address, ChecksumAddress, ENS]],
|
|
669
682
|
]
|
|
670
|
-
topics: Sequence[
|
|
683
|
+
topics: Sequence[TopicFilter]
|
web3/utils/subscriptions.py
CHANGED
|
@@ -30,6 +30,7 @@ from web3.types import (
|
|
|
30
30
|
FilterParams,
|
|
31
31
|
LogReceipt,
|
|
32
32
|
SyncProgress,
|
|
33
|
+
TopicFilter,
|
|
33
34
|
TxData,
|
|
34
35
|
)
|
|
35
36
|
|
|
@@ -50,7 +51,7 @@ TSubscription = TypeVar("TSubscription", bound="EthSubscription[Any]")
|
|
|
50
51
|
class EthSubscriptionContext(Generic[TSubscription, TSubscriptionResult]):
|
|
51
52
|
def __init__(
|
|
52
53
|
self,
|
|
53
|
-
async_w3: "AsyncWeb3",
|
|
54
|
+
async_w3: "AsyncWeb3[Any]",
|
|
54
55
|
subscription: TSubscription,
|
|
55
56
|
result: TSubscriptionResult,
|
|
56
57
|
**kwargs: Any,
|
|
@@ -215,7 +216,7 @@ class LogsSubscription(EthSubscription[LogReceipt]):
|
|
|
215
216
|
address: Optional[
|
|
216
217
|
Union[Address, ChecksumAddress, List[Address], List[ChecksumAddress]]
|
|
217
218
|
] = None,
|
|
218
|
-
topics: Optional[
|
|
219
|
+
topics: Optional[Sequence[TopicFilter]] = None,
|
|
219
220
|
handler: LogsSubscriptionHandler = None,
|
|
220
221
|
handler_context: Optional[Dict[str, Any]] = None,
|
|
221
222
|
label: Optional[str] = None,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: web3
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.14.1
|
|
4
4
|
Summary: web3: A Python library for interacting with Ethereum
|
|
5
5
|
Home-page: https://github.com/ethereum/web3.py
|
|
6
6
|
Author: The Ethereum Foundation
|
|
@@ -37,7 +37,7 @@ Requires-Dist: websockets<16.0.0,>=10.0.0
|
|
|
37
37
|
Requires-Dist: pyunormalize>=15.0.0
|
|
38
38
|
Provides-Extra: tester
|
|
39
39
|
Requires-Dist: eth-tester[py-evm]<0.14.0b1,>=0.13.0b1; extra == "tester"
|
|
40
|
-
Requires-Dist: py-geth>=
|
|
40
|
+
Requires-Dist: py-geth>=6.4.0; extra == "tester"
|
|
41
41
|
Provides-Extra: dev
|
|
42
42
|
Requires-Dist: build>=0.9.0; extra == "dev"
|
|
43
43
|
Requires-Dist: bump_my_version>=0.19.0; extra == "dev"
|
|
@@ -60,7 +60,7 @@ Requires-Dist: tox>=4.0.0; extra == "dev"
|
|
|
60
60
|
Requires-Dist: mypy==1.10.0; extra == "dev"
|
|
61
61
|
Requires-Dist: pre-commit>=3.4.0; extra == "dev"
|
|
62
62
|
Requires-Dist: eth-tester[py-evm]<0.14.0b1,>=0.13.0b1; extra == "dev"
|
|
63
|
-
Requires-Dist: py-geth>=
|
|
63
|
+
Requires-Dist: py-geth>=6.4.0; extra == "dev"
|
|
64
64
|
Provides-Extra: docs
|
|
65
65
|
Requires-Dist: sphinx>=6.0.0; extra == "docs"
|
|
66
66
|
Requires-Dist: sphinx-autobuild>=2021.3.14; extra == "docs"
|
|
@@ -77,7 +77,7 @@ Requires-Dist: tox>=4.0.0; extra == "test"
|
|
|
77
77
|
Requires-Dist: mypy==1.10.0; extra == "test"
|
|
78
78
|
Requires-Dist: pre-commit>=3.4.0; extra == "test"
|
|
79
79
|
Requires-Dist: eth-tester[py-evm]<0.14.0b1,>=0.13.0b1; extra == "test"
|
|
80
|
-
Requires-Dist: py-geth>=
|
|
80
|
+
Requires-Dist: py-geth>=6.4.0; extra == "test"
|
|
81
81
|
Dynamic: author
|
|
82
82
|
Dynamic: author-email
|
|
83
83
|
Dynamic: classifier
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
ens/__init__.py,sha256=BtOyGF_JrIpWFTr_T1GCJuUtmZI-Qf-v560uzTWp18E,471
|
|
2
2
|
ens/_normalization.py,sha256=t_abmu3z2QcTcX6gVaSfdUzz0_E5aGCPvuj0Hftd-Kg,16900
|
|
3
3
|
ens/abis.py,sha256=0Ec_lqe7HBsVpQrID3ccFMhx8Vb7S0TGFbeuRdXhuCE,34745
|
|
4
|
-
ens/async_ens.py,sha256=
|
|
4
|
+
ens/async_ens.py,sha256=UzpN6Y1VGy3c0W1VQLPKhA8AWQYDJ4JwhdbdDRWjMq4,22734
|
|
5
5
|
ens/auto.py,sha256=w_E6Ua5ZmJVxfdii2aG5I_kQG5B9U5Y2qIFKVNhXo98,41
|
|
6
|
-
ens/base_ens.py,sha256=
|
|
6
|
+
ens/base_ens.py,sha256=QfKsRS4Of4JziV5iytvAxSjIGrkHEQ2CU0uNbjHtq9s,3512
|
|
7
7
|
ens/constants.py,sha256=XCO4Pntwdnw10K_AZ86V0cqcvdUoOkEZvRqoDdFPE_w,913
|
|
8
8
|
ens/contract_data.py,sha256=CZa7Uxzq6rT-KonwHHM_wo-5ry0j1DMbikgEaP27Uy8,148602
|
|
9
9
|
ens/ens.py,sha256=-avaYLLwUAPj8cYxP5fcH5h9aVabG5xuvBkwh5yTbMQ,21722
|
|
10
10
|
ens/exceptions.py,sha256=5h-t3G-lwYchYe4JgHaxD_a_llh56sS6qzo9Rpa0S0o,2442
|
|
11
|
-
ens/utils.py,sha256=
|
|
11
|
+
ens/utils.py,sha256=DYPCrIFJPrnWNa-d3-oX2YlKXlLM9dQz43XzVoS4k5I,9354
|
|
12
|
+
ens/specs/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
|
|
12
13
|
ens/specs/nf.json,sha256=tPXKzdhgu9gqNi0UhKC1kzPqSBgy4yHm5TL19RQHBqU,49038
|
|
13
14
|
ens/specs/normalization_spec.json,sha256=8mmjBj4OoYCn7pD4P7hqKP_qy6rpYzpyRinSH3CCP9M,3171499
|
|
14
15
|
web3/__init__.py,sha256=P11QAEV_GYoZq9ij8gDzFx5tKzJY2aMXG-keg2Lg1xs,1277
|
|
@@ -17,49 +18,49 @@ web3/datastructures.py,sha256=J5rdpnuS10pKUfPYqcoorkDw-aHHZNrdiW-Bh7dVDwI,11514
|
|
|
17
18
|
web3/exceptions.py,sha256=9qWjvZM-snQTITs8FJbTMnVQygM80ciddwOkSgiioY8,9783
|
|
18
19
|
web3/geth.py,sha256=xVBZWSksBo2ipesAN9V5hzDc_te7kU8ueicFdvpkSO4,7370
|
|
19
20
|
web3/logs.py,sha256=ROs-mDMH_ZOecE7hfbWA5yp27G38FbLjX4lO_WtlZxQ,198
|
|
20
|
-
web3/main.py,sha256=
|
|
21
|
-
web3/manager.py,sha256=
|
|
21
|
+
web3/main.py,sha256=Juqz6suZlWV5uteuQfnELl_1j3m0ZXetC6nYoo3N4s8,16454
|
|
22
|
+
web3/manager.py,sha256=W4STd7iBKaOyZi7ghCCm14tijMXIszblyvPuaq-kum0,22641
|
|
22
23
|
web3/method.py,sha256=BCYend146F5Q149VB2VN11_Z3x8y0lJZH8ShF_VxwV4,8682
|
|
23
|
-
web3/module.py,sha256=
|
|
24
|
+
web3/module.py,sha256=9XHdY0TZxkOj0SYTlE3YLo9OkghS9IhsZ-FEGItLoLk,5632
|
|
24
25
|
web3/net.py,sha256=Y3vPzHWVFkfHEZoJxjDOt4tp5ERmZrMuyi4ZFOLmIeA,1562
|
|
25
26
|
web3/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
27
|
web3/testing.py,sha256=Ury_-7XSstJ8bkCfdGEi4Cr76QzSfW7v_zfPlDlLJj0,923
|
|
27
28
|
web3/tracing.py,sha256=ZcOam7t-uEZXyui6Cndv6RYeCZP5jh1TBn2hG8sv17Q,3098
|
|
28
|
-
web3/types.py,sha256=
|
|
29
|
+
web3/types.py,sha256=uC29RfzPBuqwwCNPI91Un-8i7eDesTj_sEV96AzMtUY,15457
|
|
29
30
|
web3/_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
30
|
-
web3/_utils/abi.py,sha256=
|
|
31
|
+
web3/_utils/abi.py,sha256=pa3AYPmVRbWpC3wVRczD30UVBobs-aFUwCLLAaGlq7E,27574
|
|
31
32
|
web3/_utils/abi_element_identifiers.py,sha256=m305lsvUZk-jkPixT0IJd9P5sXqMvmwlwlLeBgEAnBQ,55
|
|
32
33
|
web3/_utils/async_caching.py,sha256=2XnaKCHBTTDK6B2R_YZvjJqIRUpbMDIU1uYrq-Lcyp8,486
|
|
33
|
-
web3/_utils/async_transactions.py,sha256=
|
|
34
|
-
web3/_utils/batching.py,sha256=
|
|
34
|
+
web3/_utils/async_transactions.py,sha256=NJ6RP-mWVe7vkUQ99DBGwjt1k8zZ7Rnfzc7e36B4KOs,5641
|
|
35
|
+
web3/_utils/batching.py,sha256=ZU0K_4pkKYLz87Ml4eEdCk8ll2TAFZj-VLMfv18PnD0,6093
|
|
35
36
|
web3/_utils/blocks.py,sha256=SZ17qSJuPAH5Dz-eQPGOsZw_QtkG19zvpSYMv6mEDok,2138
|
|
36
|
-
web3/_utils/contracts.py,sha256=
|
|
37
|
+
web3/_utils/contracts.py,sha256=UMHbz6MQzHrSjoJVTjHTw3bqHQVjts4mnpYqSDMyb6I,12116
|
|
37
38
|
web3/_utils/datatypes.py,sha256=nI0C9XWl46gFj1RpwuoHfVqb4e73wlaerE1LNyMg3oo,1701
|
|
38
39
|
web3/_utils/decorators.py,sha256=AfueuAYbSAOJZmwv9JBK27iDglO3Rvqmsi6uJckt6QQ,1774
|
|
39
40
|
web3/_utils/empty.py,sha256=ccgxFk5qm2x2ZeD8b17wX5cCAJPkPFuHrNQNMDslytY,132
|
|
40
41
|
web3/_utils/encoding.py,sha256=6A5ObPUgYiaCVcfIW1EC7PlAQ9iOxliJFPS4TbZEV88,9637
|
|
41
|
-
web3/_utils/ens.py,sha256=
|
|
42
|
+
web3/_utils/ens.py,sha256=Z2mZhIFB0NRTdLaBMWpp3z7_Z6UR_mSjosrUx5QNUkw,2696
|
|
42
43
|
web3/_utils/error_formatters_utils.py,sha256=GQmUUW22B2N5e4vX6aiiLenwiwPhE89HfPSt_vYttw0,7405
|
|
43
|
-
web3/_utils/events.py,sha256=
|
|
44
|
+
web3/_utils/events.py,sha256=KLLvWeaxu-_mF_MCUjFy3yiLHiJoqW3dhVN6gUA4UZM,17041
|
|
44
45
|
web3/_utils/fee_utils.py,sha256=MFt27R9E3qFP-Hf87-Lzv0JAiuYRE_qqafyTmzctAYA,2145
|
|
45
46
|
web3/_utils/filters.py,sha256=_LxE-LbuhElTUfW-_fV1tqfdWHxS6a_RyoInD2m6nN0,12243
|
|
46
47
|
web3/_utils/formatters.py,sha256=ld6hUnt4awpbZ6-AoOCDrGM6wgup_e-8G4FxEa3SytM,3719
|
|
47
48
|
web3/_utils/http.py,sha256=2R3UOeZmwiQGc3ladf78R9AnufbGaTXAntqf-ZQlZPI,230
|
|
48
|
-
web3/_utils/http_session_manager.py,sha256=
|
|
49
|
+
web3/_utils/http_session_manager.py,sha256=DOYjCeICRa6C33zKYvfsPf9LjprKjHgB6CPIXWUi7z0,13014
|
|
49
50
|
web3/_utils/hypothesis.py,sha256=4Cm4iOWv-uP9irg_Pv63kYNDYUAGhnUH6fOPWRw3A0g,209
|
|
50
51
|
web3/_utils/math.py,sha256=4oU5YdbQBXElxK00CxmUZ94ApXFu9QT_TrO0Kho1HTs,1083
|
|
51
52
|
web3/_utils/method_formatters.py,sha256=HI44SfDbg3mhIYJ9JujlsrLDHnhrv-ZVQdTte1gaTxE,41496
|
|
52
53
|
web3/_utils/module.py,sha256=GuVePloTlIBZwFDOjg0zasp53HSJ32umxN1nQhqW-8Y,3175
|
|
53
|
-
web3/_utils/normalizers.py,sha256=
|
|
54
|
+
web3/_utils/normalizers.py,sha256=i1uktLgpkU7Itzv6-MTYhq3y3Q17YE31PXlxH3iYzgQ,7462
|
|
54
55
|
web3/_utils/rpc_abi.py,sha256=m6aHop1di0dl9TrxPi3R-CYfzGMN9ILx4dNjVZF-8YE,8595
|
|
55
56
|
web3/_utils/threads.py,sha256=hNlSd_zheQYN0vC1faWWb9_UQxp_UzaM2fI5C8y0kB0,4245
|
|
56
|
-
web3/_utils/transactions.py,sha256=
|
|
57
|
+
web3/_utils/transactions.py,sha256=fIJrUnhfRxU_6hr4Y3LEmvrlp-vS0MeniYUaR3OuoDg,9058
|
|
57
58
|
web3/_utils/type_conversion.py,sha256=s6cg3WDCQIarQLWw_GfctaJjXhS_EcokUNO-S_ccvng,873
|
|
58
59
|
web3/_utils/utility_methods.py,sha256=4rOzuxbBrxl2LcRih6sRDcHghwqzLOXxVbJxCXoA6Os,2591
|
|
59
60
|
web3/_utils/validation.py,sha256=vdeum81mzZaQ5G8HlmwQnDcWPLAW7aaennRqzv2wG3E,13352
|
|
60
61
|
web3/_utils/windows.py,sha256=IlFUtqYSbUUfFRx60zvEwpiZd080WpOrA4ojm4tmSEE,994
|
|
61
62
|
web3/_utils/caching/__init__.py,sha256=ri-5UGz5PPuYW9W1c2BX5lUJn1oZuvErbDz5NweiveA,284
|
|
62
|
-
web3/_utils/caching/caching_utils.py,sha256=
|
|
63
|
+
web3/_utils/caching/caching_utils.py,sha256=VLBDoi2IRWPBfNuGQtccPdnbIfj-igvgD8ZXZmsKPTc,14283
|
|
63
64
|
web3/_utils/caching/request_caching_validation.py,sha256=9CaL1jJWc8Q_sM0GPixmmJc_Enh6aiC6PKxo9VlpM_Y,9947
|
|
64
65
|
web3/_utils/compat/__init__.py,sha256=RUD0S8wzEv2a9o1UhJD0SIECjzatjJl7vc6RCM2d1Fs,571
|
|
65
66
|
web3/_utils/contract_sources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -89,68 +90,68 @@ web3/_utils/contract_sources/contract_data/storage_contract.py,sha256=ARz6J3Gmsn
|
|
|
89
90
|
web3/_utils/contract_sources/contract_data/string_contract.py,sha256=sk6TWvzH7GkRxwioXFm2a7J99riySqipn2EQhfYdzLY,11228
|
|
90
91
|
web3/_utils/contract_sources/contract_data/tuple_contracts.py,sha256=7RlKfKRVXhjJN1j7D4YlQM6BswK3c0VaSxcnPVwAgcg,23176
|
|
91
92
|
web3/_utils/module_testing/__init__.py,sha256=Xr_S46cjr0mypD_Y4ZbeF1EJ-XWfNxWUks5ykhzN10c,485
|
|
92
|
-
web3/_utils/module_testing/eth_module.py,sha256=
|
|
93
|
-
web3/_utils/module_testing/go_ethereum_admin_module.py,sha256=
|
|
94
|
-
web3/_utils/module_testing/go_ethereum_debug_module.py,sha256=
|
|
95
|
-
web3/_utils/module_testing/go_ethereum_txpool_module.py,sha256=
|
|
96
|
-
web3/_utils/module_testing/module_testing_utils.py,sha256=
|
|
97
|
-
web3/_utils/module_testing/net_module.py,sha256=
|
|
98
|
-
web3/_utils/module_testing/persistent_connection_provider.py,sha256=
|
|
99
|
-
web3/_utils/module_testing/utils.py,sha256=
|
|
100
|
-
web3/_utils/module_testing/web3_module.py,sha256=
|
|
93
|
+
web3/_utils/module_testing/eth_module.py,sha256=YmiE0Y1oMUbvIZ99SZ3XAoHc220fWUZDfNJ3hJqdKHQ,197196
|
|
94
|
+
web3/_utils/module_testing/go_ethereum_admin_module.py,sha256=gqtRbbt5AKPq8xKcnQH9kULxJMTK32WA68E8eggQgic,3445
|
|
95
|
+
web3/_utils/module_testing/go_ethereum_debug_module.py,sha256=k2eXf71F4ANwYlTmua-PJvANy5jmcmPx72FDfmSM_q0,4173
|
|
96
|
+
web3/_utils/module_testing/go_ethereum_txpool_module.py,sha256=IXWuu1xG4hKJr6ULonfW3KKrCitFhITCSj3JlU_62eY,1223
|
|
97
|
+
web3/_utils/module_testing/module_testing_utils.py,sha256=eMd6jpkDgcnFfqVwMsoqHfmDLFmbd1bNVUx53gKytpE,5644
|
|
98
|
+
web3/_utils/module_testing/net_module.py,sha256=nsc1T5THY9gm_ORakvhz_PwWlGC4X-peLfHSO3AK9po,1296
|
|
99
|
+
web3/_utils/module_testing/persistent_connection_provider.py,sha256=8xc9iZr5xq1Zx9q3p9awJY9_gnu27ApKiMLOCDtokGI,34802
|
|
100
|
+
web3/_utils/module_testing/utils.py,sha256=urYKZqNpJRRA2u_JBI1zy1fZpnvnxz6a23gpNs4Hp5M,13558
|
|
101
|
+
web3/_utils/module_testing/web3_module.py,sha256=JtckjOMhJZLV7aHVvNlgR9nNPwv2nUGX2dOB2UUNx6k,27720
|
|
101
102
|
web3/auto/__init__.py,sha256=ZbzAiCZMdt_tCTTPvH6t8NCVNroKKkt7TSVBBNR74Is,44
|
|
102
103
|
web3/auto/gethdev.py,sha256=MuWD2gxv0xDv_SzPsp9mSkS1oG4P54xFK83qw9NvswA,438
|
|
103
104
|
web3/beacon/__init__.py,sha256=Ac6YiNgU8D8Ynnh5RwSCx2NwPyjnpFjpXeHuSssFbaU,113
|
|
104
105
|
web3/beacon/api_endpoints.py,sha256=rkoy4d6igjgHbI0HSE9FEdZSYw94KhPz1gGaPdEjMCg,2632
|
|
105
|
-
web3/beacon/async_beacon.py,sha256=
|
|
106
|
+
web3/beacon/async_beacon.py,sha256=JXv0Y_nUTFVbAEgIEEBvZsEZ6JvD2_bDWtjwZaJYlko,9778
|
|
106
107
|
web3/beacon/beacon.py,sha256=awL60kk7syulb2tuwkOFnkS1eki_tZxAk4p34LGPGho,8707
|
|
107
108
|
web3/contract/__init__.py,sha256=qeZRtTw9xriwoD82w6vePDuPBZ35-CMVdkzViBSH3Qs,293
|
|
108
|
-
web3/contract/async_contract.py,sha256=
|
|
109
|
-
web3/contract/base_contract.py,sha256=
|
|
109
|
+
web3/contract/async_contract.py,sha256=1B9FZKoVJLMc4Ih7wh5kGiHdMbNOWby1qub4GnvpYfo,20599
|
|
110
|
+
web3/contract/base_contract.py,sha256=ECEgPUPpy3ayLCFF9xTWY4N63R8K7lFdyLj03BZnEEM,54390
|
|
110
111
|
web3/contract/contract.py,sha256=-TJJMjwybZmQo8-DtGhrjIr7TwVXFoiIsdMan1NFgQY,20562
|
|
111
|
-
web3/contract/utils.py,sha256=
|
|
112
|
+
web3/contract/utils.py,sha256=99blp5jj-xOih9JTUfdSfDHZwuNZRKgl0GfC3Tgj9O0,18626
|
|
112
113
|
web3/eth/__init__.py,sha256=qDLxOcHHIzzPD7xzwy6Wcs0lLPQieB7WN0Ax25ctit8,197
|
|
113
|
-
web3/eth/async_eth.py,sha256=
|
|
114
|
+
web3/eth/async_eth.py,sha256=Bzg9aH7TeyyrCM-lIL-YFIQVLMtecYXryVEwyw67wwY,24540
|
|
114
115
|
web3/eth/base_eth.py,sha256=UUH0Fw0HVa_mBEQ_CbCDO01yCVDsj33d8yOv7Oe-QD0,6905
|
|
115
116
|
web3/eth/eth.py,sha256=zYhotz6GFRVl951oljXHnnlF1GJTgFlgJlA09Soji5k,20806
|
|
116
117
|
web3/gas_strategies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
117
118
|
web3/gas_strategies/rpc.py,sha256=lQnKJSSZAjE2_klwdr7tkZkPiYN9mkz1IqbVS2WNo6M,351
|
|
118
|
-
web3/gas_strategies/time_based.py,sha256=
|
|
119
|
-
web3/middleware/__init__.py,sha256=
|
|
119
|
+
web3/gas_strategies/time_based.py,sha256=Big3EfvklkuCJEjHtFs8DLFgY_72BReRyKs0icf7QzQ,9071
|
|
120
|
+
web3/middleware/__init__.py,sha256=uYGi5y5cp10sU2eawpZkPFFo0wDMz9f8aU-t582zZlA,2835
|
|
120
121
|
web3/middleware/attrdict.py,sha256=tIoMEZ3BkmEafnwitGY70o0GS9ShfwReDMxkHuvcOwI,2092
|
|
121
|
-
web3/middleware/base.py,sha256=
|
|
122
|
-
web3/middleware/buffered_gas_estimate.py,sha256=
|
|
123
|
-
web3/middleware/filter.py,sha256=
|
|
124
|
-
web3/middleware/formatting.py,sha256=
|
|
125
|
-
web3/middleware/gas_price_strategy.py,sha256=
|
|
126
|
-
web3/middleware/names.py,sha256=
|
|
122
|
+
web3/middleware/base.py,sha256=DWspmIMF_X5upHw82CCZNAIWLJ2dTawlMTFFQaaDIU0,5745
|
|
123
|
+
web3/middleware/buffered_gas_estimate.py,sha256=8HumDBDfhB2RomSqO8aK9439CskgWgyj0fIXvfDzCME,1652
|
|
124
|
+
web3/middleware/filter.py,sha256=Oo-gbjKY8f8FAZu9m1eu9CDKhRxwPIrHQWVVJ18V-JU,22271
|
|
125
|
+
web3/middleware/formatting.py,sha256=C9NtURX9KILY9EHClhVEUILeYHuzf5iliN24g2YU7u8,7813
|
|
126
|
+
web3/middleware/gas_price_strategy.py,sha256=_RztgnWqiH9FIL7Vpdc0I8mzHoM7f4mV-Lz3aeIqJe4,3784
|
|
127
|
+
web3/middleware/names.py,sha256=ArqdBq0-B_l5tERlK3omrLfFPlfI5uJ7L2tC_CJuNpE,4329
|
|
127
128
|
web3/middleware/proof_of_authority.py,sha256=0AT4jr5CmTdrvl8Jiy-WYy8IFDYBOEaesgHDwpn0c7M,1429
|
|
128
129
|
web3/middleware/pythonic.py,sha256=awc8I6lLzVc2Iv138sps2uf6dMQipskLRBTdvTEEIgQ,348
|
|
129
|
-
web3/middleware/signing.py,sha256=
|
|
130
|
-
web3/middleware/stalecheck.py,sha256=
|
|
131
|
-
web3/middleware/validation.py,sha256=
|
|
130
|
+
web3/middleware/signing.py,sha256=86HhqWSaUWpvfkGJ8mcSwc6bTOBMjTTRR4xjAtP34hE,5910
|
|
131
|
+
web3/middleware/stalecheck.py,sha256=V8xZ_CWnl1eK6KwxCOvEyOCznL6Pn3aJYUepZkIuvqQ,2690
|
|
132
|
+
web3/middleware/validation.py,sha256=DQq43d0TKYfueuq_8V12R-YjICuFZIKlQegjOehtA10,4286
|
|
132
133
|
web3/providers/__init__.py,sha256=YkcSzE9AubvSp-UfvJjyCrdepvziysbqeq2LT0ImDoc,936
|
|
133
|
-
web3/providers/async_base.py,sha256=
|
|
134
|
+
web3/providers/async_base.py,sha256=QdgeVVklfz87bjCTwv2QZMuiRCkmr6nJNIFjGc1eNKo,8251
|
|
134
135
|
web3/providers/auto.py,sha256=9Jacts6375zHEG969lm5LOdmnhG4kJFnh4jMYOySQWU,4300
|
|
135
|
-
web3/providers/base.py,sha256=
|
|
136
|
+
web3/providers/base.py,sha256=JAyGGGT6l7bK_f2shzaiuO3OHKKrt8_Ap1taawqbBgQ,6862
|
|
136
137
|
web3/providers/ipc.py,sha256=Rc0x4cW3NietQz0BjOygs78GzVGqgz0fHFZM6HalpVg,6518
|
|
137
138
|
web3/providers/legacy_websocket.py,sha256=uQb5SmoFPFI809q_2iRhDEo5SkSW3T9tYXuf48stp9A,4744
|
|
138
139
|
web3/providers/eth_tester/__init__.py,sha256=UggyBQdeAyjy1awATW1933jkJcpqqaUYUQEFAQnA2o0,163
|
|
139
|
-
web3/providers/eth_tester/defaults.py,sha256=
|
|
140
|
-
web3/providers/eth_tester/main.py,sha256=
|
|
141
|
-
web3/providers/eth_tester/middleware.py,sha256=
|
|
140
|
+
web3/providers/eth_tester/defaults.py,sha256=S8ZfCw_a1sBBPjcpTgZpaLu1N-gdOSIPuskheokV1pM,12624
|
|
141
|
+
web3/providers/eth_tester/main.py,sha256=88hp1jWB9wCeii-oxF5D6msbR-L4H5N16oMHjLclbo0,7812
|
|
142
|
+
web3/providers/eth_tester/middleware.py,sha256=eInobWZPQ-P6TSJdMJs8uUugRq0MZ76VIOf6E0kJRow,13740
|
|
142
143
|
web3/providers/persistent/__init__.py,sha256=X7tFKJL5BXSwciq5_bRwGRB6bfdWBkIPPWMqCjXIKrA,411
|
|
143
144
|
web3/providers/persistent/async_ipc.py,sha256=6HDKo9hIXhag3nyTbp6J-ZktPLnG-9iHCduQUGD7raM,5049
|
|
144
|
-
web3/providers/persistent/persistent.py,sha256=
|
|
145
|
-
web3/providers/persistent/persistent_connection.py,sha256=
|
|
145
|
+
web3/providers/persistent/persistent.py,sha256=hBtFd3dCqCJd7ueF-gBampi_dJOvR1le672XAEAnSs0,19464
|
|
146
|
+
web3/providers/persistent/persistent_connection.py,sha256=5engUnR5BgV0YISskcNmoE-Ypa5P7P8T4dULIqnSbzQ,3016
|
|
146
147
|
web3/providers/persistent/request_processor.py,sha256=QLVn5MiNwDVsO9hsHPlkUH4zW4H74HRK-duPot4H4Yk,14141
|
|
147
148
|
web3/providers/persistent/subscription_container.py,sha256=yd5pjjz_YnRLuUoxZUxt29Md1VUTemdUIBq8PCJre6Y,1734
|
|
148
|
-
web3/providers/persistent/subscription_manager.py,sha256=
|
|
149
|
-
web3/providers/persistent/utils.py,sha256=
|
|
149
|
+
web3/providers/persistent/subscription_manager.py,sha256=IpCY1P_NtqvlGX493Tb8znWIIMyUiReJ2DPq32EQSJA,13961
|
|
150
|
+
web3/providers/persistent/utils.py,sha256=U7Yu30h4FtU0JfJnFfyNleZJxmNoejQCuU6MeMJjTRo,1145
|
|
150
151
|
web3/providers/persistent/websocket.py,sha256=STf31VNdwidMeAeeL1r5f8v3l66xChKkxZpnZzUiYO8,4577
|
|
151
152
|
web3/providers/rpc/__init__.py,sha256=mObsuwjr7xyHnnRlwzsmbp2JgZdn2NXSSctvpye4AuQ,149
|
|
152
153
|
web3/providers/rpc/async_rpc.py,sha256=S3Dd1gvAJSouYsZg7K-r_uS4BO0YsAPY1wD_3NJng4w,6345
|
|
153
|
-
web3/providers/rpc/rpc.py,sha256=
|
|
154
|
+
web3/providers/rpc/rpc.py,sha256=Vf_T7oXQWYhxhVjkK0caOdEd3E9vnB5kxvW7MAnKhbg,6105
|
|
154
155
|
web3/providers/rpc/utils.py,sha256=_mtoZMMIoZpPA8J8U5DfRxaNQmi8bw0ZVUiqn1Nz4co,2154
|
|
155
156
|
web3/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
156
157
|
web3/scripts/install_pre_releases.py,sha256=uVxsZk239640yxiqlPhfXxZKSsh3858pURKppi9kM5U,821
|
|
@@ -163,9 +164,9 @@ web3/utils/address.py,sha256=nzPLiWWCG9BqstDeDOcDwEpteJ8im6ywjLHKpd5akhw,1186
|
|
|
163
164
|
web3/utils/async_exception_handling.py,sha256=OoKbLNwWcY9dxLCbOfxcQPSB1OxWraNqcw8V0ZX-JaQ,3173
|
|
164
165
|
web3/utils/caching.py,sha256=miulUjLOjlOfTux8HWBklpRIa6_fVNTVFHIWcbZt27o,2591
|
|
165
166
|
web3/utils/exception_handling.py,sha256=n-MtO5LNzJDVzHTzO6olzfb2_qEVtVRvink0ixswg-Y,2917
|
|
166
|
-
web3/utils/subscriptions.py,sha256=
|
|
167
|
-
web3-7.
|
|
168
|
-
web3-7.
|
|
169
|
-
web3-7.
|
|
170
|
-
web3-7.
|
|
171
|
-
web3-7.
|
|
167
|
+
web3/utils/subscriptions.py,sha256=ElRi5Vxae1DI2T75KR28DJ7ALe69aZbzfohJXV2W9w4,9371
|
|
168
|
+
web3-7.14.1.dist-info/licenses/LICENSE,sha256=ENGC4gSn0kYaC_mlaXOEwCKmA6W7Z9MeSemc5O2k-h0,1095
|
|
169
|
+
web3-7.14.1.dist-info/METADATA,sha256=JpZeSs_knmZkrwd7K17kdPxCBDY4rja3_rzxzJa0VQs,5621
|
|
170
|
+
web3-7.14.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
171
|
+
web3-7.14.1.dist-info/top_level.txt,sha256=iwupuJh7wgypXrpk_awszyri3TahRr5vxSphNyvt1bU,9
|
|
172
|
+
web3-7.14.1.dist-info/RECORD,,
|