crypticorn 2.8.0rc8__tar.gz → 2.8.1__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.
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/CHANGELOG.md +11 -0
- {crypticorn-2.8.0rc8/crypticorn.egg-info → crypticorn-2.8.1}/PKG-INFO +3 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/init.py +2 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/exceptions.py +2 -1
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/logging.py +5 -5
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/router/admin_router.py +10 -12
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/router/status_router.py +2 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/utils.py +1 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/__init__.py +9 -1
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/__init__.py +1 -0
- crypticorn-2.8.1/crypticorn/klines/client/api/admin_api.py +1455 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/change_in_timeframe_api.py +24 -20
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/funding_rates_api.py +12 -10
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/ohlcv_data_api.py +37 -24
- crypticorn-2.8.1/crypticorn/klines/client/api/status_api.py +508 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/symbols_api.py +12 -9
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api/udf_api.py +6 -6
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/__init__.py +8 -1
- crypticorn-2.8.1/crypticorn/klines/client/models/api_error_identifier.py +115 -0
- crypticorn-2.8.1/crypticorn/klines/client/models/api_error_level.py +37 -0
- crypticorn-2.8.1/crypticorn/klines/client/models/api_error_type.py +37 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/exception_detail.py +6 -3
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/funding_rate.py +6 -12
- crypticorn-2.8.1/crypticorn/klines/client/models/funding_rate_response.py +103 -0
- crypticorn-2.8.1/crypticorn/klines/client/models/internal_exchange.py +39 -0
- crypticorn-2.8.1/crypticorn/klines/client/models/log_level.py +38 -0
- crypticorn-2.8.1/crypticorn/klines/client/models/market_type.py +35 -0
- crypticorn-2.8.0rc8/crypticorn/klines/client/models/ohlcv_history.py → crypticorn-2.8.1/crypticorn/klines/client/models/ohlcv.py +12 -13
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/search_symbol.py +3 -4
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/udf_config.py +2 -1
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/main.py +1 -13
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/__init__.py +11 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api/__init__.py +2 -0
- crypticorn-2.8.1/crypticorn/metrics/client/api/admin_api.py +1452 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api/exchanges_api.py +51 -40
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api/indicators_api.py +49 -32
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api/logs_api.py +7 -7
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api/marketcap_api.py +28 -25
- crypticorn-2.8.1/crypticorn/metrics/client/api/markets_api.py +374 -0
- crypticorn-2.8.0rc8/crypticorn/metrics/client/api/tokens_api.py → crypticorn-2.8.1/crypticorn/metrics/client/api/quote_currencies_api.py +43 -40
- crypticorn-2.8.1/crypticorn/metrics/client/api/status_api.py +508 -0
- crypticorn-2.8.1/crypticorn/metrics/client/api/tokens_api.py +490 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/__init__.py +29 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/api_error_identifier.py +115 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/api_error_level.py +37 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/api_error_type.py +37 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/models/exception_detail.py +6 -3
- crypticorn-2.8.1/crypticorn/metrics/client/models/exchange_mapping.py +121 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/internal_exchange.py +39 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/log_level.py +38 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/market_type.py +35 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/marketcap_ranking.py +87 -0
- crypticorn-2.8.1/crypticorn/metrics/client/models/ohlcv.py +113 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/main.py +14 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1/crypticorn.egg-info}/PKG-INFO +3 -2
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn.egg-info/SOURCES.txt +20 -1
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/pyproject.toml +3 -2
- crypticorn-2.8.0rc8/crypticorn/klines/client/api/status_api.py +0 -735
- crypticorn-2.8.0rc8/crypticorn/metrics/client/api/markets_api.py +0 -602
- crypticorn-2.8.0rc8/crypticorn/metrics/client/api/status_api.py +0 -735
- crypticorn-2.8.0rc8/crypticorn/metrics/client/models/__init__.py +0 -20
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/MANIFEST.in +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/README.md +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/admin_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/auth_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/service_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/user_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api/wallet_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/add_wallet200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/add_wallet_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/authorize_user200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/authorize_user200_response_auth.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/authorize_user_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/create_api_key200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/create_api_key_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/create_user_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/get_api_keys200_response_inner.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_balances_inner.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_sale_round.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet_vesting_wallets_inner.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_data_inner.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/list_wallets200_response_user_value.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/logout_default_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/logout_default_response_issues_inner.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/oauth_callback200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/oauth_callback200_response_user.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/refresh_token_info200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/refresh_token_info200_response_user_session.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/resend_verification_email_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/revoke_user_tokens_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/rotate_tokens200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/token_info200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/unlink_wallet_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/update_user_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/user_by_username200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/user_reset_password_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/user_set_password_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify_email200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify_email200_response_auth.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify_email200_response_auth_auth.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify_email_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/verify_wallet_request.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/wallet_verified200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/models/whoami200_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/auth/main.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/__main__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/templates/Dockerfile +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/templates/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/templates/auth.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/templates/dependabot.yml +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/cli/templates/ruff.yml +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/ansi_colors.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/auth.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/decorators.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/enums.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/errors.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/middleware.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/mixins.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/pagination.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/scopes.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/urls.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/common/utils.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api/admin_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api/data_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api/models_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api/status_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/api_error_identifier.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/api_error_level.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/api_error_type.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/coins.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/data_download_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/data_info.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/data_options.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/data_version.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/data_version_info.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/download_links.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/evaluation.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/evaluation_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/exception_detail.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/feature_size.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/log_level.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/model_create.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/model_status.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/model_update.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/target.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/target_info.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/models/target_type.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/hive/main.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/change_in_timeframe.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/resolution.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/sort_direction.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/symbol_group.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/symbol_info.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/symbol_type.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/models/timeframe.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/klines/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/models/severity.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/models/time_interval.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/models/trading_status.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/metrics/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/admin_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/now_payments_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/payments_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/products_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api/status_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/exception_detail.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/log_level.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/now_create_invoice_req.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/now_create_invoice_res.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/payment.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/payment_status.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/product_create.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/product_read.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/product_sub_read.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/product_update.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/provider.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/response_getuptime.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/models/scope.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/pay/main.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/api_keys_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/bots_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/exchanges_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/futures_trading_panel_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/notifications_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/orders_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/status_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/strategies_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api/trading_actions_api.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/api_response.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/configuration.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/exceptions.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/__init__.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/action_model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/bot_model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/bot_status.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/exception_detail.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/exchange_key_model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/execution_ids.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/futures_balance.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/futures_trading_action.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/margin_mode.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/notification_model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/order_model.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/order_status.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/post_futures_action.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/spot_trading_action.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/strategy_exchange_info.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/strategy_model_input.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/strategy_model_output.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/tpsl.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/models/trading_action_type.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/py.typed +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/client/rest.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn/trade/main.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn.egg-info/dependency_links.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn.egg-info/entry_points.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn.egg-info/requires.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/crypticorn.egg-info/top_level.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/requirements/dev.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/requirements/extra.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/requirements/main.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/requirements/test.txt +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/setup.cfg +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/tests/test_auth_client.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/tests/test_config.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/tests/test_enums.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/tests/test_errors.py +0 -0
- {crypticorn-2.8.0rc8 → crypticorn-2.8.1}/tests/test_pagination.py +0 -0
@@ -1,6 +1,17 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
3
|
|
4
|
+
## v2.8.1 (2025-05-07)
|
5
|
+
|
6
|
+
### Bug Fixes
|
7
|
+
|
8
|
+
- Replace deprecatet pkg_resource with native importlib.metadata
|
9
|
+
([`e9c49e7`](https://github.com/crypticorn-ai/api-client/commit/e9c49e75a29fd4d5657772c091fa918776e7c480))
|
10
|
+
|
11
|
+
|
12
|
+
## v2.8.0 (2025-05-07)
|
13
|
+
|
14
|
+
|
4
15
|
## v2.8.0-rc.8 (2025-05-07)
|
5
16
|
|
6
17
|
### Bug Fixes
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: crypticorn
|
3
|
-
Version: 2.8.
|
3
|
+
Version: 2.8.1
|
4
4
|
Summary: Maximise Your Crypto Trading Profits with Machine Learning
|
5
5
|
Author-email: Crypticorn <timon@crypticorn.com>
|
6
6
|
License: MIT
|
@@ -10,8 +10,9 @@ Project-URL: Dashboard, https://app.crypticorn.com
|
|
10
10
|
Keywords: machine learning,data science,crypto,modelling
|
11
11
|
Classifier: Topic :: Scientific/Engineering
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
13
|
-
Classifier: Intended Audience ::
|
13
|
+
Classifier: Intended Audience :: Developers
|
14
14
|
Classifier: Operating System :: OS Independent
|
15
|
+
Classifier: License :: OSI Approved :: MIT License
|
15
16
|
Classifier: Programming Language :: Python :: 3.10
|
16
17
|
Classifier: Programming Language :: Python :: 3.11
|
17
18
|
Classifier: Programming Language :: Python :: 3.12
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import click
|
2
2
|
from pathlib import Path
|
3
3
|
import subprocess
|
4
|
-
import importlib.resources
|
4
|
+
import importlib.resources
|
5
5
|
import crypticorn.cli.templates as templates
|
6
6
|
|
7
7
|
|
@@ -19,7 +19,7 @@ def get_git_root() -> Path:
|
|
19
19
|
|
20
20
|
def copy_template(template_name: str, target_path: Path):
|
21
21
|
"""Copy a template file to the target path."""
|
22
|
-
with
|
22
|
+
with importlib.resources.files(templates).joinpath(template_name).open(
|
23
23
|
"r"
|
24
24
|
) as template_file:
|
25
25
|
content = template_file.read()
|
@@ -7,7 +7,8 @@ from fastapi.responses import JSONResponse
|
|
7
7
|
from crypticorn.common import ApiError, ApiErrorIdentifier, ApiErrorType, ApiErrorLevel
|
8
8
|
import logging
|
9
9
|
import json
|
10
|
-
|
10
|
+
|
11
|
+
logger = logging.getLogger("crypticorn")
|
11
12
|
|
12
13
|
|
13
14
|
class ExceptionType(StrEnum):
|
@@ -12,7 +12,8 @@ from crypticorn.common.mixins import ValidateEnumMixin
|
|
12
12
|
from crypticorn.common.ansi_colors import AnsiColors as C
|
13
13
|
from datetime import datetime
|
14
14
|
import os
|
15
|
-
|
15
|
+
|
16
|
+
|
16
17
|
class LogLevel(ValidateEnumMixin, StrEnum):
|
17
18
|
DEBUG = "DEBUG"
|
18
19
|
INFO = "INFO"
|
@@ -50,7 +51,6 @@ _LOGFORMAT = (
|
|
50
51
|
f"%(levelcolor)s%(levelname)s{C.RESET} - "
|
51
52
|
f"%(message)s"
|
52
53
|
)
|
53
|
-
_PLAIN_LOGFORMAT = "%(asctime)s - " "%(name)s - " "%(levelname)s - " "%(message)s"
|
54
54
|
_DATEFMT = "%Y-%m-%d %H:%M:%S.%f:"
|
55
55
|
|
56
56
|
|
@@ -80,8 +80,8 @@ def configure_logging(
|
|
80
80
|
) -> None:
|
81
81
|
"""Configures the logging for the application.
|
82
82
|
Run this function as early as possible in the application (for example using the `lifespan` parameter in FastAPI).
|
83
|
-
Then use can use the default `logging.getLogger(__name__)` method to get the logger.
|
84
|
-
:param name: The name of the logger. If not provided, the root logger will be used. Use a name if use multiple loggers in the same application.
|
83
|
+
Then use can use the default `logging.getLogger(__name__)` method to get the logger (or <name> if you set the name parameter).
|
84
|
+
:param name: The name of the logger. If not provided, the root logger will be used. Use a name if you use multiple loggers in the same application.
|
85
85
|
:param fmt: The format of the log message.
|
86
86
|
:param datefmt: The date format of the log message.
|
87
87
|
:param stdout_level: The level of the log message to be printed to the console.
|
@@ -115,7 +115,7 @@ def configure_logging(
|
|
115
115
|
for filter in filters:
|
116
116
|
file_handler.addFilter(filter)
|
117
117
|
logger.addHandler(file_handler)
|
118
|
-
|
118
|
+
|
119
119
|
if name:
|
120
120
|
logger.propagate = False
|
121
121
|
|
@@ -6,7 +6,7 @@ ONLY ALLOW ACCESS TO THIS ROUTER WITH ADMIN SCOPES.
|
|
6
6
|
"""
|
7
7
|
|
8
8
|
import os
|
9
|
-
import
|
9
|
+
import importlib.metadata
|
10
10
|
import threading
|
11
11
|
import time
|
12
12
|
import psutil
|
@@ -20,10 +20,10 @@ router = APIRouter(tags=["Admin"], prefix="/admin")
|
|
20
20
|
START_TIME = time.time()
|
21
21
|
|
22
22
|
|
23
|
-
@router.get("/log-level", status_code=200, operation_id="getLogLevel")
|
23
|
+
@router.get("/log-level", status_code=200, operation_id="getLogLevel", deprecated=True)
|
24
24
|
async def get_logging_level() -> LogLevel:
|
25
25
|
"""
|
26
|
-
Get the log level of the server logger.
|
26
|
+
Get the log level of the server logger. Will be removed in a future release.
|
27
27
|
"""
|
28
28
|
return LogLevel.get_name(logging.getLogger().level)
|
29
29
|
|
@@ -39,7 +39,7 @@ def get_uptime(type: Literal["seconds", "human"] = "seconds") -> str:
|
|
39
39
|
|
40
40
|
|
41
41
|
@router.get("/memory", operation_id="getMemoryUsage", status_code=200)
|
42
|
-
def get_memory_usage() ->
|
42
|
+
def get_memory_usage() -> float:
|
43
43
|
"""
|
44
44
|
Resident Set Size (RSS) in MB — the actual memory used by the process in RAM.
|
45
45
|
Represents the physical memory footprint. Important for monitoring real usage.
|
@@ -90,11 +90,9 @@ def list_installed_packages(
|
|
90
90
|
)
|
91
91
|
) -> list:
|
92
92
|
"""Return a list of installed packages and versions."""
|
93
|
-
|
94
|
-
[
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
key=lambda x: next(iter(x)),
|
100
|
-
)
|
93
|
+
packages = {
|
94
|
+
dist.metadata["Name"]: dist.version
|
95
|
+
for dist in importlib.metadata.distributions()
|
96
|
+
if include is None or dist.metadata["Name"] in include
|
97
|
+
}
|
98
|
+
return dict(sorted(packages.items()))
|
@@ -1,12 +1,12 @@
|
|
1
1
|
from datetime import datetime
|
2
2
|
from typing import Literal
|
3
|
-
from fastapi import APIRouter
|
3
|
+
from fastapi import APIRouter, Request
|
4
4
|
|
5
5
|
router = APIRouter(tags=["Status"], prefix="")
|
6
6
|
|
7
7
|
|
8
8
|
@router.get("/", operation_id="ping")
|
9
|
-
async def ping() ->
|
9
|
+
async def ping(request: Request) -> dict:
|
10
10
|
"""
|
11
11
|
Returns 'OK' if the API is running.
|
12
12
|
"""
|
@@ -17,6 +17,7 @@ Do not edit the class manually.
|
|
17
17
|
__version__ = "1.0.0"
|
18
18
|
|
19
19
|
# import apis into sdk package
|
20
|
+
from crypticorn.klines.client.api.admin_api import AdminApi
|
20
21
|
from crypticorn.klines.client.api.change_in_timeframe_api import ChangeInTimeframeApi
|
21
22
|
from crypticorn.klines.client.api.funding_rates_api import FundingRatesApi
|
22
23
|
from crypticorn.klines.client.api.ohlcv_data_api import OHLCVDataApi
|
@@ -36,10 +37,17 @@ from crypticorn.klines.client.exceptions import ApiAttributeError
|
|
36
37
|
from crypticorn.klines.client.exceptions import ApiException
|
37
38
|
|
38
39
|
# import models into sdk package
|
40
|
+
from crypticorn.klines.client.models.api_error_identifier import ApiErrorIdentifier
|
41
|
+
from crypticorn.klines.client.models.api_error_level import ApiErrorLevel
|
42
|
+
from crypticorn.klines.client.models.api_error_type import ApiErrorType
|
39
43
|
from crypticorn.klines.client.models.change_in_timeframe import ChangeInTimeframe
|
40
44
|
from crypticorn.klines.client.models.exception_detail import ExceptionDetail
|
41
45
|
from crypticorn.klines.client.models.funding_rate import FundingRate
|
42
|
-
from crypticorn.klines.client.models.
|
46
|
+
from crypticorn.klines.client.models.funding_rate_response import FundingRateResponse
|
47
|
+
from crypticorn.klines.client.models.internal_exchange import InternalExchange
|
48
|
+
from crypticorn.klines.client.models.log_level import LogLevel
|
49
|
+
from crypticorn.klines.client.models.market_type import MarketType
|
50
|
+
from crypticorn.klines.client.models.ohlcv import OHLCV
|
43
51
|
from crypticorn.klines.client.models.resolution import Resolution
|
44
52
|
from crypticorn.klines.client.models.search_symbol import SearchSymbol
|
45
53
|
from crypticorn.klines.client.models.sort_direction import SortDirection
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# flake8: noqa
|
2
2
|
|
3
3
|
# import apis into api package
|
4
|
+
from crypticorn.klines.client.api.admin_api import AdminApi
|
4
5
|
from crypticorn.klines.client.api.change_in_timeframe_api import ChangeInTimeframeApi
|
5
6
|
from crypticorn.klines.client.api.funding_rates_api import FundingRatesApi
|
6
7
|
from crypticorn.klines.client.api.ohlcv_data_api import OHLCVDataApi
|