From 3a1c49dfdcd6c1704fda473d8e135fe3107da0f7 Mon Sep 17 00:00:00 2001 From: Earle Lowe Date: Mon, 16 Oct 2023 17:04:41 -0700 Subject: [PATCH] Update chia-blockchain to 2.1.0 and major updates to precommit and mypy cleanup --- .flake8 | 10 + .pre-commit-config.yaml | 21 +- LICENSE | 6 +- app/api/dependencies.py | 3 - app/api/v1/activities.py | 7 +- app/api/v1/cron.py | 11 +- app/api/v1/keys.py | 7 +- app/api/v1/tokens.py | 39 +- app/api/v1/transactions.py | 14 +- app/config.py | 38 +- app/core/chialisp/gateway.py | 10 +- app/core/chialisp/tail.py | 13 +- app/core/climate_wallet/wallet.py | 152 +- app/core/climate_wallet/wallet_utils.py | 23 +- app/core/derive_keys.py | 1 + app/core/types.py | 9 +- app/core/utils.py | 34 +- app/crud/chia.py | 56 +- app/crud/db.py | 6 +- app/errors.py | 4 +- app/main.py | 25 +- app/models/__init__.py | 2 + app/schemas/core.py | 10 +- chia-blockchain | 2 +- mypy.ini | 19 + poetry.lock | 2305 ++++++++++++----------- pyproject.toml | 8 +- pytest.ini | 38 + tests/test_activities_api.py | 124 +- tests/test_cat_lifecycle.py | 32 +- tests/test_cat_workflow.py | 142 +- tests/test_crud_chia.py | 244 +-- tests/test_crud_core.py | 4 +- 33 files changed, 1803 insertions(+), 1616 deletions(-) create mode 100644 .flake8 create mode 100644 mypy.ini create mode 100644 pytest.ini diff --git a/.flake8 b/.flake8 new file mode 100644 index 0000000..e64d098 --- /dev/null +++ b/.flake8 @@ -0,0 +1,10 @@ +[flake8] +max-line-length = 120 +exclude = ./typings/**/* +ignore = E203,W503 +per-file-ignores = + # line too long + tests/test_activities_api.py: E501 + tests/test_crud_chia.py: E501 + # imported but unused + app/api/v1/__init__.py: F401 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8b0fd0c..3e5f939 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,27 +5,20 @@ repos: repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 - hooks: - - args: - - --in-place - - --remove-all-unused-imports - - --expand-star-imports - - --remove-duplicate-keys - - --remove-unused-variables - exclude: .*/__init__.py - id: autoflake - repo: https://github.com/myint/autoflake - rev: v1.4 + - id: flake8 + repo: https://github.com/pycqa/flake8 + rev: 6.1.0 - hooks: - args: - --profile - black id: isort - repo: https://github.com/pre-commit/mirrors-isort - rev: v5.10.1 + repo: https://github.com/pycqa/isort + rev: 5.12.0 - hooks: - id: black repo: https://github.com/psf/black - rev: 22.3.0 + rev: 23.7.0 - hooks: - entry: mypy id: mypy @@ -35,7 +28,7 @@ repos: - python - pyi repo: https://github.com/pre-commit/mirrors-mypy - rev: v0.961 + rev: v1.4.1 - hooks: - id: commitizen stages: diff --git a/LICENSE b/LICENSE index 3b913d4..0f4d5f7 100644 --- a/LICENSE +++ b/LICENSE @@ -9,9 +9,9 @@ Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - - - + + + Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ diff --git a/app/api/dependencies.py b/app/api/dependencies.py index 64d3cb8..2e6a06d 100644 --- a/app/api/dependencies.py +++ b/app/api/dependencies.py @@ -38,7 +38,6 @@ async def _get_rpc_client( rpc_port: int, root_path: Path = DEFAULT_ROOT_PATH, ) -> Iterator[RpcClient]: - rpc_client_cls = { NodeType.FULL_NODE: FullNodeRpcClient, NodeType.WALLET: WalletRpcClient, @@ -63,7 +62,6 @@ async def _get_rpc_client( async def get_wallet_rpc_client() -> Iterator[WalletRpcClient]: - async for _ in _get_rpc_client( node_type=NodeType.WALLET, self_hostname=settings.CHIA_HOSTNAME, @@ -74,7 +72,6 @@ async def get_wallet_rpc_client() -> Iterator[WalletRpcClient]: async def get_full_node_rpc_client() -> Iterator[FullNodeRpcClient]: - async for _ in _get_rpc_client( node_type=NodeType.FULL_NODE, self_hostname=settings.CHIA_HOSTNAME, diff --git a/app/api/v1/activities.py b/app/api/v1/activities.py index 8e9af46..82bcd79 100644 --- a/app/api/v1/activities.py +++ b/app/api/v1/activities.py @@ -1,4 +1,3 @@ -from sqlalchemy import desc, asc from typing import Dict, List, Optional from fastapi import APIRouter, Depends @@ -25,7 +24,7 @@ async def get_activity( mode: Optional[GatewayMode] = None, page: int = 1, limit: int = 10, - sort: str = 'desc', + sort: str = "desc", db: Session = Depends(deps.get_db_session), ): """Get activity. @@ -54,7 +53,7 @@ async def get_activity( pass case _: raise ErrorCode().bad_request_error(message="search_by is invalid") - + if minHeight is not None: activity_filters["and"].append(models.Activity.height >= minHeight) @@ -77,7 +76,7 @@ async def get_activity( total: int order_by_clause = [] - if sort.lower() == 'desc': + if sort.lower() == "desc": order_by_clause.append(models.Activity.height.desc()) order_by_clause.append(models.Activity.coin_id.desc()) else: diff --git a/app/api/v1/cron.py b/app/api/v1/cron.py index 6bc7d1a..36c2a1a 100644 --- a/app/api/v1/cron.py +++ b/app/api/v1/cron.py @@ -51,7 +51,6 @@ async def _scan_token_activity( climate_warehouse: crud.ClimateWareHouseCrud, blockchain: crud.BlockChainCrud, ) -> bool: - state = db_crud.select_block_state_first() if state.peak_height is None: logger.warning("Full node state has not been retrieved.") @@ -100,9 +99,7 @@ async def _scan_token_activity( db_crud.batch_insert_ignore_activity(activities) - db_crud.update_block_state( - current_height=target_start_height - ) + db_crud.update_block_state(current_height=target_start_height) return True @@ -118,9 +115,10 @@ async def scan_token_activity() -> None: as_async_contextmanager(deps.get_db_session) as db, as_async_contextmanager(deps.get_full_node_rpc_client) as full_node_client, ): - db_crud = crud.DBCrud(db=db) - climate_warehouse = crud.ClimateWareHouseCrud(url=settings.CADT_API_SERVER_HOST, api_key=settings.CADT_API_KEY) + climate_warehouse = crud.ClimateWareHouseCrud( + url=settings.CADT_API_SERVER_HOST, api_key=settings.CADT_API_KEY + ) blockchain = crud.BlockChainCrud(full_node_client=full_node_client) try: @@ -167,7 +165,6 @@ async def scan_blockchain_state() -> None: as_async_contextmanager(deps.get_db_session) as db, as_async_contextmanager(deps.get_full_node_rpc_client) as full_node_client, ): - db_crud = crud.DBCrud(db=db) try: diff --git a/app/api/v1/keys.py b/app/api/v1/keys.py index 47e7cfd..ad28984 100644 --- a/app/api/v1/keys.py +++ b/app/api/v1/keys.py @@ -6,6 +6,7 @@ from chia.types.blockchain_format.sized_bytes import bytes32 from chia.util.bech32m import decode_puzzle_hash, encode_puzzle_hash from chia.util.byte_types import hexstr_to_bytes +from chia.util.ints import uint32 from chia.wallet.derive_keys import ( master_sk_to_wallet_sk, master_sk_to_wallet_sk_unhardened, @@ -31,7 +32,6 @@ async def get_key( prefix: str = "bls1238", wallet_rpc_client: WalletRpcClient = Depends(deps.get_wallet_rpc_client), ): - fingerprint: int = await wallet_rpc_client.get_logged_in_fingerprint() result: Dict = await wallet_rpc_client.get_private_key(fingerprint) @@ -40,10 +40,10 @@ async def get_key( wallet_secret_key: PrivateKey if hardened: - wallet_secret_key = master_sk_to_wallet_sk(secret_key, derivation_index) + wallet_secret_key = master_sk_to_wallet_sk(secret_key, uint32(derivation_index)) else: wallet_secret_key = master_sk_to_wallet_sk_unhardened( - secret_key, derivation_index + secret_key, uint32(derivation_index) ) wallet_public_key: G1Element = wallet_secret_key.get_g1() @@ -63,7 +63,6 @@ async def get_key( async def parse_key( address: str, ): - try: puzzle_hash: bytes = decode_puzzle_hash(address) except ValueError: diff --git a/app/api/v1/tokens.py b/app/api/v1/tokens.py index df4b8f7..f37734b 100644 --- a/app/api/v1/tokens.py +++ b/app/api/v1/tokens.py @@ -1,9 +1,9 @@ -import json; - +import json from typing import Any, Dict, Tuple from blspy import G1Element, G2Element from chia.rpc.wallet_rpc_client import WalletRpcClient +from chia.types.blockchain_format.sized_bytes import bytes32 from chia.types.coin_spend import CoinSpend from chia.types.spend_bundle import SpendBundle from chia.util.byte_types import hexstr_to_bytes @@ -15,8 +15,8 @@ from app.core import utils from app.core.climate_wallet.wallet import ClimateWallet from app.core.types import ClimateTokenIndex, GatewayMode -from app.utils import disallow from app.logger import logger +from app.utils import disallow router = APIRouter() @@ -39,8 +39,8 @@ async def create_tokenization_tx( wallet_client=wallet_rpc_client ) - token: schemas.Token = request.token - payment: schemas.Payment = request.payment + token = request.token + payment = request.payment token_index = ClimateTokenIndex( org_uid=token.org_uid, @@ -68,6 +68,9 @@ async def create_tokenization_tx( } for mode in GatewayMode: + if wallet.mode_to_public_key is None: + raise ValueError("Wallet mode to public key is None!") + public_key: G1Element = wallet.mode_to_public_key[mode] mod_hash: bytes @@ -163,8 +166,8 @@ async def create_detokenization_file( This endpoint is to be called by the client. """ - token: schemas.TokenOnChain = request.token - payment: schemas.Payment = request.payment + token = request.token + payment = request.payment token_index = ClimateTokenIndex( org_uid=token.org_uid, @@ -172,10 +175,10 @@ async def create_detokenization_file( vintage_year=token.vintage_year, sequence_num=token.sequence_num, ) - tail_metadata: schemas.TailMetadataBase = token.detokenization + tail_metadata = token.detokenization mode_to_public_key: Dict[GatewayMode, G1Element] = { - GatewayMode.DETOKENIZATION: tail_metadata.public_key, + GatewayMode.DETOKENIZATION: G1Element.from_bytes(tail_metadata.public_key), } mode_to_message_and_signature: Dict[GatewayMode, Tuple[bytes, G2Element]] = { GatewayMode.DETOKENIZATION: ( @@ -187,7 +190,7 @@ async def create_detokenization_file( wallet = ClimateWallet( token_index=token_index, - root_public_key=token.public_key, + root_public_key=G1Element.from_bytes(token.public_key), mode_to_public_key=mode_to_public_key, mode_to_message_and_signature=mode_to_message_and_signature, wallet_client=wallet_rpc_client, @@ -198,9 +201,11 @@ async def create_detokenization_file( raise ValueError(f"Asset id {asset_id} inconsistent with request body!") cat_wallet_info = await utils.get_cat_wallet_info_by_asset_id( - asset_id=hexstr_to_bytes(asset_id), + asset_id=bytes32.from_hexstr(asset_id), wallet_client=wallet_rpc_client, ) + if cat_wallet_info is None: + raise ValueError(f"Asset id {asset_id} not found in wallet!") result: Dict = await wallet.create_detokenization_request( amount=payment.amount, @@ -270,7 +275,7 @@ async def create_permissionless_retirement_tx( This endpoint is to be called by the client. """ - token: schemas.TokenOnChain = request.token + token = request.token payment: schemas.RetirementPaymentWithPayer = request.payment token_index = ClimateTokenIndex( @@ -279,7 +284,7 @@ async def create_permissionless_retirement_tx( vintage_year=token.vintage_year, sequence_num=token.sequence_num, ) - tail_metadata: schemas.TailMetadataBase = token.permissionless_retirement + tail_metadata = token.permissionless_retirement mode_to_message_and_signature: Dict[GatewayMode, Tuple[bytes, G2Element]] = { GatewayMode.PERMISSIONLESS_RETIREMENT: ( @@ -291,7 +296,7 @@ async def create_permissionless_retirement_tx( wallet = ClimateWallet( token_index=token_index, - root_public_key=token.public_key, + root_public_key=G1Element.from_bytes(token.public_key), mode_to_message_and_signature=mode_to_message_and_signature, wallet_client=wallet_rpc_client, constants=constants, @@ -301,15 +306,17 @@ async def create_permissionless_retirement_tx( raise ValueError(f"Asset id {asset_id} inconsistent with request body!") cat_wallet_info = await utils.get_cat_wallet_info_by_asset_id( - asset_id=hexstr_to_bytes(asset_id), + asset_id=bytes32.from_hexstr(asset_id), wallet_client=wallet_rpc_client, ) + if cat_wallet_info is None: + raise ValueError(f"Asset id {asset_id} not found in wallet!") # Create a dictionary with the variables you want to log log_data = { "amount": payment.amount, "fee": payment.fee, - "wallet_id": cat_wallet_info.id + "wallet_id": cat_wallet_info.id, } # Convert the dictionary to a JSON-formatted string diff --git a/app/api/v1/transactions.py b/app/api/v1/transactions.py index 6a9d0da..ecae8c8 100644 --- a/app/api/v1/transactions.py +++ b/app/api/v1/transactions.py @@ -5,11 +5,9 @@ from chia.types.blockchain_format.program import Program from chia.types.blockchain_format.sized_bytes import bytes32 from chia.types.coin_spend import CoinSpend -from chia.types.spend_bundle import SpendBundle from chia.util.byte_types import hexstr_to_bytes from chia.wallet.cat_wallet.cat_info import CATInfo -from chia.wallet.cat_wallet.cat_utils import construct_cat_puzzle -from chia.wallet.puzzles.cat_loader import CAT_MOD +from chia.wallet.cat_wallet.cat_utils import CAT_MOD, construct_cat_puzzle from chia.wallet.transaction_record import TransactionRecord from chia.wallet.transaction_sorting import SortKey from chia.wallet.util.wallet_types import WalletType @@ -42,8 +40,8 @@ async def get_transaction( """ transaction_record: TransactionRecord = await wallet_rpc_client.get_transaction( - wallet_id=None, - transaction_id=hexstr_to_bytes(transaction_id), + wallet_id=0, + transaction_id=bytes32.from_hexstr(transaction_id), ) return schemas.Transaction( @@ -65,7 +63,6 @@ async def get_transactions( to_address: Optional[str] = None, wallet_rpc_client: WalletRpcClient = Depends(deps.get_wallet_rpc_client), ): - """Get transactions. This endpoint is to be called by the client. @@ -111,7 +108,8 @@ async def get_transactions( for transaction_record in transaction_records ], ) - + if cat_info is None: + raise ValueError(f"Wallet {wallet_id} is not a CAT wallet") gateway_puzzle: Program = create_gateway_puzzle() gateway_puzzle_hash: bytes32 = gateway_puzzle.get_tree_hash() gateway_cat_puzzle: Program = construct_cat_puzzle( @@ -126,7 +124,7 @@ async def get_transactions( if transaction_record.to_puzzle_hash != gateway_puzzle_hash: continue - spend_bundle: SpendBundle = transaction_record.spend_bundle + spend_bundle = transaction_record.spend_bundle if spend_bundle is None: continue diff --git a/app/config.py b/app/config.py index 13bfdd2..dc1394e 100644 --- a/app/config.py +++ b/app/config.py @@ -2,17 +2,19 @@ import shutil import sys from pathlib import Path -from typing import Dict, Optional +from typing import Any, Dict, Optional import yaml from pydantic import BaseSettings, root_validator, validator + class ExecutionMode(enum.Enum): DEV = "dev" REGISTRY = "registry" CLIENT = "client" EXPLORER = "explorer" + class ServerPort(enum.Enum): DEV = 31999 CLIMATE_WAREHOUSE = 31310 @@ -55,37 +57,43 @@ class Settings(BaseSettings): DEV_PORT: Optional[int] = None @classmethod - def get_instance(cls): + def get_instance(cls) -> "Settings": if cls._instance is None: cls._instance = get_settings() return cls._instance @root_validator - def configure_port(cls, values): + def configure_port(cls, values: Dict[str, Any]) -> Dict[str, Any]: if values["MODE"] == ExecutionMode.REGISTRY: - values["SERVER_PORT"] = values.get('CLIMATE_TOKEN_REGISTRY_PORT', ServerPort.CLIMATE_TOKEN_REGISTRY.value) + values["SERVER_PORT"] = values.get( + "CLIMATE_TOKEN_REGISTRY_PORT", ServerPort.CLIMATE_TOKEN_REGISTRY.value + ) elif values["MODE"] == ExecutionMode.CLIENT: - values["SERVER_PORT"] = values.get('CLIMATE_TOKEN_CLIENT_PORT', ServerPort.CLIMATE_TOKEN_CLIENT.value) + values["SERVER_PORT"] = values.get( + "CLIMATE_TOKEN_CLIENT_PORT", ServerPort.CLIMATE_TOKEN_CLIENT.value + ) elif values["MODE"] == ExecutionMode.EXPLORER: - values["SERVER_PORT"] = values.get('CLIMATE_EXPLORER_PORT', ServerPort.CLIMATE_EXPLORER.value) + values["SERVER_PORT"] = values.get( + "CLIMATE_EXPLORER_PORT", ServerPort.CLIMATE_EXPLORER.value + ) elif values["MODE"] == ExecutionMode.DEV: - values["SERVER_PORT"] = values.get('DEV_PORT', ServerPort.DEV.value) + values["SERVER_PORT"] = values.get("DEV_PORT", ServerPort.DEV.value) else: raise ValueError(f"Invalid mode {values['MODE']}!") - + print(f"Set SERVER_PORT to {values['SERVER_PORT']}") return values @validator("CHIA_ROOT", pre=True) - def expand_root(cls, v): + def expand_root(cls, v: str) -> Path: return Path(v).expanduser() @validator("CONFIG_PATH", "LOG_PATH", "DB_PATH") - def prepend_root(cls, v, values): - v: Path = values["CHIA_ROOT"] / v - parent: Path = v.parent + def prepend_root(cls, v: str, values: Dict[str, Any]) -> Path: + full_dir: Path = values["CHIA_ROOT"] / v + parent: Path = full_dir.parent parent.mkdir(parents=True, exist_ok=True) - return v + return full_dir def get_settings() -> Settings: @@ -103,8 +111,6 @@ def get_settings() -> Settings: default_settings = Settings(_env_file=default_env_file) config_file: Path = default_settings.CONFIG_PATH - settings: Settings - settings_dict: Dict if not config_file.is_file(): config_file.parent.mkdir(parents=True, exist_ok=True) shutil.copy(default_config_file, config_file) @@ -113,7 +119,7 @@ def get_settings() -> Settings: settings_dict = yaml.safe_load(f) settings_dict = default_settings.dict() | (settings_dict or {}) - settings = Settings(**settings_dict) + Settings(**settings_dict) Settings._instance = Settings(**settings_dict) return Settings._instance diff --git a/app/core/chialisp/gateway.py b/app/core/chialisp/gateway.py index 4102bca..70da44e 100644 --- a/app/core/chialisp/gateway.py +++ b/app/core/chialisp/gateway.py @@ -26,7 +26,6 @@ def create_gateway_puzzle() -> Program: def create_gateway_solution( conditions_program: Program, ) -> Program: - return Program.to([conditions_program]) @@ -34,7 +33,6 @@ def create_gateway_announcement( coin: Coin, conditions_program: Program, ) -> Announcement: - return Announcement( origin_info=coin.name(), message=conditions_program.get_tree_hash(), @@ -45,7 +43,6 @@ def parse_gateway_spend( coin_spend: CoinSpend, is_cat: bool = True, ) -> Tuple[GatewayMode, CoinSpend]: - puzzle: Program = coin_spend.puzzle_reveal.to_program() solution: Program = coin_spend.solution.to_program() coin: Coin = coin_spend.coin @@ -67,11 +64,14 @@ def parse_gateway_spend( amount: int = condition.at("rrf").as_int() if amount == -113: - tail_program: Program = condition.at("rrrf") + tail_program = condition.at("rrrf") tail_solution: Program = condition.at("rrrrf") break else: - raise ValueError(f"No TAIL found!") + raise ValueError("No TAIL found!") + + if tail_program is None: + raise ValueError("No TAIL found!") (tail_program_mod, _) = tail_program.uncurry() if tail_program_mod != DELEGATED_TAIL_MOD: diff --git a/app/core/chialisp/tail.py b/app/core/chialisp/tail.py index 748c473..24bd643 100644 --- a/app/core/chialisp/tail.py +++ b/app/core/chialisp/tail.py @@ -17,7 +17,6 @@ def create_tail_program( public_key: G1Element, index: Program, ) -> Program: - return DELEGATED_TAIL_MOD.curry(public_key, index) @@ -25,7 +24,6 @@ def create_mint_with_signature_program( public_key: G1Element, gateway_puzzle_hash: bytes32, ) -> Program: - return MINT_WITH_SIGNATURE_MOD.curry(public_key, gateway_puzzle_hash) @@ -33,14 +31,12 @@ def create_melt_all_with_signature_program( public_key: G1Element, gateway_puzzle_hash: bytes32, ) -> Program: - return MELT_ALL_WITH_SIGNATURE_MOD.curry(public_key, gateway_puzzle_hash) def create_melt_all_by_anyone_program( gateway_puzzle_hash: bytes32, ) -> Program: - return MELT_ALL_BY_ANYONE_MOD.curry(gateway_puzzle_hash) @@ -49,18 +45,17 @@ def create_delegated_puzzle( gateway_puzzle_hash: bytes32, public_key: Optional[G1Element] = None, ) -> Program: - - if public_key is None: - if mode in [GatewayMode.TOKENIZATION, GatewayMode.DETOKENIZATION]: - raise ValueError(f"Mode {mode!s} requires specifying `public_key`!") - if mode == GatewayMode.TOKENIZATION: + if public_key is None: + raise ValueError("TOKENIZATION requires specifying `public_key`!") delegated_puzzle = create_mint_with_signature_program( public_key=public_key, gateway_puzzle_hash=gateway_puzzle_hash, ) elif mode == GatewayMode.DETOKENIZATION: + if public_key is None: + raise ValueError("DETOKENIZATION requires specifying `public_key`!") delegated_puzzle = create_melt_all_with_signature_program( public_key=public_key, gateway_puzzle_hash=gateway_puzzle_hash, diff --git a/app/core/climate_wallet/wallet.py b/app/core/climate_wallet/wallet.py index 3304af3..69d994e 100644 --- a/app/core/climate_wallet/wallet.py +++ b/app/core/climate_wallet/wallet.py @@ -15,15 +15,17 @@ from chia.util.bech32m import bech32_decode, bech32_encode, convertbits from chia.util.ints import uint32, uint64 from chia.wallet.cat_wallet.cat_utils import ( + CAT_MOD, construct_cat_puzzle, get_innerpuzzle_from_puzzle, match_cat_puzzle, ) +from chia.wallet.conditions import ConditionValidTimes from chia.wallet.payment import Payment -from chia.wallet.puzzles.cat_loader import CAT_MOD from chia.wallet.transaction_record import TransactionRecord from chia.wallet.uncurried_puzzle import uncurry_puzzle from chia.wallet.util.compute_memos import compute_memos +from chia.wallet.util.tx_config import DEFAULT_TX_CONFIG from chia.wallet.util.wallet_types import WalletType from app.core.chialisp.gateway import create_gateway_puzzle, parse_gateway_spend @@ -46,7 +48,6 @@ get_wallet_info_by_id, ) from app.logger import logger -from chia.consensus.default_constants import DEFAULT_CONSTANTS @dataclasses.dataclass @@ -62,7 +63,7 @@ def token_index_hash(self) -> bytes32: def tail_program(self) -> Program: return create_tail_program( public_key=self.root_public_key, - index=self.token_index_hash, + index=Program.to(self.token_index_hash), ) @property @@ -80,7 +81,7 @@ class ClimateWallet(ClimateWalletBase): ) mode_to_message_and_signature: Dict[GatewayMode, Tuple[bytes, G2Element]] - wallet_client: Optional[WalletRpcClient] + wallet_client: WalletRpcClient constants: ConsensusConstants @classmethod @@ -90,16 +91,14 @@ async def create( root_secret_key: PrivateKey, wallet_client: WalletRpcClient, ) -> "ClimateWallet": - root_public_key: G1Element = root_secret_key.get_g1() token_index_hash: bytes32 = token_index.name() - tail_program: Program = create_tail_program( - public_key=root_public_key, - index=token_index_hash, + tail_program = create_tail_program( + public_key=root_public_key, index=Program.to(token_index_hash) ) tail_program_hash: bytes32 = tail_program.get_tree_hash() - logger.info(f"Creating climate wallet for") + logger.info("Creating climate wallet for") logger.info(f" - Token index: {token_index_hash.hex()}") logger.info(f" - Asset ID: {tail_program_hash.hex()}") @@ -168,23 +167,21 @@ def check_user( self, is_registry: bool, ) -> None: - if is_registry != self.is_registry: - raise ValueError(f"Incorrect user!") + raise ValueError("Incorrect user!") if is_registry: if self.mode_to_public_key is None: - raise ValueError(f"No public keys provided for the registry!") + raise ValueError("No public keys provided for the registry!") if self.mode_to_secret_key is None: - raise ValueError(f"No secret keys provided for the registry!") + raise ValueError("No secret keys provided for the registry!") async def check_wallet( self, wallet_id: int, wallet_type: WalletType, ) -> None: - if not self.has_wallet_client: raise ValueError("No wallet client provided!") @@ -193,7 +190,10 @@ async def check_wallet( wallet_client=self.wallet_client, ) - if wallet_info.type != wallet_type: + if wallet_info is None: + raise ValueError(f"No wallet found for wallet ID {wallet_id}") + + if wallet_info.type != wallet_type.value: raise ValueError(f"Incorrect wallet type {wallet_info.type}!") async def _create_transaction( @@ -210,8 +210,7 @@ async def _create_transaction( public_key_to_secret_key: Optional[Dict[bytes, PrivateKey]] = None, allow_missing_signature: bool = False, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: unsigned_gateway_coin_spend: CoinSpend signature: G2Element memos: List[bytes] = [] @@ -222,7 +221,7 @@ async def _create_transaction( ) = create_gateway_request_and_spend( mode=mode, coins=coins, - amount=amount, + amount=uint64(amount), fee=fee, memos=memos, origin_coin=origin_coin, @@ -250,6 +249,8 @@ async def _create_transaction( wallet_client=self.wallet_client, ) (first_transaction_record, *rest_transaction_records) = transaction_records + if first_transaction_record.spend_bundle is None: + raise ValueError("No spend bundle created!") spend_bundle = SpendBundle.aggregate( [ first_transaction_record.spend_bundle, @@ -279,20 +280,19 @@ async def _create_client_transaction( amount: int, fee: int = 0, gateway_public_key: Optional[G1Element] = None, - gateway_key_values: Dict[str, Union[str, int]] = None, + gateway_key_values: Optional[Dict[str, Any]] = None, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: self.check_user(is_registry=False) await self.check_wallet(wallet_id=wallet_id, wallet_type=WalletType.CAT) coins: List[Coin] = await self.wallet_client.select_coins( amount=amount, wallet_id=wallet_id, - max_coin_amount=DEFAULT_CONSTANTS.MAX_COIN_AMOUNT, + coin_selection_config=DEFAULT_TX_CONFIG.coin_selection_config, ) if not len(coins): - raise ValueError(f"Insufficient balance!") + raise ValueError("Insufficient balance!") origin_coin: Coin = coins[0] @@ -301,8 +301,8 @@ async def _create_client_transaction( logger.info(f" - Fee: {fee}") if gateway_key_values: - logger.info(f" - Announcements:") - for (key, value) in gateway_key_values.items(): + logger.info(" - Announcements:") + for key, value in gateway_key_values.items(): logger.info(f" - {key}: {value}") transaction_request: TransactionRequest @@ -314,8 +314,8 @@ async def _create_client_transaction( coins=[origin_coin], payments=[ Payment( - puzzle_hash=b"0" * 32, - amount=origin_coin.amount, + puzzle_hash=bytes32(b"0" * 32), + amount=uint64(origin_coin.amount), memos=[], ) ], @@ -332,6 +332,8 @@ async def _create_client_transaction( ) transaction_record = transaction_records[0] + if transaction_record.spend_bundle is None: + raise ValueError("No spend bundle created!") coin_spend: CoinSpend = transaction_record.spend_bundle.coin_spends[0] puzzle: Program = coin_spend.puzzle_reveal.to_program() inner_puzzle: Program = get_innerpuzzle_from_puzzle(puzzle) @@ -364,14 +366,18 @@ async def send_tokenization_transaction( amount: int, fee: int = 0, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: self.check_user(is_registry=True) await self.check_wallet( wallet_id=wallet_id, wallet_type=WalletType.STANDARD_WALLET ) mode = GatewayMode.TOKENIZATION + if self.mode_to_secret_key is None: + raise ValueError("No secret keys provided for the registry!") + if self.mode_to_public_key is None: + raise ValueError("No public keys provided for the registry!") + gateway_secret_key: PrivateKey = self.mode_to_secret_key[mode] gateway_public_key: G1Element = self.mode_to_public_key[mode] public_key_to_secret_key = {bytes(gateway_public_key): gateway_secret_key} @@ -379,10 +385,10 @@ async def send_tokenization_transaction( coins: List[Coin] = await self.wallet_client.select_coins( amount=amount + fee, wallet_id=wallet_id, - max_coin_amount=DEFAULT_CONSTANTS.MAX_COIN_AMOUNT, + coin_selection_config=DEFAULT_TX_CONFIG.coin_selection_config, ) if not len(coins): - raise ValueError(f"Insufficient balance!") + raise ValueError("Insufficient balance!") origin_coin: Coin = coins[0] @@ -391,7 +397,7 @@ async def send_tokenization_transaction( logger.info(f" - Amount: {amount}") logger.info(f" - Fee: {fee}") - result: Dict = await self._create_transaction( + result = await self._create_transaction( mode=mode, coins=coins, origin_coin=origin_coin, @@ -413,12 +419,13 @@ async def create_detokenization_request( amount: int, fee: int = 0, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: mode = GatewayMode.DETOKENIZATION + if self.mode_to_public_key is None: + raise ValueError("No public keys provided for the registry!") gateway_public_key: G1Element = self.mode_to_public_key[mode] - result: Dict = await self._create_client_transaction( + result = await self._create_client_transaction( mode=mode, amount=amount, fee=fee, @@ -449,16 +456,15 @@ async def create_detokenization_request( async def parse_detokenization_request( cls, content: str, - ) -> Dict: - + ) -> Dict[str, Any]: (_, data) = bech32_decode(content, max_length=len(content)) if data is None: - raise ValueError(f"Invalid detokenization file!") + raise ValueError("Invalid detokenization file!") data_bytes = bytes(convertbits(data, 5, 8, False)) spend_bundle = SpendBundle.from_bytes(data_bytes) - result: Dict = { + result: Dict[str, Any] = { "spend_bundle": spend_bundle, } @@ -481,7 +487,7 @@ async def parse_detokenization_request( continue (_, asset_id, inner_puzzle) = puzzle_args - asset_id: bytes = asset_id.as_atom() + asset_id = asset_id.as_atom() inner_solution = solution.at("f") # check for gateway puzzle @@ -506,12 +512,14 @@ async def parse_detokenization_request( inner_puzzle_hash: Optional[bytes32] = None for coin_spend in spend_bundle.coin_spends: - coin: Coin = coin_spend.coin + coin = coin_spend.coin if coin.name() == origin_coin_id: - puzzle: Program = coin_spend.puzzle_reveal.to_program() - puzzle_args: Optional[Iterator[Program]] = match_cat_puzzle( - uncurry_puzzle(puzzle) - ) + puzzle = coin_spend.puzzle_reveal.to_program() + puzzle_args = match_cat_puzzle(uncurry_puzzle(puzzle)) + if puzzle_args is None: + raise ValueError( + "Did not match CAT - invalid detokenization request" + ) (_, _, inner_puzzle) = puzzle_args inner_puzzle_hash = inner_puzzle.get_tree_hash() @@ -535,23 +543,25 @@ async def sign_and_send_detokenization_request( self, content: str, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: self.check_user(is_registry=True) mode = GatewayMode.DETOKENIZATION + if self.mode_to_secret_key is None: + raise ValueError("No secret keys provided for the registry!") + if self.mode_to_public_key is None: + raise ValueError("No public keys provided for the registry!") gateway_secret_key: PrivateKey = self.mode_to_secret_key[mode] gateway_public_key: G1Element = self.mode_to_public_key[mode] public_key_to_secret_key = {bytes(gateway_public_key): gateway_secret_key} (_, data) = bech32_decode(content, max_length=len(content)) if data is None: - raise ValueError(f"Invalid detokenization file!") + raise ValueError("Invalid detokenization file!") data_bytes = bytes(convertbits(data, 5, 8, False)) unsigned_spend_bundle = SpendBundle.from_bytes(data_bytes) - coin_spend: CoinSpend gateway_coin_spend: Optional[CoinSpend] = None signatures: List[G2Element] = [] for coin_spend in unsigned_spend_bundle.coin_spends: @@ -576,6 +586,11 @@ async def sign_and_send_detokenization_request( SpendBundle(coin_spends=[], aggregated_signature=aggregated_signature), ] ) + if gateway_coin_spend is None: + raise ValueError( + "Invalid detokenization request: Could not find gateway coin spend!" + ) + transaction_record = TransactionRecord( confirmed_at_height=uint32(0), created_at_time=uint64(int(time.time())), @@ -593,6 +608,7 @@ async def sign_and_send_detokenization_request( type=uint32(CLIMATE_WALLET_INDEX + mode.to_int()), name=spend_bundle.name(), memos=list(compute_memos(spend_bundle).items()), + valid_times=ConditionValidTimes(), ) transaction_records = [transaction_record] @@ -607,13 +623,12 @@ async def sign_and_send_detokenization_request( async def send_permissionless_retirement_transaction( self, amount: int, + beneficiary_name: bytes, + beneficiary_address: bytes, fee: int = 0, - beneficiary_name: Optional[bytes] = None, - beneficiary_address: Optional[bytes] = None, beneficiary_puzzle_hash: Optional[bytes32] = None, wallet_id: int = 1, - ) -> Dict: - + ) -> Dict[str, Any]: mode = GatewayMode.PERMISSIONLESS_RETIREMENT if beneficiary_puzzle_hash is None: @@ -623,11 +638,7 @@ async def send_permissionless_retirement_transaction( self.wallet_client ) - # `beneficiary_address` is not decode-able with bech32m - else: - beneficiary_puzzle_hash = b"" - - result: Dict = await self._create_client_transaction( + result = await self._create_client_transaction( mode=mode, amount=amount, fee=fee, @@ -635,7 +646,7 @@ async def send_permissionless_retirement_transaction( gateway_key_values={ "bn": beneficiary_name, "ba": beneficiary_address, - "bp": beneficiary_puzzle_hash, + "bp": beneficiary_puzzle_hash if beneficiary_puzzle_hash else b"", }, ) transaction_records: List[TransactionRecord] = result["transaction_records"] @@ -654,8 +665,7 @@ async def get_activities( mode: Optional[GatewayMode] = None, start_height: Optional[int] = None, end_height: Optional[int] = None, - ) -> List[Dict]: - + ) -> List[Dict[str, Any]]: modes: List[GatewayMode] if mode is None: modes = list(GatewayMode) @@ -678,18 +688,18 @@ async def get_activities( end_height=end_height, ) - activities: List[Dict] = [] + activities = [] for coin_record in coin_records: coin: Coin = coin_record.coin - height: int = coin_record.spent_block_index + height = coin_record.spent_block_index - coin_spend: CoinSpend = await self.full_node_client.get_puzzle_and_solution( + coin_spend = await self.full_node_client.get_puzzle_and_solution( coin_id=coin.name(), height=height, ) - mode: GatewayMode - tail_spend: CoinSpend + if coin_spend is None: + raise ValueError("No coin spend found!") (mode, tail_spend) = parse_gateway_spend(coin_spend=coin_spend, is_cat=True) if mode not in modes: @@ -707,22 +717,20 @@ async def get_activities( ) continue - key: bytes = key_value_pair.at("f").as_atom() - value: bytes = key_value_pair.at("r").as_atom() + key = key_value_pair.at("f").as_atom() + value = key_value_pair.at("r").as_atom() key = key.decode() if key in ["bp"]: value = f"0x{value.hex()}" - elif key in ["ba", "bn"]: value = value.decode() - else: - raise ValueError(f"Unknown key '{key}'!") + raise ValueError("Unknown key '{key}'!") metadata[key] = value - activity: Dict = { + activity = { "coin_record": coin_record, "coin_spend": coin_spend, "mode": mode, diff --git a/app/core/climate_wallet/wallet_utils.py b/app/core/climate_wallet/wallet_utils.py index f4ddeac..cacb693 100644 --- a/app/core/climate_wallet/wallet_utils.py +++ b/app/core/climate_wallet/wallet_utils.py @@ -6,19 +6,19 @@ from chia.types.blockchain_format.sized_bytes import bytes32 from chia.types.coin_spend import CoinSpend from chia.types.condition_opcodes import ConditionOpcode -from chia.types.spend_bundle import SpendBundle from chia.util.condition_tools import ( conditions_dict_for_solution, pkm_pairs_for_conditions_dict, ) +from chia.util.ints import uint64 from chia.wallet.cat_wallet.cat_utils import ( + CAT_MOD, SpendableCAT, construct_cat_puzzle, unsigned_spend_bundle_for_spendable_cats, ) from chia.wallet.lineage_proof import LineageProof from chia.wallet.payment import Payment -from chia.wallet.puzzles.cat_loader import CAT_MOD from app.core.chialisp.gateway import ( create_gateway_announcement, @@ -35,7 +35,7 @@ def create_gateway_request_and_spend( mode: GatewayMode, origin_coin: Coin, - amount: int, + amount: uint64, tail_program: Program, coins: Optional[List[Coin]] = None, fee: int = 0, @@ -44,8 +44,7 @@ def create_gateway_request_and_spend( from_puzzle_hash: Optional[bytes32] = None, to_puzzle_hash: Optional[bytes32] = None, key_value_pairs: Optional[List[Tuple[Any, Any]]] = None, -) -> Tuple[Program, SpendBundle]: - +) -> Tuple[TransactionRequest, CoinSpend]: tail_program_hash: bytes32 = tail_program.get_tree_hash() gateway_puzzle: Program = create_gateway_puzzle() @@ -80,7 +79,7 @@ def create_gateway_request_and_spend( lineage_proof = LineageProof( parent_name=origin_coin.parent_coin_info, inner_puzzle_hash=from_puzzle_hash, - amount=origin_coin.amount, + amount=uint64(origin_coin.amount), ) gateway_payment = Payment( puzzle_hash=gateway_puzzle_hash, @@ -102,7 +101,7 @@ def create_gateway_request_and_spend( tail_solution = Program.to([delegated_puzzle, delegated_solution]) extra_delta: int = 0 - conditions: List[List] = [] + conditions = [] conditions.append( [ConditionOpcode.CREATE_COIN, None, -113, tail_program, tail_solution] @@ -159,29 +158,27 @@ def create_gateway_signature( ] = None, allow_missing: bool = False, ) -> G2Element: - if public_key_to_secret_key is None: public_key_to_secret_key = {} if public_key_message_to_signature is None: public_key_message_to_signature = {} - (_, conditions_dict, _) = conditions_dict_for_solution( + conditions_dict = conditions_dict_for_solution( coin_spend.puzzle_reveal, coin_spend.solution, INFINITE_COST, ) signatures: List[G2Element] = [] - for (public_key, message) in pkm_pairs_for_conditions_dict( + for public_key, message in pkm_pairs_for_conditions_dict( conditions_dict, - coin_spend.coin.name(), + coin_spend.coin, agg_sig_additional_data, ): - signature: Optional[G2Element] = None - secret_key: PrivateKey = public_key_to_secret_key.get(public_key) + secret_key = public_key_to_secret_key.get(public_key) if secret_key is not None: signature = AugSchemeMPL.sign(secret_key, message) diff --git a/app/core/derive_keys.py b/app/core/derive_keys.py index 1b28fc2..110c44b 100644 --- a/app/core/derive_keys.py +++ b/app/core/derive_keys.py @@ -1,6 +1,7 @@ from blspy import PrivateKey from chia.wallet.derive_keys import _derive_path_unhardened + def master_sk_to_root_sk(master: PrivateKey) -> PrivateKey: return _derive_path_unhardened(master, [12381, 8444, 2050]) diff --git a/app/core/types.py b/app/core/types.py index 6926ad8..981ff4f 100644 --- a/app/core/types.py +++ b/app/core/types.py @@ -1,6 +1,6 @@ import dataclasses import enum -from typing import Dict, List, Optional +from typing import Any, Dict, List, Optional from chia.types.announcement import Announcement from chia.types.blockchain_format.coin import Coin @@ -11,6 +11,7 @@ CLIMATE_WALLET_INDEX = 2 + class GatewayMode(enum.Enum): TOKENIZATION = "tokenization" DETOKENIZATION = "detokenization" @@ -51,7 +52,7 @@ class TransactionRequest(object): fee: int = dataclasses.field(default=0) def to_program(self) -> Program: - conditions: List[List] = [] + conditions = [] for payment in self.payments: conditions.append( [ConditionOpcode.CREATE_COIN] + payment.as_condition_args() @@ -73,8 +74,8 @@ def to_program(self) -> Program: return Program.to(conditions) @property - def additions(self) -> List[Dict]: - additions: List[Dict] = [] + def additions(self) -> List[Dict[str, Any]]: + additions = [] for payment in self.payments: memos = [bytes.decode(memo) for memo in payment.memos] diff --git a/app/core/utils.py b/app/core/utils.py index f73ff71..604550f 100644 --- a/app/core/utils.py +++ b/app/core/utils.py @@ -7,10 +7,12 @@ from chia.types.blockchain_format.sized_bytes import bytes32 from chia.util.config import load_config from chia.util.default_root import DEFAULT_ROOT_PATH +from chia.util.ints import uint32, uint64 from chia.wallet.cat_wallet.cat_info import CATInfo from chia.wallet.derive_keys import master_sk_to_wallet_sk_unhardened from chia.wallet.puzzles.p2_delegated_puzzle_or_hidden_puzzle import puzzle_for_pk from chia.wallet.transaction_record import TransactionRecord +from chia.wallet.util.tx_config import DEFAULT_TX_CONFIG from chia.wallet.util.wallet_types import WalletType from chia.wallet.wallet_info import WalletInfo @@ -22,16 +24,15 @@ async def get_constants( wallet_client: WalletRpcClient, ) -> ConsensusConstants: - - result: Dict = await wallet_client.fetch("get_network_info", {}) + result = await wallet_client.fetch("get_network_info", {}) network_name: str = result["network_name"] - config: Dict = load_config( + config = load_config( root_path=DEFAULT_ROOT_PATH, filename="config.yaml", ) - constant_overrides: Dict = config["network_overrides"]["constants"][network_name] - constants: Dict = DEFAULT_CONSTANTS.replace_str_to_bytes(**constant_overrides) + constant_overrides = config["network_overrides"]["constants"][network_name] + constants = DEFAULT_CONSTANTS.replace_str_to_bytes(**constant_overrides) return constants @@ -39,9 +40,8 @@ async def get_constants( async def get_climate_secret_key( wallet_client: WalletRpcClient, ) -> PrivateKey: - fingerprint: int = await wallet_client.get_logged_in_fingerprint() - result: Dict = await wallet_client.get_private_key(fingerprint=fingerprint) + result = await wallet_client.get_private_key(fingerprint=fingerprint) master_secret_key: PrivateKey = PrivateKey.from_bytes(bytes.fromhex(result["sk"])) root_secret_key: PrivateKey = master_sk_to_root_sk(master_secret_key) @@ -52,7 +52,6 @@ async def get_cat_wallet_info_by_asset_id( asset_id: Optional[bytes32], wallet_client: WalletRpcClient, ) -> Optional[WalletInfo]: - wallet_objs: List[Dict[str, Any]] = await wallet_client.get_wallets() wallet_infos: List[WalletInfo] = [ WalletInfo.from_json_dict(wallet_obj) for wallet_obj in wallet_objs @@ -60,7 +59,7 @@ async def get_cat_wallet_info_by_asset_id( wallet_info: WalletInfo for wallet_info in wallet_infos: - if wallet_info.type != WalletType.CAT: + if wallet_info.type != WalletType.CAT.value: continue cat_info = CATInfo.from_bytes(bytes.fromhex(wallet_info.data)) @@ -76,7 +75,6 @@ async def get_wallet_info_by_id( wallet_id: int, wallet_client: WalletRpcClient, ) -> Optional[WalletInfo]: - wallet_objs: List[Dict[str, Any]] = await wallet_client.get_wallets() wallet_infos: List[WalletInfo] = [ WalletInfo.from_json_dict(wallet_obj) for wallet_obj in wallet_objs @@ -95,12 +93,11 @@ async def get_wallet_info_by_id( async def get_first_puzzle_hash( wallet_client: WalletRpcClient, ) -> bytes32: - fingerprint: int = await wallet_client.get_logged_in_fingerprint() - result: Dict = await wallet_client.get_private_key(fingerprint=fingerprint) + result = await wallet_client.get_private_key(fingerprint=fingerprint) master_secret_key: PrivateKey = PrivateKey.from_bytes(bytes.fromhex(result["sk"])) wallet_secret_key: PrivateKey = master_sk_to_wallet_sk_unhardened( - master_secret_key, 0 + master_secret_key, uint32(0) ) wallet_public_key: G1Element = wallet_secret_key.get_g1() @@ -118,18 +115,17 @@ async def get_created_signed_transactions( wallet_id: int, wallet_client: WalletRpcClient, ) -> List[TransactionRecord]: + if transaction_request.coins is None: + transaction_request.coins = [] # type: ignore - maybe_transaction_records = await wallet_client.create_signed_transaction( + transaction_records = await wallet_client.create_signed_transactions( coins=transaction_request.coins, additions=transaction_request.additions, coin_announcements=transaction_request.coin_announcements, puzzle_announcements=transaction_request.puzzle_announcements, - fee=transaction_request.fee, + fee=uint64(transaction_request.fee), wallet_id=wallet_id, + tx_config=DEFAULT_TX_CONFIG, ) - if isinstance(maybe_transaction_records, list): - transaction_records = maybe_transaction_records - else: - transaction_records = [maybe_transaction_records] return transaction_records diff --git a/app/crud/chia.py b/app/crud/chia.py index f1b57bb..b6d1fce 100644 --- a/app/crud/chia.py +++ b/app/crud/chia.py @@ -85,7 +85,7 @@ def get_climate_organizations(self) -> Dict[str, Dict]: logger.error("Call Climate API Timeout, ErrorMessage: " + str(e)) raise error_code.internal_server_error("Call Climate API Timeout") - def get_climate_organizations_metadata(self, org_uid: str) -> Dict[str, Dict]: + def get_climate_organizations_metadata(self, org_uid: str) -> Dict[str, Any]: try: condition = {"orgUid": org_uid} @@ -105,61 +105,66 @@ def get_climate_organizations_metadata(self, org_uid: str) -> Dict[str, Dict]: logger.error("Call Climate API Timeout, ErrorMessage: " + str(e)) raise error_code.internal_server_error("Call Climate API Timeout") - def combine_climate_units_and_metadata(self, search: Dict[str, Any]) -> List[Dict]: + def combine_climate_units_and_metadata( + self, search: Dict[str, Any] + ) -> List[Dict[str, Any]]: # units: [unit] - units: List[Dict] = self.get_climate_units(search) + units = self.get_climate_units(search) if len(units) == 0: logger.warning( f"Search climate warehouse units by search is empty. search:{search}" ) return [] - projects: List[Dict] = self.get_climate_projects() + projects = self.get_climate_projects() if len(projects) == 0: return [] # organization_by_id: {org_uid -> org} - organization_by_id: Dict[str, Dict] = self.get_climate_organizations() + organization_by_id = self.get_climate_organizations() if len(organization_by_id) == 0: return [] # metadata_by_id: {org_uid -> {meta_key -> meta_value}} - metadata_by_id: Dict[str, Dict[str, str]] = {} + metadata_by_id: Dict[str, Dict[Any, Any]] = {} for org_uid in organization_by_id.keys(): metadata_by_id[org_uid] = self.get_climate_organizations_metadata(org_uid) project_by_id = {project["warehouseProjectId"]: project for project in projects} - onchain_units: List[Dict] = [] + onchain_units = [] for unit in units: asset_id: str = unit["marketplaceIdentifier"] - warehouse_project_id: Optional[str] = unit.get("issuance").get( - "warehouseProjectId" - ) - org_uid: Optional[str] = unit.get("orgUid") - if org_uid is None: + tmp_org_uid: Optional[str] = unit.get("orgUid") + if tmp_org_uid is None: logger.warning( f"Can not get climate warehouse orgUid in unit. unit:{unit}" ) continue - org: Optional[Dict] = organization_by_id.get(org_uid) + org = organization_by_id.get(tmp_org_uid) if org is None: logger.warning( - f"Can not get organization by org_uid. org_uid:{org_uid}" + f"Can not get organization by org_uid. org_uid:{tmp_org_uid}" ) continue - project: Optional[Dict] = project_by_id.get(warehouse_project_id) - if project is None: + try: + warehouse_project_id = unit["issuance"]["warehouseProjectId"] + project = project_by_id[warehouse_project_id] + except KeyError: logger.warning( - f"Can not get project by warehouse_project_id. warehouse_project_id:{warehouse_project_id}" + f"Can not get project by warehouse_project_id: {warehouse_project_id}" ) continue - org_metadata: Dict[str, str] = metadata_by_id.get(org_uid) - metadata: Dict = json.loads(org_metadata.get(f"meta_{asset_id}", "{}")) + try: + org_metadata = metadata_by_id[tmp_org_uid] + metadata = json.loads(org_metadata.get(f"meta_{asset_id}", "{}")) + except KeyError: + logger.warning("Can not get metadata by org_uid") + continue unit["organization"] = org unit["token"] = metadata @@ -175,8 +180,8 @@ class BlockChainCrud(object): full_node_client: FullNodeRpcClient async def get_challenge(self) -> str: - result: Dict = await self.full_node_client.fetch("get_network_info", {}) - return result["network_name"] + result = await self.full_node_client.fetch("get_network_info", {}) + return str(result["network_name"]) async def get_activities( self, @@ -190,7 +195,6 @@ async def get_activities( peak_height: int, mode: Optional[GatewayMode] = None, ) -> List[schemas.Activity]: - token_index = ClimateTokenIndex( org_uid=org_uid, warehouse_project_id=warehouse_project_id, @@ -202,7 +206,7 @@ async def get_activities( root_public_key=public_key, full_node_client=self.full_node_client, ) - activity_objs: List[Dict] = await wallet.get_activities( + activity_objs = await wallet.get_activities( mode=mode, start_height=start_height, end_height=end_height, @@ -211,9 +215,9 @@ async def get_activities( activities: List[schemas.Activity] = [] for obj in activity_objs: coin_record: CoinRecord = obj["coin_record"] - metadata: Dict = jsonable_encoder(obj["metadata"]) + metadata = jsonable_encoder(obj["metadata"]) coin: Coin = coin_record.coin - mode: GatewayMode = obj["mode"] + obj_mode = obj["mode"] if peak_height - coin_record.spent_block_index + 1 < settings.MIN_DEPTH: continue @@ -230,7 +234,7 @@ async def get_activities( coin_id=coin_record.name, height=coin_record.spent_block_index, amount=coin.amount, - mode=mode, + mode=obj_mode, metadata=metadata, timestamp=coin_record.timestamp, ) diff --git a/app/crud/db.py b/app/crud/db.py index ac35748..9985011 100644 --- a/app/crud/db.py +++ b/app/crud/db.py @@ -64,7 +64,9 @@ def select_first_db(self, model: Any, order_by: Any): logger.error(f"Select DB Failure:{e}") raise errorcode.internal_server_error(message="Select DB Failure") - def select_activity_with_pagination(self, model: Any, filters: Any, order_by: Any, limit: int, page: int): + def select_activity_with_pagination( + self, model: Any, filters: Any, order_by: Any, limit: int, page: int + ): try: query = self.db.query(model).filter( or_(*filters["or"]), and_(*filters["and"]) @@ -82,6 +84,7 @@ def select_activity_with_pagination(self, model: Any, filters: Any, order_by: An logger.error(f"Select DB Failure:{e}") raise errorcode.internal_server_error(message="Select DB Failure") + @dataclasses.dataclass class DBCrud(DBCrudBase): def create_activity(self, activity: schemas.Activity) -> models.Activity: @@ -91,7 +94,6 @@ def batch_insert_ignore_activity( self, activities: List[schemas.Activity], ) -> bool: - db_activities = [] for activity in activities: db_activity = models.Activity(**jsonable_encoder(activity)) diff --git a/app/errors.py b/app/errors.py index 578a5fb..755f499 100644 --- a/app/errors.py +++ b/app/errors.py @@ -2,8 +2,8 @@ class ErrorCode: - def internal_server_error(self, message: str): + def internal_server_error(self, message: str) -> None: raise HTTPException(status_code=500, detail=message) - def bad_request_error(self, message: str): + def bad_request_error(self, message: str) -> None: raise HTTPException(status_code=400, detail=message) diff --git a/app/main.py b/app/main.py index f470f9b..7a0d841 100644 --- a/app/main.py +++ b/app/main.py @@ -1,3 +1,4 @@ +import sys import traceback import uvicorn @@ -18,7 +19,7 @@ if settings.MODE == ExecutionMode.DEV: @app.exception_handler(Exception) - async def exception_handler(request: Request, e: Exception): + async def exception_handler(request: Request, e: Exception) -> Response: content: str = "".join(traceback.format_exception(e)) return Response(content, status_code=500) @@ -38,24 +39,24 @@ async def exception_handler(request: Request, e: Exception): logger.info(f"Using settings {settings.dict()}") wait_until_dir_exists(settings.CHIA_ROOT) - server_host = '' + server_host = "" - if (settings.MODE == ExecutionMode.EXPLORER): + if settings.MODE == ExecutionMode.EXPLORER: server_host = settings.CLIMATE_EXPLORER_SERVER_HOST - elif (settings.MODE == ExecutionMode.DEV): + elif settings.MODE == ExecutionMode.DEV: server_host = "127.0.0.1" - elif (settings.MODE == ExecutionMode.REGISTRY): + elif settings.MODE == ExecutionMode.REGISTRY: server_host = "127.0.0.1" - elif (settings.MODE == ExecutionMode.CLIENT): + elif settings.MODE == ExecutionMode.CLIENT: server_host = "127.0.0.1" - else : + else: print(f"Invalid mode {settings.MODE}!") sys.exit(1) - if ( - settings.MODE in [ExecutionMode.EXPLORER, ExecutionMode.DEV] - or server_host in ["127.0.0.1", "localhost"] - ): + if settings.MODE in [ExecutionMode.EXPLORER, ExecutionMode.DEV] or server_host in [ + "127.0.0.1", + "localhost", + ]: uvicorn.run( app, host=server_host, @@ -65,6 +66,6 @@ async def exception_handler(request: Request, e: Exception): ) else: print( - f'Climate Token Driver can only run on localhost in {settings.MODE.name} mode.' + f"Climate Token Driver can only run on localhost in {settings.MODE.name} mode." ) sys.exit(1) diff --git a/app/models/__init__.py b/app/models/__init__.py index df93962..3b46fa3 100644 --- a/app/models/__init__.py +++ b/app/models/__init__.py @@ -1,2 +1,4 @@ from app.models.activity import Activity # noqa from app.models.state import State # noqa + +__all__ = ["Activity", "State"] diff --git a/app/schemas/core.py b/app/schemas/core.py index 808c676..fabe9b7 100644 --- a/app/schemas/core.py +++ b/app/schemas/core.py @@ -1,4 +1,4 @@ -from typing import Any, Dict, Type, get_type_hints +from typing import Any, Dict, get_type_hints from chia.util.byte_types import hexstr_to_bytes from pydantic import BaseModel as PydanticBaseModel @@ -9,15 +9,15 @@ class BaseModel(PydanticBaseModel): @root_validator(pre=True) - def convert(cls, values: Dict[str, Any]): - field_to_type: Dict[str, Type] = get_type_hints(cls) + def convert(cls, values: Dict[str, Any]) -> Dict[str, Any]: + field_to_type = get_type_hints(cls) return_values: Dict[str, Any] = {} - for (key, value) in values.items(): + for key, value in values.items(): if key not in cls.__fields__.keys(): continue - type_: Type = field_to_type[key] + type_ = field_to_type[key] if (type_ is bytes) and isinstance(value, str): value = hexstr_to_bytes(value) diff --git a/chia-blockchain b/chia-blockchain index ba2570f..10a5f75 160000 --- a/chia-blockchain +++ b/chia-blockchain @@ -1 +1 @@ -Subproject commit ba2570f50fed64be92a49f1342fd0cc3ff014831 +Subproject commit 10a5f7559ee9b0f4c9e2f78f087dad51cb6168e9 diff --git a/mypy.ini b/mypy.ini new file mode 100644 index 0000000..1d8cc76 --- /dev/null +++ b/mypy.ini @@ -0,0 +1,19 @@ +[mypy] +files = app,tests +exclude = tests/conftest.py +ignore_missing_imports = True +show_error_codes = True +warn_unused_ignores = True +disallow_any_generics = True +disallow_subclassing_any = True +disallow_untyped_calls = True +disallow_untyped_defs = True +disallow_incomplete_defs = True +check_untyped_defs = True +disallow_untyped_decorators = True +no_implicit_optional = True +warn_return_any = True +no_implicit_reexport = False +strict_equality = True +warn_redundant_casts = True +enable_incomplete_feature = Unpack diff --git a/poetry.lock b/poetry.lock index 85007e8..9b2453a 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,112 +1,110 @@ -# This file is automatically @generated by Poetry and should not be changed by hand. +# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. [[package]] name = "aiofiles" -version = "23.1.0" +version = "23.2.1" description = "File support for asyncio." -category = "main" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.7" files = [ - {file = "aiofiles-23.1.0-py3-none-any.whl", hash = "sha256:9312414ae06472eb6f1d163f555e466a23aed1c8f60c30cccf7121dba2e53eb2"}, - {file = "aiofiles-23.1.0.tar.gz", hash = "sha256:edd247df9a19e0db16534d4baaf536d6609a43e1de5401d7a4c1c148753a1635"}, + {file = "aiofiles-23.2.1-py3-none-any.whl", hash = "sha256:19297512c647d4b27a2cf7c34caa7e405c0d60b5560618a29a9fe027b18b0107"}, + {file = "aiofiles-23.2.1.tar.gz", hash = "sha256:84ec2218d8419404abcb9f0c02df3f34c6e0a68ed41072acfb1cef5cbc29051a"}, ] [[package]] name = "aiohttp" -version = "3.8.4" +version = "3.8.5" description = "Async http client/server framework (asyncio)" -category = "main" optional = false python-versions = ">=3.6" files = [ - {file = "aiohttp-3.8.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5ce45967538fb747370308d3145aa68a074bdecb4f3a300869590f725ced69c1"}, - {file = "aiohttp-3.8.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b744c33b6f14ca26b7544e8d8aadff6b765a80ad6164fb1a430bbadd593dfb1a"}, - {file = "aiohttp-3.8.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1a45865451439eb320784918617ba54b7a377e3501fb70402ab84d38c2cd891b"}, - {file = "aiohttp-3.8.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a86d42d7cba1cec432d47ab13b6637bee393a10f664c425ea7b305d1301ca1a3"}, - {file = "aiohttp-3.8.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee3c36df21b5714d49fc4580247947aa64bcbe2939d1b77b4c8dcb8f6c9faecc"}, - {file = "aiohttp-3.8.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:176a64b24c0935869d5bbc4c96e82f89f643bcdf08ec947701b9dbb3c956b7dd"}, - {file = "aiohttp-3.8.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c844fd628851c0bc309f3c801b3a3d58ce430b2ce5b359cd918a5a76d0b20cb5"}, - {file = "aiohttp-3.8.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5393fb786a9e23e4799fec788e7e735de18052f83682ce2dfcabaf1c00c2c08e"}, - {file = "aiohttp-3.8.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e4b09863aae0dc965c3ef36500d891a3ff495a2ea9ae9171e4519963c12ceefd"}, - {file = "aiohttp-3.8.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:adfbc22e87365a6e564c804c58fc44ff7727deea782d175c33602737b7feadb6"}, - {file = "aiohttp-3.8.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:147ae376f14b55f4f3c2b118b95be50a369b89b38a971e80a17c3fd623f280c9"}, - {file = "aiohttp-3.8.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:eafb3e874816ebe2a92f5e155f17260034c8c341dad1df25672fb710627c6949"}, - {file = "aiohttp-3.8.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c6cc15d58053c76eacac5fa9152d7d84b8d67b3fde92709195cb984cfb3475ea"}, - {file = "aiohttp-3.8.4-cp310-cp310-win32.whl", hash = "sha256:59f029a5f6e2d679296db7bee982bb3d20c088e52a2977e3175faf31d6fb75d1"}, - {file = "aiohttp-3.8.4-cp310-cp310-win_amd64.whl", hash = "sha256:fe7ba4a51f33ab275515f66b0a236bcde4fb5561498fe8f898d4e549b2e4509f"}, - {file = "aiohttp-3.8.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3d8ef1a630519a26d6760bc695842579cb09e373c5f227a21b67dc3eb16cfea4"}, - {file = "aiohttp-3.8.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b3f2e06a512e94722886c0827bee9807c86a9f698fac6b3aee841fab49bbfb4"}, - {file = "aiohttp-3.8.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a80464982d41b1fbfe3154e440ba4904b71c1a53e9cd584098cd41efdb188ef"}, - {file = "aiohttp-3.8.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b631e26df63e52f7cce0cce6507b7a7f1bc9b0c501fcde69742130b32e8782f"}, - {file = "aiohttp-3.8.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f43255086fe25e36fd5ed8f2ee47477408a73ef00e804cb2b5cba4bf2ac7f5e"}, - {file = "aiohttp-3.8.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4d347a172f866cd1d93126d9b239fcbe682acb39b48ee0873c73c933dd23bd0f"}, - {file = "aiohttp-3.8.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3fec6a4cb5551721cdd70473eb009d90935b4063acc5f40905d40ecfea23e05"}, - {file = "aiohttp-3.8.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:80a37fe8f7c1e6ce8f2d9c411676e4bc633a8462844e38f46156d07a7d401654"}, - {file = "aiohttp-3.8.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d1e6a862b76f34395a985b3cd39a0d949ca80a70b6ebdea37d3ab39ceea6698a"}, - {file = "aiohttp-3.8.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cd468460eefef601ece4428d3cf4562459157c0f6523db89365202c31b6daebb"}, - {file = "aiohttp-3.8.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:618c901dd3aad4ace71dfa0f5e82e88b46ef57e3239fc7027773cb6d4ed53531"}, - {file = "aiohttp-3.8.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:652b1bff4f15f6287550b4670546a2947f2a4575b6c6dff7760eafb22eacbf0b"}, - {file = "aiohttp-3.8.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80575ba9377c5171407a06d0196b2310b679dc752d02a1fcaa2bc20b235dbf24"}, - {file = "aiohttp-3.8.4-cp311-cp311-win32.whl", hash = "sha256:bbcf1a76cf6f6dacf2c7f4d2ebd411438c275faa1dc0c68e46eb84eebd05dd7d"}, - {file = "aiohttp-3.8.4-cp311-cp311-win_amd64.whl", hash = "sha256:6e74dd54f7239fcffe07913ff8b964e28b712f09846e20de78676ce2a3dc0bfc"}, - {file = "aiohttp-3.8.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:880e15bb6dad90549b43f796b391cfffd7af373f4646784795e20d92606b7a51"}, - {file = "aiohttp-3.8.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb96fa6b56bb536c42d6a4a87dfca570ff8e52de2d63cabebfd6fb67049c34b6"}, - {file = "aiohttp-3.8.4-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4a6cadebe132e90cefa77e45f2d2f1a4b2ce5c6b1bfc1656c1ddafcfe4ba8131"}, - {file = "aiohttp-3.8.4-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f352b62b45dff37b55ddd7b9c0c8672c4dd2eb9c0f9c11d395075a84e2c40f75"}, - {file = "aiohttp-3.8.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ab43061a0c81198d88f39aaf90dae9a7744620978f7ef3e3708339b8ed2ef01"}, - {file = "aiohttp-3.8.4-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c9cb1565a7ad52e096a6988e2ee0397f72fe056dadf75d17fa6b5aebaea05622"}, - {file = "aiohttp-3.8.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:1b3ea7edd2d24538959c1c1abf97c744d879d4e541d38305f9bd7d9b10c9ec41"}, - {file = "aiohttp-3.8.4-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:7c7837fe8037e96b6dd5cfcf47263c1620a9d332a87ec06a6ca4564e56bd0f36"}, - {file = "aiohttp-3.8.4-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:3b90467ebc3d9fa5b0f9b6489dfb2c304a1db7b9946fa92aa76a831b9d587e99"}, - {file = "aiohttp-3.8.4-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:cab9401de3ea52b4b4c6971db5fb5c999bd4260898af972bf23de1c6b5dd9d71"}, - {file = "aiohttp-3.8.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:d1f9282c5f2b5e241034a009779e7b2a1aa045f667ff521e7948ea9b56e0c5ff"}, - {file = "aiohttp-3.8.4-cp36-cp36m-win32.whl", hash = "sha256:5e14f25765a578a0a634d5f0cd1e2c3f53964553a00347998dfdf96b8137f777"}, - {file = "aiohttp-3.8.4-cp36-cp36m-win_amd64.whl", hash = "sha256:4c745b109057e7e5f1848c689ee4fb3a016c8d4d92da52b312f8a509f83aa05e"}, - {file = "aiohttp-3.8.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:aede4df4eeb926c8fa70de46c340a1bc2c6079e1c40ccf7b0eae1313ffd33519"}, - {file = "aiohttp-3.8.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ddaae3f3d32fc2cb4c53fab020b69a05c8ab1f02e0e59665c6f7a0d3a5be54f"}, - {file = "aiohttp-3.8.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4eb3b82ca349cf6fadcdc7abcc8b3a50ab74a62e9113ab7a8ebc268aad35bb9"}, - {file = "aiohttp-3.8.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9bcb89336efa095ea21b30f9e686763f2be4478f1b0a616969551982c4ee4c3b"}, - {file = "aiohttp-3.8.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c08e8ed6fa3d477e501ec9db169bfac8140e830aa372d77e4a43084d8dd91ab"}, - {file = "aiohttp-3.8.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c6cd05ea06daca6ad6a4ca3ba7fe7dc5b5de063ff4daec6170ec0f9979f6c332"}, - {file = "aiohttp-3.8.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7a00a9ed8d6e725b55ef98b1b35c88013245f35f68b1b12c5cd4100dddac333"}, - {file = "aiohttp-3.8.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:de04b491d0e5007ee1b63a309956eaed959a49f5bb4e84b26c8f5d49de140fa9"}, - {file = "aiohttp-3.8.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:40653609b3bf50611356e6b6554e3a331f6879fa7116f3959b20e3528783e699"}, - {file = "aiohttp-3.8.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:dbf3a08a06b3f433013c143ebd72c15cac33d2914b8ea4bea7ac2c23578815d6"}, - {file = "aiohttp-3.8.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:854f422ac44af92bfe172d8e73229c270dc09b96535e8a548f99c84f82dde241"}, - {file = "aiohttp-3.8.4-cp37-cp37m-win32.whl", hash = "sha256:aeb29c84bb53a84b1a81c6c09d24cf33bb8432cc5c39979021cc0f98c1292a1a"}, - {file = "aiohttp-3.8.4-cp37-cp37m-win_amd64.whl", hash = "sha256:db3fc6120bce9f446d13b1b834ea5b15341ca9ff3f335e4a951a6ead31105480"}, - {file = "aiohttp-3.8.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fabb87dd8850ef0f7fe2b366d44b77d7e6fa2ea87861ab3844da99291e81e60f"}, - {file = "aiohttp-3.8.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:91f6d540163f90bbaef9387e65f18f73ffd7c79f5225ac3d3f61df7b0d01ad15"}, - {file = "aiohttp-3.8.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d265f09a75a79a788237d7f9054f929ced2e69eb0bb79de3798c468d8a90f945"}, - {file = "aiohttp-3.8.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d89efa095ca7d442a6d0cbc755f9e08190ba40069b235c9886a8763b03785da"}, - {file = "aiohttp-3.8.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4dac314662f4e2aa5009977b652d9b8db7121b46c38f2073bfeed9f4049732cd"}, - {file = "aiohttp-3.8.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe11310ae1e4cd560035598c3f29d86cef39a83d244c7466f95c27ae04850f10"}, - {file = "aiohttp-3.8.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ddb2a2026c3f6a68c3998a6c47ab6795e4127315d2e35a09997da21865757f8"}, - {file = "aiohttp-3.8.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e75b89ac3bd27d2d043b234aa7b734c38ba1b0e43f07787130a0ecac1e12228a"}, - {file = "aiohttp-3.8.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6e601588f2b502c93c30cd5a45bfc665faaf37bbe835b7cfd461753068232074"}, - {file = "aiohttp-3.8.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a5d794d1ae64e7753e405ba58e08fcfa73e3fad93ef9b7e31112ef3c9a0efb52"}, - {file = "aiohttp-3.8.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:a1f4689c9a1462f3df0a1f7e797791cd6b124ddbee2b570d34e7f38ade0e2c71"}, - {file = "aiohttp-3.8.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:3032dcb1c35bc330134a5b8a5d4f68c1a87252dfc6e1262c65a7e30e62298275"}, - {file = "aiohttp-3.8.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8189c56eb0ddbb95bfadb8f60ea1b22fcfa659396ea36f6adcc521213cd7b44d"}, - {file = "aiohttp-3.8.4-cp38-cp38-win32.whl", hash = "sha256:33587f26dcee66efb2fff3c177547bd0449ab7edf1b73a7f5dea1e38609a0c54"}, - {file = "aiohttp-3.8.4-cp38-cp38-win_amd64.whl", hash = "sha256:e595432ac259af2d4630008bf638873d69346372d38255774c0e286951e8b79f"}, - {file = "aiohttp-3.8.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5a7bdf9e57126dc345b683c3632e8ba317c31d2a41acd5800c10640387d193ed"}, - {file = "aiohttp-3.8.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:22f6eab15b6db242499a16de87939a342f5a950ad0abaf1532038e2ce7d31567"}, - {file = "aiohttp-3.8.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7235604476a76ef249bd64cb8274ed24ccf6995c4a8b51a237005ee7a57e8643"}, - {file = "aiohttp-3.8.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea9eb976ffdd79d0e893869cfe179a8f60f152d42cb64622fca418cd9b18dc2a"}, - {file = "aiohttp-3.8.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:92c0cea74a2a81c4c76b62ea1cac163ecb20fb3ba3a75c909b9fa71b4ad493cf"}, - {file = "aiohttp-3.8.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:493f5bc2f8307286b7799c6d899d388bbaa7dfa6c4caf4f97ef7521b9cb13719"}, - {file = "aiohttp-3.8.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a63f03189a6fa7c900226e3ef5ba4d3bd047e18f445e69adbd65af433add5a2"}, - {file = "aiohttp-3.8.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10c8cefcff98fd9168cdd86c4da8b84baaa90bf2da2269c6161984e6737bf23e"}, - {file = "aiohttp-3.8.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bca5f24726e2919de94f047739d0a4fc01372801a3672708260546aa2601bf57"}, - {file = "aiohttp-3.8.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:03baa76b730e4e15a45f81dfe29a8d910314143414e528737f8589ec60cf7391"}, - {file = "aiohttp-3.8.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:8c29c77cc57e40f84acef9bfb904373a4e89a4e8b74e71aa8075c021ec9078c2"}, - {file = "aiohttp-3.8.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:03543dcf98a6619254b409be2d22b51f21ec66272be4ebda7b04e6412e4b2e14"}, - {file = "aiohttp-3.8.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:17b79c2963db82086229012cff93ea55196ed31f6493bb1ccd2c62f1724324e4"}, - {file = "aiohttp-3.8.4-cp39-cp39-win32.whl", hash = "sha256:34ce9f93a4a68d1272d26030655dd1b58ff727b3ed2a33d80ec433561b03d67a"}, - {file = "aiohttp-3.8.4-cp39-cp39-win_amd64.whl", hash = "sha256:41a86a69bb63bb2fc3dc9ad5ea9f10f1c9c8e282b471931be0268ddd09430b04"}, - {file = "aiohttp-3.8.4.tar.gz", hash = "sha256:bf2e1a9162c1e441bf805a1fd166e249d574ca04e03b34f97e2928769e91ab5c"}, + {file = "aiohttp-3.8.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a94159871304770da4dd371f4291b20cac04e8c94f11bdea1c3478e557fbe0d8"}, + {file = "aiohttp-3.8.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:13bf85afc99ce6f9ee3567b04501f18f9f8dbbb2ea11ed1a2e079670403a7c84"}, + {file = "aiohttp-3.8.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2ce2ac5708501afc4847221a521f7e4b245abf5178cf5ddae9d5b3856ddb2f3a"}, + {file = "aiohttp-3.8.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:96943e5dcc37a6529d18766597c491798b7eb7a61d48878611298afc1fca946c"}, + {file = "aiohttp-3.8.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ad5c3c4590bb3cc28b4382f031f3783f25ec223557124c68754a2231d989e2b"}, + {file = "aiohttp-3.8.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0c413c633d0512df4dc7fd2373ec06cc6a815b7b6d6c2f208ada7e9e93a5061d"}, + {file = "aiohttp-3.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:df72ac063b97837a80d80dec8d54c241af059cc9bb42c4de68bd5b61ceb37caa"}, + {file = "aiohttp-3.8.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c48c5c0271149cfe467c0ff8eb941279fd6e3f65c9a388c984e0e6cf57538e14"}, + {file = "aiohttp-3.8.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:368a42363c4d70ab52c2c6420a57f190ed3dfaca6a1b19afda8165ee16416a82"}, + {file = "aiohttp-3.8.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7607ec3ce4993464368505888af5beb446845a014bc676d349efec0e05085905"}, + {file = "aiohttp-3.8.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0d21c684808288a98914e5aaf2a7c6a3179d4df11d249799c32d1808e79503b5"}, + {file = "aiohttp-3.8.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:312fcfbacc7880a8da0ae8b6abc6cc7d752e9caa0051a53d217a650b25e9a691"}, + {file = "aiohttp-3.8.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ad093e823df03bb3fd37e7dec9d4670c34f9e24aeace76808fc20a507cace825"}, + {file = "aiohttp-3.8.5-cp310-cp310-win32.whl", hash = "sha256:33279701c04351a2914e1100b62b2a7fdb9a25995c4a104259f9a5ead7ed4802"}, + {file = "aiohttp-3.8.5-cp310-cp310-win_amd64.whl", hash = "sha256:6e4a280e4b975a2e7745573e3fc9c9ba0d1194a3738ce1cbaa80626cc9b4f4df"}, + {file = "aiohttp-3.8.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ae871a964e1987a943d83d6709d20ec6103ca1eaf52f7e0d36ee1b5bebb8b9b9"}, + {file = "aiohttp-3.8.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:461908b2578955045efde733719d62f2b649c404189a09a632d245b445c9c975"}, + {file = "aiohttp-3.8.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:72a860c215e26192379f57cae5ab12b168b75db8271f111019509a1196dfc780"}, + {file = "aiohttp-3.8.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc14be025665dba6202b6a71cfcdb53210cc498e50068bc088076624471f8bb9"}, + {file = "aiohttp-3.8.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8af740fc2711ad85f1a5c034a435782fbd5b5f8314c9a3ef071424a8158d7f6b"}, + {file = "aiohttp-3.8.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:841cd8233cbd2111a0ef0a522ce016357c5e3aff8a8ce92bcfa14cef890d698f"}, + {file = "aiohttp-3.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ed1c46fb119f1b59304b5ec89f834f07124cd23ae5b74288e364477641060ff"}, + {file = "aiohttp-3.8.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84f8ae3e09a34f35c18fa57f015cc394bd1389bce02503fb30c394d04ee6b938"}, + {file = "aiohttp-3.8.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:62360cb771707cb70a6fd114b9871d20d7dd2163a0feafe43fd115cfe4fe845e"}, + {file = "aiohttp-3.8.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:23fb25a9f0a1ca1f24c0a371523546366bb642397c94ab45ad3aedf2941cec6a"}, + {file = "aiohttp-3.8.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:b0ba0d15164eae3d878260d4c4df859bbdc6466e9e6689c344a13334f988bb53"}, + {file = "aiohttp-3.8.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5d20003b635fc6ae3f96d7260281dfaf1894fc3aa24d1888a9b2628e97c241e5"}, + {file = "aiohttp-3.8.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0175d745d9e85c40dcc51c8f88c74bfbaef9e7afeeeb9d03c37977270303064c"}, + {file = "aiohttp-3.8.5-cp311-cp311-win32.whl", hash = "sha256:2e1b1e51b0774408f091d268648e3d57f7260c1682e7d3a63cb00d22d71bb945"}, + {file = "aiohttp-3.8.5-cp311-cp311-win_amd64.whl", hash = "sha256:043d2299f6dfdc92f0ac5e995dfc56668e1587cea7f9aa9d8a78a1b6554e5755"}, + {file = "aiohttp-3.8.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:cae533195e8122584ec87531d6df000ad07737eaa3c81209e85c928854d2195c"}, + {file = "aiohttp-3.8.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f21e83f355643c345177a5d1d8079f9f28b5133bcd154193b799d380331d5d3"}, + {file = "aiohttp-3.8.5-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a7a75ef35f2df54ad55dbf4b73fe1da96f370e51b10c91f08b19603c64004acc"}, + {file = "aiohttp-3.8.5-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e2e9839e14dd5308ee773c97115f1e0a1cb1d75cbeeee9f33824fa5144c7634"}, + {file = "aiohttp-3.8.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c44e65da1de4403d0576473e2344828ef9c4c6244d65cf4b75549bb46d40b8dd"}, + {file = "aiohttp-3.8.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:78d847e4cde6ecc19125ccbc9bfac4a7ab37c234dd88fbb3c5c524e8e14da543"}, + {file = "aiohttp-3.8.5-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:c7a815258e5895d8900aec4454f38dca9aed71085f227537208057853f9d13f2"}, + {file = "aiohttp-3.8.5-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:8b929b9bd7cd7c3939f8bcfffa92fae7480bd1aa425279d51a89327d600c704d"}, + {file = "aiohttp-3.8.5-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:5db3a5b833764280ed7618393832e0853e40f3d3e9aa128ac0ba0f8278d08649"}, + {file = "aiohttp-3.8.5-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:a0215ce6041d501f3155dc219712bc41252d0ab76474615b9700d63d4d9292af"}, + {file = "aiohttp-3.8.5-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:fd1ed388ea7fbed22c4968dd64bab0198de60750a25fe8c0c9d4bef5abe13824"}, + {file = "aiohttp-3.8.5-cp36-cp36m-win32.whl", hash = "sha256:6e6783bcc45f397fdebc118d772103d751b54cddf5b60fbcc958382d7dd64f3e"}, + {file = "aiohttp-3.8.5-cp36-cp36m-win_amd64.whl", hash = "sha256:b5411d82cddd212644cf9360879eb5080f0d5f7d809d03262c50dad02f01421a"}, + {file = "aiohttp-3.8.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:01d4c0c874aa4ddfb8098e85d10b5e875a70adc63db91f1ae65a4b04d3344cda"}, + {file = "aiohttp-3.8.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5980a746d547a6ba173fd5ee85ce9077e72d118758db05d229044b469d9029a"}, + {file = "aiohttp-3.8.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2a482e6da906d5e6e653be079b29bc173a48e381600161c9932d89dfae5942ef"}, + {file = "aiohttp-3.8.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80bd372b8d0715c66c974cf57fe363621a02f359f1ec81cba97366948c7fc873"}, + {file = "aiohttp-3.8.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1161b345c0a444ebcf46bf0a740ba5dcf50612fd3d0528883fdc0eff578006a"}, + {file = "aiohttp-3.8.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd56db019015b6acfaaf92e1ac40eb8434847d9bf88b4be4efe5bfd260aee692"}, + {file = "aiohttp-3.8.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:153c2549f6c004d2754cc60603d4668899c9895b8a89397444a9c4efa282aaf4"}, + {file = "aiohttp-3.8.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4a01951fabc4ce26ab791da5f3f24dca6d9a6f24121746eb19756416ff2d881b"}, + {file = "aiohttp-3.8.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bfb9162dcf01f615462b995a516ba03e769de0789de1cadc0f916265c257e5d8"}, + {file = "aiohttp-3.8.5-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:7dde0009408969a43b04c16cbbe252c4f5ef4574ac226bc8815cd7342d2028b6"}, + {file = "aiohttp-3.8.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:4149d34c32f9638f38f544b3977a4c24052042affa895352d3636fa8bffd030a"}, + {file = "aiohttp-3.8.5-cp37-cp37m-win32.whl", hash = "sha256:68c5a82c8779bdfc6367c967a4a1b2aa52cd3595388bf5961a62158ee8a59e22"}, + {file = "aiohttp-3.8.5-cp37-cp37m-win_amd64.whl", hash = "sha256:2cf57fb50be5f52bda004b8893e63b48530ed9f0d6c96c84620dc92fe3cd9b9d"}, + {file = "aiohttp-3.8.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:eca4bf3734c541dc4f374ad6010a68ff6c6748f00451707f39857f429ca36ced"}, + {file = "aiohttp-3.8.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1274477e4c71ce8cfe6c1ec2f806d57c015ebf84d83373676036e256bc55d690"}, + {file = "aiohttp-3.8.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:28c543e54710d6158fc6f439296c7865b29e0b616629767e685a7185fab4a6b9"}, + {file = "aiohttp-3.8.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:910bec0c49637d213f5d9877105d26e0c4a4de2f8b1b29405ff37e9fc0ad52b8"}, + {file = "aiohttp-3.8.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5443910d662db951b2e58eb70b0fbe6b6e2ae613477129a5805d0b66c54b6cb7"}, + {file = "aiohttp-3.8.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e460be6978fc24e3df83193dc0cc4de46c9909ed92dd47d349a452ef49325b7"}, + {file = "aiohttp-3.8.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fb1558def481d84f03b45888473fc5a1f35747b5f334ef4e7a571bc0dfcb11f8"}, + {file = "aiohttp-3.8.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34dd0c107799dcbbf7d48b53be761a013c0adf5571bf50c4ecad5643fe9cfcd0"}, + {file = "aiohttp-3.8.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:aa1990247f02a54185dc0dff92a6904521172a22664c863a03ff64c42f9b5410"}, + {file = "aiohttp-3.8.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:0e584a10f204a617d71d359fe383406305a4b595b333721fa50b867b4a0a1548"}, + {file = "aiohttp-3.8.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:a3cf433f127efa43fee6b90ea4c6edf6c4a17109d1d037d1a52abec84d8f2e42"}, + {file = "aiohttp-3.8.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:c11f5b099adafb18e65c2c997d57108b5bbeaa9eeee64a84302c0978b1ec948b"}, + {file = "aiohttp-3.8.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:84de26ddf621d7ac4c975dbea4c945860e08cccde492269db4e1538a6a6f3c35"}, + {file = "aiohttp-3.8.5-cp38-cp38-win32.whl", hash = "sha256:ab88bafedc57dd0aab55fa728ea10c1911f7e4d8b43e1d838a1739f33712921c"}, + {file = "aiohttp-3.8.5-cp38-cp38-win_amd64.whl", hash = "sha256:5798a9aad1879f626589f3df0f8b79b3608a92e9beab10e5fda02c8a2c60db2e"}, + {file = "aiohttp-3.8.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a6ce61195c6a19c785df04e71a4537e29eaa2c50fe745b732aa937c0c77169f3"}, + {file = "aiohttp-3.8.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:773dd01706d4db536335fcfae6ea2440a70ceb03dd3e7378f3e815b03c97ab51"}, + {file = "aiohttp-3.8.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f83a552443a526ea38d064588613aca983d0ee0038801bc93c0c916428310c28"}, + {file = "aiohttp-3.8.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f7372f7341fcc16f57b2caded43e81ddd18df53320b6f9f042acad41f8e049a"}, + {file = "aiohttp-3.8.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea353162f249c8097ea63c2169dd1aa55de1e8fecbe63412a9bc50816e87b761"}, + {file = "aiohttp-3.8.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d47ae48db0b2dcf70bc8a3bc72b3de86e2a590fc299fdbbb15af320d2659de"}, + {file = "aiohttp-3.8.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d827176898a2b0b09694fbd1088c7a31836d1a505c243811c87ae53a3f6273c1"}, + {file = "aiohttp-3.8.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3562b06567c06439d8b447037bb655ef69786c590b1de86c7ab81efe1c9c15d8"}, + {file = "aiohttp-3.8.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4e874cbf8caf8959d2adf572a78bba17cb0e9d7e51bb83d86a3697b686a0ab4d"}, + {file = "aiohttp-3.8.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6809a00deaf3810e38c628e9a33271892f815b853605a936e2e9e5129762356c"}, + {file = "aiohttp-3.8.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:33776e945d89b29251b33a7e7d006ce86447b2cfd66db5e5ded4e5cd0340585c"}, + {file = "aiohttp-3.8.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:eaeed7abfb5d64c539e2db173f63631455f1196c37d9d8d873fc316470dfbacd"}, + {file = "aiohttp-3.8.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e91d635961bec2d8f19dfeb41a539eb94bd073f075ca6dae6c8dc0ee89ad6f91"}, + {file = "aiohttp-3.8.5-cp39-cp39-win32.whl", hash = "sha256:00ad4b6f185ec67f3e6562e8a1d2b69660be43070bd0ef6fcec5211154c7df67"}, + {file = "aiohttp-3.8.5-cp39-cp39-win_amd64.whl", hash = "sha256:c0a9034379a37ae42dea7ac1e048352d96286626251862e448933c0f59cbd79c"}, + {file = "aiohttp-3.8.5.tar.gz", hash = "sha256:b9552ec52cc147dbf1944ac7ac98af7602e51ea2dcd076ed194ca3c0d1c7d0bc"}, ] [package.dependencies] @@ -125,7 +123,6 @@ speedups = ["Brotli", "aiodns", "cchardet"] name = "aiosignal" version = "1.3.1" description = "aiosignal: a list of registered asynchronous callbacks" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -138,218 +135,240 @@ frozenlist = ">=1.1.0" [[package]] name = "aiosqlite" -version = "0.17.0" +version = "0.19.0" description = "asyncio bridge to the standard sqlite3 module" -category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "aiosqlite-0.17.0-py3-none-any.whl", hash = "sha256:6c49dc6d3405929b1d08eeccc72306d3677503cc5e5e43771efc1e00232e8231"}, - {file = "aiosqlite-0.17.0.tar.gz", hash = "sha256:f0e6acc24bc4864149267ac82fb46dfb3be4455f99fe21df82609cc6e6baee51"}, + {file = "aiosqlite-0.19.0-py3-none-any.whl", hash = "sha256:edba222e03453e094a3ce605db1b970c4b3376264e56f32e2a4959f948d66a96"}, + {file = "aiosqlite-0.19.0.tar.gz", hash = "sha256:95ee77b91c8d2808bd08a59fbebf66270e9090c3d92ffbf260dc0db0b979577d"}, ] -[package.dependencies] -typing_extensions = ">=3.7.2" +[package.extras] +dev = ["aiounittest (==1.4.1)", "attribution (==1.6.2)", "black (==23.3.0)", "coverage[toml] (==7.2.3)", "flake8 (==5.0.4)", "flake8-bugbear (==23.3.12)", "flit (==3.7.1)", "mypy (==1.2.0)", "ufmt (==2.1.0)", "usort (==1.0.6)"] +docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"] [[package]] name = "anyio" -version = "3.6.2" +version = "4.0.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" -category = "main" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.8" files = [ - {file = "anyio-3.6.2-py3-none-any.whl", hash = "sha256:fbbe32bd270d2a2ef3ed1c5d45041250284e31fc0a4df4a5a6071842051a51e3"}, - {file = "anyio-3.6.2.tar.gz", hash = "sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421"}, + {file = "anyio-4.0.0-py3-none-any.whl", hash = "sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f"}, + {file = "anyio-4.0.0.tar.gz", hash = "sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a"}, ] [package.dependencies] +exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} idna = ">=2.8" sniffio = ">=1.1" [package.extras] -doc = ["packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["contextlib2", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (<0.15)", "uvloop (>=0.15)"] -trio = ["trio (>=0.16,<0.22)"] +doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (>=0.22)"] [[package]] name = "argcomplete" -version = "2.0.0" +version = "2.0.6" description = "Bash tab completion for argparse" -category = "dev" optional = false python-versions = ">=3.6" files = [ - {file = "argcomplete-2.0.0-py2.py3-none-any.whl", hash = "sha256:cffa11ea77999bb0dd27bb25ff6dc142a6796142f68d45b1a26b11f58724561e"}, - {file = "argcomplete-2.0.0.tar.gz", hash = "sha256:6372ad78c89d662035101418ae253668445b391755cfe94ea52f1b9d22425b20"}, + {file = "argcomplete-2.0.6-py3-none-any.whl", hash = "sha256:6c2170b3e0ab54683cb28d319b65261bde1f11388be688b68118b7d281e34c94"}, + {file = "argcomplete-2.0.6.tar.gz", hash = "sha256:dc33528d96727882b576b24bc89ed038f3c6abbb6855ff9bb6be23384afff9d6"}, ] [package.extras] -test = ["coverage", "flake8", "pexpect", "wheel"] +lint = ["flake8", "mypy"] +test = ["coverage", "flake8", "mypy", "pexpect", "wheel"] [[package]] name = "async-timeout" -version = "4.0.2" +version = "4.0.3" description = "Timeout context manager for asyncio programs" -category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "async-timeout-4.0.2.tar.gz", hash = "sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15"}, - {file = "async_timeout-4.0.2-py3-none-any.whl", hash = "sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"}, + {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"}, + {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"}, ] [[package]] name = "attrs" -version = "22.1.0" +version = "23.1.0" description = "Classes Without Boilerplate" -category = "main" optional = false -python-versions = ">=3.5" +python-versions = ">=3.7" files = [ - {file = "attrs-22.1.0-py2.py3-none-any.whl", hash = "sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"}, - {file = "attrs-22.1.0.tar.gz", hash = "sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6"}, + {file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"}, + {file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"}, ] [package.extras] -dev = ["cloudpickle", "coverage[toml] (>=5.0.2)", "furo", "hypothesis", "mypy (>=0.900,!=0.940)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "sphinx", "sphinx-notfound-page", "zope.interface"] -docs = ["furo", "sphinx", "sphinx-notfound-page", "zope.interface"] -tests = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "zope.interface"] -tests-no-zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins"] +cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] +dev = ["attrs[docs,tests]", "pre-commit"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] +tests = ["attrs[tests-no-zope]", "zope-interface"] +tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] [[package]] name = "bitstring" -version = "4.0.1" +version = "4.0.2" description = "Simple construction, analysis and modification of binary data." -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "bitstring-4.0.1-py3-none-any.whl", hash = "sha256:4a27cdefd95eb535c4b79e0afcdb5532ba1dba0aaed98a31ad98f46b1e0d5bd9"}, - {file = "bitstring-4.0.1.tar.gz", hash = "sha256:7719f08f6df89ce28453a5e580d4a8ec1d1bda892dbb033466da0ccd9bdcb706"}, + {file = "bitstring-4.0.2-py3-none-any.whl", hash = "sha256:f93893791e8a6ecb02adcc5c191aaa964a06a9e1449e326cfb4f49ff5198e588"}, + {file = "bitstring-4.0.2.tar.gz", hash = "sha256:a391db8828ac4485dd5ce72c80b27ebac3e7b989631359959e310cd9729723b2"}, ] [[package]] name = "blspy" -version = "1.0.16" +version = "2.0.2" description = "BLS signatures in c++ (python bindings)" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "blspy-1.0.16-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:5c4d31f19df5e6bd2bb84c3f21a43ef3cc80ff9414bb2541a8e49dad111aead6"}, - {file = "blspy-1.0.16-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0107d652f14ea196308eef635862d9ed2c20a2822486653c4f4f27a893aada92"}, - {file = "blspy-1.0.16-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:89660ff986d0fd3ba0dbe5f2c0534229177b4c0e6facb18b2af7cb0f7864e02d"}, - {file = "blspy-1.0.16-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fe53d43cdbdd0229b746253dc22453961a07ebec800b09681db81422421932de"}, - {file = "blspy-1.0.16-cp310-cp310-win_amd64.whl", hash = "sha256:fcf254d21bab581cfd0144fd83016a0f2927b593975ece15e0bc844c5adc0071"}, - {file = "blspy-1.0.16-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:8661047adf878c4dc830c661c032b9bc9bcd9d854bd8348f61ea02f470664a35"}, - {file = "blspy-1.0.16-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ac1f695938fa1415d3f56e45bf5d0cef62a8242a53b8b276e7eeefd39c42ba9b"}, - {file = "blspy-1.0.16-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ed4ec6cc7ff44bf03c211cf2a7c3d1e423facb48c892fa534462c1558a378b1"}, - {file = "blspy-1.0.16-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a274dba827c77547e7bd7100468612b613c5928c4c71803270b908d0434b71d0"}, - {file = "blspy-1.0.16-cp311-cp311-win_amd64.whl", hash = "sha256:3ea1105d1d68e7a4c26d942bd49cc00e04bb7608b9d86af8e6cae8e117b50b3a"}, - {file = "blspy-1.0.16-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:b592836f4e1e915dd211797741904de93d64ccfda4ed40d40d2d6f5cc0dec1b9"}, - {file = "blspy-1.0.16-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f387414e519b5499772bd79f478b98c52156870e137351fd3d924520f0c5528f"}, - {file = "blspy-1.0.16-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:702daf04b5de0027df33b4772ff76ca06af3a707349d1fb1370e4be8a9db3f53"}, - {file = "blspy-1.0.16-cp37-cp37m-win_amd64.whl", hash = "sha256:7f80eea462bd564bb5f6b475811f8951d27e52d827e1a6af279c65051173181b"}, - {file = "blspy-1.0.16-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:7b058d575b316c86217be70fca2ae6151f6847070d31963ce10032f3a839ea7d"}, - {file = "blspy-1.0.16-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f5a12bf7049b529577269da908eb617a8f5fd14c98a23d204285aae4caa837e9"}, - {file = "blspy-1.0.16-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c3dc4cd9c44698f3888c12ff71574de416461fa1058405ab1160e6619646e06"}, - {file = "blspy-1.0.16-cp38-cp38-win_amd64.whl", hash = "sha256:b3e4fafe4415863c9857b272cf56e7660e2c348bde30ed2db129df89004ca44c"}, - {file = "blspy-1.0.16-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:326216db8bf44a80d4e30d1d72f7817f1837bb8efe84c17f7b1eae42bb64914e"}, - {file = "blspy-1.0.16-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dd6b3ebc418501ee6ae42660f05b1881682840098f2e4edb0835d099a7948c3c"}, - {file = "blspy-1.0.16-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7e7eef70e8f163779e4bd7cc25fb1ea87c9780ab9edd77f97fd18eea77faf8be"}, - {file = "blspy-1.0.16-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff4c3a6ff76c39c2d9cd0253a63b110b5f38c5b04e9787294339ecc394ea62ac"}, - {file = "blspy-1.0.16-cp39-cp39-win_amd64.whl", hash = "sha256:e0698f4c347c05a2b404367113dd8487c7e50715b6d462ab70deb36f982af359"}, - {file = "blspy-1.0.16.tar.gz", hash = "sha256:5c005d4ba082509a59f4dd55adad3bf15d07a03537daed65df2cfde99287c057"}, + {file = "blspy-2.0.2-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:c053733d674ff92fcb4059b36b75c29337d34afbd900a0bc2113ad86fc447b77"}, + {file = "blspy-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dbb053ccb1b48584cc4d357f29c770a2cf3e05faa8b184bd9294e8ed01a565b5"}, + {file = "blspy-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a0b208b80fa76c9adf296a77aa805127840cf5ca8f1af6e8c223f803d1770c5"}, + {file = "blspy-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc615db0f93911c24bb6512140e8f098f506d455c44fa1830fdb98e2590bc9f0"}, + {file = "blspy-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:c5581b44d0a4e01ba55183cadfc0139b9a97620c7910a5487023918f07b85271"}, + {file = "blspy-2.0.2-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:fdb1dfc95c2563a7c3faa31e729ef972f5be04bcfd4478cc40e97e7df6c81bfb"}, + {file = "blspy-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ebff8fdecf5ce5d4fabd9f39d0a1a5bce66e560f7bd7126f300cfebe69ca5aff"}, + {file = "blspy-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:29731d2f8203bee252bc8b80347486a17c278bf7ab6e0956a44a45a91e2d595d"}, + {file = "blspy-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:67fe57111005f2ea19536b526c92e70567118fbba1f5bfc5aa59949a52127852"}, + {file = "blspy-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:7347d140e0f2082f311b944385db2bacbe01363622754a237e9024e417b35f8c"}, + {file = "blspy-2.0.2-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:e0c7c685aed512adf8691be054c0c0cc87a66b0323f2434a6341fe49076d78ab"}, + {file = "blspy-2.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:368da188d7eb4298e4ca59d253e8a11639534af045959c85f58f4c188fa361c1"}, + {file = "blspy-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9555039e51281ffe34bcb06215512721b5cd509102db68267eab8b314258c41"}, + {file = "blspy-2.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:e31a1a9adbf04b5f09321c5fa6b9fdc50bdc685d2f4c8335444e95513d81090e"}, + {file = "blspy-2.0.2-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:b2988f1ac4fa5063d3fb30ff5272ba5b51877d551120085dc9e1257d3228e89c"}, + {file = "blspy-2.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c51b2be0b81b786e6bc786c41735fbda0e335d31e2e163ef735ae56c6d3adb7f"}, + {file = "blspy-2.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b0e8fd5f7729e08451e7ef66134f377e4bf88a9ea25a010f27bcf881e89541ee"}, + {file = "blspy-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5603dc3fb30e622be31dd8d1bbfdd5624291f8c56f076a1d177836959c733cff"}, + {file = "blspy-2.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:bf30732ac316b8cafaeaeefa694a96ea4a92922fb86dd3d30f79d48a202e1d51"}, + {file = "blspy-2.0.2-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:286a684b1f645d3c38ccc7882a305ed1b038a0e603ff2f482e493c91ab0f0b58"}, + {file = "blspy-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:744043f6e4192f3b431f1433b07144bd198294fd129c9b4a19e0c122474df32b"}, + {file = "blspy-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26fb12e7158230f7169781fddf6a4c15dd4366de26d1531a09df986f9706332a"}, + {file = "blspy-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b7183ef57f8675c9d29f4f66ba3a65280fd3742200fc4d8f2f7a53b98b77136"}, + {file = "blspy-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:21df21e27b5f7ed56e37f8a6272adb9273ba88d0570d26315e28a41e14c37f43"}, + {file = "blspy-2.0.2.tar.gz", hash = "sha256:9b12d685f3c104d3fe0faf3618f6b824272d131b8ea3843190ad670618736775"}, ] [package.dependencies] wheel = "*" +[[package]] +name = "boto3" +version = "1.28.25" +description = "The AWS SDK for Python" +optional = false +python-versions = ">= 3.7" +files = [ + {file = "boto3-1.28.25-py3-none-any.whl", hash = "sha256:f08f6c83608721c2142abd2ccc5f15bd5c98c282ad9e0d39f9efc59d98604658"}, + {file = "boto3-1.28.25.tar.gz", hash = "sha256:20feedb753e87d6dd55665e2e9dda08b031518291350c9c57b552c86a537fd4e"}, +] + +[package.dependencies] +botocore = ">=1.31.25,<1.32.0" +jmespath = ">=0.7.1,<2.0.0" +s3transfer = ">=0.6.0,<0.7.0" + +[package.extras] +crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] + +[[package]] +name = "botocore" +version = "1.31.63" +description = "Low-level, data-driven core of boto 3." +optional = false +python-versions = ">= 3.7" +files = [ + {file = "botocore-1.31.63-py3-none-any.whl", hash = "sha256:cb9db5db5af865b1fc2e1405b967db5d78dd0f4d84e5dc1974e082733c1034b7"}, + {file = "botocore-1.31.63.tar.gz", hash = "sha256:6e582c811ea74f25bdb490ac372b2645de4a60286b42ddd8c69f3b6df82b6b12"}, +] + +[package.dependencies] +jmespath = ">=0.7.1,<2.0.0" +python-dateutil = ">=2.1,<3.0.0" +urllib3 = {version = ">=1.25.4,<2.1", markers = "python_version >= \"3.10\""} + +[package.extras] +crt = ["awscrt (==0.16.26)"] + [[package]] name = "certifi" -version = "2022.9.24" +version = "2023.7.22" description = "Python package for providing Mozilla's CA Bundle." -category = "main" optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2022.9.24-py3-none-any.whl", hash = "sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382"}, - {file = "certifi-2022.9.24.tar.gz", hash = "sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14"}, + {file = "certifi-2023.7.22-py3-none-any.whl", hash = "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"}, + {file = "certifi-2023.7.22.tar.gz", hash = "sha256:539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082"}, ] [[package]] name = "cffi" -version = "1.15.1" +version = "1.16.0" description = "Foreign Function Interface for Python calling C code." -category = "main" optional = false -python-versions = "*" -files = [ - {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, - {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, - {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, - {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, - {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, - {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, - {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, - {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, - {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, - {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, - {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, - {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, - {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, - {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, - {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, - {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, - {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, - {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, - {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, +python-versions = ">=3.8" +files = [ + {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, + {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, + {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, + {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, + {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, + {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, + {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, + {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, + {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, + {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, + {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, + {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, + {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, + {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, + {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, ] [package.dependencies] @@ -359,7 +378,6 @@ pycparser = "*" name = "charset-normalizer" version = "2.1.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "main" optional = false python-versions = ">=3.6.0" files = [ @@ -372,194 +390,182 @@ unicode-backport = ["unicodedata2"] [[package]] name = "chia-blockchain" -version = "1.7.1" +version = "2.1.1" description = "Chia blockchain full node, farmer, timelord, and wallet." -category = "main" optional = false -python-versions = ">=3.7, <4" -files = [ - {file = "chia-blockchain-1.7.1.tar.gz", hash = "sha256:d3c994e87ba4f9ecb4256fddc99d925dd46d5a67e4c0489fa9bea5a0a67dc2f9"}, -] +python-versions = ">=3.8.1, <4" +files = [] +develop = true [package.dependencies] -aiofiles = "23.1.0" -aiohttp = "3.8.4" -aiosqlite = "0.17.0" -anyio = "3.6.2" -bitstring = "4.0.1" -blspy = "1.0.16" -chia_rs = "0.2.4" -chiabip158 = "1.2" -chiapos = "1.0.11" -chiavdf = "1.0.8" +aiofiles = "23.2.1" +aiohttp = "3.8.5" +aiosqlite = "0.19.0" +anyio = "4.0.0" +bitstring = "4.0.2" +blspy = "2.0.2" +boto3 = "1.28.25" +chia_rs = "0.2.11" +chiabip158 = "1.3" +chiapos = "2.0.3" +chiavdf = "1.0.11" click = "8.1.3" clvm = "0.9.7" clvm_tools = "0.4.6" -clvm-tools-rs = "0.1.30" +clvm-tools-rs = "0.1.34" colorama = "0.4.6" colorlog = "6.7.0" -concurrent-log-handler = "0.9.20" -cryptography = "39.0.1" +concurrent-log-handler = "0.9.24" +cryptography = "41.0.3" dnslib = "0.9.23" -dnspython = "2.3.0" -filelock = "3.9.0" +dnspython = "2.4.1" +filelock = "3.12.3" keyring = "23.13.1" -packaging = "23.0" +packaging = "23.1" psutil = "5.9.4" -PyYAML = "6.0" +PyYAML = "6.0.1" setproctitle = "1.3.2" sortedcontainers = "2.4.0" -typing-extensions = "4.5.0" +typing-extensions = "4.7.1" watchdog = "2.2.0" -zstd = "1.5.4.0" +zstd = "1.5.5.1" [package.extras] -dev = ["aiohttp_cors", "black (==22.10.0)", "build", "coverage", "diff-cover", "flake8", "ipython", "isort", "mypy", "pre-commit", "py3createtorrent", "pyinstaller (==5.8.0)", "pylint", "pytest", "pytest-asyncio (==0.20.3)", "pytest-cov", "pytest-monitor", "pytest-xdist", "twine", "types-aiofiles", "types-cryptography", "types-pkg_resources", "types-pyyaml", "types-setuptools"] +dev = ["aiohttp_cors (==0.7.0)", "astroid (==2.15.6)", "black (==23.7.0)", "build (==0.10.0)", "coverage (==7.3.0)", "diff-cover (==7.7.0)", "flake8 (==6.1.0)", "ipython (==8.12.2)", "isort (==5.12.0)", "mypy (==1.4.1)", "pre-commit (==3.3.3)", "py3createtorrent (==1.1.0)", "pyinstaller (==5.13.0)", "pylint (==2.17.5)", "pytest (==7.4.0)", "pytest-asyncio (==0.21.1)", "pytest-cov (==4.1.0)", "pytest-mock (==3.11.1)", "pytest-monitor (==1.6.6)", "pytest-xdist (==3.3.1)", "twine (==4.0.2)", "types-aiofiles (==23.1.0.5)", "types-cryptography (==3.3.23.2)", "types-pkg_resources (==0.1.3)", "types-pyyaml (==6.0.12.11)", "types-setuptools (==68.0.0.3)"] legacy-keyring = ["keyrings.cryptfile (==1.3.9)"] upnp = ["miniupnpc (==2.2.2)"] +[package.source] +type = "directory" +url = "chia-blockchain" + [[package]] name = "chia-rs" -version = "0.2.4" +version = "0.2.11" description = "Code useful for implementing chia consensus." -category = "main" optional = false python-versions = "*" files = [ - {file = "chia_rs-0.2.4-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:60c6a36b5c730d6fa0cfae34d982fe3d93670bf10fe02e1ac61394dc3e1edbc7"}, - {file = "chia_rs-0.2.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:10bbe79a0feb49bf5b474f7c7efc3839dfb285df050f19909b87772f0ddb9613"}, - {file = "chia_rs-0.2.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b119a25645b0d86b930e9928a436f462568acaf12576805cb30983eca1339fc"}, - {file = "chia_rs-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac058d1478a39d2fcf23fcc355bfde137d0a623ab15693221abcfdb98b23a177"}, - {file = "chia_rs-0.2.4-cp310-none-win_amd64.whl", hash = "sha256:963412199693541fb4a4d6fff73cde0c4922c2ae37d732a01ab7ffaa4c400513"}, - {file = "chia_rs-0.2.4-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:c6de67c0329e41d9677afc449c0f072af85463893365fed18715d627bbbf84b5"}, - {file = "chia_rs-0.2.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bf140eb1ac6f8010df0a75ae3215bfad800dba20a0f2132681dfdbec378ba728"}, - {file = "chia_rs-0.2.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e039b939d02b999a6735a90282ca2b2ce4d02106e04b9922bd9a10da7377bcac"}, - {file = "chia_rs-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f8bdba220c67e39d9c0ef6fa507512863c3e5d60a022c4b984b17b5b6581bd1"}, - {file = "chia_rs-0.2.4-cp311-none-win_amd64.whl", hash = "sha256:53658889ca74697305c5f5639c0282432318cfe09a8caa60ac619723982c66bd"}, - {file = "chia_rs-0.2.4-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:f96b4273463aaa7f6144931763b8fff139ce4fbe09f32c93eac1fb0c14ab0f7f"}, - {file = "chia_rs-0.2.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0403099bc35d91b99df92198453d59fbc72937414438926573d06b0b778ad2ea"}, - {file = "chia_rs-0.2.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f9bd9a4887bfa0b02f44fb4b6f3a7cb92bd26405af763e3ce204d4160df3e6c2"}, - {file = "chia_rs-0.2.4-cp37-none-win_amd64.whl", hash = "sha256:5dea09f4018f239009c1bfc6b5036fa7296bb4ea1997ebd30a2e2c5fc3db8064"}, - {file = "chia_rs-0.2.4-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:083fa759ee5c1bd4174d320afe743425c838b7fdcde4e65afb0101d0381b1b60"}, - {file = "chia_rs-0.2.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5b24df4ec73aa67c094c3870f4c2b6f57b5a980c53af414dee50f1aa32c3f333"}, - {file = "chia_rs-0.2.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:269c17b9788ccadb910ed6dc2405b16800cbfa3f4194950be065f50206048f15"}, - {file = "chia_rs-0.2.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7fc06a53d3834be7e66a5599c00d106d58df58de0c7528378d31ed43e89bc2b5"}, - {file = "chia_rs-0.2.4-cp38-none-win_amd64.whl", hash = "sha256:0e4b9eede3920b335939310680f2f3a62656c3e99bb4b8adc9507f14b46895b2"}, - {file = "chia_rs-0.2.4-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:08b8a144dc217308a13b9e5d4977790354f3ad38c6cf47e9d0f66ae100a8a79d"}, - {file = "chia_rs-0.2.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c3f69800f15701da9bb2e6798da1e0e521174d1c79258ec9d4cc3f73b4182d61"}, - {file = "chia_rs-0.2.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:631bcc2ac51b3a8e12d4e19f379d85e3962d2283261507910d881e009d4473b0"}, - {file = "chia_rs-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e6a5b8685288a64cd2204eef97a0a3cb0a7743b30f811bb832302400a1e9458"}, - {file = "chia_rs-0.2.4-cp39-none-win_amd64.whl", hash = "sha256:49504044950bcdab96470d9a8b11bfd14cb2f7a0dfef63d4b02863ca4464dfa0"}, - {file = "chia_rs-0.2.4.tar.gz", hash = "sha256:78514b2d13e5d4772cbaa1e37f073ca57a12f7b5a34060ab9302912b45fdcdfb"}, + {file = "chia_rs-0.2.11-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:03af39e6c55f949add95f6812ec916e9a435bbdd07a932d85fa15eeb0cc527af"}, + {file = "chia_rs-0.2.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7036a5485c7119911797fbf04fa5535ff277f5025023d1cc43a7474027fb90e3"}, + {file = "chia_rs-0.2.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb47c7cd4dd7db216946cb74e79d9f73ca0025747053ddabc4cd8667d3e63984"}, + {file = "chia_rs-0.2.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3cfc7af0d5b6e9b3bc41cb80c2cc061dadbeba47bcdef5cefcba170c438ee9d"}, + {file = "chia_rs-0.2.11-cp310-none-win_amd64.whl", hash = "sha256:564829205cc316937420ea67ae9756eb3cbf2b401ccf816bc919ec3f5ddcbad5"}, + {file = "chia_rs-0.2.11-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:8e0f3c1791dcffae72821b207bbc8c7ab3d9eb8d7b5d491fdd9cb994536ae748"}, + {file = "chia_rs-0.2.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e95e5bb080c3c42cf758b6df74b932b35e613de673c72ebd9602971aa669663c"}, + {file = "chia_rs-0.2.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c65a881fd1a5491a2c7454d1391a571721d470bacbf8829540cac53e63e853db"}, + {file = "chia_rs-0.2.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2859a18fb2dc67626d89d5760121c33fd5aff1961d399c12713e62208c08d85d"}, + {file = "chia_rs-0.2.11-cp311-none-win_amd64.whl", hash = "sha256:f4b28ee59dfe1be27ef30d0e84f7b8b4ee77823cfef422f5866cce04583f2a94"}, + {file = "chia_rs-0.2.11-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:cc57cadbcb0cd7fdb9e662a04ff76942e307c3a2ada823d706e0024171f35ff4"}, + {file = "chia_rs-0.2.11-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bdfb711200348b3f5c9d98d851022878fc4fbe67f872ba837c84fe775463feab"}, + {file = "chia_rs-0.2.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3bf79988751e30c294281c4f84b388a5e28ececafa4c2f22b05eba4af823f5d8"}, + {file = "chia_rs-0.2.11-cp37-none-win_amd64.whl", hash = "sha256:9796d566aa2d97d78097064190893f3502137db4baaf06a7a9e9019879900486"}, + {file = "chia_rs-0.2.11-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:6f45798501692306ccfff7fd88046773e6e6ed0cdd9a008e028abf1bb94ae891"}, + {file = "chia_rs-0.2.11-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3af3460e39405bf4405c9395c1281641d6ed55deef936d5a15dabd180205fa26"}, + {file = "chia_rs-0.2.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c3d50608b1c9f6705c15f2bee97d740db4be98da9a1aaa26b9a92191fecd793"}, + {file = "chia_rs-0.2.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f849b0a33070f53188a406a25293e664f07a76b3601275d55a5dab1c81c57bb3"}, + {file = "chia_rs-0.2.11-cp38-none-win_amd64.whl", hash = "sha256:20762a40926412b5ed317f6d6c3ab16c81cbeba676bd01ba8a29ffc9c78d9595"}, + {file = "chia_rs-0.2.11-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:27851c702fa29ded937485e3509564719e114d5e55bb34a6a70e9598e2052cfa"}, + {file = "chia_rs-0.2.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9a2d83d5a52f53c1424540c9dd63815d19e8fca03636a1007094d4ba6194e5ef"}, + {file = "chia_rs-0.2.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd39e3afa849dedadbd8ba7d9167676b6b1d4c8ed4712047b3a1c72d34e199e8"}, + {file = "chia_rs-0.2.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c9b6608134ca48cd9bc261b7365eab071626087081ce270c97541d74e6e8e7a4"}, + {file = "chia_rs-0.2.11-cp39-none-win_amd64.whl", hash = "sha256:334fbbba5af6989d08e810268cb9738a0e46aba19e53f5f47eabc7140cbb7b85"}, + {file = "chia_rs-0.2.11.tar.gz", hash = "sha256:a993ee35c9e06386754bf19447a71b3c5b64af9f7b065f9e76cceb1fa96627b0"}, ] [[package]] name = "chiabip158" -version = "1.2" +version = "1.3" description = "Chia BIP158 (wraps C++)" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "chiabip158-1.2-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:8eaf1661714d4245ac9dfe32ffac606bf2d2eeb03fd3eefbfb7e1a7cc342ba88"}, - {file = "chiabip158-1.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:66adcc70ca1d060c8545fac85b1e7cc82b16065a370adacef5f59e2f6cde49d5"}, - {file = "chiabip158-1.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9ee28de6511e4bc5a042f552911d3d3eb0a66ae4798ec4cb995c18c9e4a5ae5a"}, - {file = "chiabip158-1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82989e87473270e323c6dd4aedd086ccc7cfebda0578d2efec736e852f0f0f2a"}, - {file = "chiabip158-1.2-cp310-cp310-win_amd64.whl", hash = "sha256:ded9336537e216c3a20f03dac6f2697f095ce5bdf25acbbf34801fab63a79722"}, - {file = "chiabip158-1.2-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:f90653d69c0f61038f0a6e0cb5f7ce3256ce55a8746abe559044a46c4b1236fe"}, - {file = "chiabip158-1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e5ba8363e7a3e862da9e86f39469e4ecb8ee12ff67adc68ae549129b3db91b8a"}, - {file = "chiabip158-1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d77b0bf9a9055f3b517a49d35b25bfc6edebf54a7b758d8ac750cadf1335f312"}, - {file = "chiabip158-1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:058d08a1d6055c22af1c0455478e2c069cdc199446d7a8a33952c65d5272247d"}, - {file = "chiabip158-1.2-cp311-cp311-win_amd64.whl", hash = "sha256:ac7fba2340ce56cc11970bdd45c3074ecc1cfd459e44efd23ef21a6582787f60"}, - {file = "chiabip158-1.2-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:e253b238bd3bb6177083951661eb6815a25cb8ddf41aef21f4847876ba725d85"}, - {file = "chiabip158-1.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dd0bc14eb5f303e1942367bf9e8c4451029a92de7f55902a73647899e4bc45cd"}, - {file = "chiabip158-1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a95b2592b1236a5631b965d15e4d5c2439bf7688c98831b7fd91ecef832e19ed"}, - {file = "chiabip158-1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:83854c8425836186400d0a536b7819eba91871e738d89d7e02c5c2d098c9746b"}, - {file = "chiabip158-1.2-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:733e9ceff4c7ce7d315832b04b2379ff09510c890a9557c65621394b62c1af5a"}, - {file = "chiabip158-1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f165a6f380e9a1ea012b7aa88c85e52c4450ad5ccc68f06b2c98b5b3f09ee818"}, - {file = "chiabip158-1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57ed08efe01d47e1d51c3d472f3ad5a45ef3c43409bf31fd89b32348813970c3"}, - {file = "chiabip158-1.2-cp38-cp38-win_amd64.whl", hash = "sha256:fac69f23094f42311b5a96ba287212a799db2efddf0415c5069d50fa12feb020"}, - {file = "chiabip158-1.2-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:f64b89aa64e7255803a192defa430224d220c278cf3bd9ef233b2430736dbd65"}, - {file = "chiabip158-1.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e640b3ec4335d5c048ac6a7430dadc57ae30afc1316f4051c4cda0d1a7e04b92"}, - {file = "chiabip158-1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7cd66c07ce8fcc9cde29b72a6cc08c8af009dfc43c06742acc696aeb0d10126a"}, - {file = "chiabip158-1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82cb3ad2700393760064d5b25ec600d3dfd9b61d393079dc18331b15edd1c5e6"}, - {file = "chiabip158-1.2-cp39-cp39-win_amd64.whl", hash = "sha256:aa101013be2399c995d8c878bd746d6a4a335a29fb7e86f438b1568ec040ca37"}, - {file = "chiabip158-1.2.tar.gz", hash = "sha256:b74167b21f41f372a24f97455557c7b3bb26f47c8d6ccb29ea0a23ddeb28a61f"}, + {file = "chiabip158-1.3-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:094761298b23c34719e69227472b6fd84c0fcd636065e2ceac5da93a77eed95d"}, + {file = "chiabip158-1.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9522217bf49047e480658749c5d114e43df4b1f01bcb614e635be253d4e148e3"}, + {file = "chiabip158-1.3-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e18bf800fd322e7fdb96886d31c5dcb1aa287568f2937ea3e210c6df41d6ee39"}, + {file = "chiabip158-1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a267df7dd204db532d3e25f9252325cf1c2ea33c00f42d5aff06bdf5f711423"}, + {file = "chiabip158-1.3-cp310-cp310-win_amd64.whl", hash = "sha256:a305c1f9a2be03ed97168315e3f940731c671d9ed543564c871be3cca9f17d5e"}, + {file = "chiabip158-1.3-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1309bd03a5a86cf5a40981b76114ce04e58945a2157992a9e7589a0b1b8be473"}, + {file = "chiabip158-1.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:483c57f796f1eb81ec9ed11a4105a5e7129f008807b1a742849b1ec35fa1f78e"}, + {file = "chiabip158-1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca9e54e5ed9c5ef124aacc0d86760213f915e0ecde845a5f1b7612e876997495"}, + {file = "chiabip158-1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06ec1f33158740eac4b689fc5af71c6aeb3e044e3bad2ac9c181c0b7328b5670"}, + {file = "chiabip158-1.3-cp311-cp311-win_amd64.whl", hash = "sha256:58c1b23e88101852c37a069f773ccac0aa0ea0d394f747cacf1b13b82e107b2e"}, + {file = "chiabip158-1.3-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:c0b62be473a34af98dc837a130413ebc4e2842c8010c03a94b280a41aa624952"}, + {file = "chiabip158-1.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:52f922751428f7e9354f3da97e60b0c7f64a3bb4903f22d6cf6c4bacb7a22cf2"}, + {file = "chiabip158-1.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:faae797b87a4262817d5604eefda8924893335f66311a0bf705e9a2f191dcdb5"}, + {file = "chiabip158-1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8aecda8b74d5cf1a45714feac4baa8132f22f5006b613f11418c05415023d72"}, + {file = "chiabip158-1.3-cp38-cp38-win_amd64.whl", hash = "sha256:830717c98a4abdf2a0dff22e76784e206995f59e8f3fba25a01bfc48d84ef83c"}, + {file = "chiabip158-1.3-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:3e379344144bc7c93d8671534439f5a49b40d16872797bec35275fbd78db1a92"}, + {file = "chiabip158-1.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:14cffed0876cb123ed9045ba877cf5e68e2e25d913465aa0f3f84f5b96338148"}, + {file = "chiabip158-1.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b758dd93286f4a312b01fe2b567f21c871055b4ab77bb7a9f5989b6602cef1a1"}, + {file = "chiabip158-1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6a5c50289cf1e152b0ab41b5385ccb522fff7bcf6b69a378a103323bbb0091b"}, + {file = "chiabip158-1.3-cp39-cp39-win_amd64.whl", hash = "sha256:4c0ca115db302b3772d1c052c519b003e19b45c8127e4f2084534bb97dabbefa"}, + {file = "chiabip158-1.3.tar.gz", hash = "sha256:1d481855543bc9cd97ddf7e757b98265ffa81541e5ff6f4c6f89fdd5d449ee07"}, ] [[package]] name = "chiapos" -version = "1.0.11" +version = "2.0.3" description = "Chia proof of space plotting, proving, and verifying (wraps C++)" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "chiapos-1.0.11-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:2dba545292823c1f047e2c22581abe04fbee5b1997e6a46a059f7021f0e93ed7"}, - {file = "chiapos-1.0.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1955ad901157f6bf4742a93749cdc2f7aae7de0c73e92e79c817cb198fb8aee8"}, - {file = "chiapos-1.0.11-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:23345d0e59b54c56e5d0dcb6d739716ed33a5a8331e9546c4d637917992217d8"}, - {file = "chiapos-1.0.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2029a829f3fc346bca3eda0b2cdcd841ad5c8467bbe39b264e4152b4016815f9"}, - {file = "chiapos-1.0.11-cp310-cp310-win_amd64.whl", hash = "sha256:01f8d62ac92238b1c5df552aad45831f75910d0cd8881a4708fa9e43baa214bf"}, - {file = "chiapos-1.0.11-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:dd63b2510e1e0bc089da32bd5133de64044f8392948ac0b0244deea55b8588cd"}, - {file = "chiapos-1.0.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b68d8a69dc518ee8080013cd06491a9b149e7df13a8438a7a95a577121fb2f51"}, - {file = "chiapos-1.0.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7a8bb0565e5f8f3b86dc8ec7b74884d37b0917073958e225814e1aace2111d17"}, - {file = "chiapos-1.0.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:597bdfb1ca2c76ecc7642a9ad6c2eca8b93e09267fa84c735daef33cc75b28dc"}, - {file = "chiapos-1.0.11-cp311-cp311-win_amd64.whl", hash = "sha256:ffdf72ed69d003e6844576d50de3434f257c247c713358a2c239c0b2eb9af9f0"}, - {file = "chiapos-1.0.11-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:c523d5b8668723111b764970bcdc1c113dc5a5f6e46ab9601877477b2265f314"}, - {file = "chiapos-1.0.11-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:50a30d2f20664526a2ff13fd6700f2d34da761c57efbb27afb29aa5b8079f310"}, - {file = "chiapos-1.0.11-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f17a08041c7449741d7381a24d813ab2f58ed8876f0418676b8039c5cbd66fd"}, - {file = "chiapos-1.0.11-cp37-cp37m-win_amd64.whl", hash = "sha256:941ba904390e9d81c7ed9c52b8248596270c88686df63b2a0f78230ac836be15"}, - {file = "chiapos-1.0.11-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:de5e6354a496edce2012cb5dcf4edde9e924bb8311666466a7b174a7eac8c9de"}, - {file = "chiapos-1.0.11-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6c8d8daba1a500d5650b6eff8948bf100ff6c61c3e9daf5579c873ff471dc7bf"}, - {file = "chiapos-1.0.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9954569ed3fc6da6b8ffee43d7bf6e1c3f7a14cc66946b8e33ec9524c9dd95b"}, - {file = "chiapos-1.0.11-cp38-cp38-win_amd64.whl", hash = "sha256:0df3601e2527eea78b2bb39251b57c88d331019c0c5a9ce9be68f86416b72daf"}, - {file = "chiapos-1.0.11-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:1fffb3dc7875df99a6f4846549a848ed45de62ccb473de4405e7bb1655ef51bf"}, - {file = "chiapos-1.0.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:082b3dcd5a1405388ac9552838b4046645fe398750d00fd4e97bbf49bb71b728"}, - {file = "chiapos-1.0.11-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5170339c0cf28ea8f08751f90fa48a5d4974c50eec41566cf0cf39dcf91fe1f1"}, - {file = "chiapos-1.0.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:44eb814b9cf63f33746682ec55d8bc833b6f3abefb68b65c66ccacf4b2a82213"}, - {file = "chiapos-1.0.11-cp39-cp39-win_amd64.whl", hash = "sha256:441b0df1bca53a723f7720490f1c095570e470331d0274741c2429b93ee5de9b"}, - {file = "chiapos-1.0.11.tar.gz", hash = "sha256:4cc45ff79e3dcf7210cc6b79739dd193556aded76ba59dcfa9cf23863e002b3a"}, + {file = "chiapos-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9cf8a8c111ff47b8a2828ab4c0e40353d3eeff4ff420f0ab7f89a3aceb9d2397"}, + {file = "chiapos-2.0.3-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:0c7d9431e6867ab16c156e530068f77a3c9c0ba4d5fe083838bf44c1465b4745"}, + {file = "chiapos-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6461822a68f15cd7ba2dac184bffd1fa4ffe9124f0c3184db305fd1dae017f8e"}, + {file = "chiapos-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3e26b48ec49346bcce0c5c9bcdeed515f5c73b2115e67c835d1c631ba5cde1b"}, + {file = "chiapos-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:77edfc4e84a858b83a39de4323587ecd85a8948981bbe6bf457168a2aff00d6b"}, + {file = "chiapos-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3cd2ae4e5c8080169677667bd5199c67155cb129d5b5395f8d2a71d23e0ab122"}, + {file = "chiapos-2.0.3-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:558df7745d813bf55c6d2212457698fca56943a92579a037b14a44be3cd4083d"}, + {file = "chiapos-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c0f56970e3ad365b69e057c2b688e8fcb57e24d56b5b11dcb9c45d743d05049d"}, + {file = "chiapos-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ac1781040bed59de54e484fac43045f638b8543acb53c6e190dfebf60b11ad8"}, + {file = "chiapos-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:79ac0e6efff4cfcca4789ee16d13fba6ba2359b47bcba18f2513c7086c3c9657"}, + {file = "chiapos-2.0.3-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:8dae92f17dce0da4cc13ac01198c5bb0bab879965b86052a0becd1875a151a9a"}, + {file = "chiapos-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2be2d9c38f02feb6889026c55c490f1ab97911aa609458bf791c7ab153d1f3d2"}, + {file = "chiapos-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:403bdf3eb0f788bb14b14780eb5ae28e733d80d6b6f56911a2d4ccb314c34adc"}, + {file = "chiapos-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:33d9c694484d0d6f006b8089f5ce8e5f280b0427afab1bc823c024e0ee04c323"}, + {file = "chiapos-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:92fd598c92b0313aca37be064ddeac0b100fae97db106d4d9071eebf3c616673"}, + {file = "chiapos-2.0.3-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:6e22c3656f6c251c7f45b39df040f40785f9e5605d6a64fb18eb9630afcb140e"}, + {file = "chiapos-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d4d3be4cb7fdc16c1a54c4be39db19f0ff077e80cd40d94e985dfa70f1a3952"}, + {file = "chiapos-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:935725348494b10b75a8f1e94b2870085599b2ecfda7909eaa9e12cff9d7c985"}, + {file = "chiapos-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c2b2233c98edfa434ce5db55c277a160e75cee526484638c2688a2c2ef924eed"}, + {file = "chiapos-2.0.3.tar.gz", hash = "sha256:d9b3f5c704965ea11500ab34df71a681d76271f6c8c7dc4aeb925fa98db8249e"}, ] [[package]] name = "chiavdf" -version = "1.0.8" +version = "1.0.11" description = "Chia vdf verification (wraps C++)" -category = "main" optional = false -python-versions = ">=3.7" -files = [ - {file = "chiavdf-1.0.8-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:507083d53d1d6e73f1b94c91b45fb78c6556edf86c34d41c436729e47433a440"}, - {file = "chiavdf-1.0.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5aa44e846a5acd7cc1eb37e288a931ccfb6d2ee9a2ef15cac1fe67eed1ad6f7c"}, - {file = "chiavdf-1.0.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a27b9a30575dfc858534258886a2d04241dece991ad0c7a5c8c2cc67046d2843"}, - {file = "chiavdf-1.0.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46990751e7b7033167d8ab7297e72166f4882e7d2a1a2d531e912173b8e4f5c8"}, - {file = "chiavdf-1.0.8-cp310-cp310-win_amd64.whl", hash = "sha256:e77b91e3695d1673455fd5e2d4f904e3d7f8871498c1ee32d6ccf6b40fd95456"}, - {file = "chiavdf-1.0.8-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1e4c6e0f308087c234199c022653021bfd6fd7cc49103cb4e8492f6e8390bec4"}, - {file = "chiavdf-1.0.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3ef39e1c2dab1d1b2a66e4929cd342cb42709ad4c3379b231bb3354e66fe2c3d"}, - {file = "chiavdf-1.0.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f022c8a1d9722b11f77ef1b2ad08ba7bc01f0cc39fe559f186b3b6330587530"}, - {file = "chiavdf-1.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b6d5fc0b4cc1bbfde1eed6bfbae9ca176dc1b708043985701873bac5e25abf6d"}, - {file = "chiavdf-1.0.8-cp311-cp311-win_amd64.whl", hash = "sha256:9f17fa34c78faed3f5f3a0e07eae54bafc3b5e9cff0d4abd0d1991ea47dc54a0"}, - {file = "chiavdf-1.0.8-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:810423f97e3b36556cc02059ace49cab6992c646c2c39a658bb14aac79b14c39"}, - {file = "chiavdf-1.0.8-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0ca9d7b9075133c2dfbcb88e110e99f5d6fceeec38a704e35dfbabeb89fd74d8"}, - {file = "chiavdf-1.0.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbc7b1bcbebe6167c4870e753ee7ae8d5275042b20255e21461133785c4ae8bf"}, - {file = "chiavdf-1.0.8-cp37-cp37m-win_amd64.whl", hash = "sha256:f63e752087072b28fa48b02af1dc70042a9a304f00a39b4d325ef8d43404e73b"}, - {file = "chiavdf-1.0.8-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:d2456894428b1cab239fe28e8d81ce581e62f56cb62dba39189887cf94b954ed"}, - {file = "chiavdf-1.0.8-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b818b0fb505c042f52cdf237c01d849dd8abfbfa00b849efe5dd10981d8b6948"}, - {file = "chiavdf-1.0.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e1423b8216f90638f08dc0be1f3f1b112e707d032d7c1b593c54103900c10859"}, - {file = "chiavdf-1.0.8-cp38-cp38-win_amd64.whl", hash = "sha256:aff86bdc9c9d22fc0cd2ff0f425936fe7d044e8cd69bd85dbf2d005de2de69b3"}, - {file = "chiavdf-1.0.8-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:1d93296f18d4e81e798c9636ae7feeca2da2f3b2e3b4eb7414073496ac8789a7"}, - {file = "chiavdf-1.0.8-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b90d55707b2020266a18e72db7b357dcb4cc75e5d0da1b29918a78fa72594e7e"}, - {file = "chiavdf-1.0.8-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ab797c580a9921aaedcd880fd18d67fc33180b23c41d9de4eb2e0834a5d9686b"}, - {file = "chiavdf-1.0.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e75e439ab8b157a0ad4166c3cfd245276a9cabfbbb54a31666b9281ab4075309"}, - {file = "chiavdf-1.0.8-cp39-cp39-win_amd64.whl", hash = "sha256:00b6343716fb44e1b803908c7484195e9f68bc4ac56b22b841c99e99deb4c82a"}, - {file = "chiavdf-1.0.8.tar.gz", hash = "sha256:8a54fbb42757f1a937aa6a572742c84dfd1918074548de2d9ba18ac34e80fe6f"}, +python-versions = ">=3.8" +files = [ + {file = "chiavdf-1.0.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6748b17a1679f385bf8637b4555cd10fd96d5f3645762da0cd15eb32ef9e110f"}, + {file = "chiavdf-1.0.11-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:22faa318e02600bbf069e6fd03e8e73ead757cf438c2573d03b0f46698b2391f"}, + {file = "chiavdf-1.0.11-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2578d3c1e53b00bcd0f89d38d6a7d373126cdee75968ae33d21f2a9930cf76ab"}, + {file = "chiavdf-1.0.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14889ac8c05f5534bb195a9b8f3061bf6e79f9ed0cec9ab93f184411d4df251d"}, + {file = "chiavdf-1.0.11-cp310-cp310-win_amd64.whl", hash = "sha256:b47d4e8734b76e513f9b961b206f257d8dcb4cedb456d98e7f927ef925834e72"}, + {file = "chiavdf-1.0.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:16fbb38c69a2cc26f4419d69bbb878196954435b7e5ae1fba9f0439367fe494f"}, + {file = "chiavdf-1.0.11-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:80f514764d5191eb8f916095e9d73d66aceb9ad757331f8fab9619732f933bab"}, + {file = "chiavdf-1.0.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8e04d01939be2bd7c27d0e6710f43d652c8b1151317c7ad17d40480c0f68708"}, + {file = "chiavdf-1.0.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f01e3806378620e3453d4296836f13d7923843c226fdd13a1ebd8a05f2ac9ab3"}, + {file = "chiavdf-1.0.11-cp311-cp311-win_amd64.whl", hash = "sha256:74e05c99f4552215139bcfc3f90d20457514f9dfcb01e47100dbd33f8391aa3b"}, + {file = "chiavdf-1.0.11-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:751834c5ba9c1af987a94de9ed1bda96ac39be8f080c09b061063f54dccebb4d"}, + {file = "chiavdf-1.0.11-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:be8ac3891dd21ec55d4949c3c0987029753693111bf05d5903e0244be0b60519"}, + {file = "chiavdf-1.0.11-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:38ab4ea453535795d01aa7c3f3fc193ff39a749f867b139582ca02f903f87b25"}, + {file = "chiavdf-1.0.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d781f7e82d2914d64967bc40d42f4efc2ddec763c6841627403ce8bb04e29b5e"}, + {file = "chiavdf-1.0.11-cp38-cp38-win_amd64.whl", hash = "sha256:47726f2d0ec995b65e3acaa7bb872893a847949590ddd6b8560b9ff7ac3ae73c"}, + {file = "chiavdf-1.0.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:044afbd571272545a5a6462d3ff0cb78dc6cb96315496fbf80d98071897db35d"}, + {file = "chiavdf-1.0.11-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:bad47067848e1f7cde974bb907e8964a3aa22df652ed9fcc5d3690fbb9ce3ea1"}, + {file = "chiavdf-1.0.11-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8d63270aae149d4380f8fb3cbd6537631f4838c6a3fb3cc50432bb934947d6f2"}, + {file = "chiavdf-1.0.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22f1d17e795a38c2b589b3930c2790694c2babac81f2eedcf6f6332c2d4e7213"}, + {file = "chiavdf-1.0.11-cp39-cp39-win_amd64.whl", hash = "sha256:4d37955faad0479732ccdcb3dc0043cfb32892b3a6e0a60811dd799d5354fa30"}, + {file = "chiavdf-1.0.11.tar.gz", hash = "sha256:3e3520a4c4dd58b30541d9eba5e5a69fcbc0f1294e4639aee7638373fda18af1"}, ] [[package]] name = "click" version = "8.1.3" description = "Composable command line interface toolkit" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -574,7 +580,6 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "clvm" version = "0.9.7" description = "[Contract Language | Chialisp] Virtual Machine" -category = "main" optional = false python-versions = "*" files = [ @@ -591,7 +596,6 @@ dev = ["clvm-tools (>=0.4.2)", "pytest"] name = "clvm-tools" version = "0.4.6" description = "CLVM compiler." -category = "main" optional = false python-versions = "*" files = [ @@ -607,26 +611,24 @@ dev = ["pytest"] [[package]] name = "clvm-tools-rs" -version = "0.1.30" +version = "0.1.34" description = "tools for working with chialisp language; compiler, repl, python and wasm bindings" -category = "main" optional = false python-versions = "*" files = [ - {file = "clvm_tools_rs-0.1.30-cp37-abi3-macosx_10_7_x86_64.whl", hash = "sha256:20ac70f3ac17722e566c88e5c1f6cd9e98b6677a46721bba4dc2521e00a23286"}, - {file = "clvm_tools_rs-0.1.30-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:8e01b29e0736f1b354e6a8870ff8bce2c4ec3d990f254d5c72ff65dce1989f5e"}, - {file = "clvm_tools_rs-0.1.30-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f5f6d259d177f911cbf44268286b8238051c08f0b108da44c749c56f76dceb48"}, - {file = "clvm_tools_rs-0.1.30-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07319ca80ef139267bd97f68bb4e4a07a995139e5568a89696f28152db4e97e9"}, - {file = "clvm_tools_rs-0.1.30-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:485ed10039add36977dcfbd23c2b685427d88cb1fe43114ff9d571db6bcf7a46"}, - {file = "clvm_tools_rs-0.1.30-cp37-abi3-win_amd64.whl", hash = "sha256:1453e1223a1ba312229232619eaf9f79380c18f3b3f8d364d4e11fd4eb1a76b5"}, - {file = "clvm_tools_rs-0.1.30.tar.gz", hash = "sha256:dda1e4a685b8db94a0dbe1bb99b0a9bc3fd85d52a08657dba8c7579feaf84d92"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-macosx_10_14_x86_64.whl", hash = "sha256:4e672c994cca2717bc9cfde9eb7024e16b6ee8ee9ea2c401928883dbb95b9b30"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:a401b4bab30976a06a9a97906f501e4905719e0e23e61629491b3e04ccf609a9"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:867e4fac9c812f9d7454b1179e12205aaeedcd6613da6659eee40fe35cfb4da8"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d90ca1b53c477e31598beae00911ff090df1f6931f3c4498b30a62816dee295a"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:3eef267f7798ed2c785fc9602aac161d95a3fe47e042858db0369ed11913ff9f"}, + {file = "clvm_tools_rs-0.1.34-cp37-abi3-win_amd64.whl", hash = "sha256:ce318d04a6e5981f707840159fee1b702b71a49a74ea7ccffb89d06de16f19d7"}, + {file = "clvm_tools_rs-0.1.34.tar.gz", hash = "sha256:395949b40d5178275fdafa799fb807786ef9f89dab2d6bacec74fdf7c654b57a"}, ] [[package]] name = "colorama" version = "0.4.6" description = "Cross-platform colored terminal text." -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ @@ -638,7 +640,6 @@ files = [ name = "colorlog" version = "6.7.0" description = "Add colours to the output of Python's logging module." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -656,7 +657,6 @@ development = ["black", "flake8", "mypy", "pytest", "types-colorama"] name = "commitizen" version = "2.42.1" description = "Python commitizen client tool" -category = "dev" optional = false python-versions = ">=3.6.2,<4.0.0" files = [ @@ -679,50 +679,51 @@ typing-extensions = ">=4.0.1,<5.0.0" [[package]] name = "concurrent-log-handler" -version = "0.9.20" +version = "0.9.24" description = "RotatingFileHandler replacement with concurrency, gzip and Windows support" -category = "main" optional = false -python-versions = "*" +python-versions = ">=3.6" files = [ - {file = "concurrent-log-handler-0.9.20.tar.gz", hash = "sha256:9fa2ad61474a137b5642702bd33f21815598aacba1e75139b37ceb2cedda8f9f"}, - {file = "concurrent_log_handler-0.9.20-py2.py3-none-any.whl", hash = "sha256:f79c0774d1ad806e326d348ab209ee9cb9c1d0019224372419963ee990e63de1"}, + {file = "concurrent-log-handler-0.9.24.tar.gz", hash = "sha256:00f5646c6e5f6fc63654536f3b44aaa2b9b74b23245e14f5258ed91ce39d12e2"}, + {file = "concurrent_log_handler-0.9.24-py3-none-any.whl", hash = "sha256:25c88399b23c1ed52549a836ca9666cfd61f2a6aae8bfc2a1a6427f989401d65"}, ] [package.dependencies] -portalocker = {version = ">=1.4.0", markers = "python_version >= \"3\""} +portalocker = ">=1.6.0" + +[package.extras] +dev = ["black", "pytest", "ruff", "tox"] [[package]] name = "cryptography" -version = "39.0.1" +version = "41.0.3" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "cryptography-39.0.1-cp36-abi3-macosx_10_12_universal2.whl", hash = "sha256:6687ef6d0a6497e2b58e7c5b852b53f62142cfa7cd1555795758934da363a965"}, - {file = "cryptography-39.0.1-cp36-abi3-macosx_10_12_x86_64.whl", hash = "sha256:706843b48f9a3f9b9911979761c91541e3d90db1ca905fd63fee540a217698bc"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:5d2d8b87a490bfcd407ed9d49093793d0f75198a35e6eb1a923ce1ee86c62b41"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83e17b26de248c33f3acffb922748151d71827d6021d98c70e6c1a25ddd78505"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e124352fd3db36a9d4a21c1aa27fd5d051e621845cb87fb851c08f4f75ce8be6"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:5aa67414fcdfa22cf052e640cb5ddc461924a045cacf325cd164e65312d99502"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:35f7c7d015d474f4011e859e93e789c87d21f6f4880ebdc29896a60403328f1f"}, - {file = "cryptography-39.0.1-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f24077a3b5298a5a06a8e0536e3ea9ec60e4c7ac486755e5fb6e6ea9b3500106"}, - {file = "cryptography-39.0.1-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:f0c64d1bd842ca2633e74a1a28033d139368ad959872533b1bab8c80e8240a0c"}, - {file = "cryptography-39.0.1-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:0f8da300b5c8af9f98111ffd512910bc792b4c77392a9523624680f7956a99d4"}, - {file = "cryptography-39.0.1-cp36-abi3-win32.whl", hash = "sha256:fe913f20024eb2cb2f323e42a64bdf2911bb9738a15dba7d3cce48151034e3a8"}, - {file = "cryptography-39.0.1-cp36-abi3-win_amd64.whl", hash = "sha256:ced4e447ae29ca194449a3f1ce132ded8fcab06971ef5f618605aacaa612beac"}, - {file = "cryptography-39.0.1-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:807ce09d4434881ca3a7594733669bd834f5b2c6d5c7e36f8c00f691887042ad"}, - {file = "cryptography-39.0.1-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c5caeb8188c24888c90b5108a441c106f7faa4c4c075a2bcae438c6e8ca73cef"}, - {file = "cryptography-39.0.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4789d1e3e257965e960232345002262ede4d094d1a19f4d3b52e48d4d8f3b885"}, - {file = "cryptography-39.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:96f1157a7c08b5b189b16b47bc9db2332269d6680a196341bf30046330d15388"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e422abdec8b5fa8462aa016786680720d78bdce7a30c652b7fadf83a4ba35336"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:b0afd054cd42f3d213bf82c629efb1ee5f22eba35bf0eec88ea9ea7304f511a2"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:6f8ba7f0328b79f08bdacc3e4e66fb4d7aab0c3584e0bd41328dce5262e26b2e"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ef8b72fa70b348724ff1218267e7f7375b8de4e8194d1636ee60510aae104cd0"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:aec5a6c9864be7df2240c382740fcf3b96928c46604eaa7f3091f58b878c0bb6"}, - {file = "cryptography-39.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fdd188c8a6ef8769f148f88f859884507b954cc64db6b52f66ef199bb9ad660a"}, - {file = "cryptography-39.0.1.tar.gz", hash = "sha256:d1f6198ee6d9148405e49887803907fe8962a23e6c6f83ea7d98f1c0de375695"}, + {file = "cryptography-41.0.3-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:652627a055cb52a84f8c448185922241dd5217443ca194d5739b44612c5e6507"}, + {file = "cryptography-41.0.3-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:8f09daa483aedea50d249ef98ed500569841d6498aa9c9f4b0531b9964658922"}, + {file = "cryptography-41.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4fd871184321100fb400d759ad0cddddf284c4b696568204d281c902fc7b0d81"}, + {file = "cryptography-41.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:84537453d57f55a50a5b6835622ee405816999a7113267739a1b4581f83535bd"}, + {file = "cryptography-41.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:3fb248989b6363906827284cd20cca63bb1a757e0a2864d4c1682a985e3dca47"}, + {file = "cryptography-41.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:42cb413e01a5d36da9929baa9d70ca90d90b969269e5a12d39c1e0d475010116"}, + {file = "cryptography-41.0.3-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:aeb57c421b34af8f9fe830e1955bf493a86a7996cc1338fe41b30047d16e962c"}, + {file = "cryptography-41.0.3-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:6af1c6387c531cd364b72c28daa29232162010d952ceb7e5ca8e2827526aceae"}, + {file = "cryptography-41.0.3-cp37-abi3-win32.whl", hash = "sha256:0d09fb5356f975974dbcb595ad2d178305e5050656affb7890a1583f5e02a306"}, + {file = "cryptography-41.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:a983e441a00a9d57a4d7c91b3116a37ae602907a7618b882c8013b5762e80574"}, + {file = "cryptography-41.0.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5259cb659aa43005eb55a0e4ff2c825ca111a0da1814202c64d28a985d33b087"}, + {file = "cryptography-41.0.3-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:67e120e9a577c64fe1f611e53b30b3e69744e5910ff3b6e97e935aeb96005858"}, + {file = "cryptography-41.0.3-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:7efe8041897fe7a50863e51b77789b657a133c75c3b094e51b5e4b5cec7bf906"}, + {file = "cryptography-41.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ce785cf81a7bdade534297ef9e490ddff800d956625020ab2ec2780a556c313e"}, + {file = "cryptography-41.0.3-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:57a51b89f954f216a81c9d057bf1a24e2f36e764a1ca9a501a6964eb4a6800dd"}, + {file = "cryptography-41.0.3-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:4c2f0d35703d61002a2bbdcf15548ebb701cfdd83cdc12471d2bae80878a4207"}, + {file = "cryptography-41.0.3-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:23c2d778cf829f7d0ae180600b17e9fceea3c2ef8b31a99e3c694cbbf3a24b84"}, + {file = "cryptography-41.0.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:95dd7f261bb76948b52a5330ba5202b91a26fbac13ad0e9fc8a3ac04752058c7"}, + {file = "cryptography-41.0.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:41d7aa7cdfded09b3d73a47f429c298e80796c8e825ddfadc84c8a7f12df212d"}, + {file = "cryptography-41.0.3-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:d0d651aa754ef58d75cec6edfbd21259d93810b73f6ec246436a21b7841908de"}, + {file = "cryptography-41.0.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ab8de0d091acbf778f74286f4989cf3d1528336af1b59f3e5d2ebca8b5fe49e1"}, + {file = "cryptography-41.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a74fbcdb2a0d46fe00504f571a2a540532f4c188e6ccf26f1f178480117b33c4"}, + {file = "cryptography-41.0.3.tar.gz", hash = "sha256:6d192741113ef5e30d89dcb5b956ef4e1578f304708701b8b73d38e3e1461f34"}, ] [package.dependencies] @@ -731,18 +732,17 @@ cffi = ">=1.12" [package.extras] docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] docstest = ["pyenchant (>=1.6.11)", "sphinxcontrib-spelling (>=4.0.1)", "twine (>=1.12.0)"] -pep8test = ["black", "check-manifest", "mypy", "ruff", "types-pytz", "types-requests"] -sdist = ["setuptools-rust (>=0.11.4)"] +nox = ["nox"] +pep8test = ["black", "check-sdist", "mypy", "ruff"] +sdist = ["build"] ssh = ["bcrypt (>=3.1.5)"] -test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-shard (>=0.1.2)", "pytest-subtests", "pytest-xdist", "pytz"] +test = ["pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] test-randomorder = ["pytest-randomly"] -tox = ["tox"] [[package]] name = "decli" version = "0.5.2" description = "Minimal, easy-to-use, declarative cli tool" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -754,7 +754,6 @@ files = [ name = "dnslib" version = "0.9.23" description = "Simple library to encode/decode DNS wire-format packets" -category = "main" optional = false python-versions = "*" files = [ @@ -765,20 +764,18 @@ files = [ [[package]] name = "dnspython" -version = "2.3.0" +version = "2.4.1" description = "DNS toolkit" -category = "main" optional = false -python-versions = ">=3.7,<4.0" +python-versions = ">=3.8,<4.0" files = [ - {file = "dnspython-2.3.0-py3-none-any.whl", hash = "sha256:89141536394f909066cabd112e3e1a37e4e654db00a25308b0f130bc3152eb46"}, - {file = "dnspython-2.3.0.tar.gz", hash = "sha256:224e32b03eb46be70e12ef6d64e0be123a64e621ab4c0822ff6d450d52a540b9"}, + {file = "dnspython-2.4.1-py3-none-any.whl", hash = "sha256:5b7488477388b8c0b70a8ce93b227c5603bc7b77f1565afe8e729c36c51447d7"}, + {file = "dnspython-2.4.1.tar.gz", hash = "sha256:c33971c79af5be968bb897e95c2448e11a645ee84d93b265ce0b7aabe5dfdca8"}, ] [package.extras] -curio = ["curio (>=1.2,<2.0)", "sniffio (>=1.1,<2.0)"] -dnssec = ["cryptography (>=2.6,<40.0)"] -doh = ["h2 (>=4.1.0)", "httpx (>=0.21.1)", "requests (>=2.23.0,<3.0.0)", "requests-toolbelt (>=0.9.1,<0.11.0)"] +dnssec = ["cryptography (>=2.6,<42.0)"] +doh = ["h2 (>=4.1.0)", "httpcore (>=0.17.3)", "httpx (>=0.24.1)"] doq = ["aioquic (>=0.9.20)"] idna = ["idna (>=2.1,<4.0)"] trio = ["trio (>=0.14,<0.23)"] @@ -786,24 +783,36 @@ wmi = ["wmi (>=1.5.1,<2.0.0)"] [[package]] name = "exceptiongroup" -version = "1.0.2" +version = "1.1.3" description = "Backport of PEP 654 (exception groups)" -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "exceptiongroup-1.0.2-py3-none-any.whl", hash = "sha256:c22f11ec6a10d2b453871c5c5fe887436c4d1961324ce9090f2ca6ddc4180c27"}, - {file = "exceptiongroup-1.0.2.tar.gz", hash = "sha256:a31cd183c3dea02e617aab5153588d5f7258a77b51f0ef41b3815ae8a0d0f695"}, + {file = "exceptiongroup-1.1.3-py3-none-any.whl", hash = "sha256:343280667a4585d195ca1cf9cef84a4e178c4b6cf2274caef9859782b567d5e3"}, + {file = "exceptiongroup-1.1.3.tar.gz", hash = "sha256:097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9"}, ] [package.extras] test = ["pytest (>=6)"] +[[package]] +name = "execnet" +version = "2.0.2" +description = "execnet: rapid multi-Python deployment" +optional = false +python-versions = ">=3.7" +files = [ + {file = "execnet-2.0.2-py3-none-any.whl", hash = "sha256:88256416ae766bc9e8895c76a87928c0012183da3cc4fc18016e6f050e025f41"}, + {file = "execnet-2.0.2.tar.gz", hash = "sha256:cc59bc4423742fd71ad227122eb0dd44db51efb3dc4095b45ac9a08c770096af"}, +] + +[package.extras] +testing = ["hatch", "pre-commit", "pytest", "tox"] + [[package]] name = "fastapi" version = "0.83.0" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" -category = "main" optional = false python-versions = ">=3.6.1" files = [ @@ -825,7 +834,6 @@ test = ["anyio[trio] (>=3.2.1,<4.0.0)", "black (==22.3.0)", "databases[sqlite] ( name = "fastapi-utils" version = "0.2.1" description = "Reusable utilities for FastAPI" -category = "main" optional = false python-versions = ">=3.6,<4.0" files = [ @@ -840,183 +848,171 @@ sqlalchemy = ">=1.3.12,<2.0.0" [[package]] name = "filelock" -version = "3.9.0" +version = "3.12.3" description = "A platform independent file lock." -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "filelock-3.9.0-py3-none-any.whl", hash = "sha256:f58d535af89bb9ad5cd4df046f741f8553a418c01a7856bf0d173bbc9f6bd16d"}, - {file = "filelock-3.9.0.tar.gz", hash = "sha256:7b319f24340b51f55a2bf7a12ac0755a9b03e718311dac567a0f4f7fabd2f5de"}, + {file = "filelock-3.12.3-py3-none-any.whl", hash = "sha256:f067e40ccc40f2b48395a80fcbd4728262fab54e232e090a4063ab804179efeb"}, + {file = "filelock-3.12.3.tar.gz", hash = "sha256:0ecc1dd2ec4672a10c8550a8182f1bd0c0a5088470ecd5a125e45f49472fac3d"}, ] +[package.dependencies] +typing-extensions = {version = ">=4.7.1", markers = "python_version < \"3.11\""} + [package.extras] -docs = ["furo (>=2022.12.7)", "sphinx (>=5.3)", "sphinx-autodoc-typehints (>=1.19.5)"] -testing = ["covdefaults (>=2.2.2)", "coverage (>=7.0.1)", "pytest (>=7.2)", "pytest-cov (>=4)", "pytest-timeout (>=2.1)"] +docs = ["furo (>=2023.7.26)", "sphinx (>=7.1.2)", "sphinx-autodoc-typehints (>=1.24)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.3)", "diff-cover (>=7.7)", "pytest (>=7.4)", "pytest-cov (>=4.1)", "pytest-mock (>=3.11.1)", "pytest-timeout (>=2.1)"] [[package]] name = "frozenlist" -version = "1.3.3" +version = "1.4.0" description = "A list-like structure which implements collections.abc.MutableSequence" -category = "main" optional = false -python-versions = ">=3.7" -files = [ - {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff8bf625fe85e119553b5383ba0fb6aa3d0ec2ae980295aaefa552374926b3f4"}, - {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dfbac4c2dfcc082fcf8d942d1e49b6aa0766c19d3358bd86e2000bf0fa4a9cf0"}, - {file = "frozenlist-1.3.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b1c63e8d377d039ac769cd0926558bb7068a1f7abb0f003e3717ee003ad85530"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7fdfc24dcfce5b48109867c13b4cb15e4660e7bd7661741a391f821f23dfdca7"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c926450857408e42f0bbc295e84395722ce74bae69a3b2aa2a65fe22cb14b99"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1841e200fdafc3d51f974d9d377c079a0694a8f06de2e67b48150328d66d5483"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f470c92737afa7d4c3aacc001e335062d582053d4dbe73cda126f2d7031068dd"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:783263a4eaad7c49983fe4b2e7b53fa9770c136c270d2d4bbb6d2192bf4d9caf"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:924620eef691990dfb56dc4709f280f40baee568c794b5c1885800c3ecc69816"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ae4dc05c465a08a866b7a1baf360747078b362e6a6dbeb0c57f234db0ef88ae0"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:bed331fe18f58d844d39ceb398b77d6ac0b010d571cba8267c2e7165806b00ce"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:02c9ac843e3390826a265e331105efeab489ffaf4dd86384595ee8ce6d35ae7f"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9545a33965d0d377b0bc823dcabf26980e77f1b6a7caa368a365a9497fb09420"}, - {file = "frozenlist-1.3.3-cp310-cp310-win32.whl", hash = "sha256:d5cd3ab21acbdb414bb6c31958d7b06b85eeb40f66463c264a9b343a4e238642"}, - {file = "frozenlist-1.3.3-cp310-cp310-win_amd64.whl", hash = "sha256:b756072364347cb6aa5b60f9bc18e94b2f79632de3b0190253ad770c5df17db1"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:b4395e2f8d83fbe0c627b2b696acce67868793d7d9750e90e39592b3626691b7"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:14143ae966a6229350021384870458e4777d1eae4c28d1a7aa47f24d030e6678"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5d8860749e813a6f65bad8285a0520607c9500caa23fea6ee407e63debcdbef6"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23d16d9f477bb55b6154654e0e74557040575d9d19fe78a161bd33d7d76808e8"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb82dbba47a8318e75f679690190c10a5e1f447fbf9df41cbc4c3afd726d88cb"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9309869032abb23d196cb4e4db574232abe8b8be1339026f489eeb34a4acfd91"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a97b4fe50b5890d36300820abd305694cb865ddb7885049587a5678215782a6b"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c188512b43542b1e91cadc3c6c915a82a5eb95929134faf7fd109f14f9892ce4"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:303e04d422e9b911a09ad499b0368dc551e8c3cd15293c99160c7f1f07b59a48"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:0771aed7f596c7d73444c847a1c16288937ef988dc04fb9f7be4b2aa91db609d"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:66080ec69883597e4d026f2f71a231a1ee9887835902dbe6b6467d5a89216cf6"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:41fe21dc74ad3a779c3d73a2786bdf622ea81234bdd4faf90b8b03cad0c2c0b4"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f20380df709d91525e4bee04746ba612a4df0972c1b8f8e1e8af997e678c7b81"}, - {file = "frozenlist-1.3.3-cp311-cp311-win32.whl", hash = "sha256:f30f1928162e189091cf4d9da2eac617bfe78ef907a761614ff577ef4edfb3c8"}, - {file = "frozenlist-1.3.3-cp311-cp311-win_amd64.whl", hash = "sha256:a6394d7dadd3cfe3f4b3b186e54d5d8504d44f2d58dcc89d693698e8b7132b32"}, - {file = "frozenlist-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8df3de3a9ab8325f94f646609a66cbeeede263910c5c0de0101079ad541af332"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0693c609e9742c66ba4870bcee1ad5ff35462d5ffec18710b4ac89337ff16e27"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd4210baef299717db0a600d7a3cac81d46ef0e007f88c9335db79f8979c0d3d"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:394c9c242113bfb4b9aa36e2b80a05ffa163a30691c7b5a29eba82e937895d5e"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6327eb8e419f7d9c38f333cde41b9ae348bec26d840927332f17e887a8dcb70d"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e24900aa13212e75e5b366cb9065e78bbf3893d4baab6052d1aca10d46d944c"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3843f84a6c465a36559161e6c59dce2f2ac10943040c2fd021cfb70d58c4ad56"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:84610c1502b2461255b4c9b7d5e9c48052601a8957cd0aea6ec7a7a1e1fb9420"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:c21b9aa40e08e4f63a2f92ff3748e6b6c84d717d033c7b3438dd3123ee18f70e"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:efce6ae830831ab6a22b9b4091d411698145cb9b8fc869e1397ccf4b4b6455cb"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:40de71985e9042ca00b7953c4f41eabc3dc514a2d1ff534027f091bc74416401"}, - {file = "frozenlist-1.3.3-cp37-cp37m-win32.whl", hash = "sha256:180c00c66bde6146a860cbb81b54ee0df350d2daf13ca85b275123bbf85de18a"}, - {file = "frozenlist-1.3.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9bbbcedd75acdfecf2159663b87f1bb5cfc80e7cd99f7ddd9d66eb98b14a8411"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:034a5c08d36649591be1cbb10e09da9f531034acfe29275fc5454a3b101ce41a"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ba64dc2b3b7b158c6660d49cdb1d872d1d0bf4e42043ad8d5006099479a194e5"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:47df36a9fe24054b950bbc2db630d508cca3aa27ed0566c0baf661225e52c18e"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:008a054b75d77c995ea26629ab3a0c0d7281341f2fa7e1e85fa6153ae29ae99c"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:841ea19b43d438a80b4de62ac6ab21cfe6827bb8a9dc62b896acc88eaf9cecba"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e235688f42b36be2b6b06fc37ac2126a73b75fb8d6bc66dd632aa35286238703"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca713d4af15bae6e5d79b15c10c8522859a9a89d3b361a50b817c98c2fb402a2"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ac5995f2b408017b0be26d4a1d7c61bce106ff3d9e3324374d66b5964325448"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4ae8135b11652b08a8baf07631d3ebfe65a4c87909dbef5fa0cdde440444ee4"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4ea42116ceb6bb16dbb7d526e242cb6747b08b7710d9782aa3d6732bd8d27649"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:810860bb4bdce7557bc0febb84bbd88198b9dbc2022d8eebe5b3590b2ad6c842"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:ee78feb9d293c323b59a6f2dd441b63339a30edf35abcb51187d2fc26e696d13"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0af2e7c87d35b38732e810befb9d797a99279cbb85374d42ea61c1e9d23094b3"}, - {file = "frozenlist-1.3.3-cp38-cp38-win32.whl", hash = "sha256:899c5e1928eec13fd6f6d8dc51be23f0d09c5281e40d9cf4273d188d9feeaf9b"}, - {file = "frozenlist-1.3.3-cp38-cp38-win_amd64.whl", hash = "sha256:7f44e24fa70f6fbc74aeec3e971f60a14dde85da364aa87f15d1be94ae75aeef"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2b07ae0c1edaa0a36339ec6cce700f51b14a3fc6545fdd32930d2c83917332cf"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ebb86518203e12e96af765ee89034a1dbb0c3c65052d1b0c19bbbd6af8a145e1"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5cf820485f1b4c91e0417ea0afd41ce5cf5965011b3c22c400f6d144296ccbc0"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c11e43016b9024240212d2a65043b70ed8dfd3b52678a1271972702d990ac6d"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8fa3c6e3305aa1146b59a09b32b2e04074945ffcfb2f0931836d103a2c38f936"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:352bd4c8c72d508778cf05ab491f6ef36149f4d0cb3c56b1b4302852255d05d5"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:65a5e4d3aa679610ac6e3569e865425b23b372277f89b5ef06cf2cdaf1ebf22b"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e2c1185858d7e10ff045c496bbf90ae752c28b365fef2c09cf0fa309291669"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f163d2fd041c630fed01bc48d28c3ed4a3b003c00acd396900e11ee5316b56bb"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:05cdb16d09a0832eedf770cb7bd1fe57d8cf4eaf5aced29c4e41e3f20b30a784"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:8bae29d60768bfa8fb92244b74502b18fae55a80eac13c88eb0b496d4268fd2d"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:eedab4c310c0299961ac285591acd53dc6723a1ebd90a57207c71f6e0c2153ab"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3bbdf44855ed8f0fbcd102ef05ec3012d6a4fd7c7562403f76ce6a52aeffb2b1"}, - {file = "frozenlist-1.3.3-cp39-cp39-win32.whl", hash = "sha256:efa568b885bca461f7c7b9e032655c0c143d305bf01c30caf6db2854a4532b38"}, - {file = "frozenlist-1.3.3-cp39-cp39-win_amd64.whl", hash = "sha256:cfe33efc9cb900a4c46f91a5ceba26d6df370ffddd9ca386eb1d4f0ad97b9ea9"}, - {file = "frozenlist-1.3.3.tar.gz", hash = "sha256:58bcc55721e8a90b88332d6cd441261ebb22342e238296bb330968952fbb3a6a"}, +python-versions = ">=3.8" +files = [ + {file = "frozenlist-1.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:764226ceef3125e53ea2cb275000e309c0aa5464d43bd72abd661e27fffc26ab"}, + {file = "frozenlist-1.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d6484756b12f40003c6128bfcc3fa9f0d49a687e171186c2d85ec82e3758c559"}, + {file = "frozenlist-1.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9ac08e601308e41eb533f232dbf6b7e4cea762f9f84f6357136eed926c15d12c"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d081f13b095d74b67d550de04df1c756831f3b83dc9881c38985834387487f1b"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:71932b597f9895f011f47f17d6428252fc728ba2ae6024e13c3398a087c2cdea"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:981b9ab5a0a3178ff413bca62526bb784249421c24ad7381e39d67981be2c326"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e41f3de4df3e80de75845d3e743b3f1c4c8613c3997a912dbf0229fc61a8b963"}, + {file = "frozenlist-1.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6918d49b1f90821e93069682c06ffde41829c346c66b721e65a5c62b4bab0300"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0e5c8764c7829343d919cc2dfc587a8db01c4f70a4ebbc49abde5d4b158b007b"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8d0edd6b1c7fb94922bf569c9b092ee187a83f03fb1a63076e7774b60f9481a8"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:e29cda763f752553fa14c68fb2195150bfab22b352572cb36c43c47bedba70eb"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:0c7c1b47859ee2cac3846fde1c1dc0f15da6cec5a0e5c72d101e0f83dcb67ff9"}, + {file = "frozenlist-1.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:901289d524fdd571be1c7be054f48b1f88ce8dddcbdf1ec698b27d4b8b9e5d62"}, + {file = "frozenlist-1.4.0-cp310-cp310-win32.whl", hash = "sha256:1a0848b52815006ea6596c395f87449f693dc419061cc21e970f139d466dc0a0"}, + {file = "frozenlist-1.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:b206646d176a007466358aa21d85cd8600a415c67c9bd15403336c331a10d956"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:de343e75f40e972bae1ef6090267f8260c1446a1695e77096db6cfa25e759a95"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad2a9eb6d9839ae241701d0918f54c51365a51407fd80f6b8289e2dfca977cc3"}, + {file = "frozenlist-1.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bd7bd3b3830247580de99c99ea2a01416dfc3c34471ca1298bccabf86d0ff4dc"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bdf1847068c362f16b353163391210269e4f0569a3c166bc6a9f74ccbfc7e839"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38461d02d66de17455072c9ba981d35f1d2a73024bee7790ac2f9e361ef1cd0c"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5a32087d720c608f42caed0ef36d2b3ea61a9d09ee59a5142d6070da9041b8f"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dd65632acaf0d47608190a71bfe46b209719bf2beb59507db08ccdbe712f969b"}, + {file = "frozenlist-1.4.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:261b9f5d17cac914531331ff1b1d452125bf5daa05faf73b71d935485b0c510b"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b89ac9768b82205936771f8d2eb3ce88503b1556324c9f903e7156669f521472"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:008eb8b31b3ea6896da16c38c1b136cb9fec9e249e77f6211d479db79a4eaf01"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:e74b0506fa5aa5598ac6a975a12aa8928cbb58e1f5ac8360792ef15de1aa848f"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:490132667476f6781b4c9458298b0c1cddf237488abd228b0b3650e5ecba7467"}, + {file = "frozenlist-1.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:76d4711f6f6d08551a7e9ef28c722f4a50dd0fc204c56b4bcd95c6cc05ce6fbb"}, + {file = "frozenlist-1.4.0-cp311-cp311-win32.whl", hash = "sha256:a02eb8ab2b8f200179b5f62b59757685ae9987996ae549ccf30f983f40602431"}, + {file = "frozenlist-1.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:515e1abc578dd3b275d6a5114030b1330ba044ffba03f94091842852f806f1c1"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f0ed05f5079c708fe74bf9027e95125334b6978bf07fd5ab923e9e55e5fbb9d3"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ca265542ca427bf97aed183c1676e2a9c66942e822b14dc6e5f42e038f92a503"}, + {file = "frozenlist-1.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:491e014f5c43656da08958808588cc6c016847b4360e327a62cb308c791bd2d9"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:17ae5cd0f333f94f2e03aaf140bb762c64783935cc764ff9c82dff626089bebf"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e78fb68cf9c1a6aa4a9a12e960a5c9dfbdb89b3695197aa7064705662515de2"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5655a942f5f5d2c9ed93d72148226d75369b4f6952680211972a33e59b1dfdc"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c11b0746f5d946fecf750428a95f3e9ebe792c1ee3b1e96eeba145dc631a9672"}, + {file = "frozenlist-1.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e66d2a64d44d50d2543405fb183a21f76b3b5fd16f130f5c99187c3fb4e64919"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:88f7bc0fcca81f985f78dd0fa68d2c75abf8272b1f5c323ea4a01a4d7a614efc"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5833593c25ac59ede40ed4de6d67eb42928cca97f26feea219f21d0ed0959b79"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:fec520865f42e5c7f050c2a79038897b1c7d1595e907a9e08e3353293ffc948e"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:b826d97e4276750beca7c8f0f1a4938892697a6bcd8ec8217b3312dad6982781"}, + {file = "frozenlist-1.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:ceb6ec0a10c65540421e20ebd29083c50e6d1143278746a4ef6bcf6153171eb8"}, + {file = "frozenlist-1.4.0-cp38-cp38-win32.whl", hash = "sha256:2b8bcf994563466db019fab287ff390fffbfdb4f905fc77bc1c1d604b1c689cc"}, + {file = "frozenlist-1.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:a6c8097e01886188e5be3e6b14e94ab365f384736aa1fca6a0b9e35bd4a30bc7"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6c38721585f285203e4b4132a352eb3daa19121a035f3182e08e437cface44bf"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a0c6da9aee33ff0b1a451e867da0c1f47408112b3391dd43133838339e410963"}, + {file = "frozenlist-1.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:93ea75c050c5bb3d98016b4ba2497851eadf0ac154d88a67d7a6816206f6fa7f"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f61e2dc5ad442c52b4887f1fdc112f97caeff4d9e6ebe78879364ac59f1663e1"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aa384489fefeb62321b238e64c07ef48398fe80f9e1e6afeff22e140e0850eef"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:10ff5faaa22786315ef57097a279b833ecab1a0bfb07d604c9cbb1c4cdc2ed87"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:007df07a6e3eb3e33e9a1fe6a9db7af152bbd8a185f9aaa6ece10a3529e3e1c6"}, + {file = "frozenlist-1.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f4f399d28478d1f604c2ff9119907af9726aed73680e5ed1ca634d377abb087"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c5374b80521d3d3f2ec5572e05adc94601985cc526fb276d0c8574a6d749f1b3"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ce31ae3e19f3c902de379cf1323d90c649425b86de7bbdf82871b8a2a0615f3d"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7211ef110a9194b6042449431e08c4d80c0481e5891e58d429df5899690511c2"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:556de4430ce324c836789fa4560ca62d1591d2538b8ceb0b4f68fb7b2384a27a"}, + {file = "frozenlist-1.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7645a8e814a3ee34a89c4a372011dcd817964ce8cb273c8ed6119d706e9613e3"}, + {file = "frozenlist-1.4.0-cp39-cp39-win32.whl", hash = "sha256:19488c57c12d4e8095a922f328df3f179c820c212940a498623ed39160bc3c2f"}, + {file = "frozenlist-1.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:6221d84d463fb110bdd7619b69cb43878a11d51cbb9394ae3105d082d5199167"}, + {file = "frozenlist-1.4.0.tar.gz", hash = "sha256:09163bdf0b2907454042edb19f887c6d33806adc71fbd54afc14908bfdc22251"}, ] [[package]] name = "greenlet" -version = "2.0.1" +version = "3.0.0" description = "Lightweight in-process concurrent programming" -category = "main" -optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" -files = [ - {file = "greenlet-2.0.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:9ed358312e63bf683b9ef22c8e442ef6c5c02973f0c2a939ec1d7b50c974015c"}, - {file = "greenlet-2.0.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4f09b0010e55bec3239278f642a8a506b91034f03a4fb28289a7d448a67f1515"}, - {file = "greenlet-2.0.1-cp27-cp27m-win32.whl", hash = "sha256:1407fe45246632d0ffb7a3f4a520ba4e6051fc2cbd61ba1f806900c27f47706a"}, - {file = "greenlet-2.0.1-cp27-cp27m-win_amd64.whl", hash = "sha256:3001d00eba6bbf084ae60ec7f4bb8ed375748f53aeaefaf2a37d9f0370558524"}, - {file = "greenlet-2.0.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d566b82e92ff2e09dd6342df7e0eb4ff6275a3f08db284888dcd98134dbd4243"}, - {file = "greenlet-2.0.1-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0722c9be0797f544a3ed212569ca3fe3d9d1a1b13942d10dd6f0e8601e484d26"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d37990425b4687ade27810e3b1a1c37825d242ebc275066cfee8cb6b8829ccd"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be35822f35f99dcc48152c9839d0171a06186f2d71ef76dc57fa556cc9bf6b45"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c140e7eb5ce47249668056edf3b7e9900c6a2e22fb0eaf0513f18a1b2c14e1da"}, - {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d21681f09e297a5adaa73060737e3aa1279a13ecdcfcc6ef66c292cb25125b2d"}, - {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb412b7db83fe56847df9c47b6fe3f13911b06339c2aa02dcc09dce8bbf582cd"}, - {file = "greenlet-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c6a08799e9e88052221adca55741bf106ec7ea0710bca635c208b751f0d5b617"}, - {file = "greenlet-2.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9e112e03d37987d7b90c1e98ba5e1b59e1645226d78d73282f45b326f7bddcb9"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56961cfca7da2fdd178f95ca407fa330c64f33289e1804b592a77d5593d9bd94"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:13ba6e8e326e2116c954074c994da14954982ba2795aebb881c07ac5d093a58a"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bf633a50cc93ed17e494015897361010fc08700d92676c87931d3ea464123ce"}, - {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9f2c221eecb7ead00b8e3ddb913c67f75cba078fd1d326053225a3f59d850d72"}, - {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:13ebf93c343dd8bd010cd98e617cb4c1c1f352a0cf2524c82d3814154116aa82"}, - {file = "greenlet-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f61d71bbc9b4a3de768371b210d906726535d6ca43506737682caa754b956cd"}, - {file = "greenlet-2.0.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:2d0bac0385d2b43a7bd1d651621a4e0f1380abc63d6fb1012213a401cbd5bf8f"}, - {file = "greenlet-2.0.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:f6327b6907b4cb72f650a5b7b1be23a2aab395017aa6f1adb13069d66360eb3f"}, - {file = "greenlet-2.0.1-cp35-cp35m-win32.whl", hash = "sha256:81b0ea3715bf6a848d6f7149d25bf018fd24554a4be01fcbbe3fdc78e890b955"}, - {file = "greenlet-2.0.1-cp35-cp35m-win_amd64.whl", hash = "sha256:38255a3f1e8942573b067510f9611fc9e38196077b0c8eb7a8c795e105f9ce77"}, - {file = "greenlet-2.0.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:04957dc96669be041e0c260964cfef4c77287f07c40452e61abe19d647505581"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:4aeaebcd91d9fee9aa768c1b39cb12214b30bf36d2b7370505a9f2165fedd8d9"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:974a39bdb8c90a85982cdb78a103a32e0b1be986d411303064b28a80611f6e51"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dca09dedf1bd8684767bc736cc20c97c29bc0c04c413e3276e0962cd7aeb148"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4c0757db9bd08470ff8277791795e70d0bf035a011a528ee9a5ce9454b6cba2"}, - {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:5067920de254f1a2dee8d3d9d7e4e03718e8fd2d2d9db962c8c9fa781ae82a39"}, - {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5a8e05057fab2a365c81abc696cb753da7549d20266e8511eb6c9d9f72fe3e92"}, - {file = "greenlet-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:3d75b8d013086b08e801fbbb896f7d5c9e6ccd44f13a9241d2bf7c0df9eda928"}, - {file = "greenlet-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:097e3dae69321e9100202fc62977f687454cd0ea147d0fd5a766e57450c569fd"}, - {file = "greenlet-2.0.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:cb242fc2cda5a307a7698c93173d3627a2a90d00507bccf5bc228851e8304963"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:72b00a8e7c25dcea5946692a2485b1a0c0661ed93ecfedfa9b6687bd89a24ef5"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b0ff9878333823226d270417f24f4d06f235cb3e54d1103b71ea537a6a86ce"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be9e0fb2ada7e5124f5282d6381903183ecc73ea019568d6d63d33f25b2a9000"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b493db84d124805865adc587532ebad30efa68f79ad68f11b336e0a51ec86c2"}, - {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0459d94f73265744fee4c2d5ec44c6f34aa8a31017e6e9de770f7bcf29710be9"}, - {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a20d33124935d27b80e6fdacbd34205732660e0a1d35d8b10b3328179a2b51a1"}, - {file = "greenlet-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:ea688d11707d30e212e0110a1aac7f7f3f542a259235d396f88be68b649e47d1"}, - {file = "greenlet-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:afe07421c969e259e9403c3bb658968702bc3b78ec0b6fde3ae1e73440529c23"}, - {file = "greenlet-2.0.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:cd4ccc364cf75d1422e66e247e52a93da6a9b73cefa8cad696f3cbbb75af179d"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4c8b1c43e75c42a6cafcc71defa9e01ead39ae80bd733a2608b297412beede68"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:659f167f419a4609bc0516fb18ea69ed39dbb25594934bd2dd4d0401660e8a1e"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:356e4519d4dfa766d50ecc498544b44c0249b6de66426041d7f8b751de4d6b48"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:811e1d37d60b47cb8126e0a929b58c046251f28117cb16fcd371eed61f66b764"}, - {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d38ffd0e81ba8ef347d2be0772e899c289b59ff150ebbbbe05dc61b1246eb4e0"}, - {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0109af1138afbfb8ae647e31a2b1ab030f58b21dd8528c27beaeb0093b7938a9"}, - {file = "greenlet-2.0.1-cp38-cp38-win32.whl", hash = "sha256:88c8d517e78acdf7df8a2134a3c4b964415b575d2840a2746ddb1cc6175f8608"}, - {file = "greenlet-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:d6ee1aa7ab36475035eb48c01efae87d37936a8173fc4d7b10bb02c2d75dd8f6"}, - {file = "greenlet-2.0.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b1992ba9d4780d9af9726bbcef6a1db12d9ab1ccc35e5773685a24b7fb2758eb"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:b5e83e4de81dcc9425598d9469a624826a0b1211380ac444c7c791d4a2137c19"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:505138d4fa69462447a562a7c2ef723c6025ba12ac04478bc1ce2fcc279a2db5"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cce1e90dd302f45716a7715517c6aa0468af0bf38e814ad4eab58e88fc09f7f7"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e9744c657d896c7b580455e739899e492a4a452e2dd4d2b3e459f6b244a638d"}, - {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:662e8f7cad915ba75d8017b3e601afc01ef20deeeabf281bd00369de196d7726"}, - {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:41b825d65f31e394b523c84db84f9383a2f7eefc13d987f308f4663794d2687e"}, - {file = "greenlet-2.0.1-cp39-cp39-win32.whl", hash = "sha256:db38f80540083ea33bdab614a9d28bcec4b54daa5aff1668d7827a9fc769ae0a"}, - {file = "greenlet-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b23d2a46d53210b498e5b701a1913697671988f4bf8e10f935433f6e7c332fb6"}, - {file = "greenlet-2.0.1.tar.gz", hash = "sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67"}, +optional = false +python-versions = ">=3.7" +files = [ + {file = "greenlet-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e09dea87cc91aea5500262993cbd484b41edf8af74f976719dd83fe724644cd6"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f47932c434a3c8d3c86d865443fadc1fbf574e9b11d6650b656e602b1797908a"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bdfaeecf8cc705d35d8e6de324bf58427d7eafb55f67050d8f28053a3d57118c"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a68d670c8f89ff65c82b936275369e532772eebc027c3be68c6b87ad05ca695"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ad562a104cd41e9d4644f46ea37167b93190c6d5e4048fcc4b80d34ecb278f"}, + {file = "greenlet-3.0.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:02a807b2a58d5cdebb07050efe3d7deaf915468d112dfcf5e426d0564aa3aa4a"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b1660a15a446206c8545edc292ab5c48b91ff732f91b3d3b30d9a915d5ec4779"}, + {file = "greenlet-3.0.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:813720bd57e193391dfe26f4871186cf460848b83df7e23e6bef698a7624b4c9"}, + {file = "greenlet-3.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:aa15a2ec737cb609ed48902b45c5e4ff6044feb5dcdfcf6fa8482379190330d7"}, + {file = "greenlet-3.0.0-cp310-universal2-macosx_11_0_x86_64.whl", hash = "sha256:7709fd7bb02b31908dc8fd35bfd0a29fc24681d5cc9ac1d64ad07f8d2b7db62f"}, + {file = "greenlet-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:211ef8d174601b80e01436f4e6905aca341b15a566f35a10dd8d1e93f5dbb3b7"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6512592cc49b2c6d9b19fbaa0312124cd4c4c8a90d28473f86f92685cc5fef8e"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:871b0a8835f9e9d461b7fdaa1b57e3492dd45398e87324c047469ce2fc9f516c"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b505fcfc26f4148551826a96f7317e02c400665fa0883fe505d4fcaab1dabfdd"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:123910c58234a8d40eaab595bc56a5ae49bdd90122dde5bdc012c20595a94c14"}, + {file = "greenlet-3.0.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:96d9ea57292f636ec851a9bb961a5cc0f9976900e16e5d5647f19aa36ba6366b"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0b72b802496cccbd9b31acea72b6f87e7771ccfd7f7927437d592e5c92ed703c"}, + {file = "greenlet-3.0.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:527cd90ba3d8d7ae7dceb06fda619895768a46a1b4e423bdb24c1969823b8362"}, + {file = "greenlet-3.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:37f60b3a42d8b5499be910d1267b24355c495064f271cfe74bf28b17b099133c"}, + {file = "greenlet-3.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1482fba7fbed96ea7842b5a7fc11d61727e8be75a077e603e8ab49d24e234383"}, + {file = "greenlet-3.0.0-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:be557119bf467d37a8099d91fbf11b2de5eb1fd5fc5b91598407574848dc910f"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b2f1922a39d5d59cc0e597987300df3396b148a9bd10b76a058a2f2772fc04"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1e22c22f7826096ad503e9bb681b05b8c1f5a8138469b255eb91f26a76634f2"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1d363666acc21d2c204dd8705c0e0457d7b2ee7a76cb16ffc099d6799744ac99"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:334ef6ed8337bd0b58bb0ae4f7f2dcc84c9f116e474bb4ec250a8bb9bd797a66"}, + {file = "greenlet-3.0.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6672fdde0fd1a60b44fb1751a7779c6db487e42b0cc65e7caa6aa686874e79fb"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:952256c2bc5b4ee8df8dfc54fc4de330970bf5d79253c863fb5e6761f00dda35"}, + {file = "greenlet-3.0.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:269d06fa0f9624455ce08ae0179430eea61085e3cf6457f05982b37fd2cefe17"}, + {file = "greenlet-3.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:9adbd8ecf097e34ada8efde9b6fec4dd2a903b1e98037adf72d12993a1c80b51"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6b5ce7f40f0e2f8b88c28e6691ca6806814157ff05e794cdd161be928550f4c"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecf94aa539e97a8411b5ea52fc6ccd8371be9550c4041011a091eb8b3ca1d810"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80dcd3c938cbcac986c5c92779db8e8ce51a89a849c135172c88ecbdc8c056b7"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e52a712c38e5fb4fd68e00dc3caf00b60cb65634d50e32281a9d6431b33b4af1"}, + {file = "greenlet-3.0.0-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5539f6da3418c3dc002739cb2bb8d169056aa66e0c83f6bacae0cd3ac26b423"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:343675e0da2f3c69d3fb1e894ba0a1acf58f481f3b9372ce1eb465ef93cf6fed"}, + {file = "greenlet-3.0.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:abe1ef3d780de56defd0c77c5ba95e152f4e4c4e12d7e11dd8447d338b85a625"}, + {file = "greenlet-3.0.0-cp37-cp37m-win32.whl", hash = "sha256:e693e759e172fa1c2c90d35dea4acbdd1d609b6936115d3739148d5e4cd11947"}, + {file = "greenlet-3.0.0-cp37-cp37m-win_amd64.whl", hash = "sha256:bdd696947cd695924aecb3870660b7545a19851f93b9d327ef8236bfc49be705"}, + {file = "greenlet-3.0.0-cp37-universal2-macosx_11_0_x86_64.whl", hash = "sha256:cc3e2679ea13b4de79bdc44b25a0c4fcd5e94e21b8f290791744ac42d34a0353"}, + {file = "greenlet-3.0.0-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:63acdc34c9cde42a6534518e32ce55c30f932b473c62c235a466469a710bfbf9"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a1a6244ff96343e9994e37e5b4839f09a0207d35ef6134dce5c20d260d0302c"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b822fab253ac0f330ee807e7485769e3ac85d5eef827ca224feaaefa462dc0d0"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8060b32d8586e912a7b7dac2d15b28dbbd63a174ab32f5bc6d107a1c4143f40b"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:621fcb346141ae08cb95424ebfc5b014361621b8132c48e538e34c3c93ac7365"}, + {file = "greenlet-3.0.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6bb36985f606a7c49916eff74ab99399cdfd09241c375d5a820bb855dfb4af9f"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:10b5582744abd9858947d163843d323d0b67be9432db50f8bf83031032bc218d"}, + {file = "greenlet-3.0.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f351479a6914fd81a55c8e68963609f792d9b067fb8a60a042c585a621e0de4f"}, + {file = "greenlet-3.0.0-cp38-cp38-win32.whl", hash = "sha256:9de687479faec7db5b198cc365bc34addd256b0028956501f4d4d5e9ca2e240a"}, + {file = "greenlet-3.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:3fd2b18432e7298fcbec3d39e1a0aa91ae9ea1c93356ec089421fabc3651572b"}, + {file = "greenlet-3.0.0-cp38-universal2-macosx_11_0_x86_64.whl", hash = "sha256:3c0d36f5adc6e6100aedbc976d7428a9f7194ea79911aa4bf471f44ee13a9464"}, + {file = "greenlet-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4cd83fb8d8e17633ad534d9ac93719ef8937568d730ef07ac3a98cb520fd93e4"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a5b2d4cdaf1c71057ff823a19d850ed5c6c2d3686cb71f73ae4d6382aaa7a06"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e7dcdfad252f2ca83c685b0fa9fba00e4d8f243b73839229d56ee3d9d219314"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c94e4e924d09b5a3e37b853fe5924a95eac058cb6f6fb437ebb588b7eda79870"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad6fb737e46b8bd63156b8f59ba6cdef46fe2b7db0c5804388a2d0519b8ddb99"}, + {file = "greenlet-3.0.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d55db1db455c59b46f794346efce896e754b8942817f46a1bada2d29446e305a"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:56867a3b3cf26dc8a0beecdb4459c59f4c47cdd5424618c08515f682e1d46692"}, + {file = "greenlet-3.0.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a812224a5fb17a538207e8cf8e86f517df2080c8ee0f8c1ed2bdaccd18f38f4"}, + {file = "greenlet-3.0.0-cp39-cp39-win32.whl", hash = "sha256:0d3f83ffb18dc57243e0151331e3c383b05e5b6c5029ac29f754745c800f8ed9"}, + {file = "greenlet-3.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:831d6f35037cf18ca5e80a737a27d822d87cd922521d18ed3dbc8a6967be50ce"}, + {file = "greenlet-3.0.0-cp39-universal2-macosx_11_0_x86_64.whl", hash = "sha256:a048293392d4e058298710a54dfaefcefdf49d287cd33fb1f7d63d55426e4355"}, + {file = "greenlet-3.0.0.tar.gz", hash = "sha256:19834e3f91f485442adc1ee440171ec5d9a4840a1f7bd5ed97833544719ce10b"}, ] [package.extras] -docs = ["Sphinx", "docutils (<0.18)"] -test = ["faulthandler", "objgraph", "psutil"] +docs = ["Sphinx"] +test = ["objgraph", "psutil"] [[package]] name = "h11" version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1028,7 +1024,6 @@ files = [ name = "idna" version = "3.4" description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1038,14 +1033,13 @@ files = [ [[package]] name = "importlib-metadata" -version = "6.1.0" +version = "6.8.0" description = "Read metadata from Python packages" -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "importlib_metadata-6.1.0-py3-none-any.whl", hash = "sha256:ff80f3b5394912eb1b108fcfd444dc78b7f1f3e16b16188054bd01cb9cb86f09"}, - {file = "importlib_metadata-6.1.0.tar.gz", hash = "sha256:43ce9281e097583d758c2c708c4376371261a02c34682491a8e98352365aad20"}, + {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"}, + {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"}, ] [package.dependencies] @@ -1054,44 +1048,41 @@ zipp = ">=0.5" [package.extras] docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] perf = ["ipython"] -testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] [[package]] name = "iniconfig" -version = "1.1.1" -description = "iniconfig: brain-dead simple config-ini parsing" -category = "dev" +version = "2.0.0" +description = "brain-dead simple config-ini parsing" optional = false -python-versions = "*" +python-versions = ">=3.7" files = [ - {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, - {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, ] [[package]] name = "jaraco-classes" -version = "3.2.3" +version = "3.3.0" description = "Utility functions for Python class constructs" -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "jaraco.classes-3.2.3-py3-none-any.whl", hash = "sha256:2353de3288bc6b82120752201c6b1c1a14b058267fa424ed5ce5984e3b922158"}, - {file = "jaraco.classes-3.2.3.tar.gz", hash = "sha256:89559fa5c1d3c34eff6f631ad80bb21f378dbcbb35dd161fd2c6b93f5be2f98a"}, + {file = "jaraco.classes-3.3.0-py3-none-any.whl", hash = "sha256:10afa92b6743f25c0cf5f37c6bb6e18e2c5bb84a16527ccfc0040ea377e7aaeb"}, + {file = "jaraco.classes-3.3.0.tar.gz", hash = "sha256:c063dd08e89217cee02c8d5e5ec560f2c8ce6cdc2fcdc2e68f7b2e5547ed3621"}, ] [package.dependencies] more-itertools = "*" [package.extras] -docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"] -testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] [[package]] name = "jeepney" version = "0.8.0" description = "Low-level, pure Python DBus protocol wrapper." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1107,7 +1098,6 @@ trio = ["async_generator", "trio"] name = "jinja2" version = "3.1.2" description = "A very fast and expressive template engine." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1121,11 +1111,21 @@ MarkupSafe = ">=2.0" [package.extras] i18n = ["Babel (>=2.7)"] +[[package]] +name = "jmespath" +version = "1.0.1" +description = "JSON Matching Expressions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980"}, + {file = "jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"}, +] + [[package]] name = "keyring" version = "23.13.1" description = "Store and access your passwords safely." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1147,157 +1147,187 @@ testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-chec [[package]] name = "markupsafe" -version = "2.1.1" +version = "2.1.3" description = "Safely add untrusted strings to HTML/XML markup." -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, - {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"}, + {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, + {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca379055a47383d02a5400cb0d110cef0a776fc644cda797db0c5696cfd7e18e"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b7ff0f54cb4ff66dd38bebd335a38e2c22c41a8ee45aa608efc890ac3e3931bc"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c011a4149cfbcf9f03994ec2edffcb8b1dc2d2aede7ca243746df97a5d41ce48"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:56d9f2ecac662ca1611d183feb03a3fa4406469dafe241673d521dd5ae92a155"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win32.whl", hash = "sha256:8758846a7e80910096950b67071243da3e5a20ed2546e6392603c096778d48e0"}, + {file = "MarkupSafe-2.1.3-cp37-cp37m-win_amd64.whl", hash = "sha256:787003c0ddb00500e49a10f2844fac87aa6ce977b90b0feaaf9de23c22508b24"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"}, + {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"}, + {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"}, + {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, ] [[package]] name = "more-itertools" -version = "9.1.0" +version = "10.1.0" description = "More routines for operating on iterables, beyond itertools" -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "more-itertools-9.1.0.tar.gz", hash = "sha256:cabaa341ad0389ea83c17a94566a53ae4c9d07349861ecb14dc6d0345cf9ac5d"}, - {file = "more_itertools-9.1.0-py3-none-any.whl", hash = "sha256:d2bc7f02446e86a68911e58ded76d6561eea00cddfb2a91e7019bbb586c799f3"}, + {file = "more-itertools-10.1.0.tar.gz", hash = "sha256:626c369fa0eb37bac0291bce8259b332fd59ac792fa5497b59837309cd5b114a"}, + {file = "more_itertools-10.1.0-py3-none-any.whl", hash = "sha256:64e0735fcfdc6f3464ea133afe8ea4483b1c5fe3a3d69852e6503b43a0b222e6"}, ] [[package]] name = "multidict" -version = "6.0.2" +version = "6.0.4" description = "multidict implementation" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, - {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, - {file = "multidict-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:041b81a5f6b38244b34dc18c7b6aba91f9cdaf854d9a39e5ff0b58e2b5773b9c"}, - {file = "multidict-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fdda29a3c7e76a064f2477c9aab1ba96fd94e02e386f1e665bca1807fc5386f"}, - {file = "multidict-6.0.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3368bf2398b0e0fcbf46d85795adc4c259299fec50c1416d0f77c0a843a3eed9"}, - {file = "multidict-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f4f052ee022928d34fe1f4d2bc743f32609fb79ed9c49a1710a5ad6b2198db20"}, - {file = "multidict-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:225383a6603c086e6cef0f2f05564acb4f4d5f019a4e3e983f572b8530f70c88"}, - {file = "multidict-6.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50bd442726e288e884f7be9071016c15a8742eb689a593a0cac49ea093eef0a7"}, - {file = "multidict-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:47e6a7e923e9cada7c139531feac59448f1f47727a79076c0b1ee80274cd8eee"}, - {file = "multidict-6.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:0556a1d4ea2d949efe5fd76a09b4a82e3a4a30700553a6725535098d8d9fb672"}, - {file = "multidict-6.0.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:626fe10ac87851f4cffecee161fc6f8f9853f0f6f1035b59337a51d29ff3b4f9"}, - {file = "multidict-6.0.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:8064b7c6f0af936a741ea1efd18690bacfbae4078c0c385d7c3f611d11f0cf87"}, - {file = "multidict-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2d36e929d7f6a16d4eb11b250719c39560dd70545356365b494249e2186bc389"}, - {file = "multidict-6.0.2-cp310-cp310-win32.whl", hash = "sha256:fcb91630817aa8b9bc4a74023e4198480587269c272c58b3279875ed7235c293"}, - {file = "multidict-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:8cbf0132f3de7cc6c6ce00147cc78e6439ea736cee6bca4f068bcf892b0fd658"}, - {file = "multidict-6.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:05f6949d6169878a03e607a21e3b862eaf8e356590e8bdae4227eedadacf6e51"}, - {file = "multidict-6.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2c2e459f7050aeb7c1b1276763364884595d47000c1cddb51764c0d8976e608"}, - {file = "multidict-6.0.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d0509e469d48940147e1235d994cd849a8f8195e0bca65f8f5439c56e17872a3"}, - {file = "multidict-6.0.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:514fe2b8d750d6cdb4712346a2c5084a80220821a3e91f3f71eec11cf8d28fd4"}, - {file = "multidict-6.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19adcfc2a7197cdc3987044e3f415168fc5dc1f720c932eb1ef4f71a2067e08b"}, - {file = "multidict-6.0.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b9d153e7f1f9ba0b23ad1568b3b9e17301e23b042c23870f9ee0522dc5cc79e8"}, - {file = "multidict-6.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:aef9cc3d9c7d63d924adac329c33835e0243b5052a6dfcbf7732a921c6e918ba"}, - {file = "multidict-6.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4571f1beddff25f3e925eea34268422622963cd8dc395bb8778eb28418248e43"}, - {file = "multidict-6.0.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:d48b8ee1d4068561ce8033d2c344cf5232cb29ee1a0206a7b828c79cbc5982b8"}, - {file = "multidict-6.0.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:45183c96ddf61bf96d2684d9fbaf6f3564d86b34cb125761f9a0ef9e36c1d55b"}, - {file = "multidict-6.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:75bdf08716edde767b09e76829db8c1e5ca9d8bb0a8d4bd94ae1eafe3dac5e15"}, - {file = "multidict-6.0.2-cp37-cp37m-win32.whl", hash = "sha256:a45e1135cb07086833ce969555df39149680e5471c04dfd6a915abd2fc3f6dbc"}, - {file = "multidict-6.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6f3cdef8a247d1eafa649085812f8a310e728bdf3900ff6c434eafb2d443b23a"}, - {file = "multidict-6.0.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0327292e745a880459ef71be14e709aaea2f783f3537588fb4ed09b6c01bca60"}, - {file = "multidict-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e875b6086e325bab7e680e4316d667fc0e5e174bb5611eb16b3ea121c8951b86"}, - {file = "multidict-6.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feea820722e69451743a3d56ad74948b68bf456984d63c1a92e8347b7b88452d"}, - {file = "multidict-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cc57c68cb9139c7cd6fc39f211b02198e69fb90ce4bc4a094cf5fe0d20fd8b0"}, - {file = "multidict-6.0.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:497988d6b6ec6ed6f87030ec03280b696ca47dbf0648045e4e1d28b80346560d"}, - {file = "multidict-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:89171b2c769e03a953d5969b2f272efa931426355b6c0cb508022976a17fd376"}, - {file = "multidict-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:684133b1e1fe91eda8fa7447f137c9490a064c6b7f392aa857bba83a28cfb693"}, - {file = "multidict-6.0.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd9fc9c4849a07f3635ccffa895d57abce554b467d611a5009ba4f39b78a8849"}, - {file = "multidict-6.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e07c8e79d6e6fd37b42f3250dba122053fddb319e84b55dd3a8d6446e1a7ee49"}, - {file = "multidict-6.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4070613ea2227da2bfb2c35a6041e4371b0af6b0be57f424fe2318b42a748516"}, - {file = "multidict-6.0.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:47fbeedbf94bed6547d3aa632075d804867a352d86688c04e606971595460227"}, - {file = "multidict-6.0.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5774d9218d77befa7b70d836004a768fb9aa4fdb53c97498f4d8d3f67bb9cfa9"}, - {file = "multidict-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2957489cba47c2539a8eb7ab32ff49101439ccf78eab724c828c1a54ff3ff98d"}, - {file = "multidict-6.0.2-cp38-cp38-win32.whl", hash = "sha256:e5b20e9599ba74391ca0cfbd7b328fcc20976823ba19bc573983a25b32e92b57"}, - {file = "multidict-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:8004dca28e15b86d1b1372515f32eb6f814bdf6f00952699bdeb541691091f96"}, - {file = "multidict-6.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2e4a0785b84fb59e43c18a015ffc575ba93f7d1dbd272b4cdad9f5134b8a006c"}, - {file = "multidict-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6701bf8a5d03a43375909ac91b6980aea74b0f5402fbe9428fc3f6edf5d9677e"}, - {file = "multidict-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a007b1638e148c3cfb6bf0bdc4f82776cef0ac487191d093cdc316905e504071"}, - {file = "multidict-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07a017cfa00c9890011628eab2503bee5872f27144936a52eaab449be5eaf032"}, - {file = "multidict-6.0.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c207fff63adcdf5a485969131dc70e4b194327666b7e8a87a97fbc4fd80a53b2"}, - {file = "multidict-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:373ba9d1d061c76462d74e7de1c0c8e267e9791ee8cfefcf6b0b2495762c370c"}, - {file = "multidict-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfba7c6d5d7c9099ba21f84662b037a0ffd4a5e6b26ac07d19e423e6fdf965a9"}, - {file = "multidict-6.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:19d9bad105dfb34eb539c97b132057a4e709919ec4dd883ece5838bcbf262b80"}, - {file = "multidict-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:de989b195c3d636ba000ee4281cd03bb1234635b124bf4cd89eeee9ca8fcb09d"}, - {file = "multidict-6.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7c40b7bbece294ae3a87c1bc2abff0ff9beef41d14188cda94ada7bcea99b0fb"}, - {file = "multidict-6.0.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:d16cce709ebfadc91278a1c005e3c17dd5f71f5098bfae1035149785ea6e9c68"}, - {file = "multidict-6.0.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:a2c34a93e1d2aa35fbf1485e5010337c72c6791407d03aa5f4eed920343dd360"}, - {file = "multidict-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:feba80698173761cddd814fa22e88b0661e98cb810f9f986c54aa34d281e4937"}, - {file = "multidict-6.0.2-cp39-cp39-win32.whl", hash = "sha256:23b616fdc3c74c9fe01d76ce0d1ce872d2d396d8fa8e4899398ad64fb5aa214a"}, - {file = "multidict-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:4bae31803d708f6f15fd98be6a6ac0b6958fcf68fda3c77a048a4f9073704aae"}, - {file = "multidict-6.0.2.tar.gz", hash = "sha256:5ff3bd75f38e4c43f1f470f2df7a4d430b821c4ce22be384e1459cb57d6bb013"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b1a97283e0c85772d613878028fec909f003993e1007eafa715b24b377cb9b8"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeb6dcc05e911516ae3d1f207d4b0520d07f54484c49dfc294d6e7d63b734171"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d6d635d5209b82a3492508cf5b365f3446afb65ae7ebd755e70e18f287b0adf7"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c048099e4c9e9d615545e2001d3d8a4380bd403e1a0578734e0d31703d1b0c0b"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea20853c6dbbb53ed34cb4d080382169b6f4554d394015f1bef35e881bf83547"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16d232d4e5396c2efbbf4f6d4df89bfa905eb0d4dc5b3549d872ab898451f569"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36c63aaa167f6c6b04ef2c85704e93af16c11d20de1d133e39de6a0e84582a93"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:64bdf1086b6043bf519869678f5f2757f473dee970d7abf6da91ec00acb9cb98"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:43644e38f42e3af682690876cff722d301ac585c5b9e1eacc013b7a3f7b696a0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7582a1d1030e15422262de9f58711774e02fa80df0d1578995c76214f6954988"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ddff9c4e225a63a5afab9dd15590432c22e8057e1a9a13d28ed128ecf047bbdc"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ee2a1ece51b9b9e7752e742cfb661d2a29e7bcdba2d27e66e28a99f1890e4fa0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a2e4369eb3d47d2034032a26c7a80fcb21a2cb22e1173d761a162f11e562caa5"}, + {file = "multidict-6.0.4-cp310-cp310-win32.whl", hash = "sha256:574b7eae1ab267e5f8285f0fe881f17efe4b98c39a40858247720935b893bba8"}, + {file = "multidict-6.0.4-cp310-cp310-win_amd64.whl", hash = "sha256:4dcbb0906e38440fa3e325df2359ac6cb043df8e58c965bb45f4e406ecb162cc"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0dfad7a5a1e39c53ed00d2dd0c2e36aed4650936dc18fd9a1826a5ae1cad6f03"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:64da238a09d6039e3bd39bb3aee9c21a5e34f28bfa5aa22518581f910ff94af3"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ff959bee35038c4624250473988b24f846cbeb2c6639de3602c073f10410ceba"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01a3a55bd90018c9c080fbb0b9f4891db37d148a0a18722b42f94694f8b6d4c9"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c5cb09abb18c1ea940fb99360ea0396f34d46566f157122c92dfa069d3e0e982"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:666daae833559deb2d609afa4490b85830ab0dfca811a98b70a205621a6109fe"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11bdf3f5e1518b24530b8241529d2050014c884cf18b6fc69c0c2b30ca248710"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d18748f2d30f94f498e852c67d61261c643b349b9d2a581131725595c45ec6c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:458f37be2d9e4c95e2d8866a851663cbc76e865b78395090786f6cd9b3bbf4f4"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b1a2eeedcead3a41694130495593a559a668f382eee0727352b9a41e1c45759a"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7d6ae9d593ef8641544d6263c7fa6408cc90370c8cb2bbb65f8d43e5b0351d9c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5979b5632c3e3534e42ca6ff856bb24b2e3071b37861c2c727ce220d80eee9ed"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dcfe792765fab89c365123c81046ad4103fcabbc4f56d1c1997e6715e8015461"}, + {file = "multidict-6.0.4-cp311-cp311-win32.whl", hash = "sha256:3601a3cece3819534b11d4efc1eb76047488fddd0c85a3948099d5da4d504636"}, + {file = "multidict-6.0.4-cp311-cp311-win_amd64.whl", hash = "sha256:81a4f0b34bd92df3da93315c6a59034df95866014ac08535fc819f043bfd51f0"}, + {file = "multidict-6.0.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:67040058f37a2a51ed8ea8f6b0e6ee5bd78ca67f169ce6122f3e2ec80dfe9b78"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:853888594621e6604c978ce2a0444a1e6e70c8d253ab65ba11657659dcc9100f"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:39ff62e7d0f26c248b15e364517a72932a611a9b75f35b45be078d81bdb86603"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af048912e045a2dc732847d33821a9d84ba553f5c5f028adbd364dd4765092ac"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e8b901e607795ec06c9e42530788c45ac21ef3aaa11dbd0c69de543bfb79a9"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62501642008a8b9871ddfccbf83e4222cf8ac0d5aeedf73da36153ef2ec222d2"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:99b76c052e9f1bc0721f7541e5e8c05db3941eb9ebe7b8553c625ef88d6eefde"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:509eac6cf09c794aa27bcacfd4d62c885cce62bef7b2c3e8b2e49d365b5003fe"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:21a12c4eb6ddc9952c415f24eef97e3e55ba3af61f67c7bc388dcdec1404a067"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:5cad9430ab3e2e4fa4a2ef4450f548768400a2ac635841bc2a56a2052cdbeb87"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ab55edc2e84460694295f401215f4a58597f8f7c9466faec545093045476327d"}, + {file = "multidict-6.0.4-cp37-cp37m-win32.whl", hash = "sha256:5a4dcf02b908c3b8b17a45fb0f15b695bf117a67b76b7ad18b73cf8e92608775"}, + {file = "multidict-6.0.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6ed5f161328b7df384d71b07317f4d8656434e34591f20552c7bcef27b0ab88e"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5fc1b16f586f049820c5c5b17bb4ee7583092fa0d1c4e28b5239181ff9532e0c"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1502e24330eb681bdaa3eb70d6358e818e8e8f908a22a1851dfd4e15bc2f8161"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b692f419760c0e65d060959df05f2a531945af31fda0c8a3b3195d4efd06de11"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45e1ecb0379bfaab5eef059f50115b54571acfbe422a14f668fc8c27ba410e7e"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddd3915998d93fbcd2566ddf9cf62cdb35c9e093075f862935573d265cf8f65d"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:59d43b61c59d82f2effb39a93c48b845efe23a3852d201ed2d24ba830d0b4cf2"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc8e1d0c705233c5dd0c5e6460fbad7827d5d36f310a0fadfd45cc3029762258"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6aa0418fcc838522256761b3415822626f866758ee0bc6632c9486b179d0b52"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6748717bb10339c4760c1e63da040f5f29f5ed6e59d76daee30305894069a660"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4d1a3d7ef5e96b1c9e92f973e43aa5e5b96c659c9bc3124acbbd81b0b9c8a951"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4372381634485bec7e46718edc71528024fcdc6f835baefe517b34a33c731d60"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:fc35cb4676846ef752816d5be2193a1e8367b4c1397b74a565a9d0389c433a1d"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b9d9e4e2b37daddb5c23ea33a3417901fa7c7b3dee2d855f63ee67a0b21e5b1"}, + {file = "multidict-6.0.4-cp38-cp38-win32.whl", hash = "sha256:e41b7e2b59679edfa309e8db64fdf22399eec4b0b24694e1b2104fb789207779"}, + {file = "multidict-6.0.4-cp38-cp38-win_amd64.whl", hash = "sha256:d6c254ba6e45d8e72739281ebc46ea5eb5f101234f3ce171f0e9f5cc86991480"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16ab77bbeb596e14212e7bab8429f24c1579234a3a462105cda4a66904998664"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc779e9e6f7fda81b3f9aa58e3a6091d49ad528b11ed19f6621408806204ad35"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4ceef517eca3e03c1cceb22030a3e39cb399ac86bff4e426d4fc6ae49052cc60"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:281af09f488903fde97923c7744bb001a9b23b039a909460d0f14edc7bf59706"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:52f2dffc8acaba9a2f27174c41c9e57f60b907bb9f096b36b1a1f3be71c6284d"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b41156839806aecb3641f3208c0dafd3ac7775b9c4c422d82ee2a45c34ba81ca"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5e3fc56f88cc98ef8139255cf8cd63eb2c586531e43310ff859d6bb3a6b51f1"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8316a77808c501004802f9beebde51c9f857054a0c871bd6da8280e718444449"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f70b98cd94886b49d91170ef23ec5c0e8ebb6f242d734ed7ed677b24d50c82cf"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bf6774e60d67a9efe02b3616fee22441d86fab4c6d335f9d2051d19d90a40063"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:e69924bfcdda39b722ef4d9aa762b2dd38e4632b3641b1d9a57ca9cd18f2f83a"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:6b181d8c23da913d4ff585afd1155a0e1194c0b50c54fcfe286f70cdaf2b7176"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:52509b5be062d9eafc8170e53026fbc54cf3b32759a23d07fd935fb04fc22d95"}, + {file = "multidict-6.0.4-cp39-cp39-win32.whl", hash = "sha256:27c523fbfbdfd19c6867af7346332b62b586eed663887392cff78d614f9ec313"}, + {file = "multidict-6.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:33029f5734336aa0d4c0384525da0387ef89148dc7191aae00ca5fb23d7aafc2"}, + {file = "multidict-6.0.4.tar.gz", hash = "sha256:3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"}, ] [[package]] name = "packaging" -version = "23.0" +version = "23.1" description = "Core utilities for Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "packaging-23.0-py3-none-any.whl", hash = "sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2"}, - {file = "packaging-23.0.tar.gz", hash = "sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97"}, + {file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"}, + {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"}, ] [[package]] name = "pluggy" -version = "1.0.0" +version = "1.3.0" description = "plugin and hook calling mechanisms for python" -category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, - {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, + {file = "pluggy-1.3.0-py3-none-any.whl", hash = "sha256:d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"}, + {file = "pluggy-1.3.0.tar.gz", hash = "sha256:cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12"}, ] [package.extras] @@ -1306,14 +1336,13 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "portalocker" -version = "2.6.0" +version = "2.8.2" description = "Wraps the portalocker recipe for easy usage" -category = "main" optional = false -python-versions = ">=3.5" +python-versions = ">=3.8" files = [ - {file = "portalocker-2.6.0-py2.py3-none-any.whl", hash = "sha256:102ed1f2badd8dec9af3d732ef70e94b215b85ba45a8d7ff3c0003f19b442f4e"}, - {file = "portalocker-2.6.0.tar.gz", hash = "sha256:964f6830fb42a74b5d32bce99ed37d8308c1d7d44ddf18f3dd89f4680de97b39"}, + {file = "portalocker-2.8.2-py3-none-any.whl", hash = "sha256:cfb86acc09b9aa7c3b43594e19be1345b9d16af3feb08bf92f23d4dce513a28e"}, + {file = "portalocker-2.8.2.tar.gz", hash = "sha256:2b035aa7828e46c58e9b31390ee1f169b98e1066ab10b9a6a861fe7e25ee4f33"}, ] [package.dependencies] @@ -1322,18 +1351,17 @@ pywin32 = {version = ">=226", markers = "platform_system == \"Windows\""} [package.extras] docs = ["sphinx (>=1.7.1)"] redis = ["redis"] -tests = ["pytest (>=5.4.1)", "pytest-cov (>=2.8.1)", "pytest-mypy (>=0.8.0)", "pytest-timeout (>=2.1.0)", "redis", "sphinx (>=3.0.3)"] +tests = ["pytest (>=5.4.1)", "pytest-cov (>=2.8.1)", "pytest-mypy (>=0.8.0)", "pytest-timeout (>=2.1.0)", "redis", "sphinx (>=6.0.0)", "types-redis"] [[package]] name = "prompt-toolkit" -version = "3.0.32" +version = "3.0.39" description = "Library for building powerful interactive command lines in Python" -category = "dev" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7.0" files = [ - {file = "prompt_toolkit-3.0.32-py3-none-any.whl", hash = "sha256:24becda58d49ceac4dc26232eb179ef2b21f133fecda7eed6018d341766ed76e"}, - {file = "prompt_toolkit-3.0.32.tar.gz", hash = "sha256:e7f2129cba4ff3b3656bbdda0e74ee00d2f874a8bcdb9dd16f5fec7b3e173cae"}, + {file = "prompt_toolkit-3.0.39-py3-none-any.whl", hash = "sha256:9dffbe1d8acf91e3de75f3b544e4842382fc06c6babe903ac9acb74dc6e08d88"}, + {file = "prompt_toolkit-3.0.39.tar.gz", hash = "sha256:04505ade687dc26dc4284b1ad19a83be2f2afe83e7a828ace0c72f3a1df72aac"}, ] [package.dependencies] @@ -1343,7 +1371,6 @@ wcwidth = "*" name = "psutil" version = "5.9.4" description = "Cross-platform lib for process and system monitoring in Python." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1370,7 +1397,6 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "pycparser" version = "2.21" description = "C parser in Python" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1380,53 +1406,52 @@ files = [ [[package]] name = "pydantic" -version = "1.10.2" +version = "1.10.13" description = "Data validation and settings management using python type hints" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "pydantic-1.10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bb6ad4489af1bac6955d38ebcb95079a836af31e4c4f74aba1ca05bb9f6027bd"}, - {file = "pydantic-1.10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a1f5a63a6dfe19d719b1b6e6106561869d2efaca6167f84f5ab9347887d78b98"}, - {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:352aedb1d71b8b0736c6d56ad2bd34c6982720644b0624462059ab29bd6e5912"}, - {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:19b3b9ccf97af2b7519c42032441a891a5e05c68368f40865a90eb88833c2559"}, - {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e9069e1b01525a96e6ff49e25876d90d5a563bc31c658289a8772ae186552236"}, - {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:355639d9afc76bcb9b0c3000ddcd08472ae75318a6eb67a15866b87e2efa168c"}, - {file = "pydantic-1.10.2-cp310-cp310-win_amd64.whl", hash = "sha256:ae544c47bec47a86bc7d350f965d8b15540e27e5aa4f55170ac6a75e5f73b644"}, - {file = "pydantic-1.10.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a4c805731c33a8db4b6ace45ce440c4ef5336e712508b4d9e1aafa617dc9907f"}, - {file = "pydantic-1.10.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d49f3db871575e0426b12e2f32fdb25e579dea16486a26e5a0474af87cb1ab0a"}, - {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37c90345ec7dd2f1bcef82ce49b6235b40f282b94d3eec47e801baf864d15525"}, - {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b5ba54d026c2bd2cb769d3468885f23f43710f651688e91f5fb1edcf0ee9283"}, - {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05e00dbebbe810b33c7a7362f231893183bcc4251f3f2ff991c31d5c08240c42"}, - {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2d0567e60eb01bccda3a4df01df677adf6b437958d35c12a3ac3e0f078b0ee52"}, - {file = "pydantic-1.10.2-cp311-cp311-win_amd64.whl", hash = "sha256:c6f981882aea41e021f72779ce2a4e87267458cc4d39ea990729e21ef18f0f8c"}, - {file = "pydantic-1.10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c4aac8e7103bf598373208f6299fa9a5cfd1fc571f2d40bf1dd1955a63d6eeb5"}, - {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81a7b66c3f499108b448f3f004801fcd7d7165fb4200acb03f1c2402da73ce4c"}, - {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bedf309630209e78582ffacda64a21f96f3ed2e51fbf3962d4d488e503420254"}, - {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:9300fcbebf85f6339a02c6994b2eb3ff1b9c8c14f502058b5bf349d42447dcf5"}, - {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:216f3bcbf19c726b1cc22b099dd409aa371f55c08800bcea4c44c8f74b73478d"}, - {file = "pydantic-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:dd3f9a40c16daf323cf913593083698caee97df2804aa36c4b3175d5ac1b92a2"}, - {file = "pydantic-1.10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b97890e56a694486f772d36efd2ba31612739bc6f3caeee50e9e7e3ebd2fdd13"}, - {file = "pydantic-1.10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9cabf4a7f05a776e7793e72793cd92cc865ea0e83a819f9ae4ecccb1b8aa6116"}, - {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06094d18dd5e6f2bbf93efa54991c3240964bb663b87729ac340eb5014310624"}, - {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cc78cc83110d2f275ec1970e7a831f4e371ee92405332ebfe9860a715f8336e1"}, - {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ee433e274268a4b0c8fde7ad9d58ecba12b069a033ecc4645bb6303c062d2e9"}, - {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7c2abc4393dea97a4ccbb4ec7d8658d4e22c4765b7b9b9445588f16c71ad9965"}, - {file = "pydantic-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:0b959f4d8211fc964772b595ebb25f7652da3f22322c007b6fed26846a40685e"}, - {file = "pydantic-1.10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c33602f93bfb67779f9c507e4d69451664524389546bacfe1bee13cae6dc7488"}, - {file = "pydantic-1.10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5760e164b807a48a8f25f8aa1a6d857e6ce62e7ec83ea5d5c5a802eac81bad41"}, - {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6eb843dcc411b6a2237a694f5e1d649fc66c6064d02b204a7e9d194dff81eb4b"}, - {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b8795290deaae348c4eba0cebb196e1c6b98bdbe7f50b2d0d9a4a99716342fe"}, - {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e0bedafe4bc165ad0a56ac0bd7695df25c50f76961da29c050712596cf092d6d"}, - {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2e05aed07fa02231dbf03d0adb1be1d79cabb09025dd45aa094aa8b4e7b9dcda"}, - {file = "pydantic-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:c1ba1afb396148bbc70e9eaa8c06c1716fdddabaf86e7027c5988bae2a829ab6"}, - {file = "pydantic-1.10.2-py3-none-any.whl", hash = "sha256:1b6ee725bd6e83ec78b1aa32c5b1fa67a3a65badddde3976bca5fe4568f27709"}, - {file = "pydantic-1.10.2.tar.gz", hash = "sha256:91b8e218852ef6007c2b98cd861601c6a09f1aa32bbbb74fab5b1c33d4a1e410"}, + {file = "pydantic-1.10.13-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:efff03cc7a4f29d9009d1c96ceb1e7a70a65cfe86e89d34e4a5f2ab1e5693737"}, + {file = "pydantic-1.10.13-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3ecea2b9d80e5333303eeb77e180b90e95eea8f765d08c3d278cd56b00345d01"}, + {file = "pydantic-1.10.13-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1740068fd8e2ef6eb27a20e5651df000978edce6da6803c2bef0bc74540f9548"}, + {file = "pydantic-1.10.13-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84bafe2e60b5e78bc64a2941b4c071a4b7404c5c907f5f5a99b0139781e69ed8"}, + {file = "pydantic-1.10.13-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:bc0898c12f8e9c97f6cd44c0ed70d55749eaf783716896960b4ecce2edfd2d69"}, + {file = "pydantic-1.10.13-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:654db58ae399fe6434e55325a2c3e959836bd17a6f6a0b6ca8107ea0571d2e17"}, + {file = "pydantic-1.10.13-cp310-cp310-win_amd64.whl", hash = "sha256:75ac15385a3534d887a99c713aa3da88a30fbd6204a5cd0dc4dab3d770b9bd2f"}, + {file = "pydantic-1.10.13-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c553f6a156deb868ba38a23cf0df886c63492e9257f60a79c0fd8e7173537653"}, + {file = "pydantic-1.10.13-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5e08865bc6464df8c7d61439ef4439829e3ab62ab1669cddea8dd00cd74b9ffe"}, + {file = "pydantic-1.10.13-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e31647d85a2013d926ce60b84f9dd5300d44535a9941fe825dc349ae1f760df9"}, + {file = "pydantic-1.10.13-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:210ce042e8f6f7c01168b2d84d4c9eb2b009fe7bf572c2266e235edf14bacd80"}, + {file = "pydantic-1.10.13-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8ae5dd6b721459bfa30805f4c25880e0dd78fc5b5879f9f7a692196ddcb5a580"}, + {file = "pydantic-1.10.13-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f8e81fc5fb17dae698f52bdd1c4f18b6ca674d7068242b2aff075f588301bbb0"}, + {file = "pydantic-1.10.13-cp311-cp311-win_amd64.whl", hash = "sha256:61d9dce220447fb74f45e73d7ff3b530e25db30192ad8d425166d43c5deb6df0"}, + {file = "pydantic-1.10.13-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4b03e42ec20286f052490423682016fd80fda830d8e4119f8ab13ec7464c0132"}, + {file = "pydantic-1.10.13-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f59ef915cac80275245824e9d771ee939133be38215555e9dc90c6cb148aaeb5"}, + {file = "pydantic-1.10.13-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5a1f9f747851338933942db7af7b6ee8268568ef2ed86c4185c6ef4402e80ba8"}, + {file = "pydantic-1.10.13-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:97cce3ae7341f7620a0ba5ef6cf043975cd9d2b81f3aa5f4ea37928269bc1b87"}, + {file = "pydantic-1.10.13-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:854223752ba81e3abf663d685f105c64150873cc6f5d0c01d3e3220bcff7d36f"}, + {file = "pydantic-1.10.13-cp37-cp37m-win_amd64.whl", hash = "sha256:b97c1fac8c49be29486df85968682b0afa77e1b809aff74b83081cc115e52f33"}, + {file = "pydantic-1.10.13-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c958d053453a1c4b1c2062b05cd42d9d5c8eb67537b8d5a7e3c3032943ecd261"}, + {file = "pydantic-1.10.13-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4c5370a7edaac06daee3af1c8b1192e305bc102abcbf2a92374b5bc793818599"}, + {file = "pydantic-1.10.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d6f6e7305244bddb4414ba7094ce910560c907bdfa3501e9db1a7fd7eaea127"}, + {file = "pydantic-1.10.13-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3a3c792a58e1622667a2837512099eac62490cdfd63bd407993aaf200a4cf1f"}, + {file = "pydantic-1.10.13-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:c636925f38b8db208e09d344c7aa4f29a86bb9947495dd6b6d376ad10334fb78"}, + {file = "pydantic-1.10.13-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:678bcf5591b63cc917100dc50ab6caebe597ac67e8c9ccb75e698f66038ea953"}, + {file = "pydantic-1.10.13-cp38-cp38-win_amd64.whl", hash = "sha256:6cf25c1a65c27923a17b3da28a0bdb99f62ee04230c931d83e888012851f4e7f"}, + {file = "pydantic-1.10.13-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8ef467901d7a41fa0ca6db9ae3ec0021e3f657ce2c208e98cd511f3161c762c6"}, + {file = "pydantic-1.10.13-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:968ac42970f57b8344ee08837b62f6ee6f53c33f603547a55571c954a4225691"}, + {file = "pydantic-1.10.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9849f031cf8a2f0a928fe885e5a04b08006d6d41876b8bbd2fc68a18f9f2e3fd"}, + {file = "pydantic-1.10.13-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:56e3ff861c3b9c6857579de282ce8baabf443f42ffba355bf070770ed63e11e1"}, + {file = "pydantic-1.10.13-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f00790179497767aae6bcdc36355792c79e7bbb20b145ff449700eb076c5f96"}, + {file = "pydantic-1.10.13-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:75b297827b59bc229cac1a23a2f7a4ac0031068e5be0ce385be1462e7e17a35d"}, + {file = "pydantic-1.10.13-cp39-cp39-win_amd64.whl", hash = "sha256:e70ca129d2053fb8b728ee7d1af8e553a928d7e301a311094b8a0501adc8763d"}, + {file = "pydantic-1.10.13-py3-none-any.whl", hash = "sha256:b87326822e71bd5f313e7d3bfdc77ac3247035ac10b0c0618bd99dcf95b1e687"}, + {file = "pydantic-1.10.13.tar.gz", hash = "sha256:32c8b48dcd3b2ac4e78b0ba4af3a2c2eb6048cb75202f0ea7b34feb740efc340"}, ] [package.dependencies] python-dotenv = {version = ">=0.10.4", optional = true, markers = "extra == \"dotenv\""} -typing-extensions = ">=4.1.0" +typing-extensions = ">=4.2.0" [package.extras] dotenv = ["python-dotenv (>=0.10.4)"] @@ -1434,18 +1459,16 @@ email = ["email-validator (>=1.0.3)"] [[package]] name = "pytest" -version = "7.2.0" +version = "7.4.2" description = "pytest: simple powerful testing with Python" -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, - {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, + {file = "pytest-7.4.2-py3-none-any.whl", hash = "sha256:1d881c6124e08ff0a1bb75ba3ec0bfd8b5354a01c194ddd5a0a870a48d99b002"}, + {file = "pytest-7.4.2.tar.gz", hash = "sha256:a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069"}, ] [package.dependencies] -attrs = ">=19.2.0" colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" @@ -1454,36 +1477,69 @@ pluggy = ">=0.12,<2.0" tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] +testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "pytest-asyncio" -version = "0.19.0" +version = "0.21.1" description = "Pytest support for asyncio" -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "pytest-asyncio-0.19.0.tar.gz", hash = "sha256:ac4ebf3b6207259750bc32f4c1d8fcd7e79739edbc67ad0c58dd150b1d072fed"}, - {file = "pytest_asyncio-0.19.0-py3-none-any.whl", hash = "sha256:7a97e37cfe1ed296e2e84941384bdd37c376453912d397ed39293e0916f521fa"}, + {file = "pytest-asyncio-0.21.1.tar.gz", hash = "sha256:40a7eae6dded22c7b604986855ea48400ab15b069ae38116e8c01238e9eeb64d"}, + {file = "pytest_asyncio-0.21.1-py3-none-any.whl", hash = "sha256:8666c1c8ac02631d7c51ba282e0c69a8a452b211ffedf2599099845da5c5c37b"}, ] [package.dependencies] -pytest = ">=6.1.0" +pytest = ">=7.0.0" [package.extras] +docs = ["sphinx (>=5.3)", "sphinx-rtd-theme (>=1.0)"] testing = ["coverage (>=6.2)", "flaky (>=3.5.0)", "hypothesis (>=5.7.1)", "mypy (>=0.931)", "pytest-trio (>=0.7.0)"] +[[package]] +name = "pytest-xdist" +version = "3.3.1" +description = "pytest xdist plugin for distributed testing, most importantly across multiple CPUs" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-xdist-3.3.1.tar.gz", hash = "sha256:d5ee0520eb1b7bcca50a60a518ab7a7707992812c578198f8b44fdfac78e8c93"}, + {file = "pytest_xdist-3.3.1-py3-none-any.whl", hash = "sha256:ff9daa7793569e6a68544850fd3927cd257cc03a7ef76c95e86915355e82b5f2"}, +] + +[package.dependencies] +execnet = ">=1.1" +pytest = ">=6.2.0" + +[package.extras] +psutil = ["psutil (>=3.0)"] +setproctitle = ["setproctitle"] +testing = ["filelock"] + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] + +[package.dependencies] +six = ">=1.5" + [[package]] name = "python-dotenv" -version = "0.21.0" +version = "1.0.0" description = "Read key-value pairs from a .env file and set them as environment variables" -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "python-dotenv-0.21.0.tar.gz", hash = "sha256:b77d08274639e3d34145dfa6c7008e66df0f04b7be7a75fd0d5292c191d79045"}, - {file = "python_dotenv-0.21.0-py3-none-any.whl", hash = "sha256:1684eb44636dd462b66c3ee016599815514527ad99965de77f43e0944634a7e5"}, + {file = "python-dotenv-1.0.0.tar.gz", hash = "sha256:a8df96034aae6d2d50a4ebe8216326c61c3eb64836776504fcca410e5937a3ba"}, + {file = "python_dotenv-1.0.0-py3-none-any.whl", hash = "sha256:f5971a9226b701070a4bf2c38c89e5a3f0d64de8debda981d1db98583009122a"}, ] [package.extras] @@ -1491,95 +1547,101 @@ cli = ["click (>=5.0)"] [[package]] name = "pywin32" -version = "305" +version = "306" description = "Python for Window Extensions" -category = "main" optional = false python-versions = "*" files = [ - {file = "pywin32-305-cp310-cp310-win32.whl", hash = "sha256:421f6cd86e84bbb696d54563c48014b12a23ef95a14e0bdba526be756d89f116"}, - {file = "pywin32-305-cp310-cp310-win_amd64.whl", hash = "sha256:73e819c6bed89f44ff1d690498c0a811948f73777e5f97c494c152b850fad478"}, - {file = "pywin32-305-cp310-cp310-win_arm64.whl", hash = "sha256:742eb905ce2187133a29365b428e6c3b9001d79accdc30aa8969afba1d8470f4"}, - {file = "pywin32-305-cp311-cp311-win32.whl", hash = "sha256:19ca459cd2e66c0e2cc9a09d589f71d827f26d47fe4a9d09175f6aa0256b51c2"}, - {file = "pywin32-305-cp311-cp311-win_amd64.whl", hash = "sha256:326f42ab4cfff56e77e3e595aeaf6c216712bbdd91e464d167c6434b28d65990"}, - {file = "pywin32-305-cp311-cp311-win_arm64.whl", hash = "sha256:4ecd404b2c6eceaca52f8b2e3e91b2187850a1ad3f8b746d0796a98b4cea04db"}, - {file = "pywin32-305-cp36-cp36m-win32.whl", hash = "sha256:48d8b1659284f3c17b68587af047d110d8c44837736b8932c034091683e05863"}, - {file = "pywin32-305-cp36-cp36m-win_amd64.whl", hash = "sha256:13362cc5aa93c2beaf489c9c9017c793722aeb56d3e5166dadd5ef82da021fe1"}, - {file = "pywin32-305-cp37-cp37m-win32.whl", hash = "sha256:a55db448124d1c1484df22fa8bbcbc45c64da5e6eae74ab095b9ea62e6d00496"}, - {file = "pywin32-305-cp37-cp37m-win_amd64.whl", hash = "sha256:109f98980bfb27e78f4df8a51a8198e10b0f347257d1e265bb1a32993d0c973d"}, - {file = "pywin32-305-cp38-cp38-win32.whl", hash = "sha256:9dd98384da775afa009bc04863426cb30596fd78c6f8e4e2e5bbf4edf8029504"}, - {file = "pywin32-305-cp38-cp38-win_amd64.whl", hash = "sha256:56d7a9c6e1a6835f521788f53b5af7912090674bb84ef5611663ee1595860fc7"}, - {file = "pywin32-305-cp39-cp39-win32.whl", hash = "sha256:9d968c677ac4d5cbdaa62fd3014ab241718e619d8e36ef8e11fb930515a1e918"}, - {file = "pywin32-305-cp39-cp39-win_amd64.whl", hash = "sha256:50768c6b7c3f0b38b7fb14dd4104da93ebced5f1a50dc0e834594bff6fbe1271"}, + {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"}, + {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"}, + {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"}, + {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"}, + {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"}, + {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"}, + {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"}, + {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"}, + {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"}, + {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"}, + {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"}, + {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"}, + {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"}, + {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"}, ] [[package]] name = "pywin32-ctypes" -version = "0.2.0" -description = "" -category = "main" +version = "0.2.2" +description = "A (partial) reimplementation of pywin32 using ctypes/cffi" optional = false -python-versions = "*" +python-versions = ">=3.6" files = [ - {file = "pywin32-ctypes-0.2.0.tar.gz", hash = "sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942"}, - {file = "pywin32_ctypes-0.2.0-py2.py3-none-any.whl", hash = "sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98"}, + {file = "pywin32-ctypes-0.2.2.tar.gz", hash = "sha256:3426e063bdd5fd4df74a14fa3cf80a0b42845a87e1d1e81f6549f9daec593a60"}, + {file = "pywin32_ctypes-0.2.2-py3-none-any.whl", hash = "sha256:bf490a1a709baf35d688fe0ecf980ed4de11d2b3e37b51e5442587a75d9957e7"}, ] [[package]] name = "pyyaml" -version = "6.0" +version = "6.0.1" description = "YAML parser and emitter for Python" -category = "main" optional = false python-versions = ">=3.6" files = [ - {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, - {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, - {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, - {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, - {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"}, - {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"}, - {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"}, - {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"}, - {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, - {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, - {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, - {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, - {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, - {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, - {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, - {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, - {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, - {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, - {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, - {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, + {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, + {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, + {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, + {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, + {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, + {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, + {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, + {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, + {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, + {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, + {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, + {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, ] [[package]] name = "questionary" version = "1.10.0" description = "Python library to build pretty command line user prompts ⭐️" -category = "dev" optional = false python-versions = ">=3.6,<4.0" files = [ @@ -1595,31 +1657,46 @@ docs = ["Sphinx (>=3.3,<4.0)", "sphinx-autobuild (>=2020.9.1,<2021.0.0)", "sphin [[package]] name = "requests" -version = "2.28.1" +version = "2.31.0" description = "Python HTTP for Humans." -category = "main" optional = false -python-versions = ">=3.7, <4" +python-versions = ">=3.7" files = [ - {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, - {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, + {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, + {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, ] [package.dependencies] certifi = ">=2017.4.17" -charset-normalizer = ">=2,<3" +charset-normalizer = ">=2,<4" idna = ">=2.5,<4" -urllib3 = ">=1.21.1,<1.27" +urllib3 = ">=1.21.1,<3" [package.extras] socks = ["PySocks (>=1.5.6,!=1.5.7)"] use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +[[package]] +name = "s3transfer" +version = "0.6.2" +description = "An Amazon S3 Transfer Manager" +optional = false +python-versions = ">= 3.7" +files = [ + {file = "s3transfer-0.6.2-py3-none-any.whl", hash = "sha256:b014be3a8a2aab98cfe1abc7229cc5a9a0cf05eb9c1f2b86b230fd8df3f78084"}, + {file = "s3transfer-0.6.2.tar.gz", hash = "sha256:cab66d3380cca3e70939ef2255d01cd8aece6a4907a9528740f668c4b0611861"}, +] + +[package.dependencies] +botocore = ">=1.12.36,<2.0a.0" + +[package.extras] +crt = ["botocore[crt] (>=1.20.29,<2.0a.0)"] + [[package]] name = "secretstorage" version = "3.3.3" description = "Python bindings to FreeDesktop.org Secret Service API" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1635,7 +1712,6 @@ jeepney = ">=0.6" name = "setproctitle" version = "1.3.2" description = "A Python module to customize the process title" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1716,11 +1792,21 @@ files = [ [package.extras] test = ["pytest"] +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] + [[package]] name = "sniffio" version = "1.3.0" description = "Sniff out which async library your code is running under" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1732,7 +1818,6 @@ files = [ name = "sortedcontainers" version = "2.4.0" description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" -category = "main" optional = false python-versions = "*" files = [ @@ -1742,53 +1827,59 @@ files = [ [[package]] name = "sqlalchemy" -version = "1.4.44" +version = "1.4.49" description = "Database Abstraction Library" -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ - {file = "SQLAlchemy-1.4.44-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:da60b98b0f6f0df9fbf8b72d67d13b73aa8091923a48af79a951d4088530a239"}, - {file = "SQLAlchemy-1.4.44-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:95f4f8d62589755b507218f2e3189475a4c1f5cc9db2aec772071a7dc6cd5726"}, - {file = "SQLAlchemy-1.4.44-cp27-cp27m-win32.whl", hash = "sha256:afd1ac99179d1864a68c06b31263a08ea25a49df94e272712eb2824ef151e294"}, - {file = "SQLAlchemy-1.4.44-cp27-cp27m-win_amd64.whl", hash = "sha256:f8e5443295b218b08bef8eb85d31b214d184b3690d99a33b7bd8e5591e2b0aa1"}, - {file = "SQLAlchemy-1.4.44-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:53f90a2374f60e703c94118d21533765412da8225ba98659de7dd7998641ab17"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:65a0ad931944fcb0be12a8e0ac322dbd3ecf17c53f088bc10b6da8f0caac287b"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b185041a4dc5c685283ea98c2f67bbfa47bb28e4a4f5b27ebf40684e7a9f8"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:80ead36fb1d676cc019586ffdc21c7e906ce4bf243fe4021e4973dae332b6038"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68e0cd5d32a32c4395168d42f2fefbb03b817ead3a8f3704b8bd5697c0b26c24"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-win32.whl", hash = "sha256:ae1ed1ebc407d2f66c6f0ec44ef7d56e3f455859df5494680e2cf89dad8e3ae0"}, - {file = "SQLAlchemy-1.4.44-cp310-cp310-win_amd64.whl", hash = "sha256:6f0ea4d7348feb5e5d0bf317aace92e28398fa9a6e38b7be9ec1f31aad4a8039"}, - {file = "SQLAlchemy-1.4.44-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f5e8ed9cde48b76318ab989deeddc48f833d2a6a7b7c393c49b704f67dedf01d"}, - {file = "SQLAlchemy-1.4.44-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c857676d810ca196be73c98eb839125d6fa849bfa3589be06201a6517f9961c"}, - {file = "SQLAlchemy-1.4.44-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c56e6899fa6e767e4be5d106941804a4201c5cb9620a409c0b80448ec70b656"}, - {file = "SQLAlchemy-1.4.44-cp311-cp311-win32.whl", hash = "sha256:c46322354c58d4dc039a2c982d28284330f8919f31206894281f4b595b9d8dbe"}, - {file = "SQLAlchemy-1.4.44-cp311-cp311-win_amd64.whl", hash = "sha256:7313e4acebb9ae88dbde14a8a177467a7625b7449306c03a3f9f309b30e163d0"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:17aee7bfcef7bf0dea92f10e5dfdd67418dcf6fe0759f520e168b605855c003e"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9470633395e5f24d6741b4c8a6e905bce405a28cf417bba4ccbaadf3dab0111d"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:393f51a09778e8984d735b59a810731394308b4038acdb1635397c2865dae2b6"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7e3b9e01fdbe1ce3a165cc7e1ff52b24813ee79c6df6dee0d1e13888a97817e"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-win32.whl", hash = "sha256:6a06c2506c41926d2769f7968759995f2505e31c5b5a0821e43ca5a3ddb0e8ae"}, - {file = "SQLAlchemy-1.4.44-cp36-cp36m-win_amd64.whl", hash = "sha256:3ca21b35b714ce36f4b8d1ee8d15f149db8eb43a472cf71600bf18dae32286e7"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:3cbdbed8cdcae0f83640a9c44fa02b45a6c61e149c58d45a63c9581aba62850f"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a22208c1982f1fe2ae82e5e4c3d4a6f2445a7a0d65fb7983a3d7cbbe3983f5a4"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d3b9ac11f36ab9a726097fba7c7f6384f0129aedb017f1d4d1d4fce9052a1320"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d654870a66027af3a26df1372cf7f002e161c6768ebe4c9c6fdc0da331cb5173"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-win32.whl", hash = "sha256:0be9b479c5806cece01f1581726573a8d6515f8404e082c375b922c45cfc2a7b"}, - {file = "SQLAlchemy-1.4.44-cp37-cp37m-win_amd64.whl", hash = "sha256:3eba07f740488c3a125f17c092a81eeae24a6c7ec32ac9dbc52bf7afaf0c4f16"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:ad5f966623905ee33694680dda1b735544c99c7638f216045d21546d3d8c6f5b"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f68eab46649504eb95be36ca529aea16cd199f080726c28cbdbcbf23d20b2a2"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:21f3df74a0ab39e1255e94613556e33c1dc3b454059fe0b365ec3bbb9ed82e4a"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8080bc51a775627865e0f1dbfc0040ff4ace685f187f6036837e1727ba2ed10"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-win32.whl", hash = "sha256:b6a337a2643a41476fb6262059b8740f4b9a2ec29bf00ffb18c18c080f6e0aed"}, - {file = "SQLAlchemy-1.4.44-cp38-cp38-win_amd64.whl", hash = "sha256:b737fbeb2f78926d1f59964feb287bbbd050e7904766f87c8ce5cfb86e6d840c"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:c9aa372b295a36771cffc226b6517df3011a7d146ac22d19fa6a75f1cdf9d7e6"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:237067ba0ef45a518b64606e1807f7229969ad568288b110ed5f0ca714a3ed3a"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6d7e1b28342b45f19e3dea7873a9479e4a57e15095a575afca902e517fb89652"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94c0093678001f5d79f2dcbf3104c54d6c89e41ab50d619494c503a4d3f1aef2"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-win32.whl", hash = "sha256:7cf7c7adbf4417e3f46fc5a2dbf8395a5a69698217337086888f79700a12e93a"}, - {file = "SQLAlchemy-1.4.44-cp39-cp39-win_amd64.whl", hash = "sha256:d3b6d4588994da73567bb00af9d7224a16c8027865a8aab53ae9be83f9b7cbd1"}, - {file = "SQLAlchemy-1.4.44.tar.gz", hash = "sha256:2dda5f96719ae89b3ec0f1b79698d86eb9aecb1d54e990abb3fdd92c04b46a90"}, + {file = "SQLAlchemy-1.4.49-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:2e126cf98b7fd38f1e33c64484406b78e937b1a280e078ef558b95bf5b6895f6"}, + {file = "SQLAlchemy-1.4.49-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:03db81b89fe7ef3857b4a00b63dedd632d6183d4ea5a31c5d8a92e000a41fc71"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:95b9df9afd680b7a3b13b38adf6e3a38995da5e162cc7524ef08e3be4e5ed3e1"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a63e43bf3f668c11bb0444ce6e809c1227b8f067ca1068898f3008a273f52b09"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca46de16650d143a928d10842939dab208e8d8c3a9a8757600cae9b7c579c5cd"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f835c050ebaa4e48b18403bed2c0fda986525896efd76c245bdd4db995e51a4c"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c21b172dfb22e0db303ff6419451f0cac891d2e911bb9fbf8003d717f1bcf91"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-win32.whl", hash = "sha256:5fb1ebdfc8373b5a291485757bd6431de8d7ed42c27439f543c81f6c8febd729"}, + {file = "SQLAlchemy-1.4.49-cp310-cp310-win_amd64.whl", hash = "sha256:f8a65990c9c490f4651b5c02abccc9f113a7f56fa482031ac8cb88b70bc8ccaa"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8923dfdf24d5aa8a3adb59723f54118dd4fe62cf59ed0d0d65d940579c1170a4"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9ab2c507a7a439f13ca4499db6d3f50423d1d65dc9b5ed897e70941d9e135b0"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5debe7d49b8acf1f3035317e63d9ec8d5e4d904c6e75a2a9246a119f5f2fdf3d"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-win32.whl", hash = "sha256:82b08e82da3756765c2e75f327b9bf6b0f043c9c3925fb95fb51e1567fa4ee87"}, + {file = "SQLAlchemy-1.4.49-cp311-cp311-win_amd64.whl", hash = "sha256:171e04eeb5d1c0d96a544caf982621a1711d078dbc5c96f11d6469169bd003f1"}, + {file = "SQLAlchemy-1.4.49-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f23755c384c2969ca2f7667a83f7c5648fcf8b62a3f2bbd883d805454964a800"}, + {file = "SQLAlchemy-1.4.49-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8396e896e08e37032e87e7fbf4a15f431aa878c286dc7f79e616c2feacdb366c"}, + {file = "SQLAlchemy-1.4.49-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66da9627cfcc43bbdebd47bfe0145bb662041472393c03b7802253993b6b7c90"}, + {file = "SQLAlchemy-1.4.49-cp312-cp312-win32.whl", hash = "sha256:9a06e046ffeb8a484279e54bda0a5abfd9675f594a2e38ef3133d7e4d75b6214"}, + {file = "SQLAlchemy-1.4.49-cp312-cp312-win_amd64.whl", hash = "sha256:7cf8b90ad84ad3a45098b1c9f56f2b161601e4670827d6b892ea0e884569bd1d"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:36e58f8c4fe43984384e3fbe6341ac99b6b4e083de2fe838f0fdb91cebe9e9cb"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b31e67ff419013f99ad6f8fc73ee19ea31585e1e9fe773744c0f3ce58c039c30"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ebc22807a7e161c0d8f3da34018ab7c97ef6223578fcdd99b1d3e7ed1100a5db"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c14b29d9e1529f99efd550cd04dbb6db6ba5d690abb96d52de2bff4ed518bc95"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c40f3470e084d31247aea228aa1c39bbc0904c2b9ccbf5d3cfa2ea2dac06f26d"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-win32.whl", hash = "sha256:706bfa02157b97c136547c406f263e4c6274a7b061b3eb9742915dd774bbc264"}, + {file = "SQLAlchemy-1.4.49-cp36-cp36m-win_amd64.whl", hash = "sha256:a7f7b5c07ae5c0cfd24c2db86071fb2a3d947da7bd487e359cc91e67ac1c6d2e"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-macosx_11_0_x86_64.whl", hash = "sha256:4afbbf5ef41ac18e02c8dc1f86c04b22b7a2125f2a030e25bbb4aff31abb224b"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24e300c0c2147484a002b175f4e1361f102e82c345bf263242f0449672a4bccf"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:393cd06c3b00b57f5421e2133e088df9cabcececcea180327e43b937b5a7caa5"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:201de072b818f8ad55c80d18d1a788729cccf9be6d9dc3b9d8613b053cd4836d"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7653ed6817c710d0c95558232aba799307d14ae084cc9b1f4c389157ec50df5c"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-win32.whl", hash = "sha256:647e0b309cb4512b1f1b78471fdaf72921b6fa6e750b9f891e09c6e2f0e5326f"}, + {file = "SQLAlchemy-1.4.49-cp37-cp37m-win_amd64.whl", hash = "sha256:ab73ed1a05ff539afc4a7f8cf371764cdf79768ecb7d2ec691e3ff89abbc541e"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:37ce517c011560d68f1ffb28af65d7e06f873f191eb3a73af5671e9c3fada08a"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1878ce508edea4a879015ab5215546c444233881301e97ca16fe251e89f1c55"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95ab792ca493891d7a45a077e35b418f68435efb3e1706cb8155e20e86a9013c"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0e8e608983e6f85d0852ca61f97e521b62e67969e6e640fe6c6b575d4db68557"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ccf956da45290df6e809ea12c54c02ace7f8ff4d765d6d3dfb3655ee876ce58d"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-win32.whl", hash = "sha256:f167c8175ab908ce48bd6550679cc6ea20ae169379e73c7720a28f89e53aa532"}, + {file = "SQLAlchemy-1.4.49-cp38-cp38-win_amd64.whl", hash = "sha256:45806315aae81a0c202752558f0df52b42d11dd7ba0097bf71e253b4215f34f4"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:b6d0c4b15d65087738a6e22e0ff461b407533ff65a73b818089efc8eb2b3e1de"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a843e34abfd4c797018fd8d00ffffa99fd5184c421f190b6ca99def4087689bd"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:738d7321212941ab19ba2acf02a68b8ee64987b248ffa2101630e8fccb549e0d"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1c890421651b45a681181301b3497e4d57c0d01dc001e10438a40e9a9c25ee77"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d26f280b8f0a8f497bc10573849ad6dc62e671d2468826e5c748d04ed9e670d5"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-win32.whl", hash = "sha256:ec2268de67f73b43320383947e74700e95c6770d0c68c4e615e9897e46296294"}, + {file = "SQLAlchemy-1.4.49-cp39-cp39-win_amd64.whl", hash = "sha256:bbdf16372859b8ed3f4d05f925a984771cd2abd18bd187042f24be4886c2a15f"}, + {file = "SQLAlchemy-1.4.49.tar.gz", hash = "sha256:06ff25cbae30c396c4b7737464f2a7fc37a67b7da409993b182b024cec80aed9"}, ] [package.dependencies] @@ -1819,7 +1910,6 @@ sqlcipher = ["sqlcipher3-binary"] name = "sqlalchemy-utils" version = "0.38.3" description = "Various utility functions for SQLAlchemy." -category = "main" optional = false python-versions = "~=3.6" files = [ @@ -1848,7 +1938,6 @@ url = ["furl (>=0.4.1)"] name = "starlette" version = "0.19.1" description = "The little ASGI library that shines." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1864,14 +1953,13 @@ full = ["itsdangerous", "jinja2", "python-multipart", "pyyaml", "requests"] [[package]] name = "termcolor" -version = "2.1.0" +version = "2.3.0" description = "ANSI color formatting for output in terminal" -category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "termcolor-2.1.0-py3-none-any.whl", hash = "sha256:91dd04fdf661b89d7169cefd35f609b19ca931eb033687eaa647cef1ff177c49"}, - {file = "termcolor-2.1.0.tar.gz", hash = "sha256:b80df54667ce4f48c03fe35df194f052dc27a541ebbf2544e4d6b47b5d6949c4"}, + {file = "termcolor-2.3.0-py3-none-any.whl", hash = "sha256:3afb05607b89aed0ffe25202399ee0867ad4d3cb4180d98aaf8eefa6a5f7d475"}, + {file = "termcolor-2.3.0.tar.gz", hash = "sha256:b5b08f68937f138fe92f6c089b99f1e2da0ae56c52b78bf7075fd95420fd9a5a"}, ] [package.extras] @@ -1881,7 +1969,6 @@ tests = ["pytest", "pytest-cov"] name = "tomli" version = "2.0.1" description = "A lil' TOML parser" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1891,50 +1978,47 @@ files = [ [[package]] name = "tomlkit" -version = "0.11.6" +version = "0.12.1" description = "Style preserving TOML library" -category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "tomlkit-0.11.6-py3-none-any.whl", hash = "sha256:07de26b0d8cfc18f871aec595fda24d95b08fef89d147caa861939f37230bf4b"}, - {file = "tomlkit-0.11.6.tar.gz", hash = "sha256:71b952e5721688937fb02cf9d354dbcf0785066149d2855e44531ebdd2b65d73"}, + {file = "tomlkit-0.12.1-py3-none-any.whl", hash = "sha256:712cbd236609acc6a3e2e97253dfc52d4c2082982a88f61b640ecf0817eab899"}, + {file = "tomlkit-0.12.1.tar.gz", hash = "sha256:38e1ff8edb991273ec9f6181244a6a391ac30e9f5098e7535640ea6be97a7c86"}, ] [[package]] name = "typing-extensions" -version = "4.5.0" +version = "4.7.1" description = "Backported and Experimental Type Hints for Python 3.7+" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "typing_extensions-4.5.0-py3-none-any.whl", hash = "sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4"}, - {file = "typing_extensions-4.5.0.tar.gz", hash = "sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb"}, + {file = "typing_extensions-4.7.1-py3-none-any.whl", hash = "sha256:440d5dd3af93b060174bf433bccd69b0babc3b15b1a8dca43789fd7f61514b36"}, + {file = "typing_extensions-4.7.1.tar.gz", hash = "sha256:b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2"}, ] [[package]] name = "urllib3" -version = "1.26.12" +version = "2.0.6" description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4" +python-versions = ">=3.7" files = [ - {file = "urllib3-1.26.12-py2.py3-none-any.whl", hash = "sha256:b930dd878d5a8afb066a637fbb35144fe7901e3b209d1cd4f524bd0e9deee997"}, - {file = "urllib3-1.26.12.tar.gz", hash = "sha256:3fa96cf423e6987997fc326ae8df396db2a8b7c667747d47ddd8ecba91f4a74e"}, + {file = "urllib3-2.0.6-py3-none-any.whl", hash = "sha256:7a7c7003b000adf9e7ca2a377c9688bbc54ed41b985789ed576570342a375cd2"}, + {file = "urllib3-2.0.6.tar.gz", hash = "sha256:b19e1a85d206b56d7df1d5e683df4a7725252a964e3993648dd0fb5a1c157564"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +secure = ["certifi", "cryptography (>=1.9)", "idna (>=2.0.0)", "pyopenssl (>=17.1.0)", "urllib3-secure-extra"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uvicorn" version = "0.18.3" description = "The lightning-fast ASGI server." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1953,7 +2037,6 @@ standard = ["colorama (>=0.4)", "httptools (>=0.4.0)", "python-dotenv (>=0.13)", name = "watchdog" version = "2.2.0" description = "Filesystem events monitoring" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1992,98 +2075,110 @@ watchmedo = ["PyYAML (>=3.10)"] [[package]] name = "wcwidth" -version = "0.2.5" +version = "0.2.8" description = "Measures the displayed width of unicode strings in a terminal" -category = "dev" optional = false python-versions = "*" files = [ - {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, - {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, + {file = "wcwidth-0.2.8-py2.py3-none-any.whl", hash = "sha256:77f719e01648ed600dfa5402c347481c0992263b81a027344f3e1ba25493a704"}, + {file = "wcwidth-0.2.8.tar.gz", hash = "sha256:8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4"}, ] [[package]] name = "wheel" -version = "0.40.0" +version = "0.41.2" description = "A built-package format for Python" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "wheel-0.40.0-py3-none-any.whl", hash = "sha256:d236b20e7cb522daf2390fa84c55eea81c5c30190f90f29ae2ca1ad8355bf247"}, - {file = "wheel-0.40.0.tar.gz", hash = "sha256:cd1196f3faee2b31968d626e1731c94f99cbdb67cf5a46e4f5656cbee7738873"}, + {file = "wheel-0.41.2-py3-none-any.whl", hash = "sha256:75909db2664838d015e3d9139004ee16711748a52c8f336b52882266540215d8"}, + {file = "wheel-0.41.2.tar.gz", hash = "sha256:0c5ac5ff2afb79ac23ab82bab027a0be7b5dbcf2e54dc50efe4bf507de1f7985"}, ] [package.extras] -test = ["pytest (>=6.0.0)"] +test = ["pytest (>=6.0.0)", "setuptools (>=65)"] [[package]] name = "yarl" -version = "1.8.1" +version = "1.9.2" description = "Yet another URL library" -category = "main" optional = false python-versions = ">=3.7" files = [ - {file = "yarl-1.8.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:abc06b97407868ef38f3d172762f4069323de52f2b70d133d096a48d72215d28"}, - {file = "yarl-1.8.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:07b21e274de4c637f3e3b7104694e53260b5fc10d51fb3ec5fed1da8e0f754e3"}, - {file = "yarl-1.8.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9de955d98e02fab288c7718662afb33aab64212ecb368c5dc866d9a57bf48880"}, - {file = "yarl-1.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ec362167e2c9fd178f82f252b6d97669d7245695dc057ee182118042026da40"}, - {file = "yarl-1.8.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:20df6ff4089bc86e4a66e3b1380460f864df3dd9dccaf88d6b3385d24405893b"}, - {file = "yarl-1.8.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5999c4662631cb798496535afbd837a102859568adc67d75d2045e31ec3ac497"}, - {file = "yarl-1.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed19b74e81b10b592084a5ad1e70f845f0aacb57577018d31de064e71ffa267a"}, - {file = "yarl-1.8.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e4808f996ca39a6463f45182e2af2fae55e2560be586d447ce8016f389f626f"}, - {file = "yarl-1.8.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:2d800b9c2eaf0684c08be5f50e52bfa2aa920e7163c2ea43f4f431e829b4f0fd"}, - {file = "yarl-1.8.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6628d750041550c5d9da50bb40b5cf28a2e63b9388bac10fedd4f19236ef4957"}, - {file = "yarl-1.8.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:f5af52738e225fcc526ae64071b7e5342abe03f42e0e8918227b38c9aa711e28"}, - {file = "yarl-1.8.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:76577f13333b4fe345c3704811ac7509b31499132ff0181f25ee26619de2c843"}, - {file = "yarl-1.8.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0c03f456522d1ec815893d85fccb5def01ffaa74c1b16ff30f8aaa03eb21e453"}, - {file = "yarl-1.8.1-cp310-cp310-win32.whl", hash = "sha256:ea30a42dc94d42f2ba4d0f7c0ffb4f4f9baa1b23045910c0c32df9c9902cb272"}, - {file = "yarl-1.8.1-cp310-cp310-win_amd64.whl", hash = "sha256:9130ddf1ae9978abe63808b6b60a897e41fccb834408cde79522feb37fb72fb0"}, - {file = "yarl-1.8.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0ab5a138211c1c366404d912824bdcf5545ccba5b3ff52c42c4af4cbdc2c5035"}, - {file = "yarl-1.8.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0fb2cb4204ddb456a8e32381f9a90000429489a25f64e817e6ff94879d432fc"}, - {file = "yarl-1.8.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:85cba594433915d5c9a0d14b24cfba0339f57a2fff203a5d4fd070e593307d0b"}, - {file = "yarl-1.8.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1ca7e596c55bd675432b11320b4eacc62310c2145d6801a1f8e9ad160685a231"}, - {file = "yarl-1.8.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d0f77539733e0ec2475ddcd4e26777d08996f8cd55d2aef82ec4d3896687abda"}, - {file = "yarl-1.8.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:29e256649f42771829974e742061c3501cc50cf16e63f91ed8d1bf98242e5507"}, - {file = "yarl-1.8.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7fce6cbc6c170ede0221cc8c91b285f7f3c8b9fe28283b51885ff621bbe0f8ee"}, - {file = "yarl-1.8.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:59ddd85a1214862ce7c7c66457f05543b6a275b70a65de366030d56159a979f0"}, - {file = "yarl-1.8.1-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:12768232751689c1a89b0376a96a32bc7633c08da45ad985d0c49ede691f5c0d"}, - {file = "yarl-1.8.1-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:b19255dde4b4f4c32e012038f2c169bb72e7f081552bea4641cab4d88bc409dd"}, - {file = "yarl-1.8.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:6c8148e0b52bf9535c40c48faebb00cb294ee577ca069d21bd5c48d302a83780"}, - {file = "yarl-1.8.1-cp37-cp37m-win32.whl", hash = "sha256:de839c3a1826a909fdbfe05f6fe2167c4ab033f1133757b5936efe2f84904c07"}, - {file = "yarl-1.8.1-cp37-cp37m-win_amd64.whl", hash = "sha256:dd032e8422a52e5a4860e062eb84ac94ea08861d334a4bcaf142a63ce8ad4802"}, - {file = "yarl-1.8.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:19cd801d6f983918a3f3a39f3a45b553c015c5aac92ccd1fac619bd74beece4a"}, - {file = "yarl-1.8.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6347f1a58e658b97b0a0d1ff7658a03cb79bdbda0331603bed24dd7054a6dea1"}, - {file = "yarl-1.8.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7c0da7e44d0c9108d8b98469338705e07f4bb7dab96dbd8fa4e91b337db42548"}, - {file = "yarl-1.8.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5587bba41399854703212b87071c6d8638fa6e61656385875f8c6dff92b2e461"}, - {file = "yarl-1.8.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31a9a04ecccd6b03e2b0e12e82131f1488dea5555a13a4d32f064e22a6003cfe"}, - {file = "yarl-1.8.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:205904cffd69ae972a1707a1bd3ea7cded594b1d773a0ce66714edf17833cdae"}, - {file = "yarl-1.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea513a25976d21733bff523e0ca836ef1679630ef4ad22d46987d04b372d57fc"}, - {file = "yarl-1.8.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d0b51530877d3ad7a8d47b2fff0c8df3b8f3b8deddf057379ba50b13df2a5eae"}, - {file = "yarl-1.8.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d2b8f245dad9e331540c350285910b20dd913dc86d4ee410c11d48523c4fd546"}, - {file = "yarl-1.8.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ab2a60d57ca88e1d4ca34a10e9fb4ab2ac5ad315543351de3a612bbb0560bead"}, - {file = "yarl-1.8.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:449c957ffc6bc2309e1fbe67ab7d2c1efca89d3f4912baeb8ead207bb3cc1cd4"}, - {file = "yarl-1.8.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a165442348c211b5dea67c0206fc61366212d7082ba8118c8c5c1c853ea4d82e"}, - {file = "yarl-1.8.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b3ded839a5c5608eec8b6f9ae9a62cb22cd037ea97c627f38ae0841a48f09eae"}, - {file = "yarl-1.8.1-cp38-cp38-win32.whl", hash = "sha256:c1445a0c562ed561d06d8cbc5c8916c6008a31c60bc3655cdd2de1d3bf5174a0"}, - {file = "yarl-1.8.1-cp38-cp38-win_amd64.whl", hash = "sha256:56c11efb0a89700987d05597b08a1efcd78d74c52febe530126785e1b1a285f4"}, - {file = "yarl-1.8.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e80ed5a9939ceb6fda42811542f31c8602be336b1fb977bccb012e83da7e4936"}, - {file = "yarl-1.8.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6afb336e23a793cd3b6476c30f030a0d4c7539cd81649683b5e0c1b0ab0bf350"}, - {file = "yarl-1.8.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4c322cbaa4ed78a8aac89b2174a6df398faf50e5fc12c4c191c40c59d5e28357"}, - {file = "yarl-1.8.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fae37373155f5ef9b403ab48af5136ae9851151f7aacd9926251ab26b953118b"}, - {file = "yarl-1.8.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5395da939ffa959974577eff2cbfc24b004a2fb6c346918f39966a5786874e54"}, - {file = "yarl-1.8.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:076eede537ab978b605f41db79a56cad2e7efeea2aa6e0fa8f05a26c24a034fb"}, - {file = "yarl-1.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d1a50e461615747dd93c099f297c1994d472b0f4d2db8a64e55b1edf704ec1c"}, - {file = "yarl-1.8.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7de89c8456525650ffa2bb56a3eee6af891e98f498babd43ae307bd42dca98f6"}, - {file = "yarl-1.8.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4a88510731cd8d4befaba5fbd734a7dd914de5ab8132a5b3dde0bbd6c9476c64"}, - {file = "yarl-1.8.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2d93a049d29df172f48bcb09acf9226318e712ce67374f893b460b42cc1380ae"}, - {file = "yarl-1.8.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:21ac44b763e0eec15746a3d440f5e09ad2ecc8b5f6dcd3ea8cb4773d6d4703e3"}, - {file = "yarl-1.8.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:d0272228fabe78ce00a3365ffffd6f643f57a91043e119c289aaba202f4095b0"}, - {file = "yarl-1.8.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:99449cd5366fe4608e7226c6cae80873296dfa0cde45d9b498fefa1de315a09e"}, - {file = "yarl-1.8.1-cp39-cp39-win32.whl", hash = "sha256:8b0af1cf36b93cee99a31a545fe91d08223e64390c5ecc5e94c39511832a4bb6"}, - {file = "yarl-1.8.1-cp39-cp39-win_amd64.whl", hash = "sha256:de49d77e968de6626ba7ef4472323f9d2e5a56c1d85b7c0e2a190b2173d3b9be"}, - {file = "yarl-1.8.1.tar.gz", hash = "sha256:af887845b8c2e060eb5605ff72b6f2dd2aab7a761379373fd89d314f4752abbf"}, + {file = "yarl-1.9.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8c2ad583743d16ddbdf6bb14b5cd76bf43b0d0006e918809d5d4ddf7bde8dd82"}, + {file = "yarl-1.9.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:82aa6264b36c50acfb2424ad5ca537a2060ab6de158a5bd2a72a032cc75b9eb8"}, + {file = "yarl-1.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c0c77533b5ed4bcc38e943178ccae29b9bcf48ffd1063f5821192f23a1bd27b9"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee4afac41415d52d53a9833ebae7e32b344be72835bbb589018c9e938045a560"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9bf345c3a4f5ba7f766430f97f9cc1320786f19584acc7086491f45524a551ac"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2a96c19c52ff442a808c105901d0bdfd2e28575b3d5f82e2f5fd67e20dc5f4ea"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:891c0e3ec5ec881541f6c5113d8df0315ce5440e244a716b95f2525b7b9f3608"}, + {file = "yarl-1.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c3a53ba34a636a256d767c086ceb111358876e1fb6b50dfc4d3f4951d40133d5"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:566185e8ebc0898b11f8026447eacd02e46226716229cea8db37496c8cdd26e0"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2b0738fb871812722a0ac2154be1f049c6223b9f6f22eec352996b69775b36d4"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:32f1d071b3f362c80f1a7d322bfd7b2d11e33d2adf395cc1dd4df36c9c243095"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:e9fdc7ac0d42bc3ea78818557fab03af6181e076a2944f43c38684b4b6bed8e3"}, + {file = "yarl-1.9.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:56ff08ab5df8429901ebdc5d15941b59f6253393cb5da07b4170beefcf1b2528"}, + {file = "yarl-1.9.2-cp310-cp310-win32.whl", hash = "sha256:8ea48e0a2f931064469bdabca50c2f578b565fc446f302a79ba6cc0ee7f384d3"}, + {file = "yarl-1.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:50f33040f3836e912ed16d212f6cc1efb3231a8a60526a407aeb66c1c1956dde"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:646d663eb2232d7909e6601f1a9107e66f9791f290a1b3dc7057818fe44fc2b6"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:aff634b15beff8902d1f918012fc2a42e0dbae6f469fce134c8a0dc51ca423bb"}, + {file = "yarl-1.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a83503934c6273806aed765035716216cc9ab4e0364f7f066227e1aaea90b8d0"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b25322201585c69abc7b0e89e72790469f7dad90d26754717f3310bfe30331c2"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:22a94666751778629f1ec4280b08eb11815783c63f52092a5953faf73be24191"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ec53a0ea2a80c5cd1ab397925f94bff59222aa3cf9c6da938ce05c9ec20428d"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:159d81f22d7a43e6eabc36d7194cb53f2f15f498dbbfa8edc8a3239350f59fe7"}, + {file = "yarl-1.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:832b7e711027c114d79dffb92576acd1bd2decc467dec60e1cac96912602d0e6"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:95d2ecefbcf4e744ea952d073c6922e72ee650ffc79028eb1e320e732898d7e8"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d4e2c6d555e77b37288eaf45b8f60f0737c9efa3452c6c44626a5455aeb250b9"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:783185c75c12a017cc345015ea359cc801c3b29a2966c2655cd12b233bf5a2be"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:b8cc1863402472f16c600e3e93d542b7e7542a540f95c30afd472e8e549fc3f7"}, + {file = "yarl-1.9.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:822b30a0f22e588b32d3120f6d41e4ed021806418b4c9f0bc3048b8c8cb3f92a"}, + {file = "yarl-1.9.2-cp311-cp311-win32.whl", hash = "sha256:a60347f234c2212a9f0361955007fcf4033a75bf600a33c88a0a8e91af77c0e8"}, + {file = "yarl-1.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:be6b3fdec5c62f2a67cb3f8c6dbf56bbf3f61c0f046f84645cd1ca73532ea051"}, + {file = "yarl-1.9.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:38a3928ae37558bc1b559f67410df446d1fbfa87318b124bf5032c31e3447b74"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac9bb4c5ce3975aeac288cfcb5061ce60e0d14d92209e780c93954076c7c4367"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3da8a678ca8b96c8606bbb8bfacd99a12ad5dd288bc6f7979baddd62f71c63ef"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:13414591ff516e04fcdee8dc051c13fd3db13b673c7a4cb1350e6b2ad9639ad3"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf74d08542c3a9ea97bb8f343d4fcbd4d8f91bba5ec9d5d7f792dbe727f88938"}, + {file = "yarl-1.9.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e7221580dc1db478464cfeef9b03b95c5852cc22894e418562997df0d074ccc"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:494053246b119b041960ddcd20fd76224149cfea8ed8777b687358727911dd33"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:52a25809fcbecfc63ac9ba0c0fb586f90837f5425edfd1ec9f3372b119585e45"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:e65610c5792870d45d7b68c677681376fcf9cc1c289f23e8e8b39c1485384185"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:1b1bba902cba32cdec51fca038fd53f8beee88b77efc373968d1ed021024cc04"}, + {file = "yarl-1.9.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:662e6016409828ee910f5d9602a2729a8a57d74b163c89a837de3fea050c7582"}, + {file = "yarl-1.9.2-cp37-cp37m-win32.whl", hash = "sha256:f364d3480bffd3aa566e886587eaca7c8c04d74f6e8933f3f2c996b7f09bee1b"}, + {file = "yarl-1.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6a5883464143ab3ae9ba68daae8e7c5c95b969462bbe42e2464d60e7e2698368"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5610f80cf43b6202e2c33ba3ec2ee0a2884f8f423c8f4f62906731d876ef4fac"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b9a4e67ad7b646cd6f0938c7ebfd60e481b7410f574c560e455e938d2da8e0f4"}, + {file = "yarl-1.9.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:83fcc480d7549ccebe9415d96d9263e2d4226798c37ebd18c930fce43dfb9574"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fcd436ea16fee7d4207c045b1e340020e58a2597301cfbcfdbe5abd2356c2fb"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84e0b1599334b1e1478db01b756e55937d4614f8654311eb26012091be109d59"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3458a24e4ea3fd8930e934c129b676c27452e4ebda80fbe47b56d8c6c7a63a9e"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:838162460b3a08987546e881a2bfa573960bb559dfa739e7800ceeec92e64417"}, + {file = "yarl-1.9.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f4e2d08f07a3d7d3e12549052eb5ad3eab1c349c53ac51c209a0e5991bbada78"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:de119f56f3c5f0e2fb4dee508531a32b069a5f2c6e827b272d1e0ff5ac040333"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:149ddea5abf329752ea5051b61bd6c1d979e13fbf122d3a1f9f0c8be6cb6f63c"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:674ca19cbee4a82c9f54e0d1eee28116e63bc6fd1e96c43031d11cbab8b2afd5"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:9b3152f2f5677b997ae6c804b73da05a39daa6a9e85a512e0e6823d81cdad7cc"}, + {file = "yarl-1.9.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5415d5a4b080dc9612b1b63cba008db84e908b95848369aa1da3686ae27b6d2b"}, + {file = "yarl-1.9.2-cp38-cp38-win32.whl", hash = "sha256:f7a3d8146575e08c29ed1cd287068e6d02f1c7bdff8970db96683b9591b86ee7"}, + {file = "yarl-1.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:63c48f6cef34e6319a74c727376e95626f84ea091f92c0250a98e53e62c77c72"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:75df5ef94c3fdc393c6b19d80e6ef1ecc9ae2f4263c09cacb178d871c02a5ba9"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c027a6e96ef77d401d8d5a5c8d6bc478e8042f1e448272e8d9752cb0aff8b5c8"}, + {file = "yarl-1.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3b078dbe227f79be488ffcfc7a9edb3409d018e0952cf13f15fd6512847f3f7"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59723a029760079b7d991a401386390c4be5bfec1e7dd83e25a6a0881859e716"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b03917871bf859a81ccb180c9a2e6c1e04d2f6a51d953e6a5cdd70c93d4e5a2a"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c1012fa63eb6c032f3ce5d2171c267992ae0c00b9e164efe4d73db818465fac3"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a74dcbfe780e62f4b5a062714576f16c2f3493a0394e555ab141bf0d746bb955"}, + {file = "yarl-1.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c56986609b057b4839968ba901944af91b8e92f1725d1a2d77cbac6972b9ed1"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2c315df3293cd521033533d242d15eab26583360b58f7ee5d9565f15fee1bef4"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:b7232f8dfbd225d57340e441d8caf8652a6acd06b389ea2d3222b8bc89cbfca6"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:53338749febd28935d55b41bf0bcc79d634881195a39f6b2f767870b72514caf"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:066c163aec9d3d073dc9ffe5dd3ad05069bcb03fcaab8d221290ba99f9f69ee3"}, + {file = "yarl-1.9.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8288d7cd28f8119b07dd49b7230d6b4562f9b61ee9a4ab02221060d21136be80"}, + {file = "yarl-1.9.2-cp39-cp39-win32.whl", hash = "sha256:b124e2a6d223b65ba8768d5706d103280914d61f5cae3afbc50fc3dfcc016623"}, + {file = "yarl-1.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:61016e7d582bc46a5378ffdd02cd0314fb8ba52f40f9cf4d9a5e7dbef88dee18"}, + {file = "yarl-1.9.2.tar.gz", hash = "sha256:04ab9d4b9f587c06d801c2abfe9317b77cdf996c65a90d5e84ecc45010823571"}, ] [package.dependencies] @@ -2092,118 +2187,116 @@ multidict = ">=4.0" [[package]] name = "zipp" -version = "3.15.0" +version = "3.17.0" description = "Backport of pathlib-compatible object wrapper for zip files" -category = "main" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "zipp-3.15.0-py3-none-any.whl", hash = "sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556"}, - {file = "zipp-3.15.0.tar.gz", hash = "sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b"}, + {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, + {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] [[package]] name = "zstd" -version = "1.5.4.0" +version = "1.5.5.1" description = "ZSTD Bindings for Python" -category = "main" optional = false python-versions = "*" files = [ - {file = "zstd-1.5.4.0-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:6902297ebf990ac57b35ae7eca8872987a4b0545555a6345facfa2b8a9df7313"}, - {file = "zstd-1.5.4.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:0519919de7a1ed3361ceeb65fd94bc71ac2dbb2b55ca9a67803182017d868ea8"}, - {file = "zstd-1.5.4.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:f40eab94f4a5b2df6370f95b969468a4316055aa29578f1614ac22e189ee8df5"}, - {file = "zstd-1.5.4.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:a0c0ed69c6b4e6343da5f6c4a0452eaea0c5428a0a15d34dab25a8cb13febe43"}, - {file = "zstd-1.5.4.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:45cbc783746e5bc331d3dff58dd0737f1a00a4a62b9d25468e0ba1dc28a66ac3"}, - {file = "zstd-1.5.4.0-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:2897b1d213e1277e090a403b8e842ec1b24a0040e193dd47385469e413a14760"}, - {file = "zstd-1.5.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:569abec92fc1933fe514f713c438da1be04937dc5fc2b40a538eb940b3ecf92b"}, - {file = "zstd-1.5.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57492bac3822b15081e5c737db1c973f9cd850ffd47d6f49349230a697de1404"}, - {file = "zstd-1.5.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3eaa3aec30d4e0ab349674951299298984058b0236672419a6b5f207b4c38b03"}, - {file = "zstd-1.5.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0c9bebd088a6900cb1fad30a5ad53468f7fe2450b7e1d4a7f96c0d18aa1e8f97"}, - {file = "zstd-1.5.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d9fa33a171f051080142f05747b7fde6998fb7be4ff3eb35afbeb2d56ceab1ea"}, - {file = "zstd-1.5.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fab1b76e2f7c849ec4ee7fe3affe1843bfc42c16d735aec1d89b6eb99e70d756"}, - {file = "zstd-1.5.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d4c727fa81166e9267d58d09b51d60cbd28434f8c1509df8529e38596dbf4694"}, - {file = "zstd-1.5.4.0-cp310-cp310-win32.whl", hash = "sha256:4b441859e6af0a93531080d9bc41f3df75ff41a6c6e40ce44bfbbfeecf379b25"}, - {file = "zstd-1.5.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:07c4d4e67019093867076f02e981b273a9798a1da33592f2a8c23085e819e297"}, - {file = "zstd-1.5.4.0-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1bd16f1a3a2670800dbab7c1cebb8f1975bf75c408f6b0b6c323e907fc808a14"}, - {file = "zstd-1.5.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c83947a130420f1fc472ac4fa01b84a649ae2d09e9698fcd54a62da3caef57dd"}, - {file = "zstd-1.5.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d193377fbab98fd34dfa121b8d3df81c7a7fc52c9bb41918a18ec2b32430e83"}, - {file = "zstd-1.5.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28196838211ddcd750de1c8658cf7d81964eb640815aea64ad170895e5084046"}, - {file = "zstd-1.5.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6b6d53766956845d171c79006af3d8a9bcc16bfa86e08312e6803c19096b61aa"}, - {file = "zstd-1.5.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a179933162216862eb20a066fb678b0d583d628053982c75a11c2f1bdbda2890"}, - {file = "zstd-1.5.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b1a6d2327e7c1f0a266b4a8ef4d419e3847442cbfef3c7c8a7b05ca5ed64d38b"}, - {file = "zstd-1.5.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a21ef2f92e5c75e6bbc08925ecb5b54000242614c6af6661610518e2bf890b59"}, - {file = "zstd-1.5.4.0-cp311-cp311-win32.whl", hash = "sha256:05c237e7730c4dd598ae2e7d43bdc4b8efeeeeb5a00fa1dfc654456abd535e5f"}, - {file = "zstd-1.5.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:f638cc7680bfecc88b205f71afc684dcea2234b82f3018da2976c47524969db4"}, - {file = "zstd-1.5.4.0-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:d0a9830ac6d58498164a9ccc18f9ff7c57b8d49e6a5fa7cfc8adf5618f2fb09c"}, - {file = "zstd-1.5.4.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:e4a9409465f519560d85767660440cb80dcd549beaa07197101b5b9708bc8984"}, - {file = "zstd-1.5.4.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:198fd0cf3753207e68c10e685b06dadb7da8c0f3638393e767ef455a2e2e743d"}, - {file = "zstd-1.5.4.0-cp35-cp35m-win32.whl", hash = "sha256:ca3328be307ad722594c3703636be3fd9537ffa963a9912c8acfe85521fe2b74"}, - {file = "zstd-1.5.4.0-cp35-cp35m-win_amd64.whl", hash = "sha256:b3e6a8160733be4090e314a76dc04e5abba7947aec16450fb207ca1d0ef0fa6f"}, - {file = "zstd-1.5.4.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:1157c18a83d06253a1cfd138bf1c8a528e6353f216b6c6e23c0af071b407b6a8"}, - {file = "zstd-1.5.4.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:01c130343973e6da0dd2d03238e1df86fc29646f7791b36acc5b0c4c1beac1d5"}, - {file = "zstd-1.5.4.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:73b0f331bc83608275a1de820a7fbaeadfd0ec9f00e33fc43d334f6be8626d0c"}, - {file = "zstd-1.5.4.0-cp36-cp36m-win32.whl", hash = "sha256:0d9e802cfcb9dfe19cf949caf4d407af0fd1d0fd06f0750a1c9db1be9aef41eb"}, - {file = "zstd-1.5.4.0-cp36-cp36m-win_amd64.whl", hash = "sha256:194ec0d9fa33d4879ee349784f682c357979f92ccaaf289317674aaad487658c"}, - {file = "zstd-1.5.4.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:4d9bf114fb8ff95c68c4dc2b49a9ac34238d735bc02014d86f930158149da394"}, - {file = "zstd-1.5.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a81a717b0cca5e46414736475a00ba60cba295647e8a1b8e93b2188322268f2"}, - {file = "zstd-1.5.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c49fef1e7502fdc49b6d0e5ee01ec04710bfa77e75f562bb50ec3ecaa5f1399"}, - {file = "zstd-1.5.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1cbf120ab3a6eeacac148d57cc1dc1e2a20ed1c5d0f5ad44dabd7350738c6631"}, - {file = "zstd-1.5.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:4e7bb3794de21f0b92b1107ba0d09d778f172de1c3e64d20dc2b177ce06a7245"}, - {file = "zstd-1.5.4.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:552a43cc1b6d2ba769d305af2c7f9f37df81a07f12e9807aa825abcb11ebc303"}, - {file = "zstd-1.5.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d9a8a2e3de8568b508feadba3ac539902ede02fce2c77ce15080fb810522774b"}, - {file = "zstd-1.5.4.0-cp37-cp37m-win32.whl", hash = "sha256:4e7b48df65bd7d12d386806a58f14a22fdb4eaf994aee17fbaff4e4142a1a4a8"}, - {file = "zstd-1.5.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:36e791b9d59801cf32555f5c776b0142f6dfb7976db2e61387b024fe2e726a78"}, - {file = "zstd-1.5.4.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:0f1898d446f20468af7e6ee844d4fb3c69ff2ac230d439659278fc12fd7ebc1a"}, - {file = "zstd-1.5.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6b1edc4e6c8fb1745b4100e685a550b600981931148cf67a7f510c9a67a70a76"}, - {file = "zstd-1.5.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20fe132ef421988d3a65f635caf727b1d48d226fbaaaa825b1efc40750049f5c"}, - {file = "zstd-1.5.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1fc5ded6fb78095a62fde388c3b3765fe58bb5ea8aaa0471a5b8eef425dbf49"}, - {file = "zstd-1.5.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d9ffededb5b91e13f8fe97738606cd4ca4f3cd3cf5a7c4de2582979df9cd4fe7"}, - {file = "zstd-1.5.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cb1c6eadac83d8aeb4fc2fd611f7f9570d0a5dc43e8828f3505190391d251d07"}, - {file = "zstd-1.5.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:18c3e96060a48523acef42cef3a6d2f844abaa335cdcf99154d26afe1e4bccef"}, - {file = "zstd-1.5.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f16c47fd8198f0c16995e8528e42264553f6a48b9cab65f8693c35439f363c42"}, - {file = "zstd-1.5.4.0-cp38-cp38-win32.whl", hash = "sha256:73ae15ea47c2d4ae32dba0295a34e2e54c53af48cccd0e992653823abb53fcea"}, - {file = "zstd-1.5.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:28ca657d827956333109a583961df732d2510e323aab072825769ad51bf57725"}, - {file = "zstd-1.5.4.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:868598d8eab6b5c936da0865954894394ceca2d1235ba4468af14bf7b21158c9"}, - {file = "zstd-1.5.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ce1f722cb4a423d7cdaa5ac69e5ace570f0c5d897ef8827197eac28d7d7674d8"}, - {file = "zstd-1.5.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a7efcf45d7de4f57c92c7746b64b02ce4fd135626c6a5b0c924a6fa3d0d5a4"}, - {file = "zstd-1.5.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:774057568c85ad1ddb0bc2f988986ffd21cefd22f4e540a4c3972338c1c001ce"}, - {file = "zstd-1.5.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30ebcc972c3e0b75cefc4edd1919847f5d348a129a22af9b48dba1e281005c1a"}, - {file = "zstd-1.5.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c707679829ca057fa9d5dca658502524f77f10ac19706491d8c22445869f25b2"}, - {file = "zstd-1.5.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:81bcca5588df6563b98e973774d24ebb59e54b52a8b0c6b2f03667543e4a5bed"}, - {file = "zstd-1.5.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:83e137503a794d7bde68f6e81d27339e86b7495e3b90254259c99526e8a3d2ac"}, - {file = "zstd-1.5.4.0-cp39-cp39-win32.whl", hash = "sha256:c39197447d37274038c80d64521f25338b1ee399c80f847a8f014279b6b1ef5f"}, - {file = "zstd-1.5.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:deea883cb086cdb860ef2b04e39ce42566df8a04846d047aef146568f9759bd6"}, - {file = "zstd-1.5.4.0-pp27-pypy_73-macosx_10_14_x86_64.whl", hash = "sha256:4bcff887574d5f957fa7448cf58df60805504aff1e4c9a858975ff60cabc9cd2"}, - {file = "zstd-1.5.4.0-pp27-pypy_73-manylinux1_x86_64.whl", hash = "sha256:b18905d5ed7d842ce2f69ee8d6e59935db5407f6eb0e4aa4344f181b677f8169"}, - {file = "zstd-1.5.4.0-pp27-pypy_73-manylinux2010_x86_64.whl", hash = "sha256:71c2d9de9945341b1a94d171032e851069980ccbfc7518373748a1d910f01c74"}, - {file = "zstd-1.5.4.0-pp36-pypy36_pp73-macosx_10_14_x86_64.whl", hash = "sha256:aa361ca872d861b16f023f3e67785a702cfbd889df6ad0d8aa76d2e0c066136c"}, - {file = "zstd-1.5.4.0-pp36-pypy36_pp73-manylinux1_x86_64.whl", hash = "sha256:cd2b5dc349be52405bf0217cc9d4c81e511152c3e297d53f3e0147a88f77b8b3"}, - {file = "zstd-1.5.4.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:059ccfe3bea557c40d4b91b3eda544ea2560503e512dd9c9dd440d4651073c6b"}, - {file = "zstd-1.5.4.0-pp36-pypy36_pp73-win32.whl", hash = "sha256:604c9d25dfd0ee8e1c79bfe6806b1470d2a9d10432eb152175b4b2fcd0ec7d84"}, - {file = "zstd-1.5.4.0-pp37-pypy37_pp73-macosx_10_14_x86_64.whl", hash = "sha256:e413e705e4d6fb76bc6fdecebc174a9cc1640b71594fffd06eccf9d237e2a16c"}, - {file = "zstd-1.5.4.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:529daec468f8c437fd1971c0e505e0a0bf8980c5544c49471e5060399bad1991"}, - {file = "zstd-1.5.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1fd34c9cfbd4010a194c409eb66d2e1be5441cc4e5666b6125ea37e40f13a6a"}, - {file = "zstd-1.5.4.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b6c3c169e307108673b3cbe96b19ff4aacc85d62afa79fcf8bfefc6ea39ce9dc"}, - {file = "zstd-1.5.4.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:c75aa7c218c6e5eaa6a9a8a2645540148da993043c835f72114eba6adb0f0129"}, - {file = "zstd-1.5.4.0-pp38-pypy38_pp73-macosx_10_14_x86_64.whl", hash = "sha256:4a4ae8a464b38471c0ecc543061983b26d05bf45221753dfaf24240e5e3ccecd"}, - {file = "zstd-1.5.4.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8421e7a2dfec8dc7a74bbe5456acd0cb8ff7149d34ce20a864ec8540861f30e9"}, - {file = "zstd-1.5.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c1faec80c962a0f5715220430b346f5d14240dbfe44d557fae160869c491ee6a"}, - {file = "zstd-1.5.4.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:475b56a307ae69b3e87b595a4bb6098cb3c1aee49c4f0f06073aa24814ef8753"}, - {file = "zstd-1.5.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:34c8fe1a39308023678e8d0546a17200f204dbefbc726c2489a0854d1ac3daf1"}, - {file = "zstd-1.5.4.0-pp39-pypy39_pp73-macosx_10_14_x86_64.whl", hash = "sha256:ff6fc22d80fcee8887cc27a1f9d0229b187bfd466ee02ea134177544320472d8"}, - {file = "zstd-1.5.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb6714d69e90e5920f3d49ceb0393e55805cd7dc59ffc6a4a433457f354dd8cf"}, - {file = "zstd-1.5.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:41f779b27fc5948ec4aa21e845dc0eba811a405b975db2023e87024ffaa97fe4"}, - {file = "zstd-1.5.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:af67d55c9afdbd852cf2967e72b979af195d826cd2c571f374009057497ec1fe"}, - {file = "zstd-1.5.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:8df6d3c0fc5ea83bfbacd7f7bbc81652e6bc42c5c154c8c76e019a289dbfb04a"}, - {file = "zstd-1.5.4.0.tar.gz", hash = "sha256:a0d11df70a978529341b576e69a4f0b2a23e746686e24f9b90260a33ce49042d"}, + {file = "zstd-1.5.5.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:555779789bc75cd05089c3ba857f45a0a8c4b87d45e5ced02fec77fa8719237a"}, + {file = "zstd-1.5.5.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:86496bd4830cdb7b4b05a9ce6ce2baee87d327ff90845da4ee308452bfbbed4e"}, + {file = "zstd-1.5.5.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:b487c2e67ed42a4e0d47997d209f4456b01b334023083ef61873f79577c84c62"}, + {file = "zstd-1.5.5.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:45ccd45a5b681088fca1a863ca9236ded5112b8011f1d5bf69e908f5eb32023a"}, + {file = "zstd-1.5.5.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:8403fe84207d8b0c7b17bca6c4caad431ac765b1b9b626ad9fae4bb93a64a9d8"}, + {file = "zstd-1.5.5.1-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:0ab979c6357b8927f0c025ea2f72f25e15d03ce17a8a6c1789e2d5b108bf39ae"}, + {file = "zstd-1.5.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:98cbee6c1b2fe85f02fd475d885f98363c63bc64eebc249d7eb7469a0ff70283"}, + {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9962714b89641301029f3832bdf07c20f60b9e64e39e8d7b6253451a82b54f5c"}, + {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f59cc92d71537f8082306f75aa403ddb4a4a1069a39f104525673110e4d23f7"}, + {file = "zstd-1.5.5.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:569f13d0c926ddafceebce8ac73baddfc2bd9cbbbbc922b6b3073338cc43dae6"}, + {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:ba530c44f252016acc6ef906d7d2070c1ad0cfe835c498fdcd37493e4772ac6e"}, + {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8ee3496ed8fff3add6c6e658b207f18d96474c3db0c28ab7a69623380b1a0a8c"}, + {file = "zstd-1.5.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:530d69bea2791cde8afa7fe988f3a37c3ba37015f6a1d5593c0500f089f3090e"}, + {file = "zstd-1.5.5.1-cp310-cp310-win32.whl", hash = "sha256:cf179e51f447b6a7ff47e449fcb98fb5fe15aedcc90401697cf7c93dd6e4434e"}, + {file = "zstd-1.5.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:5f5e6e0805d710d7509c8d175a467eb89c631a4142b1a630ceeb8e3e3138d152"}, + {file = "zstd-1.5.5.1-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:022f935a8666e08f0fff6204938a84d9fe4fcd8235a205787275933a07a164fb"}, + {file = "zstd-1.5.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a3d15a2d18dac8bcafdde52fdf5d40ecae1f73b7de19b171f42339d2e51346d0"}, + {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45b9c67989f50ba63ffa0c50c9eaa037c2d14abacb0813e838ad705135245b4b"}, + {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97da6a842ba7e4acf8bba7c596057143ee39b3c4a467196c2096d460e44accd6"}, + {file = "zstd-1.5.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2dafd492fb8ee4ae04c81ab00f5f137860e7071f611335dd4cdb1c38bd8f11bc"}, + {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9ee83e0bcbfd776200b026b3b9e86c6c86b8f414749f58d87c85dcf456b27066"}, + {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ae2fd4bc8ea772a7b5f1acd1cac9e34bb9cd8fcde191f170092fdeea779a3a12"}, + {file = "zstd-1.5.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:edea52a0109f48fd46f4763689d3d356dcafd20ddf6789c559a1bd2e62b40a32"}, + {file = "zstd-1.5.5.1-cp311-cp311-win32.whl", hash = "sha256:88410481209520298ec4430e0d1d57e004c45e0b27c3035674fb182ccd2d8b7b"}, + {file = "zstd-1.5.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:dce18aaefbacf8b133367be86beec670baf68c0420bfcca49be08dbdbf933db6"}, + {file = "zstd-1.5.5.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:634dc632f7cf87e95dabf74dcf682e3507bd5cb9dd1bcdb81f92a6521aab0bd2"}, + {file = "zstd-1.5.5.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:608414eb75ead573891d97a1e529848b8f31749d21a440e80838548a19d8c0e6"}, + {file = "zstd-1.5.5.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:384128f7a731e3f45da49976591cec03fc4079e70653df10d9ea43a1d3b49d50"}, + {file = "zstd-1.5.5.1-cp35-cp35m-win32.whl", hash = "sha256:4bce254174ef05cea01021d67e18489d5d08db1168e758b62ecee121572a52a9"}, + {file = "zstd-1.5.5.1-cp35-cp35m-win_amd64.whl", hash = "sha256:3f0ff81232b49d7eb4f4d9e6f92443c9d242c139ad98ffedac0e889568f900ce"}, + {file = "zstd-1.5.5.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a871df41b801a260cc849c2c76f300ebb9d286c4b7a1fd6ce45fe0c91340b767"}, + {file = "zstd-1.5.5.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:5a53860dbfbea281eb690ce09cae28967cf1df8e6d7560e4a8bf5b9fcb258147"}, + {file = "zstd-1.5.5.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:a37cbc0580fdfd66c8b3ec65f9af00a4a34e9781b54dfb89f04d301dc375c90a"}, + {file = "zstd-1.5.5.1-cp36-cp36m-win32.whl", hash = "sha256:5531b683539ae1f7b2ad23dacee8a73e5d7eaa6702ea8df5a24bd3318647dee1"}, + {file = "zstd-1.5.5.1-cp36-cp36m-win_amd64.whl", hash = "sha256:eeaff418269b41eee8c7971fbba9d32d07d3f6aa26f962a72aff725071096a1b"}, + {file = "zstd-1.5.5.1-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:8bd6a9050de8bbe844447348372ca17d01bc05207619f6a5d448567d111b5cd9"}, + {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2ece3d20ef357370584f304407fbd1e4ff9c231209320e08a889b8e3725d56e"}, + {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:687f9e03dc9f9b8803840425bb23bf6bc700888b4860afcf43c4f238102752d2"}, + {file = "zstd-1.5.5.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3a649daac9c8f1b37d29f2b3d0a43f134061659b54877fe4b0da6df2965dc91f"}, + {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bddc7e3c3ce31c01fe1edaa7c03c0b9e71eadf4ce1609746d32f86d95a0449e6"}, + {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:12bf8e04add8bb84f9fe9117f3de6d9394eade6a5a82fe4d6bd95914fc6ef423"}, + {file = "zstd-1.5.5.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9e6a15fa4d2e65c5902ab2a4e41279ac126cb371ce6c3c75ad5789bb20dd1f54"}, + {file = "zstd-1.5.5.1-cp37-cp37m-win32.whl", hash = "sha256:a1c269243a4321beb948635b544ccbe6390846358ace620fd000ab7099011d9c"}, + {file = "zstd-1.5.5.1-cp37-cp37m-win_amd64.whl", hash = "sha256:91366e36773241cb4b049a32f4495d33dd274df1eea5b55396f5f3984a3de22e"}, + {file = "zstd-1.5.5.1-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:d3ce2cb310690994274d133ea7f269dd4b81799fdbce158690556209723d7d4e"}, + {file = "zstd-1.5.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e0c87bfbfa9d852f79c90bcd7426c3ba46cf3285e6984013636d4fc854ba9230"}, + {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a89ce6d829d515f272fddb3a87e1a5f32cc0f1a7b0cba24d360c89f4a165b74b"}, + {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e05f81f346213b23ed1b12d84fc1f72e65eacd8978e1e88facf185c82bd3d053"}, + {file = "zstd-1.5.5.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43ec66c4c3a76351c672c6ef9f0ff3412fca9ede0a56d18dddaf6418a93faef8"}, + {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:58e554e91e0d49f4f2b2df390cdd0f64aa9b6fd5f4dcb208c094bfd079b30f3a"}, + {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:883c6d3b6f5574e1765ca97f4b6a41b69094a41be56175552faebc0e0e43b65e"}, + {file = "zstd-1.5.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d52b6932cab5419c434bccfea3e5640e755369fc9eeb51e3d17e15bf8e8cb103"}, + {file = "zstd-1.5.5.1-cp38-cp38-win32.whl", hash = "sha256:dcaf44270ec88552e969be4dd3359b34aa3065663ccd8168a257c78f150a356c"}, + {file = "zstd-1.5.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:627f12cb7035723c8f3d8d4cefcad6d950ed9cba33fd3eb46bae04ccab479234"}, + {file = "zstd-1.5.5.1-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:c0dab132c1a5a7cc838a7c3e4e380ad153b9d7bd1fadafabf6cfeb780b916201"}, + {file = "zstd-1.5.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d4ab0a5dd9a41d3b083304beee7ada40ee36431acbeb75132032f4fe5cf0490a"}, + {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f6e38f496d287020658c6b4cdb5e815ecc6998889bd0f1f9ab0825f2e3d74ef"}, + {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0096c8ee0ed4bfe406bc961019f55552109e19771bfd3eb32d2af56ea27085c"}, + {file = "zstd-1.5.5.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1a0f1527728c50b6aa8f04b47a07580f0ae13cfc6c6d9c96bb0bdf5259487559"}, + {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6a64e420c904063c5c3de53c00ec0993ebc0a48cebbef97dc6c768562c5abab5"}, + {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:03444e357b7632c64480a81ce7095242dab9d7f8aed317326563ef6c663263eb"}, + {file = "zstd-1.5.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:88b9a10f80d2b87bf8cc1a1fc20a815ed92b5eefdc15cbe8062021f0b5a26a10"}, + {file = "zstd-1.5.5.1-cp39-cp39-win32.whl", hash = "sha256:c91cc1606eb8b3a6fed11faaef4c6e55f1133d70cf0db0c829a2cf9c2ac1dfd9"}, + {file = "zstd-1.5.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:f462e2ebf26dcbfc2c8dddd6b5c56859683f0b77edb8f268e637f7d390a58f74"}, + {file = "zstd-1.5.5.1-pp27-pypy_73-macosx_10_14_x86_64.whl", hash = "sha256:c63f916732e3e309e49ec95e7a0af5d37ff1321f3df2aac10e507bd2b56fceda"}, + {file = "zstd-1.5.5.1-pp27-pypy_73-manylinux1_x86_64.whl", hash = "sha256:50d4850d758bb033df50722cc13ed913b2afcd5385250be4f3ffb79a26b319c3"}, + {file = "zstd-1.5.5.1-pp27-pypy_73-manylinux2010_x86_64.whl", hash = "sha256:0412d666515e78a91ada7e2d78e9dd6b25ddda1b41623b145b99653275c7f3ce"}, + {file = "zstd-1.5.5.1-pp36-pypy36_pp73-macosx_10_14_x86_64.whl", hash = "sha256:0ea91f74869a3cdcb2dde08f8f30ee3da72782c5d1737afed9c703232815864e"}, + {file = "zstd-1.5.5.1-pp36-pypy36_pp73-manylinux1_x86_64.whl", hash = "sha256:477548897dc2b8b595af7bec5f0f55dcba8e9a282335f687cc663b52b171357b"}, + {file = "zstd-1.5.5.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:c518938b57a56001ee04dcf79a432152f5bd431416f3b22819ba959bc6054d89"}, + {file = "zstd-1.5.5.1-pp36-pypy36_pp73-win32.whl", hash = "sha256:894a8fe0228d5e24dc286a8d98eb0ce2883f8e2e57f3b7e7619ebdb67967120a"}, + {file = "zstd-1.5.5.1-pp37-pypy37_pp73-macosx_10_14_x86_64.whl", hash = "sha256:42ec0a4ae9bedd9909fa4f580f3c800469da1b631faeaa94f204e1b66c767fa2"}, + {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d56dedaa04ab8ecc23492972b12e0bf8529f64c9bceb28c11f43c2369c9768b3"}, + {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5b060770d796e4c01f5848b345c3cea8a177ab4e7cd95a1963a355042d429e1"}, + {file = "zstd-1.5.5.1-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fea04805ef6e1cb93d6e5d6bbc7a03bc75a5c733fd352d5aaa81109986fdf1ef"}, + {file = "zstd-1.5.5.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:405c28a35756e57a434bbd7ed29dc5e6490cd2fc2118cbf78b60eaebd134f5e9"}, + {file = "zstd-1.5.5.1-pp38-pypy38_pp73-macosx_10_14_x86_64.whl", hash = "sha256:c42e630443b01a891277426365a51a2aa630b059ce675992c70c1928d30eccb4"}, + {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1520d23f24f26cdfbcdb4dc86947446b8f694838bfce728d7fc4b3492397357c"}, + {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f4730737f63cf802321743ded6acc85e747e7f5587c5ba2e51a760bf009f7de"}, + {file = "zstd-1.5.5.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e9f8c014395e89ad7f67ffe873c0fa1d8e9b4dea8b1801d24e8d9ccd8259858d"}, + {file = "zstd-1.5.5.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5d9ba4f6af0945809bfa3387c6a1208a22937a876521b9ec347e7183d623311b"}, + {file = "zstd-1.5.5.1-pp39-pypy39_pp73-macosx_10_14_x86_64.whl", hash = "sha256:04dfd9f46b0b0b1bc413884fe028b726febcb726d4f66e3cf8afc00c2d9026bf"}, + {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:af52436a2eb5caa925d95461973984cb34d472a963b6be1c0a9f2dfbafad096f"}, + {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610928b888a2e7ae9d2018ffa814859d47ec4ba75f89a1188ab4eb9232636ee5"}, + {file = "zstd-1.5.5.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee3c9feea99c7f4ff43129a885da056b5aa0cde3f7876bf6397bfb9433f44352"}, + {file = "zstd-1.5.5.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6ac9768eeb3c6b530db93de2fec9b363776075dc8a00ee4049612ba5397ca8e"}, + {file = "zstd-1.5.5.1.tar.gz", hash = "sha256:1ef980abf0e1e072b028d2d76ef95b476632651c96225cf30b619c6eef625672"}, ] [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "3c379cc4b2bbdbb829118fbfbece9048380368852f917554b3367267d440de6e" +content-hash = "b3776164034ca02134b19a3055c0affbcc82c83fee131a026b35d4e4e927e90e" diff --git a/pyproject.toml b/pyproject.toml index 8104641..57fbb19 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,8 +11,8 @@ license = "Apache-2.0" [tool.poetry.dependencies] python = "^3.10" -#chia-blockchain = { path = "./chia-blockchain", develop = true } -chia-blockchain = "^1.7.1" +chia-blockchain = { path = "./chia-blockchain", develop = true } +#chia-blockchain = "^1.7.1" fastapi = "^0.83.0" uvicorn = "^0.18.3" SQLAlchemy = "^1.4.41" @@ -20,13 +20,15 @@ requests = "^2.28.1" fastapi-utils = "^0.2.1" SQLAlchemy-Utils = "^0.38.3" pydantic = { extras = ["dotenv"], version = "^1.10.2" } +pytest-xdist = "3.3.1" [tool.poetry.group.dev.dependencies] # has to be disabled unfortunately due to developing chia-blockchain # chia-dev-tools = "^1.1.1" pytest = "^7.1.2" -pytest-asyncio = "^0.19.0" +pytest-asyncio = "^0.21.0" commitizen = "^2.27.1" +pytest-xdist = "^3.3.1" [tool.commitizen] name = "cz_conventional_commits" diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 0000000..8b9979f --- /dev/null +++ b/pytest.ini @@ -0,0 +1,38 @@ +[pytest] +; logging options +log_cli = False +addopts = --verbose --tb=short -n auto -p no:monitor +log_level = WARNING +console_output_style = count +log_format = %(asctime)s %(name)s: %(levelname)s %(message)s +asyncio_mode = strict +markers = + limit_consensus_modes + benchmark + data_layer: Mark as a data layer related test. + test_mark_a1: used in testing test utilities + test_mark_a2: used in testing test utilities + test_mark_b1: used in testing test utilities + test_mark_b2: used in testing test utilities +testpaths = tests +filterwarnings = + error + ignore:ssl_context is deprecated:DeprecationWarning + ignore:Implicitly cleaning up:ResourceWarning + ignore:unclosed None: test_request = {"search_by": "error", "search": ""} params = urlencode(test_request) @@ -17,9 +21,8 @@ def test_activities_with_search_by_then_error(self, fastapi_client, monkeypatch) assert response.status_code == fastapi.status.HTTP_422_UNPROCESSABLE_ENTITY def test_activities_with_empty_climate_warehouse_then_success( - self, fastapi_client, monkeypatch - ): - test_request = {} + self, fastapi_client: TestClient, monkeypatch: pytest.MonkeyPatch + ) -> None: test_response = schemas.activity.ActivitiesResponse() mock_climate_warehouse_data = mock.MagicMock() @@ -31,14 +34,15 @@ def test_activities_with_empty_climate_warehouse_then_success( mock_climate_warehouse_data, ) - params = urlencode(test_request) + params = urlencode({}) response = fastapi_client.get("v1/activities/", params=params) assert response.status_code == fastapi.status.HTTP_200_OK assert response.json() == test_response - def test_activities_with_empty_db_then_success(self, fastapi_client, monkeypatch): - test_request = {} + def test_activities_with_empty_db_then_success( + self, fastapi_client: TestClient, monkeypatch: pytest.MonkeyPatch + ) -> None: test_response = schemas.activity.ActivitiesResponse() mock_db_data = mock.MagicMock() @@ -48,15 +52,15 @@ def test_activities_with_empty_db_then_success(self, fastapi_client, monkeypatch crud.DBCrud, "select_activity_with_pagination", mock_db_data ) - params = urlencode(test_request) + params = urlencode({}) response = fastapi_client.get("v1/activities/", params=params) assert response.status_code == fastapi.status.HTTP_200_OK assert response.json() == test_response - def test_activities_then_success(self, fastapi_client, monkeypatch): - test_request = {} - + def test_activities_then_success( + self, fastapi_client: TestClient, monkeypatch: pytest.MonkeyPatch + ) -> None: test_activity_data = models.activity.Activity( org_uid="cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", amount=10000, @@ -134,28 +138,30 @@ def test_activities_then_success(self, fastapi_client, monkeypatch): "ba": "bls12381uy38v0kyqaknlg6kl0lchd3ar7wh3dfv83th5qg5pn29t8hr99nq2vsjek", "bp": "0xe122763ec4076d3fa356fbff8bb63d1f9d78b52c3c577a01140cd4559ee32966", }, - token={ - "org_uid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", - "warehouse_project_id": "c9b98579-debb-49f3-b417-0adbae4ed5c7", - "vintage_year": 2096, - "sequence_num": 0, - "index": "0x37f12cf05c5d5b254ac8019fc3b02a07f98526d57b65920a785980ad925273b7", - "public_key": "0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315", - "asset_id": "0x438f0630bebb927cbef0663b6b4bfb1820a754975e25a8ef20fb10b6c616c4de", - "tokenization": { - "mod_hash": "0x09bbb0ef739bdc4d37f0d0cec9c04453c40c264de8da8b2ce1edc3c1049406ce", - "public_key": "0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c", - }, - "detokenization": { - "mod_hash": "0x7d7fabdcf5c6cd7cae533490dfd5f98da622657cc760cb5d96891aa2a04323c9", - "public_key": "0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d", - "signature": "0x842c093f865e2634099d321c4c9f5d540fb511012a9111929bec13c7e395cc6d9c3e68fc111763f13e9df50405e6eb2710bb553d7fa04097793bc327991d5d61584c4a10cdca304be5174d3778692ff2543f3bcc3a2c23db47704e6fc7399cc4", - }, - "permissionless_retirement": { - "mod_hash": "0xb19c88b1b53f2db24bfb9385ddb5854327baf08bd0d50c0e1b33ccd3a4c5dbb0", - "signature": "0xacadbbdeffddbb8a7d43355c719c814ca18a731846cb7e67157dd1b6af7d269d264224a70b19197561c53f2a916742eb0ed21972af0bb77c74751d988733737da3b2f590a97f45f4a0beb81263936628c323d610cafc12528ea3ca0068037738", - }, - }, + token=schemas.TokenOnChain.parse_obj( + { + "org_uid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "warehouse_project_id": "c9b98579-debb-49f3-b417-0adbae4ed5c7", + "vintage_year": 2096, + "sequence_num": 0, + "index": "0x37f12cf05c5d5b254ac8019fc3b02a07f98526d57b65920a785980ad925273b7", + "public_key": "0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315", + "asset_id": "0x438f0630bebb927cbef0663b6b4bfb1820a754975e25a8ef20fb10b6c616c4de", + "tokenization": { + "mod_hash": "0x09bbb0ef739bdc4d37f0d0cec9c04453c40c264de8da8b2ce1edc3c1049406ce", + "public_key": "0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c", + }, + "detokenization": { + "mod_hash": "0x7d7fabdcf5c6cd7cae533490dfd5f98da622657cc760cb5d96891aa2a04323c9", + "public_key": "0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d", + "signature": "0x842c093f865e2634099d321c4c9f5d540fb511012a9111929bec13c7e395cc6d9c3e68fc111763f13e9df50405e6eb2710bb553d7fa04097793bc327991d5d61584c4a10cdca304be5174d3778692ff2543f3bcc3a2c23db47704e6fc7399cc4", + }, + "permissionless_retirement": { + "mod_hash": "0xb19c88b1b53f2db24bfb9385ddb5854327baf08bd0d50c0e1b33ccd3a4c5dbb0", + "signature": "0xacadbbdeffddbb8a7d43355c719c814ca18a731846cb7e67157dd1b6af7d269d264224a70b19197561c53f2a916742eb0ed21972af0bb77c74751d988733737da3b2f590a97f45f4a0beb81263936628c323d610cafc12528ea3ca0068037738", + }, + } + ), ) ], total=1, @@ -251,7 +257,7 @@ def test_activities_then_success(self, fastapi_client, monkeypatch): mock_climate_warehouse_data, ) - params = urlencode(test_request) + params = urlencode({}) response = fastapi_client.get("v1/activities/", params=params) assert response.status_code == fastapi.status.HTTP_200_OK @@ -259,8 +265,8 @@ def test_activities_then_success(self, fastapi_client, monkeypatch): assert response.json()["total"] == test_response.total def test_activities_with_mode_search_search_by_then_success( - self, fastapi_client, monkeypatch - ): + self, fastapi_client: TestClient, monkeypatch: pytest.MonkeyPatch + ) -> None: test_request = { "mode": "permissionless_retirement", "search_by": "onchain_metadata", @@ -287,6 +293,29 @@ def test_activities_with_mode_search_search_by_then_success( }, ) + test_token_on_chain_dict = { + "org_uid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "warehouse_project_id": "c9b98579-debb-49f3-b417-0adbae4ed5c7", + "vintage_year": 2096, + "sequence_num": 0, + "index": "0x37f12cf05c5d5b254ac8019fc3b02a07f98526d57b65920a785980ad925273b7", + "public_key": "0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315", + "asset_id": "0x438f0630bebb927cbef0663b6b4bfb1820a754975e25a8ef20fb10b6c616c4de", + "tokenization": { + "mod_hash": "0x09bbb0ef739bdc4d37f0d0cec9c04453c40c264de8da8b2ce1edc3c1049406ce", + "public_key": "0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c", + }, + "detokenization": { + "mod_hash": "0x7d7fabdcf5c6cd7cae533490dfd5f98da622657cc760cb5d96891aa2a04323c9", + "public_key": "0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d", + "signature": "0x842c093f865e2634099d321c4c9f5d540fb511012a9111929bec13c7e395cc6d9c3e68fc111763f13e9df50405e6eb2710bb553d7fa04097793bc327991d5d61584c4a10cdca304be5174d3778692ff2543f3bcc3a2c23db47704e6fc7399cc4", + }, + "permissionless_retirement": { + "mod_hash": "0xb19c88b1b53f2db24bfb9385ddb5854327baf08bd0d50c0e1b33ccd3a4c5dbb0", + "signature": "0xacadbbdeffddbb8a7d43355c719c814ca18a731846cb7e67157dd1b6af7d269d264224a70b19197561c53f2a916742eb0ed21972af0bb77c74751d988733737da3b2f590a97f45f4a0beb81263936628c323d610cafc12528ea3ca0068037738", + }, + } + test_response = schemas.activity.ActivitiesResponse( activities=[ schemas.activity.ActivityWithCW( @@ -344,28 +373,7 @@ def test_activities_with_mode_search_search_by_then_success( "updatedAt": "2022-10-24T06:25:13.440Z", }, }, - token={ - "org_uid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", - "warehouse_project_id": "c9b98579-debb-49f3-b417-0adbae4ed5c7", - "vintage_year": 2096, - "sequence_num": 0, - "index": "0x37f12cf05c5d5b254ac8019fc3b02a07f98526d57b65920a785980ad925273b7", - "public_key": "0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315", - "asset_id": "0x438f0630bebb927cbef0663b6b4bfb1820a754975e25a8ef20fb10b6c616c4de", - "tokenization": { - "mod_hash": "0x09bbb0ef739bdc4d37f0d0cec9c04453c40c264de8da8b2ce1edc3c1049406ce", - "public_key": "0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c", - }, - "detokenization": { - "mod_hash": "0x7d7fabdcf5c6cd7cae533490dfd5f98da622657cc760cb5d96891aa2a04323c9", - "public_key": "0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d", - "signature": "0x842c093f865e2634099d321c4c9f5d540fb511012a9111929bec13c7e395cc6d9c3e68fc111763f13e9df50405e6eb2710bb553d7fa04097793bc327991d5d61584c4a10cdca304be5174d3778692ff2543f3bcc3a2c23db47704e6fc7399cc4", - }, - "permissionless_retirement": { - "mod_hash": "0xb19c88b1b53f2db24bfb9385ddb5854327baf08bd0d50c0e1b33ccd3a4c5dbb0", - "signature": "0xacadbbdeffddbb8a7d43355c719c814ca18a731846cb7e67157dd1b6af7d269d264224a70b19197561c53f2a916742eb0ed21972af0bb77c74751d988733737da3b2f590a97f45f4a0beb81263936628c323d610cafc12528ea3ca0068037738", - }, - }, + token=schemas.TokenOnChain.parse_obj(test_token_on_chain_dict), ) ], total=1, diff --git a/tests/test_cat_lifecycle.py b/tests/test_cat_lifecycle.py index be49e3f..6d8cf66 100644 --- a/tests/test_cat_lifecycle.py +++ b/tests/test_cat_lifecycle.py @@ -11,13 +11,14 @@ from chia.types.coin_spend import CoinSpend from chia.types.mempool_inclusion_status import MempoolInclusionStatus from chia.types.spend_bundle import SpendBundle +from chia.util.ints import uint64 from chia.wallet.cat_wallet.cat_utils import ( + CAT_MOD, SpendableCAT, unsigned_spend_bundle_for_spendable_cats, ) from chia.wallet.lineage_proof import LineageProof from chia.wallet.payment import Payment -from chia.wallet.puzzles.cat_loader import CAT_MOD from app.core.chialisp.gateway import create_gateway_puzzle from app.core.chialisp.tail import create_tail_program @@ -38,10 +39,9 @@ class TestCATLifecycle: @pytest.mark.asyncio async def test_cat_lifecycle( self, - sim_full_node, - sim_full_node_client, + sim_full_node: SpendSim, + sim_full_node_client: SimClient, ) -> None: - """ In this test, we perform the following spends: @@ -82,7 +82,7 @@ async def test_cat_lifecycle( unsigned_gateway_coin_spend: CoinSpend signature: G2Element - ## setup + # setup xch_puzzle: Program = ACS_MOD xch_puzzle_hash: bytes32 = xch_puzzle.get_tree_hash() @@ -93,10 +93,10 @@ async def test_cat_lifecycle( await client.get_coin_records_by_puzzle_hash(xch_puzzle_hash) )[0].coin - ## mint + # mint mode = GatewayMode.TOKENIZATION - tokenize_amount: int = 100 + tokenize_amount: uint64 = uint64(100) tokenize_to_puzzle_hash: bytes32 = ACS_MOD_HASH # gateway mint spend @@ -141,17 +141,17 @@ async def test_cat_lifecycle( ] ) gateway_coin: Coin = unsigned_gateway_coin_spend.coin - cat_coin: Coin = unsigned_gateway_coin_spend.additions().pop() + cat_coin: Coin = gateway_spend_bundle.additions().pop() result = await client.push_tx(spend_bundle) assert result == (MempoolInclusionStatus.SUCCESS, None) await node.farm_block() - ## split + # split - detokenize_amount: int = 10 - retire_amount: int = tokenize_amount - detokenize_amount + detokenize_amount: uint64 = uint64(10) + retire_amount: uint64 = uint64(tokenize_amount - detokenize_amount) # cat spend @@ -166,7 +166,7 @@ async def test_cat_lifecycle( lineage_proof = LineageProof( parent_name=gateway_coin.parent_coin_info, inner_puzzle_hash=gateway_puzzle_hash, - amount=gateway_coin.amount, + amount=uint64(gateway_coin.amount), ) spendable_cat = SpendableCAT( coin=cat_coin, @@ -190,7 +190,7 @@ async def test_cat_lifecycle( await node.farm_block() - ## detokenize + # detokenize mode = GatewayMode.DETOKENIZATION @@ -222,7 +222,7 @@ async def test_cat_lifecycle( lineage_proof = LineageProof( parent_name=cat_coin.parent_coin_info, inner_puzzle_hash=ACS_MOD_HASH, - amount=cat_coin.amount, + amount=uint64(cat_coin.amount), ) spendable_cat = SpendableCAT( coin=cat_coin_for_detokenization, @@ -248,7 +248,7 @@ async def test_cat_lifecycle( await node.farm_block() - ## retire + # retire mode = GatewayMode.PERMISSIONLESS_RETIREMENT @@ -280,7 +280,7 @@ async def test_cat_lifecycle( lineage_proof = LineageProof( parent_name=cat_coin.parent_coin_info, inner_puzzle_hash=ACS_MOD_HASH, - amount=cat_coin.amount, + amount=uint64(cat_coin.amount), ) spendable_cat = SpendableCAT( coin=cat_coin_for_retirement, diff --git a/tests/test_cat_workflow.py b/tests/test_cat_workflow.py index ca953ea..93e12f6 100644 --- a/tests/test_cat_workflow.py +++ b/tests/test_cat_workflow.py @@ -1,14 +1,12 @@ import logging -from typing import Dict, List +from typing import List import pytest from blspy import PrivateKey -from chia.consensus.constants import ConsensusConstants from chia.rpc.wallet_rpc_client import WalletRpcClient -from chia.server.server import ChiaServer from chia.simulator.full_node_simulator import FullNodeSimulator +from chia.simulator.time_out_assert import time_out_assert from chia.types.blockchain_format.sized_bytes import bytes32 -from chia.types.spend_bundle import SpendBundle from chia.wallet.transaction_record import TransactionRecord from chia.wallet.wallet import Wallet from chia.wallet.wallet_node import WalletNode @@ -16,12 +14,10 @@ from app.core.climate_wallet.wallet import ClimateObserverWallet, ClimateWallet from app.core.derive_keys import master_sk_to_root_sk from app.core.types import ClimateTokenIndex, GatewayMode -from app.core.utils import get_first_puzzle_hash -from tests.wallet.rpc.test_wallet_rpc import wallet_rpc_environment # noqa +from tests.wallet.rpc.test_wallet_rpc import wallet_rpc_environment # noqa: F401 from tests.wallet.rpc.test_wallet_rpc import ( WalletRpcTestEnvironment, farm_transaction, - farm_transaction_block, generate_funds, ) @@ -33,7 +29,6 @@ async def check_transactions( wallet_id: int, transaction_records: List[TransactionRecord], ) -> None: - for transaction_record in transaction_records: tx = await wallet_client.get_transaction( wallet_id=wallet_id, transaction_id=transaction_record.name @@ -41,7 +36,7 @@ async def check_transactions( assert ( tx.confirmed_at_height != 0 - ), "Transaction {transaction_record.name.hex()} not found!" + ), f"Transaction {transaction_record.name.hex()} not found!" async def check_balance( @@ -49,13 +44,16 @@ async def check_balance( wallet_id: int, amount: int, ) -> None: - - result: Dict = await wallet_client.get_wallet_balance(wallet_id=wallet_id) + result = await wallet_client.get_wallet_balance(wallet_id=wallet_id) assert ( result["confirmed_wallet_balance"] == amount ), "Target wallet CAT amount does not match!" +async def get_confirmed_balance(client: WalletRpcClient, wallet_id: int) -> int: + return int((await client.get_wallet_balance(wallet_id))["confirmed_wallet_balance"]) + + class TestCATWorkflow: @pytest.mark.parametrize( "org_uid, warehouse_project_id, vintage_year, amount, fee", @@ -69,15 +67,14 @@ class TestCATWorkflow: @pytest.mark.asyncio async def test_cat_tokenization_workflow( self, - wallet_rpc_environment: WalletRpcTestEnvironment, + wallet_rpc_environment: WalletRpcTestEnvironment, # noqa: F811 org_uid: str, warehouse_project_id: str, vintage_year: int, amount: int, fee: int, ) -> None: - - env: WalletRpcTestEnvironment = wallet_rpc_environment + env = wallet_rpc_environment wallet_node_1: WalletNode = env.wallet_1.node wallet_client_1: WalletRpcClient = env.wallet_1.rpc_client @@ -88,7 +85,7 @@ async def test_cat_tokenization_workflow( full_node_api: FullNodeSimulator = env.full_node.api fingerprint: int = await wallet_client_1.get_logged_in_fingerprint() - result: Dict = await wallet_client_1.get_private_key(fingerprint=fingerprint) + result = await wallet_client_1.get_private_key(fingerprint=fingerprint) master_secret_key: PrivateKey = PrivateKey.from_bytes( bytes.fromhex(result["sk"]) ) @@ -113,39 +110,39 @@ async def test_cat_tokenization_workflow( root_secret_key=root_secret_key, wallet_client=wallet_client_1, ) - result: Dict = await climate_wallet_1.send_tokenization_transaction( + result = await climate_wallet_1.send_tokenization_transaction( to_puzzle_hash=await wallet_2.get_new_puzzlehash(), amount=amount, fee=fee, ) - spend_bundle: SpendBundle = result["spend_bundle"] transaction_records: List[TransactionRecord] = result["transaction_records"] - await farm_transaction(full_node_api, wallet_node_1, spend_bundle) + await full_node_api.process_all_wallet_transactions( + wallet=wallet_node_1.wallet_state_manager.main_wallet, timeout=120 + ) await check_transactions(wallet_client_1, 1, transaction_records) # block: # - client: create CAT wallet - result: List[Dict] = await wallet_client_2.get_stray_cats() + result = await wallet_client_2.get_stray_cats() asset_id = bytes32.fromhex(result[0]["asset_id"]) - result: Dict = await wallet_client_2.create_wallet_for_existing_cat( - asset_id=asset_id - ) + result = await wallet_client_2.create_wallet_for_existing_cat(asset_id=asset_id) + assert result["success"] cat_wallet_id: int = result["wallet_id"] - await farm_transaction_block(full_node_api, wallet_node_1) - await check_balance(wallet_client_2, cat_wallet_id, amount) + await time_out_assert( + 60, get_confirmed_balance, amount, wallet_client_2, cat_wallet_id + ) @pytest.mark.asyncio async def test_cat_detokenization_workflow( self, - wallet_rpc_environment: WalletRpcTestEnvironment, + wallet_rpc_environment: WalletRpcTestEnvironment, # noqa: F811 token_index: ClimateTokenIndex, amount: int = 10, fee: int = 10, ) -> None: - env: WalletRpcTestEnvironment = wallet_rpc_environment wallet_node_1: WalletNode = env.wallet_1.node @@ -157,12 +154,11 @@ async def test_cat_detokenization_workflow( full_node_api: FullNodeSimulator = env.full_node.api fingerprint: int = await wallet_client_1.get_logged_in_fingerprint() - result: Dict = await wallet_client_1.get_private_key(fingerprint=fingerprint) + result = await wallet_client_1.get_private_key(fingerprint=fingerprint) master_secret_key: PrivateKey = PrivateKey.from_bytes( bytes.fromhex(result["sk"]) ) root_secret_key: PrivateKey = master_sk_to_root_sk(master_secret_key) - constants: ConsensusConstants = full_node_api.full_node.constants # block: initial fund deposits @@ -178,20 +174,22 @@ async def test_cat_detokenization_workflow( root_secret_key=root_secret_key, wallet_client=wallet_client_1, ) - result: Dict = await climate_wallet_1.send_tokenization_transaction( + result = await climate_wallet_1.send_tokenization_transaction( to_puzzle_hash=await wallet_2.get_new_puzzlehash(), amount=amount, fee=fee, ) - spend_bundle: SpendBundle = result["spend_bundle"] + # spend_bundle: SpendBundle = result["spend_bundle"] transaction_records: List[TransactionRecord] = result["transaction_records"] - result: Dict = await wallet_client_2.create_wallet_for_existing_cat( + result = await wallet_client_2.create_wallet_for_existing_cat( asset_id=climate_wallet_1.tail_program.get_tree_hash() ) cat_wallet_id: int = result["wallet_id"] - await farm_transaction(full_node_api, wallet_node_1, spend_bundle) + await full_node_api.process_all_wallet_transactions( + wallet=wallet_node_1.wallet_state_manager.main_wallet, timeout=120 + ) await check_transactions(wallet_client_1, 1, transaction_records) # block: @@ -207,15 +205,15 @@ async def test_cat_detokenization_workflow( wallet_client=wallet_client_2, constants=climate_wallet_1.constants, ) - result: Dict = await climate_wallet_2.create_detokenization_request( + result = await climate_wallet_2.create_detokenization_request( amount=amount, fee=fee, wallet_id=cat_wallet_id, ) content: str = result["content"] - transaction_records: List[TransactionRecord] = result["transaction_records"] + transaction_records = result["transaction_records"] - result: Dict = await ClimateWallet.parse_detokenization_request( + result = await ClimateWallet.parse_detokenization_request( content=content, ) assert result["mode"] == GatewayMode.DETOKENIZATION @@ -223,44 +221,40 @@ async def test_cat_detokenization_workflow( assert result["fee"] == fee assert result["asset_id"] == climate_wallet_1.tail_program_hash - result: Dict = await climate_wallet_1.sign_and_send_detokenization_request( + result = await climate_wallet_1.sign_and_send_detokenization_request( content=content, ) - spend_bundle: SpendBundle = result["spend_bundle"] + spend_bundle = result["spend_bundle"] await farm_transaction(full_node_api, wallet_node_1, spend_bundle) + await full_node_api.wait_for_wallet_synced(env.wallet_2.node, timeout=60) await check_transactions(wallet_client_2, cat_wallet_id, transaction_records) - await check_balance(wallet_client_2, cat_wallet_id, 0) + await time_out_assert( + 60, get_confirmed_balance, 0, wallet_client_2, cat_wallet_id + ) @pytest.mark.asyncio async def test_cat_permissionless_retirement_workflow( self, - wallet_rpc_environment: WalletRpcTestEnvironment, + wallet_rpc_environment: WalletRpcTestEnvironment, # noqa: F811 token_index: ClimateTokenIndex, amount: int = 10, fee: int = 10, - beneficiary_name: bytes = b"Ionia", + beneficiary_name: bytes = "Ionia".encode(), ) -> None: - env: WalletRpcTestEnvironment = wallet_rpc_environment - wallet_node_1: WalletNode = env.wallet_1.node wallet_client_1: WalletRpcClient = env.wallet_1.rpc_client - - wallet_node_2: WalletNode = env.wallet_2.node wallet_client_2: WalletRpcClient = env.wallet_2.rpc_client wallet_2: Wallet = env.wallet_2.wallet full_node_api: FullNodeSimulator = env.full_node.api - full_node_client: ChiaServer = env.full_node.rpc_client + full_node_client = env.full_node.rpc_client fingerprint: int = await wallet_client_1.get_logged_in_fingerprint() - result: Dict = await wallet_client_1.get_private_key(fingerprint=fingerprint) - master_secret_key: PrivateKey = PrivateKey.from_bytes( - bytes.fromhex(result["sk"]) - ) - root_secret_key: PrivateKey = master_sk_to_root_sk(master_secret_key) - constants: ConsensusConstants = full_node_api.full_node.constants + result = await wallet_client_1.get_private_key(fingerprint=fingerprint) + master_secret_key = PrivateKey.from_bytes(bytes.fromhex(result["sk"])) + root_secret_key = master_sk_to_root_sk(master_secret_key) # block: initial fund deposits @@ -276,20 +270,21 @@ async def test_cat_permissionless_retirement_workflow( root_secret_key=root_secret_key, wallet_client=wallet_client_1, ) - result: Dict = await climate_wallet_1.send_tokenization_transaction( + result = await climate_wallet_1.send_tokenization_transaction( to_puzzle_hash=await wallet_2.get_new_puzzlehash(), amount=amount, fee=fee, ) - spend_bundle: SpendBundle = result["spend_bundle"] - transaction_records: List[TransactionRecord] = result["transaction_records"] + transaction_records = result["transaction_records"] - result: Dict = await wallet_client_2.create_wallet_for_existing_cat( + result = await wallet_client_2.create_wallet_for_existing_cat( asset_id=climate_wallet_1.tail_program.get_tree_hash() ) cat_wallet_id: int = result["wallet_id"] - await farm_transaction(full_node_api, wallet_node_1, spend_bundle) + await full_node_api.process_all_wallet_transactions( + wallet=env.wallet_1.node.wallet_state_manager.main_wallet, timeout=120 + ) await check_transactions(wallet_client_1, 1, transaction_records) # block: @@ -303,20 +298,23 @@ async def test_cat_permissionless_retirement_workflow( wallet_client=wallet_client_2, constants=climate_wallet_1.constants, ) - result: Dict = ( - await climate_wallet_2.send_permissionless_retirement_transaction( - amount=amount, - fee=fee, - beneficiary_name=beneficiary_name, - wallet_id=cat_wallet_id, - ) + + test_address = "This is a fake address".encode() + result = await climate_wallet_2.send_permissionless_retirement_transaction( + amount=amount, + fee=fee, + beneficiary_name=beneficiary_name, + beneficiary_address=test_address, + wallet_id=cat_wallet_id, ) - spend_bundle: SpendBundle = result["spend_bundle"] - transaction_records: List[TransactionRecord] = result["transaction_records"] + transaction_records = result["transaction_records"] - await farm_transaction(full_node_api, wallet_node_2, spend_bundle) - await check_transactions(wallet_client_2, cat_wallet_id, transaction_records) - await check_balance(wallet_client_2, cat_wallet_id, 0) + await full_node_api.process_all_wallet_transactions( + wallet=env.wallet_2.node.wallet_state_manager.main_wallet, timeout=120 + ) + await time_out_assert( + 60, get_confirmed_balance, 0, wallet_client_2, cat_wallet_id + ) # block: # - observer: observe retirement activity @@ -326,12 +324,10 @@ async def test_cat_permissionless_retirement_workflow( root_public_key=climate_wallet_1.root_public_key, full_node_client=full_node_client, ) - activities: List[Dict] = await climate_observer.get_activities( + activities = await climate_observer.get_activities( mode=GatewayMode.PERMISSIONLESS_RETIREMENT ) assert activities[0]["metadata"]["bn"] == beneficiary_name.decode() - assert ( - activities[0]["metadata"]["bp"] - == "0x" + (await get_first_puzzle_hash(wallet_client_2)).hex() - ) + assert activities[0]["metadata"]["ba"] == test_address.decode() + assert activities[0]["metadata"]["bp"] == "0x" diff --git a/tests/test_crud_chia.py b/tests/test_crud_chia.py index 3991ee2..3d4c057 100644 --- a/tests/test_crud_chia.py +++ b/tests/test_crud_chia.py @@ -1,26 +1,29 @@ +from typing import Any, Dict, List from unittest import mock + +import pytest + from app import crud class TestClimateWareHouseCrud: - def test_combine_climate_units_and_metadata_empty_units_then_success(self, monkeypatch): - test_request = {} - test_response = [] - + def test_combine_climate_units_and_metadata_empty_units_then_success( + self, monkeypatch: pytest.MonkeyPatch + ) -> None: mock_units = mock.MagicMock() mock_units.return_value = [] monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_units", mock_units) - response = crud.ClimateWareHouseCrud(url=mock.MagicMock()).combine_climate_units_and_metadata( - search=test_request) + response = crud.ClimateWareHouseCrud( + url=mock.MagicMock(), api_key=None + ).combine_climate_units_and_metadata(search={}) - assert response == test_response - - def test_combine_climate_units_and_metadata_empty_projects_then_success(self, monkeypatch): - test_request = {} - test_response = [] + assert len(response) == 0 + def test_combine_climate_units_and_metadata_empty_projects_then_success( + self, monkeypatch: pytest.MonkeyPatch + ) -> None: mock_units = mock.MagicMock() mock_projects = mock.MagicMock() mock_units.return_value = [ @@ -63,108 +66,114 @@ def test_combine_climate_units_and_metadata_empty_projects_then_success(self, mo "timeStaged": None, "createdAt": "2022-10-24T06:25:13.438Z", "updatedAt": "2022-10-24T06:25:13.438Z", - } + }, } ] mock_projects.return_value = [] - monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_projects", mock_projects) + monkeypatch.setattr( + crud.ClimateWareHouseCrud, "get_climate_projects", mock_projects + ) monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_units", mock_units) - response = crud.ClimateWareHouseCrud(url=mock.MagicMock()).combine_climate_units_and_metadata( - search=test_request) + response = crud.ClimateWareHouseCrud( + url=mock.MagicMock(), api_key=None + ).combine_climate_units_and_metadata(search={}) - assert response == test_response + assert len(response) == 0 - def test_combine_climate_units_and_metadata_empty_orgs_then_success(self, monkeypatch): - test_request = {} - test_response = [{ - "correspondingAdjustmentDeclaration": "Committed", - "correspondingAdjustmentStatus": "Not Started", - "countryJurisdictionOfOwner": "Algeria", - "createdAt": "2022-10-24T06:25:13.440Z", - "inCountryJurisdictionOfOwner": None, - "issuance": { - "createdAt": "2022-10-24T06:25:13.438Z", - "endDate": "2022-08-05T00:00:00.000Z", - "id": "18cfe2ba-faea-4f26-a69d-07ab6a6e886e", - "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", - "startDate": "2022-08-03T00:00:00.000Z", - "timeStaged": None, - "updatedAt": "2022-10-24T06:25:13.438Z", - "verificationApproach": "seer", - "verificationBody": "tea", - "verificationReportDate": "2022-08-06T00:00:00.000Z", - "warehouseProjectId": "c9b98579-debb-49f3-b417-0adbae4ed5c7" - }, - "issuanceId": '18cfe2ba-faea-4f26-a69d-07ab6a6e886e', - "labels": [], - "marketplace": None, - "marketplaceIdentifier": '8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60', - "marketplaceLink": None, - "orgUid": 'cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd', - "organization": { - "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", - "name": "Hashgreen", - "icon": "", - "isHome": True, - "subscribed": True, - "fileStoreSubscribed": "0", - "xchAddress": "txch1ejkmz95p0xngy5uf3mqjpy9ndlr6rxe324dwlhl2rdlyegmwqmeqrz9uvn", - "balance": 106.489099999996 - }, - "projectLocationId": None, - "serialNumberBlock": "ABC100-ABC200", - "timeStaged": "1666592541", - "token": {}, - "unitBlockEnd": "ABC200", - "unitBlockStart": "ABC100", - "unitCount": 100, - "unitOwner": None, - "unitRegistryLink": "http://example.example", - "unitStatus": "Held", - "unitStatusReason": None, - "unitTags": None, - "unitType": "Reduction - nature", - "updatedAt": "2022-10-24T06:25:13.440Z", - "vintageYear": 2099, - "warehouseUnitId": "a9fbe47e-d308-4c4c-8eb5-c06dd09b0716", - "project": { - "warehouseProjectId": "fce35ee2-bdf1-47d8-9397-345334ff804b", - "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", - "currentRegistry": None, - "projectId": "c9d147e2-bc07-4e68-a76d-43424fa8cd4e", - "originProjectId": "TEST PROJECT ID", - "registryOfOrigin": "Singapore National Registry", - "program": "TEST", - "projectName": "Sungei Buloh Wetlands Conservation", - "projectLink": "https://www.nature.com/articles/s41467-021-21560-2", - "projectDeveloper": "NParks' National Biodiversity Centre, National Parks Board, Ridgeview Residential College", - "sector": "Transport", - "projectType": "Organic Waste Composting", - "projectTags": None, - "coveredByNDC": "Inside NDC", - "ndcInformation": "The restoration and conservation project directly aligns to the Singaporean NDC goals to capture 1,000,000 tons of carbon by 2050. This project represents an estimated contribution of 27% towards the NDC.", - "projectStatus": "Registered", - "projectStatusDate": "2022-01-31T00:05:45.701Z", - "unitMetric": "tCO2e", - "methodology": "Recovery and utilization of gas from oil fields that would otherwise be flared or vented --- Version 7.0", - "methodology2": None, - "validationBody": "SCS Global Services", - "validationDate": "2021-06-01T17:00:45.701Z", - "timeStaged": "1666138010", - "description": None, - "createdAt": "2022-10-24T05:56:12.935Z", - "updatedAt": "2022-10-24T05:56:12.935Z", - "projectLocations": [], + def test_combine_climate_units_and_metadata_empty_orgs_then_success( + self, monkeypatch: pytest.MonkeyPatch + ) -> None: + test_response: List[Dict[str, Any]] = [ + { + "correspondingAdjustmentDeclaration": "Committed", + "correspondingAdjustmentStatus": "Not Started", + "countryJurisdictionOfOwner": "Algeria", + "createdAt": "2022-10-24T06:25:13.440Z", + "inCountryJurisdictionOfOwner": None, + "issuance": { + "createdAt": "2022-10-24T06:25:13.438Z", + "endDate": "2022-08-05T00:00:00.000Z", + "id": "18cfe2ba-faea-4f26-a69d-07ab6a6e886e", + "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "startDate": "2022-08-03T00:00:00.000Z", + "timeStaged": None, + "updatedAt": "2022-10-24T06:25:13.438Z", + "verificationApproach": "seer", + "verificationBody": "tea", + "verificationReportDate": "2022-08-06T00:00:00.000Z", + "warehouseProjectId": "c9b98579-debb-49f3-b417-0adbae4ed5c7", + }, + "issuanceId": "18cfe2ba-faea-4f26-a69d-07ab6a6e886e", "labels": [], - "issuances": [], - "coBenefits": [], - "relatedProjects": [], - "projectRatings": [], - "estimations": [], + "marketplace": None, + "marketplaceIdentifier": "8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60", + "marketplaceLink": None, + "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "organization": { + "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "name": "Hashgreen", + "icon": "", + "isHome": True, + "subscribed": True, + "fileStoreSubscribed": "0", + "xchAddress": "txch1ejkmz95p0xngy5uf3mqjpy9ndlr6rxe324dwlhl2rdlyegmwqmeqrz9uvn", + "balance": 106.489099999996, + }, + "projectLocationId": None, + "serialNumberBlock": "ABC100-ABC200", + "timeStaged": "1666592541", + "token": {}, + "unitBlockEnd": "ABC200", + "unitBlockStart": "ABC100", + "unitCount": 100, + "unitOwner": None, + "unitRegistryLink": "http://example.example", + "unitStatus": "Held", + "unitStatusReason": None, + "unitTags": None, + "unitType": "Reduction - nature", + "updatedAt": "2022-10-24T06:25:13.440Z", + "vintageYear": 2099, + "warehouseUnitId": "a9fbe47e-d308-4c4c-8eb5-c06dd09b0716", + "project": { + "warehouseProjectId": "c9b98579-debb-49f3-b417-0adbae4ed5c7", + "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", + "currentRegistry": None, + "projectId": "c9d147e2-bc07-4e68-a76d-43424fa8cd4e", + "originProjectId": "TEST PROJECT ID", + "registryOfOrigin": "Singapore National Registry", + "program": "TEST", + "projectName": "Sungei Buloh Wetlands Conservation", + "projectLink": "https://www.nature.com/articles/s41467-021-21560-2", + "projectDeveloper": "NParks' National Biodiversity Centre, National Parks Board, Ridgeview Residential College", + "sector": "Transport", + "projectType": "Organic Waste Composting", + "projectTags": None, + "coveredByNDC": "Inside NDC", + "ndcInformation": "The restoration and conservation project directly aligns to the Singaporean NDC goals to capture 1,000,000 tons of carbon by 2050. This project represents an estimated contribution of 27% towards the NDC.", + "projectStatus": "Registered", + "projectStatusDate": "2022-01-31T00:05:45.701Z", + "unitMetric": "tCO2e", + "methodology": "Recovery and utilization of gas from oil fields that would otherwise be flared or vented --- Version 7.0", + "methodology2": None, + "validationBody": "SCS Global Services", + "validationDate": "2021-06-01T17:00:45.701Z", + "timeStaged": "1666138010", + "description": None, + "createdAt": "2022-10-24T05:56:12.935Z", + "updatedAt": "2022-10-24T05:56:12.935Z", + "projectLocations": [], + "labels": [], + "issuances": [], + "coBenefits": [], + "relatedProjects": [], + "projectRatings": [], + "estimations": [], + }, } - }] + ] mock_units = mock.MagicMock() mock_projects = mock.MagicMock() @@ -210,12 +219,12 @@ def test_combine_climate_units_and_metadata_empty_orgs_then_success(self, monkey "timeStaged": None, "createdAt": "2022-10-24T06:25:13.438Z", "updatedAt": "2022-10-24T06:25:13.438Z", - } + }, } ] mock_projects.return_value = [ { - "warehouseProjectId": "fce35ee2-bdf1-47d8-9397-345334ff804b", + "warehouseProjectId": "c9b98579-debb-49f3-b417-0adbae4ed5c7", "orgUid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd", "currentRegistry": None, "projectId": "c9d147e2-bc07-4e68-a76d-43424fa8cd4e", @@ -259,20 +268,29 @@ def test_combine_climate_units_and_metadata_empty_orgs_then_success(self, monkey "subscribed": True, "fileStoreSubscribed": "0", "xchAddress": "txch1ejkmz95p0xngy5uf3mqjpy9ndlr6rxe324dwlhl2rdlyegmwqmeqrz9uvn", - "balance": 106.489099999996 + "balance": 106.489099999996, } } mock_org_metadata.return_value = { - "meta_0x8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60": "{\"org_uid\": \"cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd\",\"warehouse_project_id\": \"c9b98579-debb-49f3-b417-0adbae4ed5c7\", \"vintage_year\": 2099,\"sequence_num\": 0,\"index\": \"0x8b0aa9633464b5437f4b980b864a3ab5dda49e6a754ef2b1cde6d30fb28a9330\",\"public_key\": \"0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315\", \"asset_id\": \"0x8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60\",\"tokenization\": { \"mod_hash\": \"0xbe97af91e9833541c4c5dd0ab08bad1b0653cccd96e56ae43b7314469e458f5b\",\"public_key\": \"0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c\"}, \"detokenization\": {\"mod_hash\": \"0xed13201cb8b52b4c7ef851e220a3d2bddd57120e6e6afde2aabe3fcc400765ea\", \"public_key\": \"0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d\", \"signature\": \"0xa627c8779c2d8096444d44879294c7d963180c166564e9c9569c23c3a744af514aae03aeaa5e2d5fd12d0c008c1630410e9d4516b58863658f7ac5b35d09d8810fb28ed43b3f6243c645f0bd934b434aac87cd5718dafd87b51d8bf9c821ba24\"},\"permissionless_retirement\": {\"mod_hash\": \"0x36ab0a0666149598070b7c40ab10c3aaff51384d4ad4544a1c301636e917c039\",\"signature\": \"0xaa1f6b71999333761fbd9eb914ce5ab1c3acb83e7fa7eb5b59c226f20b644c835f8238edbe3ddfeed1a916f0307fe1200174a211b8169ace5afcd9162f88b46565f3ffbbf6dfdf8d154e6337e30829c23ab3f6796d9a319bf0d9168685541d62\"}}" + "meta_0x8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60": '{"org_uid": "cf7af8da584b6c115ba8247c5cdd05506c3b3c5c632ed975cc2b16262493e2bd","warehouse_project_id": "c9b98579-debb-49f3-b417-0adbae4ed5c7", "vintage_year": 2099,"sequence_num": 0,"index": "0x8b0aa9633464b5437f4b980b864a3ab5dda49e6a754ef2b1cde6d30fb28a9330","public_key": "0x9650dc15356ba1fe3a48e50daa55ac3dfde5323226922c9bf09aae1bd9612105f323e573cfa0778c681467a0c62bc315", "asset_id": "0x8df0a9aa3739e24467b8a6409b49efe355dd4999a51215aed1f944314af07c60","tokenization": { "mod_hash": "0xbe97af91e9833541c4c5dd0ab08bad1b0653cccd96e56ae43b7314469e458f5b","public_key": "0x8cba9cb11eed6e2a04843d94c9cabecc3f8eb3118f3a4c1dd5260684f462a8c886db5963f2dcac03f54a745a42777e7c"}, "detokenization": {"mod_hash": "0xed13201cb8b52b4c7ef851e220a3d2bddd57120e6e6afde2aabe3fcc400765ea", "public_key": "0xb431835fe9fa64e9bea1bbab1d4bffd15d17d997f3754b2f97c8db43ea173a8b9fa79ac3a7d58c80111fbfdd4e485f0d", "signature": "0xa627c8779c2d8096444d44879294c7d963180c166564e9c9569c23c3a744af514aae03aeaa5e2d5fd12d0c008c1630410e9d4516b58863658f7ac5b35d09d8810fb28ed43b3f6243c645f0bd934b434aac87cd5718dafd87b51d8bf9c821ba24"},"permissionless_retirement": {"mod_hash": "0x36ab0a0666149598070b7c40ab10c3aaff51384d4ad4544a1c301636e917c039","signature": "0xaa1f6b71999333761fbd9eb914ce5ab1c3acb83e7fa7eb5b59c226f20b644c835f8238edbe3ddfeed1a916f0307fe1200174a211b8169ace5afcd9162f88b46565f3ffbbf6dfdf8d154e6337e30829c23ab3f6796d9a319bf0d9168685541d62"}}' } - monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_projects", mock_projects) + monkeypatch.setattr( + crud.ClimateWareHouseCrud, "get_climate_projects", mock_projects + ) monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_units", mock_units) - monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_organizations", mock_orgs) - monkeypatch.setattr(crud.ClimateWareHouseCrud, "get_climate_organizations_metadata", mock_org_metadata) + monkeypatch.setattr( + crud.ClimateWareHouseCrud, "get_climate_organizations", mock_orgs + ) + monkeypatch.setattr( + crud.ClimateWareHouseCrud, + "get_climate_organizations_metadata", + mock_org_metadata, + ) - response = crud.ClimateWareHouseCrud(url=mock.MagicMock()).combine_climate_units_and_metadata( - search=test_request) + response = crud.ClimateWareHouseCrud( + url=mock.MagicMock(), api_key=None + ).combine_climate_units_and_metadata(search={}) + print(f"EMLEML: {response}") assert response == test_response - diff --git a/tests/test_crud_core.py b/tests/test_crud_core.py index 62f74dd..6d62095 100644 --- a/tests/test_crud_core.py +++ b/tests/test_crud_core.py @@ -4,12 +4,12 @@ class TestUpdateBlockState: - def test_with_block_height_then_success(self): + def test_with_block_height_then_success(self) -> None: mock_db = mock.MagicMock() actual = DBCrud(db=mock_db).update_block_state(peak_height=1) assert actual is True - def test_with_current_height_then_success(self): + def test_with_current_height_then_success(self) -> None: mock_db = mock.MagicMock() actual = DBCrud(db=mock_db).update_block_state(current_height=1) assert actual is True