gate-io-api 0.0.64__tar.gz → 0.0.66__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of gate-io-api might be problematic. Click here for more details.
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/PKG-INFO +1 -1
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/pyproject.toml +1 -1
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/__init__.py +2 -3
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/__init__.py +2 -3
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/exchange.py +30 -26
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/gate.py +91 -73
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/exchange.py +12 -9
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/gate.py +91 -73
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/pro/__init__.py +91 -1
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/.gitignore +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/README.md +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/abstract/gate.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/throttler.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/cache.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/client.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/functions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/future.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/order_book.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/async_support/base/ws/order_book_side.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/decimal_to_precision.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/errors.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/precise.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/base/types.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/pro/gate.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/README.md +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/_version.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/curves.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/der.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/keys.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ecdsa/util.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/keccak/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/keccak/keccak.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/ast_utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/common.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammar.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammars/common.lark +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammars/lark.lark +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammars/python.lark +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/grammars/unicode.lark +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/indenter.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/lark.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/lexer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/load_grammar.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/reconstruct.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tree.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/tree_templates.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/lark/visitors.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/base.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/fields.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/schema.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/types.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/validate.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/_cmsgpack.pyx +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/_packer.pyx +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/_unpacker.pyx +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/buff_converter.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/ext.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/fallback.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/pack.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/pack_template.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/sysdep.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/unpack.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/unpack_define.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/msgpack/unpack_template.h +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/parsimonious/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v0/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v0/model.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v0/parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v0/schemas.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v0/shape.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/core_structures.json +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/model.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/parser_transformer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/schemas.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v1/shape.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/model.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/parser_transformer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/schemas.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/abi/v2/shape.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/common.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/constants.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/address.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/_signatures.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/_version.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/compatibility.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/functoolz.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/recipes.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/toolz/utils.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
- {gate_io_api-0.0.64 → gate_io_api-0.0.66}/src/gate/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
|
@@ -26,7 +26,7 @@ sys.modules['ccxt'] = ccxt_module
|
|
|
26
26
|
|
|
27
27
|
# ----------------------------------------------------------------------------
|
|
28
28
|
|
|
29
|
-
__version__ = '4.4.
|
|
29
|
+
__version__ = '4.4.87'
|
|
30
30
|
|
|
31
31
|
# ----------------------------------------------------------------------------
|
|
32
32
|
|
|
@@ -88,9 +88,8 @@ from ccxt.base.errors import UnsubscribeError # noqa: F4
|
|
|
88
88
|
from ccxt.base.errors import error_hierarchy # noqa: F401
|
|
89
89
|
|
|
90
90
|
from ccxt.gate import gate # noqa: F401
|
|
91
|
-
from ccxt.kuna import kuna # noqa: F401
|
|
92
91
|
|
|
93
|
-
exchanges = [ 'gate',
|
|
92
|
+
exchanges = [ 'gate',]
|
|
94
93
|
|
|
95
94
|
base = [
|
|
96
95
|
'Exchange',
|
|
@@ -8,7 +8,7 @@ sys.modules['ccxt'] = ccxt_module
|
|
|
8
8
|
|
|
9
9
|
# -----------------------------------------------------------------------------
|
|
10
10
|
|
|
11
|
-
__version__ = '4.4.
|
|
11
|
+
__version__ = '4.4.87'
|
|
12
12
|
|
|
13
13
|
# -----------------------------------------------------------------------------
|
|
14
14
|
|
|
@@ -68,9 +68,8 @@ from ccxt.base.errors import error_hierarchy # noqa: F4
|
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
from ccxt.async_support.gate import gate # noqa: F401
|
|
71
|
-
from ccxt.async_support.kuna import kuna # noqa: F401
|
|
72
71
|
|
|
73
|
-
exchanges = [ 'gate',
|
|
72
|
+
exchanges = [ 'gate',]
|
|
74
73
|
|
|
75
74
|
base = [
|
|
76
75
|
'Exchange',
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# -----------------------------------------------------------------------------
|
|
4
4
|
|
|
5
|
-
__version__ = '4.4.
|
|
5
|
+
__version__ = '4.4.87'
|
|
6
6
|
|
|
7
7
|
# -----------------------------------------------------------------------------
|
|
8
8
|
|
|
@@ -176,15 +176,7 @@ class Exchange(BaseExchange):
|
|
|
176
176
|
if (socksProxy not in self.socks_proxy_sessions):
|
|
177
177
|
# Create our SSL context object with our CA cert file
|
|
178
178
|
self.open() # ensure `asyncio_loop` is set
|
|
179
|
-
|
|
180
|
-
socksProxy,
|
|
181
|
-
# extra args copied from self.open()
|
|
182
|
-
ssl=self.ssl_context,
|
|
183
|
-
loop=self.asyncio_loop,
|
|
184
|
-
enable_cleanup_closed=True
|
|
185
|
-
)
|
|
186
|
-
self.socks_proxy_sessions[socksProxy] = aiohttp.ClientSession(loop=self.asyncio_loop, connector=self.aiohttp_socks_connector, trust_env=self.aiohttp_trust_env)
|
|
187
|
-
proxy_session = self.socks_proxy_sessions[socksProxy]
|
|
179
|
+
proxy_session = self.get_socks_proxy_session(socksProxy)
|
|
188
180
|
# add aiohttp_proxy for python as exclusion
|
|
189
181
|
elif self.aiohttp_proxy:
|
|
190
182
|
final_proxy = self.aiohttp_proxy
|
|
@@ -267,6 +259,20 @@ class Exchange(BaseExchange):
|
|
|
267
259
|
return http_response
|
|
268
260
|
return response.content
|
|
269
261
|
|
|
262
|
+
def get_socks_proxy_session(self, socksProxy):
|
|
263
|
+
if (self.socks_proxy_sessions is None):
|
|
264
|
+
self.socks_proxy_sessions = {}
|
|
265
|
+
if (socksProxy not in self.socks_proxy_sessions):
|
|
266
|
+
self.aiohttp_socks_connector = ProxyConnector.from_url(
|
|
267
|
+
socksProxy,
|
|
268
|
+
# extra args copied from self.open()
|
|
269
|
+
ssl=self.ssl_context,
|
|
270
|
+
loop=self.asyncio_loop,
|
|
271
|
+
enable_cleanup_closed=True
|
|
272
|
+
)
|
|
273
|
+
self.socks_proxy_sessions[socksProxy] = aiohttp.ClientSession(loop=self.asyncio_loop, connector=self.aiohttp_socks_connector, trust_env=self.aiohttp_trust_env)
|
|
274
|
+
return self.socks_proxy_sessions[socksProxy]
|
|
275
|
+
|
|
270
276
|
async def load_markets_helper(self, reload=False, params={}):
|
|
271
277
|
if not reload:
|
|
272
278
|
if self.markets:
|
|
@@ -411,19 +417,12 @@ class Exchange(BaseExchange):
|
|
|
411
417
|
# we use aiohttp instead of fastClient now because of this
|
|
412
418
|
# https://github.com/ccxt/ccxt/pull/25995
|
|
413
419
|
self.clients[url] = AiohttpClient(url, on_message, on_error, on_close, on_connected, options)
|
|
414
|
-
|
|
420
|
+
# set http/s proxy (socks proxy should be set in other place)
|
|
421
|
+
httpProxy, httpsProxy, socksProxy = self.check_ws_proxy_settings()
|
|
422
|
+
if (httpProxy or httpsProxy):
|
|
423
|
+
self.clients[url].proxy = httpProxy if httpProxy else httpsProxy
|
|
415
424
|
return self.clients[url]
|
|
416
425
|
|
|
417
|
-
def get_ws_proxy(self):
|
|
418
|
-
httpProxy, httpsProxy, socksProxy = self.check_ws_proxy_settings()
|
|
419
|
-
if httpProxy:
|
|
420
|
-
return httpProxy
|
|
421
|
-
elif httpsProxy:
|
|
422
|
-
return httpsProxy
|
|
423
|
-
elif socksProxy:
|
|
424
|
-
return socksProxy
|
|
425
|
-
return None
|
|
426
|
-
|
|
427
426
|
def delay(self, timeout, method, *args):
|
|
428
427
|
return self.asyncio_loop.call_later(timeout / 1000, self.spawn, method, *args)
|
|
429
428
|
|
|
@@ -486,8 +485,13 @@ class Exchange(BaseExchange):
|
|
|
486
485
|
if not subscribed:
|
|
487
486
|
client.subscriptions[subscribe_hash] = subscription or True
|
|
488
487
|
|
|
488
|
+
selected_session = self.session
|
|
489
|
+
# http/s proxy is being set in other places
|
|
490
|
+
httpProxy, httpsProxy, socksProxy = self.check_ws_proxy_settings()
|
|
491
|
+
if (socksProxy):
|
|
492
|
+
selected_session = self.get_socks_proxy_session(socksProxy)
|
|
489
493
|
connected = client.connected if client.connected.done() \
|
|
490
|
-
else asyncio.ensure_future(client.connect(
|
|
494
|
+
else asyncio.ensure_future(client.connect(selected_session, backoff_delay))
|
|
491
495
|
|
|
492
496
|
def after(fut):
|
|
493
497
|
# todo: decouple signing from subscriptions
|
|
@@ -899,15 +903,15 @@ class Exchange(BaseExchange):
|
|
|
899
903
|
if self.enableRateLimit:
|
|
900
904
|
cost = self.calculate_rate_limiter_cost(api, method, path, params, config)
|
|
901
905
|
await self.throttle(cost)
|
|
906
|
+
retries = None
|
|
907
|
+
retries, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailure', 0)
|
|
908
|
+
retryDelay = None
|
|
909
|
+
retryDelay, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailureDelay', 0)
|
|
902
910
|
self.lastRestRequestTimestamp = self.milliseconds()
|
|
903
911
|
request = self.sign(path, api, method, params, headers, body)
|
|
904
912
|
self.last_request_headers = request['headers']
|
|
905
913
|
self.last_request_body = request['body']
|
|
906
914
|
self.last_request_url = request['url']
|
|
907
|
-
retries = None
|
|
908
|
-
retries, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailure', 0)
|
|
909
|
-
retryDelay = None
|
|
910
|
-
retryDelay, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailureDelay', 0)
|
|
911
915
|
for i in range(0, retries + 1):
|
|
912
916
|
try:
|
|
913
917
|
return await self.fetch(request['url'], request['method'], request['headers'], request['body'])
|
|
@@ -126,7 +126,7 @@ class gate(Exchange, ImplicitAPI):
|
|
|
126
126
|
'fetchCurrencies': True,
|
|
127
127
|
'fetchDepositAddress': True,
|
|
128
128
|
'fetchDepositAddresses': False,
|
|
129
|
-
'fetchDepositAddressesByNetwork':
|
|
129
|
+
'fetchDepositAddressesByNetwork': True,
|
|
130
130
|
'fetchDeposits': True,
|
|
131
131
|
'fetchDepositWithdrawFee': 'emulated',
|
|
132
132
|
'fetchDepositWithdrawFees': True,
|
|
@@ -735,6 +735,16 @@ class gate(Exchange, ImplicitAPI):
|
|
|
735
735
|
},
|
|
736
736
|
'networksById': {
|
|
737
737
|
'OPETH': 'OP',
|
|
738
|
+
'ETH': 'ERC20', # for GOlang
|
|
739
|
+
'ERC20': 'ERC20',
|
|
740
|
+
'TRX': 'TRC20',
|
|
741
|
+
'TRC20': 'TRC20',
|
|
742
|
+
'HT': 'HRC20',
|
|
743
|
+
'HECO': 'HRC20',
|
|
744
|
+
'BSC': 'BEP20',
|
|
745
|
+
'BEP20': 'BEP20',
|
|
746
|
+
'POLYGON': 'MATIC',
|
|
747
|
+
'POL': 'MATIC',
|
|
738
748
|
},
|
|
739
749
|
'timeInForce': {
|
|
740
750
|
'GTC': 'gtc',
|
|
@@ -1224,6 +1234,8 @@ class gate(Exchange, ImplicitAPI):
|
|
|
1224
1234
|
"""
|
|
1225
1235
|
if self.options['adjustForTimeDifference']:
|
|
1226
1236
|
await self.load_time_difference()
|
|
1237
|
+
if self.check_required_credentials(False):
|
|
1238
|
+
await self.load_unified_status()
|
|
1227
1239
|
sandboxMode = self.safe_bool(self.options, 'sandboxMode', False)
|
|
1228
1240
|
rawPromises = [
|
|
1229
1241
|
self.fetch_contract_markets(params),
|
|
@@ -1797,84 +1809,92 @@ class gate(Exchange, ImplicitAPI):
|
|
|
1797
1809
|
apiBackup = self.safe_value(self.urls, 'apiBackup')
|
|
1798
1810
|
if apiBackup is not None:
|
|
1799
1811
|
return None
|
|
1800
|
-
if self.check_required_credentials(False):
|
|
1801
|
-
await self.load_unified_status()
|
|
1802
1812
|
response = await self.publicSpotGetCurrencies(params)
|
|
1803
1813
|
#
|
|
1804
|
-
#
|
|
1805
|
-
#
|
|
1806
|
-
#
|
|
1807
|
-
#
|
|
1808
|
-
#
|
|
1809
|
-
#
|
|
1810
|
-
#
|
|
1811
|
-
#
|
|
1812
|
-
#
|
|
1813
|
-
#
|
|
1814
|
-
#
|
|
1815
|
-
#
|
|
1814
|
+
# [
|
|
1815
|
+
# {
|
|
1816
|
+
# "currency": "USDT",
|
|
1817
|
+
# "name": "Tether",
|
|
1818
|
+
# "delisted": False,
|
|
1819
|
+
# "withdraw_disabled": False,
|
|
1820
|
+
# "withdraw_delayed": False,
|
|
1821
|
+
# "deposit_disabled": False,
|
|
1822
|
+
# "trade_disabled": False,
|
|
1823
|
+
# "fixed_rate": "",
|
|
1824
|
+
# "chain": "ETH",
|
|
1825
|
+
# "chains": [
|
|
1826
|
+
# {
|
|
1827
|
+
# "name": "ETH",
|
|
1828
|
+
# "addr": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
|
|
1829
|
+
# "withdraw_disabled": False,
|
|
1830
|
+
# "withdraw_delayed": False,
|
|
1831
|
+
# "deposit_disabled": False
|
|
1832
|
+
# },
|
|
1833
|
+
# {
|
|
1834
|
+
# "name": "ARBEVM",
|
|
1835
|
+
# "addr": "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",
|
|
1836
|
+
# "withdraw_disabled": False,
|
|
1837
|
+
# "withdraw_delayed": False,
|
|
1838
|
+
# "deposit_disabled": False
|
|
1839
|
+
# },
|
|
1840
|
+
# {
|
|
1841
|
+
# "name": "BSC",
|
|
1842
|
+
# "addr": "0x55d398326f99059fF775485246999027B3197955",
|
|
1843
|
+
# "withdraw_disabled": False,
|
|
1844
|
+
# "withdraw_delayed": False,
|
|
1845
|
+
# "deposit_disabled": False
|
|
1846
|
+
# },
|
|
1847
|
+
# ]
|
|
1848
|
+
# },
|
|
1849
|
+
# ]
|
|
1816
1850
|
#
|
|
1817
1851
|
indexedCurrencies = self.index_by(response, 'currency')
|
|
1818
1852
|
result: dict = {}
|
|
1819
1853
|
for i in range(0, len(response)):
|
|
1820
1854
|
entry = response[i]
|
|
1821
1855
|
currencyId = self.safe_string(entry, 'currency')
|
|
1822
|
-
|
|
1823
|
-
partFirst = self.safe_string(parts, 0)
|
|
1824
|
-
# if there's an underscore then the second part is always the chain name(except the _OLD suffix)
|
|
1825
|
-
currencyName = currencyId if currencyId.endswith('_OLD') else partFirst
|
|
1826
|
-
withdrawDisabled = self.safe_bool(entry, 'withdraw_disabled', False)
|
|
1827
|
-
depositDisabled = self.safe_bool(entry, 'deposit_disabled', False)
|
|
1828
|
-
tradeDisabled = self.safe_bool(entry, 'trade_disabled', False)
|
|
1829
|
-
precision = self.parse_number('0.0001') # temporary safe default, because no value provided from API
|
|
1830
|
-
code = self.safe_currency_code(currencyName)
|
|
1856
|
+
code = self.safe_currency_code(currencyId)
|
|
1831
1857
|
# check leveraged tokens(e.g. BTC3S, ETH5L)
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
'
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1858
|
+
type = 'leveraged' if self.is_leveraged_currency(currencyId, True, indexedCurrencies) else 'crypto'
|
|
1859
|
+
chains = self.safe_list(entry, 'chains', [])
|
|
1860
|
+
networks = {}
|
|
1861
|
+
for j in range(0, len(chains)):
|
|
1862
|
+
chain = chains[j]
|
|
1863
|
+
networkId = self.safe_string(chain, 'name')
|
|
1864
|
+
networkCode = self.network_id_to_code(networkId)
|
|
1865
|
+
networks[networkCode] = {
|
|
1866
|
+
'info': chain,
|
|
1867
|
+
'id': networkId,
|
|
1868
|
+
'network': networkCode,
|
|
1869
|
+
'active': None,
|
|
1870
|
+
'deposit': not self.safe_bool(chain, 'deposit_disabled'),
|
|
1871
|
+
'withdraw': not self.safe_bool(chain, 'withdraw_disabled'),
|
|
1872
|
+
'fee': None,
|
|
1873
|
+
'precision': self.parse_number('0.0001'), # temporary safe default, because no value provided from API,
|
|
1874
|
+
'limits': {
|
|
1875
|
+
'deposit': {
|
|
1876
|
+
'min': None,
|
|
1877
|
+
'max': None,
|
|
1878
|
+
},
|
|
1879
|
+
'withdraw': {
|
|
1880
|
+
'min': None,
|
|
1881
|
+
'max': None,
|
|
1882
|
+
},
|
|
1853
1883
|
},
|
|
1854
|
-
},
|
|
1855
|
-
'active': not tradeDisabled,
|
|
1856
|
-
'deposit': not depositDisabled,
|
|
1857
|
-
'withdraw': not withdrawDisabled,
|
|
1858
|
-
'fee': None,
|
|
1859
|
-
'precision': precision,
|
|
1860
|
-
}
|
|
1861
|
-
# check if first entry for the specific currency
|
|
1862
|
-
if not (code in result):
|
|
1863
|
-
result[code] = {
|
|
1864
|
-
'id': currencyName,
|
|
1865
|
-
'lowerCaseId': currencyName.lower(),
|
|
1866
|
-
'code': code,
|
|
1867
|
-
'type': type,
|
|
1868
|
-
'precision': precision,
|
|
1869
|
-
'limits': None,
|
|
1870
|
-
'networks': {},
|
|
1871
|
-
'info': [], # will be filled below
|
|
1872
1884
|
}
|
|
1873
|
-
result[code]
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1885
|
+
result[code] = self.safe_currency_structure({
|
|
1886
|
+
'id': currencyId,
|
|
1887
|
+
'code': code,
|
|
1888
|
+
'name': self.safe_string(entry, 'name'),
|
|
1889
|
+
'type': type,
|
|
1890
|
+
'active': not self.safe_bool(entry, 'delisted'),
|
|
1891
|
+
'deposit': not self.safe_bool(entry, 'deposit_disabled'),
|
|
1892
|
+
'withdraw': not self.safe_bool(entry, 'withdraw_disabled'),
|
|
1893
|
+
'fee': None,
|
|
1894
|
+
'networks': networks,
|
|
1895
|
+
'precision': self.parse_number('0.0001'),
|
|
1896
|
+
'info': entry,
|
|
1897
|
+
})
|
|
1878
1898
|
return result
|
|
1879
1899
|
|
|
1880
1900
|
async def fetch_funding_rate(self, symbol: str, params={}) -> FundingRate:
|
|
@@ -2139,9 +2159,7 @@ class gate(Exchange, ImplicitAPI):
|
|
|
2139
2159
|
chains = self.safe_value(response, 'multichain_addresses', [])
|
|
2140
2160
|
currencyId = self.safe_string(response, 'currency')
|
|
2141
2161
|
currency = self.safe_currency(currencyId, currency)
|
|
2142
|
-
parsed = self.parse_deposit_addresses(chains,
|
|
2143
|
-
'currency': currency['id'],
|
|
2144
|
-
})
|
|
2162
|
+
parsed = self.parse_deposit_addresses(chains, None, False)
|
|
2145
2163
|
return self.index_by(parsed, 'network')
|
|
2146
2164
|
|
|
2147
2165
|
async def fetch_deposit_address(self, code: str, params={}) -> DepositAddress:
|
|
@@ -2159,8 +2177,8 @@ class gate(Exchange, ImplicitAPI):
|
|
|
2159
2177
|
networkCode = None
|
|
2160
2178
|
networkCode, params = self.handle_network_code_and_params(params)
|
|
2161
2179
|
chainsIndexedById = await self.fetch_deposit_addresses_by_network(code, params)
|
|
2162
|
-
|
|
2163
|
-
return chainsIndexedById[
|
|
2180
|
+
selectedNetworkIdOrCode = self.select_network_code_from_unified_networks(code, networkCode, chainsIndexedById)
|
|
2181
|
+
return chainsIndexedById[selectedNetworkIdOrCode]
|
|
2164
2182
|
|
|
2165
2183
|
def parse_deposit_address(self, depositAddress, currency=None):
|
|
2166
2184
|
#
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# -----------------------------------------------------------------------------
|
|
6
6
|
|
|
7
|
-
__version__ = '4.4.
|
|
7
|
+
__version__ = '4.4.87'
|
|
8
8
|
|
|
9
9
|
# -----------------------------------------------------------------------------
|
|
10
10
|
|
|
@@ -311,6 +311,7 @@ class Exchange(object):
|
|
|
311
311
|
base_currencies = None
|
|
312
312
|
quote_currencies = None
|
|
313
313
|
currencies = None
|
|
314
|
+
|
|
314
315
|
options = None # Python does not allow to define properties in run-time with setattr
|
|
315
316
|
isSandboxModeEnabled = False
|
|
316
317
|
accounts = None
|
|
@@ -1533,7 +1534,9 @@ class Exchange(object):
|
|
|
1533
1534
|
currencies = None
|
|
1534
1535
|
if self.has['fetchCurrencies'] is True:
|
|
1535
1536
|
currencies = self.fetch_currencies()
|
|
1537
|
+
self.options['cachedCurrencies'] = currencies
|
|
1536
1538
|
markets = self.fetch_markets(params)
|
|
1539
|
+
del self.options['cachedCurrencies']
|
|
1537
1540
|
return self.set_markets(markets, currencies)
|
|
1538
1541
|
|
|
1539
1542
|
def fetch_markets(self, params={}):
|
|
@@ -4166,11 +4169,11 @@ class Exchange(object):
|
|
|
4166
4169
|
raise NotSupported(self.id + ' - ' + networkCode + ' network did not return any result for ' + currencyCode)
|
|
4167
4170
|
else:
|
|
4168
4171
|
# if networkCode was provided by user, we should check it after response, referenced exchange doesn't support network-code during request
|
|
4169
|
-
|
|
4170
|
-
if
|
|
4171
|
-
chosenNetworkId =
|
|
4172
|
+
networkIdOrCode = networkCode if isIndexedByUnifiedNetworkCode else self.network_code_to_id(networkCode, currencyCode)
|
|
4173
|
+
if networkIdOrCode in indexedNetworkEntries:
|
|
4174
|
+
chosenNetworkId = networkIdOrCode
|
|
4172
4175
|
else:
|
|
4173
|
-
raise NotSupported(self.id + ' - ' +
|
|
4176
|
+
raise NotSupported(self.id + ' - ' + networkIdOrCode + ' network was not found for ' + currencyCode + ', use one of ' + ', '.join(availableNetworkIds))
|
|
4174
4177
|
else:
|
|
4175
4178
|
if responseNetworksLength == 0:
|
|
4176
4179
|
raise NotSupported(self.id + ' - no networks were returned for ' + currencyCode)
|
|
@@ -4458,15 +4461,15 @@ class Exchange(object):
|
|
|
4458
4461
|
if self.enableRateLimit:
|
|
4459
4462
|
cost = self.calculate_rate_limiter_cost(api, method, path, params, config)
|
|
4460
4463
|
self.throttle(cost)
|
|
4464
|
+
retries = None
|
|
4465
|
+
retries, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailure', 0)
|
|
4466
|
+
retryDelay = None
|
|
4467
|
+
retryDelay, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailureDelay', 0)
|
|
4461
4468
|
self.lastRestRequestTimestamp = self.milliseconds()
|
|
4462
4469
|
request = self.sign(path, api, method, params, headers, body)
|
|
4463
4470
|
self.last_request_headers = request['headers']
|
|
4464
4471
|
self.last_request_body = request['body']
|
|
4465
4472
|
self.last_request_url = request['url']
|
|
4466
|
-
retries = None
|
|
4467
|
-
retries, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailure', 0)
|
|
4468
|
-
retryDelay = None
|
|
4469
|
-
retryDelay, params = self.handle_option_and_params(params, path, 'maxRetriesOnFailureDelay', 0)
|
|
4470
4473
|
for i in range(0, retries + 1):
|
|
4471
4474
|
try:
|
|
4472
4475
|
return self.fetch(request['url'], request['method'], request['headers'], request['body'])
|