arpakitlib 1.7.227__tar.gz → 1.7.228__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 (205) hide show
  1. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/PKG-INFO +1 -1
  2. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_arpakit_lib_module_util.py +3 -3
  3. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_base_worker_util.py +12 -12
  4. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_http_request_util.py +2 -2
  5. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_operation_execution_util.py +4 -4
  6. arpakitlib-1.7.228/arpakitlib/ar_retry_func_util.py +76 -0
  7. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/pyproject.toml +1 -1
  8. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/LICENSE +0 -0
  9. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/README.md +0 -0
  10. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/__init__.py +0 -0
  11. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/.gitignore +0 -0
  12. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/.python-version +0 -0
  13. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/ARPAKITLIB +0 -0
  14. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/LICENSE +0 -0
  15. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/README.md +0 -0
  16. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/example.env +0 -0
  17. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/__init__.py +0 -0
  18. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/docker_ps.sh +0 -0
  19. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/docker_ps_a.sh +0 -0
  20. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/docker_run_postgres.sh +0 -0
  21. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/docker_start_postgres.sh +0 -0
  22. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/docker_stop_postgres.sh +0 -0
  23. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_branch.sh +0 -0
  24. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_commit.sh +0 -0
  25. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_push_arpakit_company_github_1.sh +0 -0
  26. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_push_arpakit_company_gitlab_1.sh +0 -0
  27. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_push_arpakit_github_1.sh +0 -0
  28. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_push_arpakit_gitlab_1.sh +0 -0
  29. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_remote_v.sh +0 -0
  30. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_set_arpakit_company_origin.sh +0 -0
  31. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_set_arpakit_origin.sh +0 -0
  32. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/git_status.sh +0 -0
  33. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/hello_world.py +0 -0
  34. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/json_beautify.py +0 -0
  35. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/__init__.py +0 -0
  36. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/note_1.txt +0 -0
  37. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/note_2.txt +0 -0
  38. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/note_3.txt +0 -0
  39. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/note_4.txt +0 -0
  40. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/note/note_5.txt +0 -0
  41. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_add_plugin_export.sh +0 -0
  42. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_check.sh +0 -0
  43. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_clear_cache.sh +0 -0
  44. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_config.sh +0 -0
  45. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_config_virtualenvs_in_project_true.sh +0 -0
  46. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_install.sh +0 -0
  47. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_lock.sh +0 -0
  48. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_remove_and_add_arpakitlib.sh +0 -0
  49. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_self_add_plugin_export.sh +0 -0
  50. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_show.sh +0 -0
  51. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_show_arpakitlib.sh +0 -0
  52. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_update.sh +0 -0
  53. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/poetry_update_arpakitlib.sh +0 -0
  54. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/__init__.py +0 -0
  55. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_1.py +0 -0
  56. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_2.py +0 -0
  57. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_3.py +0 -0
  58. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_4.py +0 -0
  59. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_5.py +0 -0
  60. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_6.py +0 -0
  61. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_7.py +0 -0
  62. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_8.sh +0 -0
  63. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/manage/sandbox/sandbox_9.sh +0 -0
  64. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/resource/__init__.py +0 -0
  65. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/resource/static/__init__.py +0 -0
  66. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/resource/static/healthcheck +0 -0
  67. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/resource/static/helloworld +0 -0
  68. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/__init__.py +0 -0
  69. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/additional_model/__init__.py +0 -0
  70. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/additional_model/additional_model.py +0 -0
  71. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/admin1/__init__.py +0 -0
  72. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/admin1/add_admin_in_app.py +0 -0
  73. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/admin1/admin_auth.py +0 -0
  74. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/admin1/model_view.py +0 -0
  75. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/__init__.py +0 -0
  76. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/_start_api_with_reload.py +0 -0
  77. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/_start_api_without_reload.py +0 -0
  78. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/asgi.py +0 -0
  79. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/auth.py +0 -0
  80. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/const.py +0 -0
  81. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/create_api_app.py +0 -0
  82. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/event.py +0 -0
  83. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/router/__init__.py +0 -0
  84. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/router/main_router.py +0 -0
  85. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/router/v1/__init__.py +0 -0
  86. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/router/v1/get_api_error_info.py +0 -0
  87. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/router/v1/main_router.py +0 -0
  88. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/schema/__init__.py +0 -0
  89. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/schema/v1/__init__.py +0 -0
  90. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/schema/v1/in_.py +0 -0
  91. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/schema/v1/out.py +0 -0
  92. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/transmitted_api_data.py +0 -0
  93. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/api/util.py +0 -0
  94. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/business_service/__init__.py +0 -0
  95. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/business_service/hello_world.py +0 -0
  96. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/__init__.py +0 -0
  97. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/_check_logging.py +0 -0
  98. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/_check_settings.py +0 -0
  99. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/_generate_settings_env_example.py +0 -0
  100. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/const.py +0 -0
  101. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/settings.py +0 -0
  102. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/core/util.py +0 -0
  103. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/__init__.py +0 -0
  104. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/_check_conn_sqlalchemy_db.py +0 -0
  105. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/_init_sqlalchemy_db.py +0 -0
  106. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/_reinit_sqlalchemy_db.py +0 -0
  107. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/const.py +0 -0
  108. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/sqlalchemy_model.py +0 -0
  109. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/db/util.py +0 -0
  110. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/__init__.py +0 -0
  111. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/_remove_operations.py +0 -0
  112. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/_start_operation_executor_worker.py +0 -0
  113. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/_start_scheduled_operation_creator_worker.py +0 -0
  114. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/const.py +0 -0
  115. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/operation_executor.py +0 -0
  116. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/scheduled_operations.py +0 -0
  117. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/operation_execution/util.py +0 -0
  118. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/__init__.py +0 -0
  119. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/make_test_data_1.py +0 -0
  120. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/make_test_data_2.py +0 -0
  121. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/make_test_data_3.py +0 -0
  122. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/make_test_data_4.py +0 -0
  123. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/test_data/make_test_data_5.py +0 -0
  124. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/__init__.py +0 -0
  125. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/event.py +0 -0
  126. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/filter/__init__.py +0 -0
  127. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/filter/not_prod_mode.py +0 -0
  128. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/filter/prod_mode.py +0 -0
  129. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/handler/__init__.py +0 -0
  130. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/handler/cmd_arpakitlib.py +0 -0
  131. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/handler/cmd_healthcheck.py +0 -0
  132. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/__init__.py +0 -0
  133. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/inline_/__init__.py +0 -0
  134. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/inline_/callback.py +0 -0
  135. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/inline_/common.py +0 -0
  136. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/static_/__init__.py +0 -0
  137. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/kb/static_/common.py +0 -0
  138. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/router/__init__.py +0 -0
  139. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/start_tg_bot.py +0 -0
  140. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/tg_bot/transmitted_tg_data.py +0 -0
  141. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/_arpakit_project_template/src/util/__init__.py +0 -0
  142. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_additional_model_util.py +0 -0
  143. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_aiogram_util.py +0 -0
  144. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_api_key_util.py +0 -0
  145. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_arpakit_project_template_util.py +0 -0
  146. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_arpakit_schedule_uust_api_client_util.py +0 -0
  147. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_arpakitlib_cli_util.py +0 -0
  148. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_base64_util.py +0 -0
  149. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_cache_file_util.py +0 -0
  150. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_class_util.py +0 -0
  151. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_datetime_util.py +0 -0
  152. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_dict_util.py +0 -0
  153. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_dream_ai_api_client_util.py +0 -0
  154. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_encrypt_decrypt_util.py +0 -0
  155. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_enumeration_util.py +0 -0
  156. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_exception_util.py +0 -0
  157. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/healthcheck +0 -0
  158. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/redoc/redoc.standalone.js +0 -0
  159. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/favicon-16x16.png +0 -0
  160. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/favicon-32x32.png +0 -0
  161. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/index.css +0 -0
  162. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/index.html +0 -0
  163. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/oauth2-redirect.html +0 -0
  164. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-initializer.js +0 -0
  165. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-bundle.js +0 -0
  166. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-bundle.js.map +0 -0
  167. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle-core.js +0 -0
  168. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle-core.js.map +0 -0
  169. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle.js +0 -0
  170. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle.js.map +0 -0
  171. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-standalone-preset.js +0 -0
  172. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-standalone-preset.js.map +0 -0
  173. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.css +0 -0
  174. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.css.map +0 -0
  175. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.js +0 -0
  176. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.js.map +0 -0
  177. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_fastapi_util.py +0 -0
  178. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_file_storage_in_dir_util.py +0 -0
  179. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_file_util.py +0 -0
  180. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_func_util.py +0 -0
  181. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_hash_util.py +0 -0
  182. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_ip_util.py +0 -0
  183. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_json_db_util.py +0 -0
  184. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_json_util.py +0 -0
  185. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_jwt_util.py +0 -0
  186. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_list_of_dicts_to_xlsx.py +0 -0
  187. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_list_util.py +0 -0
  188. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_logging_util.py +0 -0
  189. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_mongodb_util.py +0 -0
  190. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_need_type_util.py +0 -0
  191. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_openai_api_client_util.py +0 -0
  192. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_parse_command.py +0 -0
  193. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_postgresql_util.py +0 -0
  194. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_run_cmd_util.py +0 -0
  195. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_schedule_uust_api_client_util.py +0 -0
  196. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_settings_util.py +0 -0
  197. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_sleep_util.py +0 -0
  198. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_sqladmin_util.py +0 -0
  199. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_sqlalchemy_model_util.py +0 -0
  200. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_sqlalchemy_util.py +0 -0
  201. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_ssh_runner_util.py +0 -0
  202. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_str_util.py +0 -0
  203. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_type_util.py +0 -0
  204. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_yookassa_api_client_util.py +0 -0
  205. {arpakitlib-1.7.227 → arpakitlib-1.7.228}/arpakitlib/ar_zabbix_api_client_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: arpakitlib
3
- Version: 1.7.227
3
+ Version: 1.7.228
4
4
  Summary: arpakitlib
5
5
  License: Apache-2.0
6
6
  Keywords: arpakitlib,arpakit,arpakit-company,arpakitcompany,arpakit_company
@@ -15,7 +15,7 @@ class ArpakitLibModule(NamedTuple):
15
15
  module_content: str
16
16
  module_hash: str
17
17
  module_has_error: bool
18
- module_exception: BaseException | None
18
+ module_exception: Exception | None
19
19
  filename: str
20
20
  filepath: str
21
21
 
@@ -85,7 +85,7 @@ class ArpakitLibModules(NamedTuple):
85
85
  return True
86
86
  return False
87
87
 
88
- def module_name_to_module_exception(self, *, filter_module_has_error: bool = False) -> dict[str, BaseException]:
88
+ def module_name_to_module_exception(self, *, filter_module_has_error: bool = False) -> dict[str, Exception]:
89
89
  if filter_module_has_error:
90
90
  return {
91
91
  module.module_name: module.module_exception
@@ -124,7 +124,7 @@ def get_arpakit_lib_modules() -> ArpakitLibModules:
124
124
  module_version = getattr(module, "_ARPAKIT_LIB_MODULE_VERSION", None)
125
125
  module_has_error = False
126
126
  module_exception = None
127
- except BaseException as error:
127
+ except Exception as error:
128
128
  module_has_error = True
129
129
  module_exception = error
130
130
  if module_version is not None and not isinstance(module_version, str):
@@ -57,26 +57,26 @@ class BaseWorker(ABC):
57
57
  def sync_run(self):
58
58
  self._logger.info(f"hello world, im {self.worker_fullname}")
59
59
 
60
- def sync_on_error(self, exception: BaseException, **kwargs):
60
+ def sync_on_error(self, exception: Exception, **kwargs):
61
61
  pass
62
62
 
63
63
  def sync_safe_run(self):
64
64
  self._logger.info("start")
65
65
  try:
66
66
  self.sync_on_startup()
67
- except BaseException as exception:
67
+ except Exception as exception:
68
68
  self._logger.error("error in sync_on_startup", exc_info=exception)
69
- raise exception
69
+ raise
70
70
  while True:
71
71
  try:
72
72
  self.sync_run()
73
- except BaseException as exception:
73
+ except Exception as exception:
74
74
  self._logger.error("error in sync_run", exc_info=exception)
75
75
  try:
76
76
  self.sync_on_error(exception=exception)
77
- except BaseException as exception_:
77
+ except Exception as exception_:
78
78
  self._logger.error("error in sync_on_error", exc_info=exception_)
79
- raise exception_
79
+ raise
80
80
  sync_safe_sleep(self.timeout_after_err_in_run)
81
81
  sync_safe_sleep(self.timeout_after_run)
82
82
 
@@ -95,26 +95,26 @@ class BaseWorker(ABC):
95
95
  async def async_run(self):
96
96
  self._logger.info(f"hello world, im {self.worker_fullname}")
97
97
 
98
- async def async_on_error(self, exception: BaseException, **kwargs):
98
+ async def async_on_error(self, exception: Exception, **kwargs):
99
99
  pass
100
100
 
101
101
  async def async_safe_run(self):
102
102
  self._logger.info("start async_safe_run")
103
103
  try:
104
104
  await self.async_on_startup()
105
- except BaseException as exception:
105
+ except Exception as exception:
106
106
  self._logger.error("error in async_on_startup", exc_info=exception)
107
- raise exception
107
+ raise
108
108
  while True:
109
109
  try:
110
110
  await self.async_run()
111
- except BaseException as exception:
111
+ except Exception as exception:
112
112
  self._logger.error("error in async_run", exc_info=exception)
113
113
  try:
114
114
  await self.async_on_error(exception=exception)
115
- except BaseException as exception_:
115
+ except Exception as exception_:
116
116
  self._logger.error("error in async_on_error", exc_info=exception_)
117
- raise exception_
117
+ raise
118
118
  await async_safe_sleep(self.timeout_after_err_in_run)
119
119
  await async_safe_sleep(self.timeout_after_run)
120
120
 
@@ -69,7 +69,7 @@ def sync_make_http_request(
69
69
  if enable_logging_:
70
70
  _logger.info(f"good try http {method} {url} {params}")
71
71
  return response
72
- except BaseException as exception:
72
+ except Exception as exception:
73
73
  if enable_logging_:
74
74
  _logger.warning(
75
75
  f"{tries_counter}/{max_tries_}. retry {method} {url} {params}, exception={exception}"
@@ -131,7 +131,7 @@ async def async_make_http_request(
131
131
  if enable_logging_:
132
132
  _logger.info(f"good try http {method} {url} {params}")
133
133
  return response
134
- except BaseException as exception:
134
+ except Exception as exception:
135
135
  if enable_logging_:
136
136
  _logger.warning(
137
137
  f"{tries_counter}/{max_tries_}. retry http {method} {url} {params}, exception={exception}"
@@ -173,12 +173,12 @@ class BaseOperationExecutor:
173
173
  )
174
174
  session.commit()
175
175
 
176
- exception: BaseException | None = None
176
+ exception: Exception | None = None
177
177
  traceback_str: str | None = None
178
178
 
179
179
  try:
180
180
  self.sync_execute_operation(operation_dbm=operation_dbm, session=session)
181
- except BaseException as exception_:
181
+ except Exception as exception_:
182
182
  self._logger.error(
183
183
  f"error in sync_execute_operation (id={operation_dbm.id}, type={operation_dbm.type})",
184
184
  exc_info=exception_
@@ -253,12 +253,12 @@ class BaseOperationExecutor:
253
253
  )
254
254
  session.commit()
255
255
 
256
- exception: BaseException | None = None
256
+ exception: Exception | None = None
257
257
  traceback_str: str | None = None
258
258
 
259
259
  try:
260
260
  await self.async_execute_operation(operation_dbm=operation_dbm, session=session)
261
- except BaseException as exception_:
261
+ except Exception as exception_:
262
262
  self._logger.error(
263
263
  f"error in async_execute_operation (id={operation_dbm.id}, type={operation_dbm.type})",
264
264
  exc_info=exception_
@@ -0,0 +1,76 @@
1
+ import asyncio
2
+ from datetime import timedelta
3
+ from typing import Any
4
+
5
+ from arpakitlib.ar_sleep_util import sync_safe_sleep, async_safe_sleep
6
+
7
+
8
+ async def async_retry_func(
9
+ *,
10
+ async_func: Any,
11
+ async_func_args: tuple[Any, ...] | None = None,
12
+ async_func_kwargs: dict[str, Any] | None = None,
13
+ max_tries: int = 5,
14
+ endlessly: bool = False,
15
+ timeout_after_exception: timedelta | None = None,
16
+ raise_if_exception: bool = True
17
+ ):
18
+ tries = 0
19
+ async_func_args = async_func_args or ()
20
+ async_func_kwargs = async_func_kwargs or {}
21
+
22
+ while True:
23
+ try:
24
+ return await async_func(*async_func_args, **async_func_kwargs)
25
+ except Exception:
26
+ tries += 1
27
+ if not endlessly and tries >= max_tries:
28
+ if raise_if_exception:
29
+ raise
30
+ return None
31
+ if timeout_after_exception:
32
+ await async_safe_sleep(timeout_after_exception.total_seconds())
33
+
34
+
35
+ def sync_retry_func(
36
+ *,
37
+ sync_func: Any,
38
+ sync_func_args: tuple[Any, ...] | None = None,
39
+ sync_func_kwargs: dict[str, Any] | None = None,
40
+ max_tries: int = 5,
41
+ endlessly: bool = False,
42
+ timeout_after_exception: timedelta | None = None,
43
+ raise_if_exception: bool = True
44
+ ):
45
+ tries = 0
46
+ sync_func_args = sync_func_args or ()
47
+ sync_func_kwargs = sync_func_kwargs or {}
48
+
49
+ while True:
50
+ try:
51
+ return sync_func(*sync_func_args, **sync_func_kwargs)
52
+ except Exception:
53
+ tries += 1
54
+ if not endlessly and tries >= max_tries:
55
+ if raise_if_exception:
56
+ raise
57
+ return None
58
+ if timeout_after_exception:
59
+ sync_safe_sleep(timeout_after_exception.total_seconds())
60
+
61
+
62
+ async def __async_example():
63
+ async def g():
64
+ print(1)
65
+ raise Exception
66
+
67
+ await async_retry_func(
68
+ async_func=g,
69
+ endlessly=True,
70
+ max_tries=5,
71
+ timeout_after_exception=timedelta(seconds=1)
72
+ )
73
+
74
+
75
+ if __name__ == '__main__':
76
+ asyncio.run(__async_example())
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "arpakitlib"
3
- version = "1.7.227"
3
+ version = "1.7.228"
4
4
  description = "arpakitlib"
5
5
  authors = [
6
6
  { name = "arpakit", email = "arpakit@gmail.com" },
File without changes
File without changes