crypticorn 2.17.0rc3__tar.gz → 2.17.0rc5__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.
Files changed (347) hide show
  1. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/CHANGELOG.md +31 -0
  2. {crypticorn-2.17.0rc3/crypticorn.egg-info → crypticorn-2.17.0rc5}/PKG-INFO +1 -1
  3. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/admin_api.py +0 -2
  4. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/auth_api.py +0 -4
  5. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/service_api.py +0 -4
  6. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/user_api.py +0 -4
  7. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/wallet_api.py +0 -4
  8. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api_client.py +0 -5
  9. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/add_wallet_request.py +1 -1
  10. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/authorize_user_request.py +1 -1
  11. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/create_api_key_request.py +1 -1
  12. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/create_user_request.py +1 -1
  13. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/get_api_keys200_response_inner.py +1 -1
  14. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_sale_round.py +1 -1
  15. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet.py +1 -1
  16. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet_vesting_wallets_inner.py +1 -1
  17. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_data_inner.py +1 -1
  18. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/logout_default_response.py +1 -1
  19. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/oauth_callback200_response_user.py +1 -1
  20. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/refresh_token_info200_response_user_session.py +1 -1
  21. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/rotate_tokens200_response.py +1 -1
  22. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/token_info200_response.py +1 -1
  23. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/update_user_request.py +1 -1
  24. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/user_by_username200_response.py +1 -1
  25. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify200_response.py +1 -1
  26. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify_email200_response_auth.py +1 -1
  27. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify_email200_response_auth_auth.py +1 -1
  28. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/whoami200_response.py +1 -1
  29. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/init.py +1 -1
  30. crypticorn-2.17.0rc5/crypticorn/cli/templates/.env.docker.temp +3 -0
  31. crypticorn-2.17.0rc5/crypticorn/cli/templates/.env.example.temp +4 -0
  32. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/client.py +0 -1
  33. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/auth.py +5 -16
  34. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/decorators.py +1 -2
  35. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/enums.py +0 -2
  36. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/metrics.py +1 -1
  37. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/middleware.py +0 -1
  38. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/pagination.py +135 -22
  39. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/utils.py +1 -2
  40. crypticorn-2.17.0rc5/crypticorn/dex/__init__.py +6 -0
  41. crypticorn-2.17.0rc5/crypticorn/dex/client/__init__.py +49 -0
  42. crypticorn-2.17.0rc5/crypticorn/dex/client/api/__init__.py +6 -0
  43. crypticorn-2.17.0rc5/crypticorn/dex/client/api/admin_api.py +3046 -0
  44. crypticorn-2.17.0rc5/crypticorn/dex/client/api/signals_api.py +1821 -0
  45. crypticorn-2.17.0rc5/crypticorn/dex/client/api/status_api.py +907 -0
  46. crypticorn-2.17.0rc5/crypticorn/dex/client/api_client.py +753 -0
  47. crypticorn-2.17.0rc5/crypticorn/dex/client/configuration.py +620 -0
  48. crypticorn-2.17.0rc5/crypticorn/dex/client/exceptions.py +220 -0
  49. crypticorn-2.17.0rc5/crypticorn/dex/client/models/__init__.py +30 -0
  50. crypticorn-2.17.0rc5/crypticorn/dex/client/models/api_error_identifier.py +121 -0
  51. crypticorn-2.17.0rc5/crypticorn/dex/client/models/api_error_level.py +37 -0
  52. crypticorn-2.17.0rc5/crypticorn/dex/client/models/api_error_type.py +37 -0
  53. crypticorn-2.17.0rc5/crypticorn/dex/client/models/exception_detail.py +117 -0
  54. crypticorn-2.17.0rc5/crypticorn/dex/client/models/log_level.py +38 -0
  55. crypticorn-2.17.0rc5/crypticorn/dex/client/models/paginated_response_signal_with_token.py +134 -0
  56. crypticorn-2.17.0rc5/crypticorn/dex/client/models/risk.py +86 -0
  57. crypticorn-2.17.0rc5/crypticorn/dex/client/models/signal_overview_stats.py +156 -0
  58. crypticorn-2.17.0rc5/crypticorn/dex/client/models/signal_volume.py +84 -0
  59. crypticorn-2.17.0rc5/crypticorn/dex/client/models/signal_with_token.py +163 -0
  60. crypticorn-2.17.0rc5/crypticorn/dex/client/models/token_data.py +127 -0
  61. crypticorn-2.17.0rc5/crypticorn/dex/client/models/token_detail.py +116 -0
  62. crypticorn-2.17.0rc5/crypticorn/dex/client/rest.py +217 -0
  63. crypticorn-2.17.0rc5/crypticorn/dex/main.py +1 -0
  64. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api/admin_api.py +0 -3
  65. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api/data_api.py +0 -4
  66. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api/models_api.py +1 -4
  67. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api/status_api.py +0 -3
  68. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api_client.py +0 -5
  69. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/coin_info.py +1 -1
  70. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/exception_detail.py +1 -1
  71. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/target_info.py +1 -1
  72. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/utils.py +2 -2
  73. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/admin_api.py +0 -3
  74. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/change_in_timeframe_api.py +0 -4
  75. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/funding_rates_api.py +0 -4
  76. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/ohlcv_data_api.py +0 -4
  77. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/status_api.py +0 -3
  78. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/symbols_api.py +0 -4
  79. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/udf_api.py +0 -2
  80. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api_client.py +0 -5
  81. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/exception_detail.py +1 -1
  82. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/ohlcv.py +1 -1
  83. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/symbol_group.py +1 -1
  84. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/udf_config.py +1 -1
  85. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/admin_api.py +0 -3
  86. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/exchanges_api.py +0 -4
  87. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/indicators_api.py +0 -4
  88. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/logs_api.py +0 -4
  89. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/marketcap_api.py +0 -4
  90. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/markets_api.py +0 -4
  91. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/quote_currencies_api.py +0 -4
  92. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/status_api.py +0 -3
  93. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/tokens_api.py +0 -2
  94. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api_client.py +0 -5
  95. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/exception_detail.py +1 -1
  96. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/exchange_mapping.py +1 -1
  97. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/marketcap_ranking.py +1 -1
  98. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/marketcap_symbol_ranking.py +1 -1
  99. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/ohlcv.py +1 -1
  100. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/admin_api.py +0 -3
  101. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/now_payments_api.py +0 -4
  102. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/payments_api.py +0 -4
  103. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/products_api.py +0 -4
  104. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/status_api.py +0 -3
  105. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api_client.py +0 -5
  106. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/exception_detail.py +1 -1
  107. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/now_create_invoice_req.py +1 -1
  108. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/now_create_invoice_res.py +1 -1
  109. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/product.py +1 -1
  110. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/product_create.py +1 -1
  111. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/product_update.py +1 -1
  112. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/__init__.py +5 -0
  113. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/admin_api.py +22 -23
  114. crypticorn-2.17.0rc5/crypticorn/trade/client/api/bots_api.py +6918 -0
  115. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/orders_api.py +220 -106
  116. crypticorn-2.17.0rc5/crypticorn/trade/client/api_response.py +20 -0
  117. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/configuration.py +2 -2
  118. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/__init__.py +5 -0
  119. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/bot.py +7 -18
  120. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/bot_create.py +17 -1
  121. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/bot_update.py +17 -1
  122. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exchange_key_create.py +17 -1
  123. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exchange_key_update.py +17 -1
  124. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/notification.py +17 -1
  125. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/notification_create.py +17 -1
  126. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/notification_update.py +17 -1
  127. crypticorn-2.17.0rc5/crypticorn/trade/client/models/orders_count.py +88 -0
  128. crypticorn-2.17.0rc5/crypticorn/trade/client/models/paginated_response_order.py +134 -0
  129. crypticorn-2.17.0rc5/crypticorn/trade/client/models/pn_l.py +95 -0
  130. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/strategy.py +17 -1
  131. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/strategy_create.py +17 -1
  132. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/strategy_update.py +17 -1
  133. crypticorn-2.17.0rc5/crypticorn/trade/client/py.typed +0 -0
  134. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5/crypticorn.egg-info}/PKG-INFO +1 -1
  135. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn.egg-info/SOURCES.txt +31 -0
  136. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/pyproject.toml +1 -1
  137. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_auth_client.py +2 -3
  138. crypticorn-2.17.0rc5/tests/test_pagination.py +332 -0
  139. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_sync_custom_session.py +0 -1
  140. crypticorn-2.17.0rc3/crypticorn/trade/client/api/bots_api.py +0 -2374
  141. crypticorn-2.17.0rc3/tests/test_pagination.py +0 -161
  142. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/LICENSE +0 -0
  143. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/MANIFEST.in +0 -0
  144. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/README.md +0 -0
  145. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/__init__.py +0 -0
  146. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/__init__.py +0 -0
  147. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/__init__.py +0 -0
  148. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api/__init__.py +0 -0
  149. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/api_response.py +0 -0
  150. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/configuration.py +0 -0
  151. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/exceptions.py +0 -0
  152. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/__init__.py +0 -0
  153. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/add_wallet200_response.py +0 -0
  154. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/authorize_user200_response.py +0 -0
  155. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/authorize_user200_response_auth.py +0 -0
  156. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/create_api_key200_response.py +0 -0
  157. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response.py +0 -0
  158. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_balances_inner.py +0 -0
  159. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/list_wallets200_response_user_value.py +0 -0
  160. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/logout_default_response_issues_inner.py +0 -0
  161. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/oauth_callback200_response.py +0 -0
  162. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/refresh_token_info200_response.py +0 -0
  163. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/resend_verification_email_request.py +0 -0
  164. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/revoke_user_tokens_request.py +0 -0
  165. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/unlink_wallet_request.py +0 -0
  166. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/user_reset_password_request.py +0 -0
  167. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/user_set_password_request.py +0 -0
  168. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify_email200_response.py +0 -0
  169. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify_email_request.py +0 -0
  170. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/verify_wallet_request.py +0 -0
  171. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/models/wallet_verified200_response.py +0 -0
  172. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/py.typed +0 -0
  173. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/client/rest.py +0 -0
  174. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/auth/main.py +0 -0
  175. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/__init__.py +0 -0
  176. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/__main__.py +0 -0
  177. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/Dockerfile +0 -0
  178. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/__init__.py +0 -0
  179. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/auth.py +0 -0
  180. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/dependabot.yml +0 -0
  181. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/merge-env.sh +0 -0
  182. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/templates/ruff.yml +0 -0
  183. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/cli/version.py +0 -0
  184. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/__init__.py +0 -0
  185. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/ansi_colors.py +0 -0
  186. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/errors.py +0 -0
  187. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/exceptions.py +0 -0
  188. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/logging.py +0 -0
  189. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/mixins.py +0 -0
  190. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/openapi.py +0 -0
  191. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/router/admin_router.py +0 -0
  192. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/router/status_router.py +0 -0
  193. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/scopes.py +0 -0
  194. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/urls.py +0 -0
  195. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/common/warnings.py +0 -0
  196. {crypticorn-2.17.0rc3/crypticorn/hive → crypticorn-2.17.0rc5/crypticorn/dex}/client/api_response.py +0 -0
  197. {crypticorn-2.17.0rc3/crypticorn/hive → crypticorn-2.17.0rc5/crypticorn/dex}/client/py.typed +0 -0
  198. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/__init__.py +0 -0
  199. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/__init__.py +0 -0
  200. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/api/__init__.py +0 -0
  201. {crypticorn-2.17.0rc3/crypticorn/klines → crypticorn-2.17.0rc5/crypticorn/hive}/client/api_response.py +0 -0
  202. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/configuration.py +0 -0
  203. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/exceptions.py +0 -0
  204. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/__init__.py +0 -0
  205. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/api_error_identifier.py +0 -0
  206. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/api_error_level.py +0 -0
  207. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/api_error_type.py +0 -0
  208. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/coins.py +0 -0
  209. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/data_download_response.py +0 -0
  210. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/data_info.py +0 -0
  211. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/data_options.py +0 -0
  212. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/data_version.py +0 -0
  213. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/data_version_info.py +0 -0
  214. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/download_links.py +0 -0
  215. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/evaluation.py +0 -0
  216. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/evaluation_response.py +0 -0
  217. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/feature_size.py +0 -0
  218. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/log_level.py +0 -0
  219. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/model_create.py +0 -0
  220. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/model_read.py +0 -0
  221. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/model_status.py +0 -0
  222. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/model_update.py +0 -0
  223. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/target.py +0 -0
  224. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/models/target_type.py +0 -0
  225. {crypticorn-2.17.0rc3/crypticorn/klines → crypticorn-2.17.0rc5/crypticorn/hive}/client/py.typed +0 -0
  226. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/client/rest.py +0 -0
  227. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/hive/main.py +0 -0
  228. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/__init__.py +0 -0
  229. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/__init__.py +0 -0
  230. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/api/__init__.py +0 -0
  231. {crypticorn-2.17.0rc3/crypticorn/metrics → crypticorn-2.17.0rc5/crypticorn/klines}/client/api_response.py +0 -0
  232. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/configuration.py +0 -0
  233. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/exceptions.py +0 -0
  234. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/__init__.py +0 -0
  235. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/api_error_identifier.py +0 -0
  236. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/api_error_level.py +0 -0
  237. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/api_error_type.py +0 -0
  238. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/change_in_timeframe.py +0 -0
  239. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/funding_rate.py +0 -0
  240. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/funding_rate_response.py +0 -0
  241. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/internal_exchange.py +0 -0
  242. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/log_level.py +0 -0
  243. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/market_type.py +0 -0
  244. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/resolution.py +0 -0
  245. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/search_symbol.py +0 -0
  246. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/sort_direction.py +0 -0
  247. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/symbol_info.py +0 -0
  248. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/symbol_type.py +0 -0
  249. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/models/timeframe.py +0 -0
  250. {crypticorn-2.17.0rc3/crypticorn/metrics → crypticorn-2.17.0rc5/crypticorn/klines}/client/py.typed +0 -0
  251. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/client/rest.py +0 -0
  252. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/klines/main.py +0 -0
  253. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/__init__.py +0 -0
  254. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/__init__.py +0 -0
  255. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/api/__init__.py +0 -0
  256. {crypticorn-2.17.0rc3/crypticorn/pay → crypticorn-2.17.0rc5/crypticorn/metrics}/client/api_response.py +0 -0
  257. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/configuration.py +0 -0
  258. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/exceptions.py +0 -0
  259. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/__init__.py +0 -0
  260. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/api_error_identifier.py +0 -0
  261. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/api_error_level.py +0 -0
  262. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/api_error_type.py +0 -0
  263. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/exchange_availability.py +0 -0
  264. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/internal_exchange.py +0 -0
  265. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/log_level.py +0 -0
  266. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/market_type.py +0 -0
  267. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/severity.py +0 -0
  268. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/time_interval.py +0 -0
  269. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/models/trading_status.py +0 -0
  270. {crypticorn-2.17.0rc3/crypticorn/pay → crypticorn-2.17.0rc5/crypticorn/metrics}/client/py.typed +0 -0
  271. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/client/rest.py +0 -0
  272. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/metrics/main.py +0 -0
  273. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/__init__.py +0 -0
  274. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/__init__.py +0 -0
  275. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/api/__init__.py +0 -0
  276. {crypticorn-2.17.0rc3/crypticorn/trade → crypticorn-2.17.0rc5/crypticorn/pay}/client/api_response.py +0 -0
  277. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/configuration.py +0 -0
  278. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/exceptions.py +0 -0
  279. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/__init__.py +0 -0
  280. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/api_error_identifier.py +0 -0
  281. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/api_error_level.py +0 -0
  282. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/api_error_type.py +0 -0
  283. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/log_level.py +0 -0
  284. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/payment.py +0 -0
  285. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/payment_status.py +0 -0
  286. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/provider.py +0 -0
  287. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/scope.py +0 -0
  288. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/models/subscription.py +0 -0
  289. {crypticorn-2.17.0rc3/crypticorn/trade → crypticorn-2.17.0rc5/crypticorn/pay}/client/py.typed +0 -0
  290. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/client/rest.py +0 -0
  291. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/pay/main.py +0 -0
  292. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/__init__.py +0 -0
  293. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/__init__.py +0 -0
  294. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/api_keys_api.py +0 -0
  295. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/exchanges_api.py +0 -0
  296. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/notifications_api.py +0 -0
  297. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/status_api.py +0 -0
  298. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/strategies_api.py +0 -0
  299. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api/trading_actions_api.py +0 -0
  300. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/api_client.py +0 -0
  301. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/exceptions.py +0 -0
  302. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/api_error_identifier.py +0 -0
  303. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/api_error_level.py +0 -0
  304. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/api_error_type.py +0 -0
  305. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/bot_status.py +0 -0
  306. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exception_detail.py +0 -0
  307. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exchange.py +0 -0
  308. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exchange_key.py +0 -0
  309. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/exchange_key_balance.py +0 -0
  310. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/execution_ids.py +0 -0
  311. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/futures_balance.py +0 -0
  312. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/futures_trading_action.py +0 -0
  313. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/futures_trading_action_create.py +0 -0
  314. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/log_level.py +0 -0
  315. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/margin_mode.py +0 -0
  316. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/market_type.py +0 -0
  317. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/order.py +0 -0
  318. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/order_status.py +0 -0
  319. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/post_futures_action.py +0 -0
  320. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/spot_balance.py +0 -0
  321. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/spot_trading_action_create.py +0 -0
  322. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/strategy_exchange_info.py +0 -0
  323. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/tpsl.py +0 -0
  324. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/tpsl_create.py +0 -0
  325. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/models/trading_action_type.py +0 -0
  326. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/client/rest.py +0 -0
  327. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn/trade/main.py +0 -0
  328. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn.egg-info/dependency_links.txt +0 -0
  329. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn.egg-info/entry_points.txt +0 -0
  330. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn.egg-info/requires.txt +0 -0
  331. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/crypticorn.egg-info/top_level.txt +0 -0
  332. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/requirements/dev.txt +0 -0
  333. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/requirements/extra.txt +0 -0
  334. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/requirements/main.txt +0 -0
  335. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/requirements/test.txt +0 -0
  336. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/setup.cfg +0 -0
  337. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/static/favicon.svg +0 -0
  338. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/static/logo.svg +0 -0
  339. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/static/pip-structure.drawio +0 -0
  340. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/static/pip-structure.svg +0 -0
  341. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_async_client.py +0 -0
  342. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_async_custom_session.py +0 -0
  343. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_common_routers.py +0 -0
  344. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_config.py +0 -0
  345. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_enums.py +0 -0
  346. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_errors.py +0 -0
  347. {crypticorn-2.17.0rc3 → crypticorn-2.17.0rc5}/tests/test_sync_client.py +0 -0
@@ -1,6 +1,37 @@
1
1
  # CHANGELOG
2
2
 
3
3
 
4
+ ## v2.17.0-rc.5 (2025-06-08)
5
+
6
+ ### Features
7
+
8
+ - Add new convenience classes for paginating, sorting and filtering query params
9
+ ([`854e3bb`](https://github.com/crypticorn-ai/api-client/commit/854e3bb459a8d76352ee9d9172f9578a045d1452))
10
+
11
+ ### Testing
12
+
13
+ - Update pagination tests
14
+ ([`6378348`](https://github.com/crypticorn-ai/api-client/commit/6378348fa531e1d037f3373422b3ee7245ff2d08))
15
+
16
+
17
+ ## v2.17.0-rc.4 (2025-06-06)
18
+
19
+ ### Features
20
+
21
+ - Add `last` attribute and helper functions to paginated responses
22
+ ([`fe29d0c`](https://github.com/crypticorn-ai/api-client/commit/fe29d0cb1da60c0fa2dc86f9f0ec54e8d035293d))
23
+
24
+ ### Refactoring
25
+
26
+ - Add message to invalid_bearer exception
27
+ ([`5578140`](https://github.com/crypticorn-ai/api-client/commit/557814099f6c37ce015c0ad8e5989266f332e834))
28
+
29
+ ### Testing
30
+
31
+ - Update websocket authentication test
32
+ ([`4f727d5`](https://github.com/crypticorn-ai/api-client/commit/4f727d545ab7275e7f3dc8e45b1ed2f0270e4038))
33
+
34
+
4
35
  ## v2.17.0-rc.3 (2025-06-05)
5
36
 
6
37
  ### Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crypticorn
3
- Version: 2.17.0rc3
3
+ Version: 2.17.0rc5
4
4
  Summary: Maximise Your Crypto Trading Profits with Machine Learning
5
5
  Author-email: Crypticorn <timon@crypticorn.com>
6
6
  License-Expression: MIT
@@ -11,12 +11,10 @@ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
  Do not edit the class manually.
12
12
  """ # noqa: E501
13
13
 
14
- import warnings
15
14
  from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
15
  from typing import Any, Dict, List, Optional, Tuple, Union
17
16
  from typing_extensions import Annotated
18
17
 
19
- from typing import List
20
18
  from crypticorn.auth.client.models.logout_default_response_issues_inner import (
21
19
  LogoutDefaultResponseIssuesInner,
22
20
  )
@@ -11,14 +11,10 @@ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
  Do not edit the class manually.
12
12
  """ # noqa: E501
13
13
 
14
- import warnings
15
14
  from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
15
  from typing import Any, Dict, List, Optional, Tuple, Union
17
16
  from typing_extensions import Annotated
18
17
 
19
- from pydantic import Field, StrictStr
20
- from typing import Any, List, Optional
21
- from typing_extensions import Annotated
22
18
  from crypticorn.auth.client.models.authorize_user200_response import (
23
19
  AuthorizeUser200Response,
24
20
  )
@@ -11,14 +11,10 @@ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
  Do not edit the class manually.
12
12
  """ # noqa: E501
13
13
 
14
- import warnings
15
14
  from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
15
  from typing import Any, Dict, List, Optional, Tuple, Union
17
16
  from typing_extensions import Annotated
18
17
 
19
- from pydantic import Field, StrictStr
20
- from typing import Optional
21
- from typing_extensions import Annotated
22
18
  from crypticorn.auth.client.models.list_wallets200_response_user_value import (
23
19
  ListWallets200ResponseUserValue,
24
20
  )
@@ -11,14 +11,10 @@ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
  Do not edit the class manually.
12
12
  """ # noqa: E501
13
13
 
14
- import warnings
15
14
  from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
15
  from typing import Any, Dict, List, Optional, Tuple, Union
17
16
  from typing_extensions import Annotated
18
17
 
19
- from pydantic import Field, StrictStr
20
- from typing import Any, Optional
21
- from typing_extensions import Annotated
22
18
  from crypticorn.auth.client.models.create_user_request import CreateUserRequest
23
19
  from crypticorn.auth.client.models.resend_verification_email_request import (
24
20
  ResendVerificationEmailRequest,
@@ -11,14 +11,10 @@ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
  Do not edit the class manually.
12
12
  """ # noqa: E501
13
13
 
14
- import warnings
15
14
  from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
15
  from typing import Any, Dict, List, Optional, Tuple, Union
17
16
  from typing_extensions import Annotated
18
17
 
19
- from pydantic import Field, StrictFloat, StrictInt, StrictStr
20
- from typing import Any, Optional, Union
21
- from typing_extensions import Annotated
22
18
  from crypticorn.auth.client.models.add_wallet200_response import AddWallet200Response
23
19
  from crypticorn.auth.client.models.add_wallet_request import AddWalletRequest
24
20
  from crypticorn.auth.client.models.list_wallets200_response import (
@@ -33,11 +33,6 @@ from crypticorn.auth.client import rest
33
33
  from crypticorn.auth.client.exceptions import (
34
34
  ApiValueError,
35
35
  ApiException,
36
- BadRequestException,
37
- UnauthorizedException,
38
- ForbiddenException,
39
- NotFoundException,
40
- ServiceException,
41
36
  )
42
37
 
43
38
  RequestSerialized = Tuple[str, str, Dict[str, str], Optional[str], List[str]]
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional, Union
22
- from typing import Optional, Set
22
+ from typing import Set
23
23
  from typing_extensions import Self
24
24
 
25
25
 
@@ -20,7 +20,7 @@ import json
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictBool
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from typing_extensions import Annotated
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -21,7 +21,7 @@ from datetime import datetime
21
21
  from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing_extensions import Annotated
24
- from typing import Optional, Set
24
+ from typing import Set
25
25
  from typing_extensions import Self
26
26
 
27
27
 
@@ -20,7 +20,7 @@ import json
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from typing_extensions import Annotated
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -20,7 +20,7 @@ import json
20
20
  from datetime import datetime
21
21
  from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -20,7 +20,7 @@ import json
20
20
  from datetime import datetime
21
21
  from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional, Union
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -22,7 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Union
22
22
  from crypticorn.auth.client.models.list_wallets200_response_balances_inner_wallet_vesting_wallets_inner import (
23
23
  ListWallets200ResponseBalancesInnerWalletVestingWalletsInner,
24
24
  )
25
- from typing import Optional, Set
25
+ from typing import Set
26
26
  from typing_extensions import Self
27
27
 
28
28
 
@@ -27,7 +27,7 @@ from pydantic import (
27
27
  StrictStr,
28
28
  )
29
29
  from typing import Any, ClassVar, Dict, List, Optional, Union
30
- from typing import Optional, Set
30
+ from typing import Set
31
31
  from typing_extensions import Self
32
32
 
33
33
 
@@ -20,7 +20,7 @@ import json
20
20
  from datetime import datetime
21
21
  from pydantic import BaseModel, ConfigDict, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -22,7 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional
22
22
  from crypticorn.auth.client.models.logout_default_response_issues_inner import (
23
23
  LogoutDefaultResponseIssuesInner,
24
24
  )
25
- from typing import Optional, Set
25
+ from typing import Set
26
26
  from typing_extensions import Self
27
27
 
28
28
 
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from typing import Optional, Set
22
+ from typing import Set
23
23
  from typing_extensions import Self
24
24
 
25
25
 
@@ -20,7 +20,7 @@ import json
20
20
  from datetime import datetime
21
21
  from pydantic import BaseModel, ConfigDict, Field, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
- from typing import Optional, Set
23
+ from typing import Set
24
24
  from typing_extensions import Self
25
25
 
26
26
 
@@ -22,7 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Union
22
22
  from crypticorn.auth.client.models.verify_email200_response_auth_auth import (
23
23
  VerifyEmail200ResponseAuthAuth,
24
24
  )
25
- from typing import Optional, Set
25
+ from typing import Set
26
26
  from typing_extensions import Self
27
27
 
28
28
 
@@ -22,7 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional
22
22
  from crypticorn.auth.client.models.verify_email200_response_auth_auth import (
23
23
  VerifyEmail200ResponseAuthAuth,
24
24
  )
25
- from typing import Optional, Set
25
+ from typing import Set
26
26
  from typing_extensions import Self
27
27
 
28
28
 
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from typing import Optional, Set
22
+ from typing import Set
23
23
  from typing_extensions import Self
24
24
 
25
25
 
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from typing import Optional, Set
22
+ from typing import Set
23
23
  from typing_extensions import Self
24
24
 
25
25
 
@@ -27,7 +27,7 @@ from pydantic import (
27
27
  StrictStr,
28
28
  )
29
29
  from typing import Any, ClassVar, Dict, List, Optional, Union
30
- from typing import Optional, Set
30
+ from typing import Set
31
31
  from typing_extensions import Self
32
32
 
33
33
 
@@ -22,7 +22,7 @@ from typing import Any, ClassVar, Dict, List, Optional
22
22
  from crypticorn.auth.client.models.verify_email200_response_auth_auth import (
23
23
  VerifyEmail200ResponseAuthAuth,
24
24
  )
25
- from typing import Optional, Set
25
+ from typing import Set
26
26
  from typing_extensions import Self
27
27
 
28
28
 
@@ -27,7 +27,7 @@ from pydantic import (
27
27
  StrictStr,
28
28
  )
29
29
  from typing import Any, ClassVar, Dict, List, Optional, Union
30
- from typing import Optional, Set
30
+ from typing import Set
31
31
  from typing_extensions import Self
32
32
 
33
33
 
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from typing import Optional, Set
22
+ from typing import Set
23
23
  from typing_extensions import Self
24
24
 
25
25
 
@@ -33,7 +33,7 @@ def copy_template(template_name: str, target_path: Path):
33
33
 
34
34
  def check_file_exists(path: Path, force: bool):
35
35
  if path.exists() and not force:
36
- click.secho(f"File already exists, use --force / -f to overwrite", fg="red")
36
+ click.secho("File already exists, use --force / -f to overwrite", fg="red")
37
37
  return False
38
38
  return True
39
39
 
@@ -0,0 +1,3 @@
1
+ # Specifies which API environment to use in docker builds: "0" if the API_ENV should be used, "1" for the internal host.
2
+ # Any database connections would have to be overridden as well.
3
+ IS_DOCKER=1
@@ -0,0 +1,4 @@
1
+ # Specifies which API environment to use: "local", "dev", "prod", or "docker".
2
+ # When running inside Docker, this defaults to "docker" (internal network host),
3
+ # unless IS_DOCKER is set to 0 in .env.docker.
4
+ API_ENV=local
@@ -1,5 +1,4 @@
1
1
  from typing import TypeVar, Optional
2
- import asyncio
3
2
  import warnings
4
3
  from aiohttp import ClientSession, ClientTimeout, TCPConnector
5
4
  from crypticorn.hive import HiveClient
@@ -7,7 +7,6 @@ from crypticorn.common.exceptions import (
7
7
  ApiError,
8
8
  HTTPException,
9
9
  ExceptionContent,
10
- WebSocketException,
11
10
  )
12
11
  from crypticorn.common.urls import BaseUrl, Service, ApiVersion
13
12
  from fastapi import Depends, Query
@@ -112,6 +111,7 @@ class AuthHandler:
112
111
  elif message == "jwt expired":
113
112
  error = ApiError.EXPIRED_BEARER
114
113
  else:
114
+ message = "Invalid bearer token"
115
115
  error = (
116
116
  ApiError.INVALID_BEARER
117
117
  ) # jwt malformed, jwt not active (https://www.npmjs.com/package/jsonwebtoken#errors--codes)
@@ -234,10 +234,7 @@ class AuthHandler:
234
234
  Use this function if you only want to allow access via the API key.
235
235
  This function is used for WebSocket connections.
236
236
  """
237
- try:
238
- return await self.api_key_auth(api_key=api_key, sec=sec)
239
- except HTTPException as e:
240
- raise WebSocketException.from_http_exception(e)
237
+ return await self.api_key_auth(api_key=api_key, sec=sec)
241
238
 
242
239
  async def ws_bearer_auth(
243
240
  self,
@@ -249,11 +246,8 @@ class AuthHandler:
249
246
  Use this function if you only want to allow access via the bearer token.
250
247
  This function is used for WebSocket connections.
251
248
  """
252
- try:
253
- credentials = HTTPAuthorizationCredentials(scheme="Bearer", credentials=bearer)
254
- return await self.bearer_auth(bearer=credentials, sec=sec)
255
- except HTTPException as e:
256
- raise WebSocketException.from_http_exception(e)
249
+ credentials = HTTPAuthorizationCredentials(scheme="Bearer", credentials=bearer)
250
+ return await self.bearer_auth(bearer=credentials, sec=sec)
257
251
 
258
252
  async def ws_combined_auth(
259
253
  self,
@@ -271,9 +265,4 @@ class AuthHandler:
271
265
  if bearer
272
266
  else None
273
267
  )
274
- try:
275
- return await self.combined_auth(
276
- bearer=credentials, api_key=api_key, sec=sec
277
- )
278
- except HTTPException as e:
279
- raise WebSocketException.from_http_exception(e)
268
+ return await self.combined_auth(bearer=credentials, api_key=api_key, sec=sec)
@@ -1,8 +1,7 @@
1
- from datetime import datetime
2
1
  from typing import Optional, Type, Any, Tuple
3
2
  from copy import deepcopy
4
3
 
5
- from pydantic import BaseModel, create_model, field_validator, BeforeValidator
4
+ from pydantic import BaseModel, create_model
6
5
  from pydantic.fields import FieldInfo
7
6
 
8
7
 
@@ -5,9 +5,7 @@ try:
5
5
  except ImportError:
6
6
  from strenum import StrEnum
7
7
 
8
- from enum import Enum
9
8
  import warnings
10
- import typing_extensions
11
9
  from crypticorn.common.mixins import ValidateEnumMixin
12
10
  from crypticorn.common.warnings import CrypticornDeprecatedSince215
13
11
 
@@ -1,5 +1,5 @@
1
1
  # metrics/registry.py
2
- from prometheus_client import Counter, Gauge, Histogram, Summary, CollectorRegistry
2
+ from prometheus_client import Counter, Histogram, CollectorRegistry
3
3
 
4
4
  registry = CollectorRegistry()
5
5
 
@@ -2,7 +2,6 @@ import time
2
2
  from fastapi import FastAPI
3
3
  from fastapi.middleware.cors import CORSMiddleware
4
4
  from starlette.middleware.base import BaseHTTPMiddleware
5
- from starlette.requests import Request
6
5
  from crypticorn.common.logging import configure_logging
7
6
  from contextlib import asynccontextmanager
8
7
  from typing_extensions import deprecated