ratio1 3.4.91__tar.gz → 3.4.92__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 (221) hide show
  1. {ratio1-3.4.91 → ratio1-3.4.92}/PKG-INFO +1 -1
  2. {ratio1-3.4.91 → ratio1-3.4.92}/pyproject.toml +1 -1
  3. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/_ver.py +1 -1
  4. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/bc/evm.py +35 -0
  5. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/evm_net.py +13 -0
  6. ratio1-3.4.92/xperimental/_checks/w3_first_closable_job_check.py +22 -0
  7. {ratio1-3.4.91 → ratio1-3.4.92}/.devcontainer/Dockerfile +0 -0
  8. {ratio1-3.4.91 → ratio1-3.4.92}/.devcontainer/devcontainer.json +0 -0
  9. {ratio1-3.4.91 → ratio1-3.4.92}/.gitattributes +0 -0
  10. {ratio1-3.4.91 → ratio1-3.4.92}/.github/workflows/python-publish.yml +0 -0
  11. {ratio1-3.4.91 → ratio1-3.4.92}/.gitignore +0 -0
  12. {ratio1-3.4.91 → ratio1-3.4.92}/.vscode/launch.json +0 -0
  13. {ratio1-3.4.91 → ratio1-3.4.92}/LICENSE +0 -0
  14. {ratio1-3.4.91 → ratio1-3.4.92}/README.md +0 -0
  15. {ratio1-3.4.91 → ratio1-3.4.92}/TODOs.md +0 -0
  16. {ratio1-3.4.91 → ratio1-3.4.92}/__init__.py +0 -0
  17. {ratio1-3.4.91 → ratio1-3.4.92}/r1ctl.MD +0 -0
  18. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/__init__.py +0 -0
  19. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/__init__.py +0 -0
  20. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/distributed_custom_code_presets.py +0 -0
  21. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/generic_session.py +0 -0
  22. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/instance.py +0 -0
  23. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/payload/__init__.py +0 -0
  24. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/payload/payload.py +0 -0
  25. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/pipeline.py +0 -0
  26. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/plugin_template.py +0 -0
  27. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/responses.py +0 -0
  28. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/transaction.py +0 -0
  29. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base/webapp_pipeline.py +0 -0
  30. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/base_decentra_object.py +0 -0
  31. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/bc/__init__.py +0 -0
  32. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/bc/base.py +0 -0
  33. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/bc/chain.py +0 -0
  34. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/bc/ec.py +0 -0
  35. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/51.15.142.167.crt +0 -0
  36. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/72.60.187.24.crt +0 -0
  37. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/72.60.81.67.crt +0 -0
  38. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/__init__.py +0 -0
  39. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/a0d9818f.ala.eu-central-1.emqxsl.com.crt +0 -0
  40. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
  41. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/certs/s624dbd4.ala.us-east-1.emqxsl.com.crt +0 -0
  42. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/README.md +0 -0
  43. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/cli.py +0 -0
  44. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/cli_commands.py +0 -0
  45. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/nodes.py +0 -0
  46. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/oracles.py +0 -0
  47. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/cli/package_update.py +0 -0
  48. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/code_cheker/__init__.py +0 -0
  49. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/code_cheker/base.py +0 -0
  50. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/code_cheker/checker.py +0 -0
  51. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/comm/__init__.py +0 -0
  52. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/comm/amqp_wrapper.py +0 -0
  53. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/comm/base_comm_wrapper.py +0 -0
  54. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/comm/mqtt_wrapper.py +0 -0
  55. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/README.md +0 -0
  56. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/__init__.py +0 -0
  57. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/apps.py +0 -0
  58. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/base.py +0 -0
  59. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/comms.py +0 -0
  60. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/environment.py +0 -0
  61. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/formatter.py +0 -0
  62. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/heartbeat.py +0 -0
  63. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/misc.py +0 -0
  64. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/payload.py +0 -0
  65. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/const/plugins/deeploy_const.py +0 -0
  66. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/__init__.py +0 -0
  67. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/__init__.py +0 -0
  68. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
  69. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/custom_webapi_01_plugin.py +0 -0
  70. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/generic_http_01_plugin.py +0 -0
  71. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/net_mon_01_plugin.py +0 -0
  72. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/telegram_basic_bot_01_plugin.py +0 -0
  73. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
  74. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/instance/view_scene_01_plugin.py +0 -0
  75. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/default/session/mqtt_session.py +0 -0
  76. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/__init__.py +0 -0
  77. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/base/__init__.py +0 -0
  78. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/base/base_formatter.py +0 -0
  79. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/default/__init__.py +0 -0
  80. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/default/a_dummy.py +0 -0
  81. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/default/aixp1.py +0 -0
  82. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/default/default.py +0 -0
  83. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/io_formatter/io_formatter_manager.py +0 -0
  84. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/__init__.py +0 -0
  85. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ifps_keygen +0 -0
  86. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/ipfs.service +0 -0
  87. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/launch_service.sh +0 -0
  88. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/restart.sh +0 -0
  89. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/run.sh +0 -0
  90. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/setup.sh +0 -0
  91. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/show.sh +0 -0
  92. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/ipfs_setup/write_key.sh +0 -0
  93. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/ipfs/r1fs.py +0 -0
  94. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/__init__.py +0 -0
  95. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/base_logger.py +0 -0
  96. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/__init__.py +0 -0
  97. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/class_instance_mixin.py +0 -0
  98. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/computer_vision_mixin.py +0 -0
  99. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/datetime_mixin.py +0 -0
  100. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/download_mixin.py +0 -0
  101. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/general_serialization_mixin.py +0 -0
  102. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/json_serialization_mixin.py +0 -0
  103. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/machine_mixin.py +0 -0
  104. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
  105. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/process_mixin.py +0 -0
  106. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/resource_size_mixin.py +0 -0
  107. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/timers_mixin.py +0 -0
  108. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/upload_mixin.py +0 -0
  109. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/logger_mixins/utils_mixin.py +0 -0
  110. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/small_logger.py +0 -0
  111. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/tzlocal/__init__.py +0 -0
  112. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/tzlocal/unix.py +0 -0
  113. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/tzlocal/utils.py +0 -0
  114. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/tzlocal/win32.py +0 -0
  115. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/logging/tzlocal/windows_tz.py +0 -0
  116. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/plugins_manager_mixin.py +0 -0
  117. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/utils/__init__.py +0 -0
  118. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/utils/comm_utils.py +0 -0
  119. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/utils/config.py +0 -0
  120. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/utils/dotenv.py +0 -0
  121. {ratio1-3.4.91 → ratio1-3.4.92}/ratio1/utils/oracle_sync/oracle_tester.py +0 -0
  122. {ratio1-3.4.91 → ratio1-3.4.92}/requirements.txt +0 -0
  123. {ratio1-3.4.91 → ratio1-3.4.92}/template.env +0 -0
  124. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/.example_env +0 -0
  125. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
  126. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
  127. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/_example_pk_sdk.pem +0 -0
  128. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/eth2025/deploy_home_safety.py +0 -0
  129. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/eth2025/deploy_maintenance_monitoring.py +0 -0
  130. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex01_part1_connect.py +0 -0
  131. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex01_part2_filter.py +0 -0
  132. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex01_part3_adv_filter.py +0 -0
  133. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex02_part1_deploy_webapi.py +0 -0
  134. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex02_part2_deploy_plugin.py +0 -0
  135. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex02_part3_deploy_r1fs_test.py +0 -0
  136. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
  137. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
  138. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
  139. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
  140. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
  141. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex08_custom_webapi.py +0 -0
  142. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
  143. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex10_telegram_echo_bot.py +0 -0
  144. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
  145. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex12_telegram_smart_bot.py +0 -0
  146. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
  147. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex14_wallets.py +0 -0
  148. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex15_telegram_rogue_style_game.py +0 -0
  149. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex16_launch_repo_based_http_server.py +0 -0
  150. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex17_launch_repo_based_balanced_webapp.py +0 -0
  151. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex18_deploy_container_webapi.py +0 -0
  152. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex19_deeploy_container_example.py +0 -0
  153. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex20_deeploy_telegram_bot.py +0 -0
  154. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex21_telegram_community_bot.py +0 -0
  155. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/ex22_deeploy_custom_code.py +0 -0
  156. {ratio1-3.4.91 → ratio1-3.4.92}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
  157. {ratio1-3.4.91 → ratio1-3.4.92}/winrun.bat +0 -0
  158. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/README.md +0 -0
  159. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/_show_config_check.py +0 -0
  160. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/cstore_check.py +0 -0
  161. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/dauth_check.py +0 -0
  162. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/keys_check.py +0 -0
  163. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/node_info_check.py +0 -0
  164. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/ora_check.py +0 -0
  165. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/ora_intervals.py +0 -0
  166. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/ora_sign_check.py +0 -0
  167. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/owner_check.py +0 -0
  168. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/payload_check.py +0 -0
  169. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/session_check.py +0 -0
  170. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/w3_auth_check.py +0 -0
  171. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/w3_nodes_licenses.py +0 -0
  172. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/w3_oracles_check.py +0 -0
  173. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/w3_poai_check.py +0 -0
  174. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/whitelist_check.py +0 -0
  175. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/_checks/workload_check.py +0 -0
  176. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/ai4e/delete.py +0 -0
  177. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/ai4e/launcher.py +0 -0
  178. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/dates/check_date.py +0 -0
  179. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/debug/close_pipeline.py +0 -0
  180. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/decentralized/chain_dist_example.py +0 -0
  181. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
  182. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
  183. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/deeploy/checker.py +0 -0
  184. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/deeploy/checker2.py +0 -0
  185. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/deeploy/create_request.py +0 -0
  186. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/enc_dec/enc_dec_test.py +0 -0
  187. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/allocate_rewards.py +0 -0
  188. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/balance.py +0 -0
  189. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/eth_sign.py +0 -0
  190. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/info.md +0 -0
  191. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/send.py +0 -0
  192. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/send_many.py +0 -0
  193. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/eth/sign.py +0 -0
  194. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/log.py +0 -0
  195. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/logger/run.py +0 -0
  196. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/lp/lp_checker.py +0 -0
  197. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/multi-enc-dec/multi_test1.py +0 -0
  198. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/multi-enc-dec/multi_test2.py +0 -0
  199. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/netmon/check_netmon.py +0 -0
  200. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/netmon/netmon_data.json +0 -0
  201. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/pipelines/start.py +0 -0
  202. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/pipelines/stop.py +0 -0
  203. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/scripts/monitoring/collect_messages.py +0 -0
  204. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/scripts/monitoring/get_hb_distribution.py +0 -0
  205. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/scripts/monitoring/multithreaded_network_sniffer.py +0 -0
  206. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/sign/simple_payload_checker.py +0 -0
  207. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/sign/test_sign1.py +0 -0
  208. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/sign/test_sign2.py +0 -0
  209. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/test.py +0 -0
  210. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/tokens/get_check.py +0 -0
  211. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/utils/get_documentation.py +0 -0
  212. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/various/attach_example.py +0 -0
  213. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/various/ex1.py +0 -0
  214. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/various/hello.py +0 -0
  215. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/various/remote_exec.py +0 -0
  216. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/various/save_images.py +0 -0
  217. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/wl/wl_add.py +0 -0
  218. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/xarchive/_tutorials/3. simple_real_time_custom_code.py +0 -0
  219. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/xarchive/_tutorials/4. real_time_custom_code_2.py +0 -0
  220. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/xarchive/_tutorials/8. chatbot.py +0 -0
  221. {ratio1-3.4.91 → ratio1-3.4.92}/xperimental/xarchive/test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ratio1
3
- Version: 3.4.91
3
+ Version: 3.4.92
4
4
  Summary: `ratio1` or Ration1 SDK is the Python SDK required for client app development for the Ratio1 ecosystem
5
5
  Project-URL: Homepage, https://github.com/Ratio1/ratio1_sdk
6
6
  Project-URL: Bug Tracker, https://github.com/Ratio1/ratio1_sdk/issues
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ratio1"
7
- version = "3.4.91"
7
+ version = "3.4.92"
8
8
  authors = [
9
9
  { name="Andrei Ionut Damian", email="andrei.damian@ratio1.ai" },
10
10
  { name="Cristan Bleotiu", email="cristian.bleotiu@ratio1.ai" },
@@ -1,4 +1,4 @@
1
- __VER__ = "3.4.91"
1
+ __VER__ = "3.4.92"
2
2
 
3
3
  if __name__ == "__main__":
4
4
  with open("pyproject.toml", "rt") as fd:
@@ -1561,6 +1561,41 @@ class _EVMMixin:
1561
1561
 
1562
1562
  return result
1563
1563
 
1564
+ def web3_get_first_closable_job_id(
1565
+ self,
1566
+ network: str = None
1567
+ ):
1568
+ """
1569
+ Retrieve the ID of the first job that can be closed using getFirstClosableJobId().
1570
+
1571
+ Parameters
1572
+ ----------
1573
+ network : str, optional
1574
+ The network to use. If None, defaults to self.evm_network.
1575
+
1576
+ Returns
1577
+ -------
1578
+ int or None
1579
+ The ID of the first closable job, or None if no such job exists.
1580
+ """
1581
+ w3vars = self._get_web3_vars(network)
1582
+ network = w3vars.network
1583
+
1584
+ contract = w3vars.w3.eth.contract(
1585
+ address=w3vars.poai_manager_address,
1586
+ abi=EVM_ABI_DATA.POAI_MANAGER_ABI
1587
+ )
1588
+
1589
+ self.P(f"`getFirstClosableJobId` on {network} via {w3vars.rpc_url}", verbosity=2)
1590
+
1591
+ # Call the contract function to get the first closable job ID.
1592
+ result = contract.functions.getFirstClosableJobId().call()
1593
+ if result == 0:
1594
+ result = None
1595
+ self.P(f"First closable job ID: {result}", verbosity=2)
1596
+
1597
+ return result
1598
+
1564
1599
  def web3_get_is_last_epoch_allocated(
1565
1600
  self,
1566
1601
  network: str = None
@@ -417,6 +417,19 @@ _POAI_MANAGER_ABI = [
417
417
  ],
418
418
  "stateMutability": "view",
419
419
  "type": "function"
420
+ },
421
+ {
422
+ "inputs": [],
423
+ "name": "getFirstClosableJobId",
424
+ "outputs": [
425
+ {
426
+ "internalType": "uint256",
427
+ "name": "",
428
+ "type": "uint256"
429
+ }
430
+ ],
431
+ "stateMutability": "view",
432
+ "type": "function"
420
433
  }
421
434
  ]
422
435
 
@@ -0,0 +1,22 @@
1
+ from ratio1 import Logger
2
+ from ratio1.bc import DefaultBlockEngine
3
+
4
+
5
+ if __name__ == '__main__':
6
+ logger = Logger("ENC")
7
+ engine = DefaultBlockEngine(
8
+ log=logger,
9
+ name="default",
10
+ user_config=True,
11
+ )
12
+
13
+ engine.reset_network("devnet")
14
+
15
+ network = engine.evm_network
16
+ logger.P(f"Checking first closable job on {network}", color='b')
17
+
18
+ try:
19
+ job_id = engine.web3_get_first_closable_job_id()
20
+ logger.P(f"First closable job ID: {job_id}", color='g')
21
+ except Exception as exc:
22
+ logger.P(f"Failed to retrieve first closable job ID: {exc}", color='r')
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes