zrb 1.0.0a2__py3-none-any.whl → 1.0.0a4__py3-none-any.whl
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.
- zrb/__init__.py +49 -40
- zrb/__main__.py +5 -3
- zrb/attr/type.py +2 -1
- zrb/builtin/__init__.py +42 -2
- zrb/builtin/base64.py +34 -0
- zrb/builtin/git.py +156 -0
- zrb/builtin/git_subtree.py +88 -0
- zrb/builtin/group.py +34 -0
- zrb/builtin/llm/llm_chat.py +47 -0
- zrb/builtin/llm/tool/cli.py +9 -0
- zrb/builtin/llm/tool/rag.py +189 -0
- zrb/builtin/llm/tool/web.py +74 -0
- zrb/builtin/md5.py +36 -0
- zrb/builtin/project/add/fastapp.py +72 -0
- zrb/builtin/project/add/fastapp_template/.gitignore +4 -0
- zrb/builtin/project/add/fastapp_template/README.md +7 -0
- zrb/builtin/project/add/fastapp_template/_zrb/config.py +17 -0
- zrb/builtin/project/add/fastapp_template/_zrb/group.py +16 -0
- zrb/builtin/project/add/fastapp_template/_zrb/helper.py +97 -0
- zrb/builtin/project/add/fastapp_template/_zrb/main.py +132 -0
- zrb/builtin/project/add/fastapp_template/_zrb/venv_task.py +22 -0
- zrb/builtin/project/add/fastapp_template/common/app.py +18 -0
- zrb/builtin/project/add/fastapp_template/common/db_engine.py +5 -0
- zrb/builtin/project/add/fastapp_template/common/db_repository.py +134 -0
- zrb/builtin/project/add/fastapp_template/common/error.py +8 -0
- zrb/builtin/project/add/fastapp_template/common/schema.py +5 -0
- zrb/builtin/project/add/fastapp_template/common/usecase.py +232 -0
- zrb/builtin/project/add/fastapp_template/config.py +29 -0
- zrb/builtin/project/add/fastapp_template/main.py +7 -0
- zrb/builtin/project/add/fastapp_template/migrate.py +3 -0
- zrb/builtin/project/add/fastapp_template/module/__init__.py +0 -0
- zrb/builtin/project/add/fastapp_template/module/auth/alembic.ini +117 -0
- zrb/builtin/project/add/fastapp_template/module/auth/client/api_client.py +7 -0
- zrb/builtin/project/add/fastapp_template/module/auth/client/base_client.py +27 -0
- zrb/builtin/project/add/fastapp_template/module/auth/client/direct_client.py +6 -0
- zrb/builtin/project/add/fastapp_template/module/auth/client/factory.py +9 -0
- zrb/builtin/project/add/fastapp_template/module/auth/migration/README +1 -0
- zrb/builtin/project/add/fastapp_template/module/auth/migration/env.py +108 -0
- zrb/builtin/project/add/fastapp_template/module/auth/migration/script.py.mako +26 -0
- zrb/builtin/project/add/fastapp_template/module/auth/migration/versions/3093c7336477_add_user_table.py +37 -0
- zrb/builtin/project/add/fastapp_template/module/auth/migration_metadata.py +6 -0
- zrb/builtin/project/add/fastapp_template/module/auth/route.py +22 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/__init__.py +0 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/__init__.py +0 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/__init__.py +0 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/db_repository.py +39 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/factory.py +13 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/repository.py +34 -0
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/usecase.py +45 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/alembic.ini +117 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/README +1 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/env.py +108 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/script.py.mako +26 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/versions/.gitkeep +0 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/migration_metadata.py +3 -0
- zrb/builtin/project/add/fastapp_template/module/gateway/route.py +27 -0
- zrb/builtin/project/add/fastapp_template/requirements.txt +6 -0
- zrb/builtin/project/add/fastapp_template/schema/__init__.py +0 -0
- zrb/builtin/project/add/fastapp_template/schema/role.py +31 -0
- zrb/builtin/project/add/fastapp_template/schema/user.py +31 -0
- zrb/builtin/project/add/fastapp_template/template.env +2 -0
- zrb/builtin/project/create/__init__.py +0 -0
- zrb/builtin/project/create/create.py +41 -0
- zrb/builtin/project/create/project-template/README.md +3 -0
- zrb/builtin/project/create/project-template/zrb_init.py +7 -0
- zrb/builtin/python.py +11 -0
- zrb/builtin/shell/__init__.py +0 -5
- zrb/builtin/shell/autocomplete/__init__.py +0 -9
- zrb/builtin/shell/autocomplete/bash.py +5 -6
- zrb/builtin/shell/autocomplete/subcmd.py +7 -8
- zrb/builtin/shell/autocomplete/zsh.py +5 -6
- zrb/builtin/todo.py +219 -0
- zrb/callback/any_callback.py +1 -1
- zrb/callback/callback.py +5 -5
- zrb/cmd/cmd_val.py +2 -2
- zrb/config.py +16 -3
- zrb/content_transformer/any_content_transformer.py +1 -1
- zrb/content_transformer/content_transformer.py +2 -2
- zrb/context/any_context.py +1 -1
- zrb/context/any_shared_context.py +3 -3
- zrb/context/context.py +10 -8
- zrb/context/shared_context.py +9 -8
- zrb/env/__init__.py +0 -3
- zrb/env/any_env.py +1 -1
- zrb/env/env.py +3 -4
- zrb/env/env_file.py +4 -4
- zrb/env/env_map.py +2 -2
- zrb/group/__init__.py +0 -3
- zrb/group/any_group.py +3 -3
- zrb/group/group.py +7 -6
- zrb/input/any_input.py +1 -1
- zrb/input/base_input.py +4 -4
- zrb/input/bool_input.py +5 -5
- zrb/input/float_input.py +3 -3
- zrb/input/int_input.py +3 -3
- zrb/input/option_input.py +51 -0
- zrb/input/password_input.py +2 -2
- zrb/input/str_input.py +1 -1
- zrb/input/text_input.py +12 -10
- zrb/runner/cli.py +80 -45
- zrb/runner/web_app.py +150 -0
- zrb/runner/web_controller/__init__.py +0 -0
- zrb/runner/web_controller/group_info_ui/__init__.py +0 -0
- zrb/runner/{web_app → web_controller}/group_info_ui/controller.py +7 -8
- zrb/runner/{web_app → web_controller}/group_info_ui/view.html +2 -2
- zrb/runner/web_controller/home_page/__init__.py +0 -0
- zrb/runner/{web_app → web_controller}/home_page/controller.py +7 -6
- zrb/runner/{web_app → web_controller}/home_page/view.html +2 -2
- zrb/runner/web_controller/task_ui/__init__.py +0 -0
- zrb/runner/{web_app → web_controller}/task_ui/controller.py +8 -12
- zrb/runner/{web_app → web_controller}/task_ui/view.html +2 -2
- zrb/runner/web_util.py +5 -35
- zrb/session/any_session.py +13 -7
- zrb/session/session.py +78 -40
- zrb/session_state_log/session_state_log.py +7 -5
- zrb/session_state_logger/any_session_state_logger.py +1 -1
- zrb/session_state_logger/default_session_state_logger.py +2 -2
- zrb/session_state_logger/file_session_state_logger.py +19 -27
- zrb/task/any_task.py +4 -4
- zrb/task/base_task.py +33 -23
- zrb/task/base_trigger.py +11 -12
- zrb/task/cmd_task.py +72 -65
- zrb/task/http_check.py +13 -13
- zrb/task/llm_task.py +215 -0
- zrb/task/make_task.py +9 -9
- zrb/task/rsync_task.py +25 -25
- zrb/task/scaffolder.py +18 -15
- zrb/task/scheduler.py +6 -7
- zrb/task/task.py +1 -1
- zrb/task/tcp_check.py +11 -13
- zrb/util/attr.py +19 -3
- zrb/util/cli/style.py +71 -2
- zrb/util/cli/subcommand.py +2 -2
- zrb/util/codemod/__init__.py +0 -0
- zrb/util/codemod/add_code_to_class.py +35 -0
- zrb/util/codemod/add_code_to_function.py +36 -0
- zrb/util/codemod/add_code_to_method.py +55 -0
- zrb/util/codemod/add_key_to_dict.py +51 -0
- zrb/util/codemod/add_param_to_function_call.py +39 -0
- zrb/util/codemod/add_property_to_class.py +55 -0
- zrb/util/git.py +156 -0
- zrb/util/git_subtree.py +94 -0
- zrb/util/group.py +2 -2
- zrb/util/llm/tool.py +63 -0
- zrb/util/string/conversion.py +7 -0
- zrb/util/todo.py +259 -0
- {zrb-1.0.0a2.dist-info → zrb-1.0.0a4.dist-info}/METADATA +13 -5
- zrb-1.0.0a4.dist-info/RECORD +197 -0
- zrb/builtin/shell/_group.py +0 -9
- zrb/builtin/shell/autocomplete/_group.py +0 -6
- zrb/runner/web_app/any_request_handler.py +0 -24
- zrb/runner/web_server.py +0 -224
- zrb-1.0.0a2.dist-info/RECORD +0 -120
- /zrb/{runner/web_app → builtin/project}/__init__.py +0 -0
- /zrb/{runner/web_app/group_info_ui → builtin/project/add}/__init__.py +0 -0
- /zrb/{runner/web_app/home_page → builtin/project/add/fastapp_template}/__init__.py +0 -0
- /zrb/{runner/web_app/task_ui → builtin/project/add/fastapp_template/common}/__init__.py +0 -0
- /zrb/runner/{web_app → web_controller}/group_info_ui/partial/group_info.html +0 -0
- /zrb/runner/{web_app → web_controller}/group_info_ui/partial/group_li.html +0 -0
- /zrb/runner/{web_app → web_controller}/group_info_ui/partial/task_info.html +0 -0
- /zrb/runner/{web_app → web_controller}/group_info_ui/partial/task_li.html +0 -0
- /zrb/runner/{web_app → web_controller}/home_page/partial/group_info.html +0 -0
- /zrb/runner/{web_app → web_controller}/home_page/partial/group_li.html +0 -0
- /zrb/runner/{web_app → web_controller}/home_page/partial/task_info.html +0 -0
- /zrb/runner/{web_app → web_controller}/home_page/partial/task_li.html +0 -0
- /zrb/runner/{web_app → web_controller}/static/favicon-32x32.png +0 -0
- /zrb/runner/{web_app → web_controller}/static/pico.min.css +0 -0
- /zrb/runner/{web_app → web_controller}/task_ui/partial/common-util.js +0 -0
- /zrb/runner/{web_app → web_controller}/task_ui/partial/input.html +0 -0
- /zrb/runner/{web_app → web_controller}/task_ui/partial/main.js +0 -0
- /zrb/runner/{web_app → web_controller}/task_ui/partial/show-existing-session.js +0 -0
- /zrb/runner/{web_app → web_controller}/task_ui/partial/visualize-history.js +0 -0
- {zrb-1.0.0a2.dist-info → zrb-1.0.0a4.dist-info}/WHEEL +0 -0
- {zrb-1.0.0a2.dist-info → zrb-1.0.0a4.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,197 @@
|
|
1
|
+
zrb/__init__.py,sha256=ESskletjBpLO78a6wLigi9wnEGtmhfc3i_rbyMvrSyU,2767
|
2
|
+
zrb/__main__.py,sha256=Z3nrDdLh5qz4fHhsxMzo8-ui543uAkeE9PMeREX7DwQ,388
|
3
|
+
zrb/attr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
+
zrb/attr/type.py,sha256=4TV5gPYMMrKh5V-yB6iRYKCbsXAH_AvGXMsjxKLHcUs,568
|
5
|
+
zrb/builtin/__init__.py,sha256=hBnr175f1UsMFYPeD5GBoyL-uqEUy9jSrtosq87pmkU,1347
|
6
|
+
zrb/builtin/base64.py,sha256=1YnSwASp7OEAvQcsnHZGpJEvYoI1Z2zTIJ1bCDHfcPQ,921
|
7
|
+
zrb/builtin/git.py,sha256=m3uFadPTQvnwH4hxZVoU52znY5G3OST0-Xh_GplN0Ms,4351
|
8
|
+
zrb/builtin/git_subtree.py,sha256=5SndE5zdjBGERJjOg30W5pIvti3dlGakAFvY6NXXSmE,2603
|
9
|
+
zrb/builtin/group.py,sha256=FQnBUlHN2JFtVXTBQj0FYJDMMC-BJXoj74NFlsARwNU,1415
|
10
|
+
zrb/builtin/llm/llm_chat.py,sha256=ATENrihXUMkQ8IoarhacohUe-I_43yb7c0Tl5f69mAI,1397
|
11
|
+
zrb/builtin/llm/tool/cli.py,sha256=n8THj513k1vrXUoZrTcxESmdZzhBOP1-L3Dmup5ZW54,225
|
12
|
+
zrb/builtin/llm/tool/rag.py,sha256=rpfTMhLpkH9ZEyBcmFqLTz3UB2F6VP6w_Se2mPQVZXM,6845
|
13
|
+
zrb/builtin/llm/tool/web.py,sha256=cc-3vg8vKRq-uOk-7Z1Xe70Sn1omNqZCvePUcRptEgw,2216
|
14
|
+
zrb/builtin/md5.py,sha256=0pNlrfZA0wlZlHvFHLgyqN0JZJWGKQIF5oXxO44_OJk,949
|
15
|
+
zrb/builtin/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
16
|
+
zrb/builtin/project/add/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
|
+
zrb/builtin/project/add/fastapp.py,sha256=0Gjgh2NQyy_fCUz8X-GGK06b5W-jIz49444dd5YE3Lo,2331
|
18
|
+
zrb/builtin/project/add/fastapp_template/.gitignore,sha256=1BMFpr_M5OyTs-weCZZlVlf85sWikzdbvmKu86YD7G0,28
|
19
|
+
zrb/builtin/project/add/fastapp_template/README.md,sha256=MAo7ZFbg7LLiAfQbXcippMgjJ2-VXMKtiTDEZ3I4AAg,221
|
20
|
+
zrb/builtin/project/add/fastapp_template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
+
zrb/builtin/project/add/fastapp_template/_zrb/config.py,sha256=UyfX4XeecKo5goVGjFzWaQN-AZL_FriwHkI5x5btgG0,536
|
22
|
+
zrb/builtin/project/add/fastapp_template/_zrb/group.py,sha256=fXrIk8TRwiX5aQ-FQW6xSOo2uDfm6Ef7IXkGVBKDXgw,487
|
23
|
+
zrb/builtin/project/add/fastapp_template/_zrb/helper.py,sha256=uz0q4vnjxX942STY9qLEebDwwL_TLhOSTH9Z1DVKNu0,2842
|
24
|
+
zrb/builtin/project/add/fastapp_template/_zrb/main.py,sha256=A2Xs37r9WIfh4LW0NaDqD5TtgTwvKk4_8BzcEnHAK_o,4109
|
25
|
+
zrb/builtin/project/add/fastapp_template/_zrb/venv_task.py,sha256=hJaPGXeAjljA-sDq5RYF35diKFQLGY8sp81DHPo8bYU,571
|
26
|
+
zrb/builtin/project/add/fastapp_template/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
27
|
+
zrb/builtin/project/add/fastapp_template/common/app.py,sha256=GX3_HVcpT2KvnETTslffUzWzyVoOCpaQGGjsTNobL0I,474
|
28
|
+
zrb/builtin/project/add/fastapp_template/common/db_engine.py,sha256=8uDn6eLloVnw58Z2gA77-K8cWE0G6DGzDVEvyIqt41M,189
|
29
|
+
zrb/builtin/project/add/fastapp_template/common/db_repository.py,sha256=tyE5ZKapKtRrjbAww2kG8eSXGhfREas0vtwd3XjD37k,6023
|
30
|
+
zrb/builtin/project/add/fastapp_template/common/error.py,sha256=hgRvoCH3C7t_iZuLThiqJVs20zUasQWbH_8jDceF8nk,243
|
31
|
+
zrb/builtin/project/add/fastapp_template/common/schema.py,sha256=dbRryeP5u7ObGX3GjF9ZID00yXffOp-AxyXu8oVJP0I,82
|
32
|
+
zrb/builtin/project/add/fastapp_template/common/usecase.py,sha256=j-FBqrFAAfFbfTN8jAIctwXOIFf75S7T8gn9iLmBsC8,9275
|
33
|
+
zrb/builtin/project/add/fastapp_template/config.py,sha256=R_InkY0f2tMNgtoDlc1JuobrGwhvITsetRpWC223npo,933
|
34
|
+
zrb/builtin/project/add/fastapp_template/main.py,sha256=npRXgrPmAN32rjbykKP--Lth3PGKoaj51wTVjcl0k-w,223
|
35
|
+
zrb/builtin/project/add/fastapp_template/migrate.py,sha256=bpIKOHZ0sV3sJrUznhKt72tKXe-Uoq9dJ7f2Uh7E0g8,92
|
36
|
+
zrb/builtin/project/add/fastapp_template/module/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
37
|
+
zrb/builtin/project/add/fastapp_template/module/auth/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
|
38
|
+
zrb/builtin/project/add/fastapp_template/module/auth/client/api_client.py,sha256=rsfS8_2FjSpZrqYEr8Jxu6VgJbIXso1USRyPDuTp-dY,296
|
39
|
+
zrb/builtin/project/add/fastapp_template/module/auth/client/base_client.py,sha256=sczw_a8fgxypgBmXwEU4YJkvYxqEE0ueVdbzrncfOAc,697
|
40
|
+
zrb/builtin/project/add/fastapp_template/module/auth/client/direct_client.py,sha256=RJ57_1EK4jG6fPOQ2sHAjfAOe47Ill-ovG5cFfZV3T8,222
|
41
|
+
zrb/builtin/project/add/fastapp_template/module/auth/client/factory.py,sha256=UoWSTOiYMQHGPfERyebKtKLKU30d5G95M3sfBFYuLIs,414
|
42
|
+
zrb/builtin/project/add/fastapp_template/module/auth/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
|
43
|
+
zrb/builtin/project/add/fastapp_template/module/auth/migration/env.py,sha256=66zA_MPR6CCEe3yYKDibtv4eRZx4p6ZX-8waFxmzQZE,3489
|
44
|
+
zrb/builtin/project/add/fastapp_template/module/auth/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
|
45
|
+
zrb/builtin/project/add/fastapp_template/module/auth/migration/versions/3093c7336477_add_user_table.py,sha256=j4tkh9NaTKNMefcy1dUdgRI5CzydUidli7i0Q6Ap-7Q,1021
|
46
|
+
zrb/builtin/project/add/fastapp_template/module/auth/migration_metadata.py,sha256=ONHEUZn4EDxKKiOt0UD9_8g7-XujRaXX0zU_PsjHZ0c,162
|
47
|
+
zrb/builtin/project/add/fastapp_template/module/auth/route.py,sha256=peU-HfXeyTRRNXJYhNhwwEkHE7_PTc_DxW7z5CVq8mA,793
|
48
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
49
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
50
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
51
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/db_repository.py,sha256=lIPvHj5I09U8A0hjyTHSaO-sE7ruGugQb74NhmtL1VM,1513
|
52
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/factory.py,sha256=45S_u8yyTx__DzAq_5ioMeQr6r_K91n1bTEAczovvDE,459
|
53
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/repository.py,sha256=vq_1EtjC3Oosu0V9NVhzSLeazFI4PaH3na83XyQz5Wk,849
|
54
|
+
zrb/builtin/project/add/fastapp_template/module/auth/service/user/usecase.py,sha256=12EneEK0vj24KO8WVdC_7MiUa76xcKSptOW7Y4x86w4,1624
|
55
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
|
56
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
|
57
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/migration/env.py,sha256=q7KtNXDlHgO8DATx--CesiUHDcDM-oYtCyw75E7ILvs,3495
|
58
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
|
59
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/migration/versions/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
60
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/migration_metadata.py,sha256=NbIb5ncy6x5RrFD2TZMDwxBK_wDTyJEIvieMRmNpf9M,55
|
61
|
+
zrb/builtin/project/add/fastapp_template/module/gateway/route.py,sha256=pClO2mBmiDMps3PJEk75icnbak-nrPAt6eN-1WlC9QA,1176
|
62
|
+
zrb/builtin/project/add/fastapp_template/requirements.txt,sha256=J5qXx0sBagP-u-pdXsDnkPg66Gg-0ty4Mvz0WZXLAZY,108
|
63
|
+
zrb/builtin/project/add/fastapp_template/schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
64
|
+
zrb/builtin/project/add/fastapp_template/schema/role.py,sha256=tbpF67NsX3K7WNsxtx-3b0ClRnOo7pkTxdNs5UEn8oo,581
|
65
|
+
zrb/builtin/project/add/fastapp_template/schema/user.py,sha256=5yiBVTuf9FcU7i_nM4sRRFztMhXCg0W1YAjnVlPgVRE,556
|
66
|
+
zrb/builtin/project/add/fastapp_template/template.env,sha256=OZeV5cn9I7Wm6yJakyQ4lq5wVqGHuShYc_t3LqQK1Xk,55
|
67
|
+
zrb/builtin/project/create/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
68
|
+
zrb/builtin/project/create/create.py,sha256=IUU-4oUlESiw-ZHtnkbhnEA62_thKMDwGdAq8whEOTw,1156
|
69
|
+
zrb/builtin/project/create/project-template/README.md,sha256=BHeWF_txdTDzKewWdWfGhO3YOTiW8E3YwTMnd0T1LVA,39
|
70
|
+
zrb/builtin/project/create/project-template/zrb_init.py,sha256=cbPl2xZbr1LXBGd296yCvfullzmryG5nTZ8mcBmu_vU,89
|
71
|
+
zrb/builtin/python.py,sha256=herHFZl5wHsMFcqHhpisg9Ql3pQXqoCuTTwzNUTXzkw,281
|
72
|
+
zrb/builtin/shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
73
|
+
zrb/builtin/shell/autocomplete/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
|
+
zrb/builtin/shell/autocomplete/bash.py,sha256=-7YDVV7txgJH9mAYSYN0jmvUEeDIzWFvVNY-cY0myF8,1181
|
75
|
+
zrb/builtin/shell/autocomplete/subcmd.py,sha256=WZI6cGWJcn80zSyxOHG7sCMO3Ucix3mZf4xm_xyB_Y0,606
|
76
|
+
zrb/builtin/shell/autocomplete/zsh.py,sha256=9hlq0Wt3fhRz326mAQTypEd4_4lZdrbBx_3A-Ti3mvw,1022
|
77
|
+
zrb/builtin/todo.py,sha256=tMz3ACo5TibJok9Dyw3T8rtSIFZYyL4ZdqXvL6sfmT8,6855
|
78
|
+
zrb/callback/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
79
|
+
zrb/callback/any_callback.py,sha256=Yhdv5UWHAZSVzj5K2JdxcVQx8x8VX8aZJEivj3NTfZc,247
|
80
|
+
zrb/callback/callback.py,sha256=IQ7r9EnXYHHcNXKBJAk4WFqCqj7WDvflAuCyu5y-27I,849
|
81
|
+
zrb/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
82
|
+
zrb/cmd/cmd_result.py,sha256=L8bQJzWCpcYexIxHBNsXj2pT3BtLmWex0iJSMkvimOA,597
|
83
|
+
zrb/cmd/cmd_val.py,sha256=LGuE85zQt0KSjpmW7bwIE5dnfIq-ULB8V2CDAiQ-SFk,960
|
84
|
+
zrb/config.py,sha256=1mLvHi7YFbr4JTeD7gxNSCBP0MVS8bsD0Sngy233Eww,2927
|
85
|
+
zrb/content_transformer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
86
|
+
zrb/content_transformer/any_content_transformer.py,sha256=3XHM6ZdsJFXxRD7YlUkv0Gn7-mexsH8c8zdHt3C0x8k,741
|
87
|
+
zrb/content_transformer/content_transformer.py,sha256=8luyLZZneBIBAMgGZvydy0TTjhI-TWFgEiQbuCxCAbk,1640
|
88
|
+
zrb/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
89
|
+
zrb/context/any_context.py,sha256=KZy6NtX9cg7r9FCY-wHMTx5RNoDqH5077Rjv56Wdp4M,6245
|
90
|
+
zrb/context/any_shared_context.py,sha256=p1i9af_CUDz5Mf1h1kBZMAa2AEhf17I3O5IgAcjRLoY,1768
|
91
|
+
zrb/context/context.py,sha256=au1PLgAkx1wg5BudjxNfY_UbcGaZ1zzfHKSm3fNZ7tk,6246
|
92
|
+
zrb/context/shared_context.py,sha256=47Tnnor1ttpwpe_N07rMNM1jgIYPY9abMe1Q5igkMtE,2735
|
93
|
+
zrb/dot_dict/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
94
|
+
zrb/dot_dict/dot_dict.py,sha256=ubw_x8I7AOJ59xxtFVJ00VGmq_IYdZP3mUhNlO4nEK0,556
|
95
|
+
zrb/env/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
96
|
+
zrb/env/any_env.py,sha256=_Xd56VO09mPeogkWcZ7H8mQkWU7dmZP7ImKfxPfvlLQ,211
|
97
|
+
zrb/env/env.py,sha256=zT-xj0l5G_lp_ginV_InuBr5qTqZMcGaMKE_p5FoqlU,1061
|
98
|
+
zrb/env/env_file.py,sha256=dccsR_cjXp1Q_qz692YPaZSny3Xa049V5NAZ-WLDDEQ,746
|
99
|
+
zrb/env/env_map.py,sha256=CKMmXUbuvf6h2rgFWj-WvW_xLZNgG3TtWdfrqHDe4qk,1253
|
100
|
+
zrb/group/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
101
|
+
zrb/group/any_group.py,sha256=1rNcsi5eu_86JAx_6Jy46SK4BTeppcb89MORynJd-4o,1115
|
102
|
+
zrb/group/group.py,sha256=KVaBZQ9Evihm84JCg5ZayWMbbA6iNTUiLmMgCk4OTcc,1862
|
103
|
+
zrb/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
104
|
+
zrb/input/any_input.py,sha256=07KgoPusxLMOwBHRjiImL955J33qC-24qGf_3My6fCE,701
|
105
|
+
zrb/input/base_input.py,sha256=zW2X2H-s4snu_xthgHwEsbBlqDwFbSKMxt4F1PaZW7w,2572
|
106
|
+
zrb/input/bool_input.py,sha256=Pgr34bpVpXkR3rrxnF_rsST-yGv_XvCWra9z9589Iyo,1383
|
107
|
+
zrb/input/float_input.py,sha256=YOPxMq6iOQXc0C3fS1k03fBSzToPV-gK5IFeuyMtlmQ,1004
|
108
|
+
zrb/input/int_input.py,sha256=DmzgGjaxgq3uLUtjI8VVvYDAwol3lu2InPBcltR_BLE,1005
|
109
|
+
zrb/input/option_input.py,sha256=KE2gJqxYT0I1M60KQf9eJ14xOscBla42FxUWdw3UvsQ,1940
|
110
|
+
zrb/input/password_input.py,sha256=SNZZv3YCfX5MAgVSiM69IMdRyH4Kd6QovXEBC48HVHA,1312
|
111
|
+
zrb/input/str_input.py,sha256=NevZHX9rf1g8eMatPyy-kUX3DglrVAQpzvVpKAzf7bA,81
|
112
|
+
zrb/input/text_input.py,sha256=te86xFpzIZnWb9xOeKHykNKTbY3pe1CdoaRCKr7UUQM,3054
|
113
|
+
zrb/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
114
|
+
zrb/runner/cli.py,sha256=tM61thLwJNfjrHFVJqWmGuzE0MB273JZ8ANlROsKH1E,7024
|
115
|
+
zrb/runner/web_app.py,sha256=Y44CxXCnsEjgGIDdGqTTzTF2M8hVojt5R_1-EcDEu-Q,6182
|
116
|
+
zrb/runner/web_controller/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
117
|
+
zrb/runner/web_controller/group_info_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
118
|
+
zrb/runner/web_controller/group_info_ui/controller.py,sha256=sI1UKnRcr5K-a_lGMm5H54hbhdQwIMLlXYmwfxoIqSY,2831
|
119
|
+
zrb/runner/web_controller/group_info_ui/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
|
120
|
+
zrb/runner/web_controller/group_info_ui/partial/group_li.html,sha256=n9d_EBEMUg1rGmNhkYloCwc1jHmwovw3ScxEB_fNL-w,61
|
121
|
+
zrb/runner/web_controller/group_info_ui/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
|
122
|
+
zrb/runner/web_controller/group_info_ui/partial/task_li.html,sha256=x5Pqa_iN0IyUvzojseGUrHm2Y-xUeO8OFb7Zagui2g0,62
|
123
|
+
zrb/runner/web_controller/group_info_ui/view.html,sha256=7yIMx0yxSsmdmwPvXkm8tLgbmw7iqW068xzfFROmh9Y,836
|
124
|
+
zrb/runner/web_controller/home_page/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
125
|
+
zrb/runner/web_controller/home_page/controller.py,sha256=5JULWw3ZibK4Y5FkX2qPJD67TeFUGvbJ3ifSqUTTCY0,2246
|
126
|
+
zrb/runner/web_controller/home_page/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
|
127
|
+
zrb/runner/web_controller/home_page/partial/group_li.html,sha256=gHF-RP8LG2ur8_mo1JwPXAZWvPM8BevAsdYrsv0uN6U,60
|
128
|
+
zrb/runner/web_controller/home_page/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
|
129
|
+
zrb/runner/web_controller/home_page/partial/task_li.html,sha256=m-fs4VhbX27fZKgxBA0_Gv_Utntq5aaXD4sFk3zNMlk,61
|
130
|
+
zrb/runner/web_controller/home_page/view.html,sha256=RuYx2V52_kTzb4Fkjpc2H97ZpSvlSB8ElbMng2uMDUI,606
|
131
|
+
zrb/runner/web_controller/static/favicon-32x32.png,sha256=yu9AIU4k_qD4YHpul6XwJgOxIbmu0thv9ymm2QOsrAk,1456
|
132
|
+
zrb/runner/web_controller/static/pico.min.css,sha256=3V_VWRr9ge4h3MEXrYXAFNw_HxncLXt9EB6grMKSdMI,82194
|
133
|
+
zrb/runner/web_controller/task_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
134
|
+
zrb/runner/web_controller/task_ui/controller.py,sha256=mLyUlaiIXZTo9_uyI7vqY2sGJ-s4Gus2JFYQvhfw7PQ,2481
|
135
|
+
zrb/runner/web_controller/task_ui/partial/common-util.js,sha256=Un5HxlFMzNa16UBJZEWvEldFJaZpt6O3Qddd9Zlw0Io,931
|
136
|
+
zrb/runner/web_controller/task_ui/partial/input.html,sha256=DDOCdHfwrU8ZF1SSNb0KDaQzbhzn-gipEGaa_ZH5k9I,154
|
137
|
+
zrb/runner/web_controller/task_ui/partial/main.js,sha256=3rjahRpypoQ6U2FwDTg21Zx7qt9zfbgzSxk6b6mNOQY,6514
|
138
|
+
zrb/runner/web_controller/task_ui/partial/show-existing-session.js,sha256=o5J-O5poWMIL1ujBXparwA4YalFuGXyA8S_wFw8obsM,3637
|
139
|
+
zrb/runner/web_controller/task_ui/partial/visualize-history.js,sha256=xKFmE-eXy9PXTWXhG_aQZ15DWStSGRrA8xzHntO-rmY,3916
|
140
|
+
zrb/runner/web_controller/task_ui/view.html,sha256=SARL-Dt03ar8IT9RJt7ULJLsjRm5u8K_F4VFwQwhxAs,2668
|
141
|
+
zrb/runner/web_util.py,sha256=FBMnS7qMp31ogm0pCZBObNjrlopIwzYM7UuZjCX1n8Q,428
|
142
|
+
zrb/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
143
|
+
zrb/session/any_session.py,sha256=x57mS15E-AfUjdVxwOWEzCBjW32zjer7WoeBw0guoDc,5266
|
144
|
+
zrb/session/session.py,sha256=s3rIcpddCAW79tuAcCNKuEWsHvgl-gwhL5usYeT8TQ8,9763
|
145
|
+
zrb/session_state_log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
146
|
+
zrb/session_state_log/session_state_log.py,sha256=VVghDMU72PbrvnzQ7MJuc-KTJ5P5fX0FYuCh3Rlwd9M,709
|
147
|
+
zrb/session_state_logger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
148
|
+
zrb/session_state_logger/any_session_state_logger.py,sha256=W_G1fCw9ZVj4LRTplTpBZlXR-wNueGtc26jF5Gzmh74,611
|
149
|
+
zrb/session_state_logger/default_session_state_logger.py,sha256=w_cAaNUg1ZmJk-ge1kh3xtag3SApC3ZdB3VbxUvU5Ro,197
|
150
|
+
zrb/session_state_logger/file_session_state_logger.py,sha256=0lMtx7Othu4-jhL_iDHFbZWF_5HX84StU134QNCVgeQ,3753
|
151
|
+
zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
152
|
+
zrb/task/any_task.py,sha256=QCuFCDXmfzvS09SWN1uFGUHheJlkKkii5oZDjO3s9tA,3896
|
153
|
+
zrb/task/base_task.py,sha256=pXFhZ0aJNdGXBBnOLSNiAXQ9MCRIpuqjB-Yfn_t8MB8,16293
|
154
|
+
zrb/task/base_trigger.py,sha256=milE5BNeIeq8jGCP38qTfstSvrc0CkSnO2sV-vlhzsM,4491
|
155
|
+
zrb/task/cmd_task.py,sha256=3N3pyvz7qZ8lDB9pxGVFvfpubE33hXo48UKSmuZDGc0,10249
|
156
|
+
zrb/task/http_check.py,sha256=TwQCql3589a4-H2c7hgS1HayyU-NdBAdJ4qQNTvjXHM,2474
|
157
|
+
zrb/task/llm_task.py,sha256=5TQPEvuHKex8qj9zhQcgX6TNTFOFU4E27JfR7UxWvNI,8333
|
158
|
+
zrb/task/make_task.py,sha256=ldXRfe3rA8utJrEPjWrie-_tg6NM2G8sFnZ0UNqzT08,2179
|
159
|
+
zrb/task/rsync_task.py,sha256=rmC2lWEkIrN4ejnV7gNZjN5sB-IbXmSHiTbs-PGh80c,6267
|
160
|
+
zrb/task/scaffolder.py,sha256=tRSHsy3nXSRNu9QY7hRMZ8ppfjYmFswiWDMRmLlv3VI,6220
|
161
|
+
zrb/task/scheduler.py,sha256=kggRClk_RrAa5fAHfkqM6c-e2tUQiFSeyeLuFT26UZ4,3047
|
162
|
+
zrb/task/task.py,sha256=KCrCaWYOQQvv1RJsYtHDeo9RBFmlXQ28oKyEFU4Q7pA,73
|
163
|
+
zrb/task/tcp_check.py,sha256=UQ3rMrwDwhuvz-lf1qx6Z3D4mWPqdJIjxqcIKCOKVes,2420
|
164
|
+
zrb/task_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
165
|
+
zrb/task_status/task_status.py,sha256=aRygkj0DKrOYWgz2eF5wNmYcpVbLeklxL521BqIQN4A,3005
|
166
|
+
zrb/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
167
|
+
zrb/util/attr.py,sha256=HkXd2N-eUXw2o4WWWJpo2q8N0kS7k08jsMLXpK_3zq0,2353
|
168
|
+
zrb/util/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
169
|
+
zrb/util/cli/style.py,sha256=Pbqzu_fuhMDYDRjAH6Wl-oUW4-68tEOmv_ugJ3xH8qI,3671
|
170
|
+
zrb/util/cli/subcommand.py,sha256=gYr-CzVeKFQhY43s_FDstPwn8r-ypUz1Q2Rv_l2r-ck,1027
|
171
|
+
zrb/util/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
172
|
+
zrb/util/cmd/remote.py,sha256=VklVORobTmE7FqdtYsVLq9xkSYTR2W5r2Zou0-soidw,710
|
173
|
+
zrb/util/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
174
|
+
zrb/util/codemod/add_code_to_class.py,sha256=jg-ISD3sHCecOJ1CCJGR9quizRgvzddKH9GZ33-IQ1A,1358
|
175
|
+
zrb/util/codemod/add_code_to_function.py,sha256=iJT-cDxS_H72j3ec03Lqmm4YPe-6svB2314ooJljtvQ,1482
|
176
|
+
zrb/util/codemod/add_code_to_method.py,sha256=TiYj9N0eMi3dutwQw_y4gnu1G6PW_-fZDqHatvZxJDo,2359
|
177
|
+
zrb/util/codemod/add_key_to_dict.py,sha256=ROw7Ds73gP5G5vOYlSqcHGUQQmJP_6Vb2jPnV2kZPQM,2110
|
178
|
+
zrb/util/codemod/add_param_to_function_call.py,sha256=cNC16uYbkjl33QEZ7i3pYvifGJXSXEoyfyCYx96S8ZI,1567
|
179
|
+
zrb/util/codemod/add_property_to_class.py,sha256=43ll7b7SUWHPDpIoMp8Zp_I71wG1eAvnW_acp-HVF_4,2075
|
180
|
+
zrb/util/cron.py,sha256=9fTGatUMYCRgmDFGg-z6_XerT4U5Vq72nD05NnEVUm4,2852
|
181
|
+
zrb/util/git.py,sha256=4HJk15tpFmsBcnU1iapv6osx250SPAtWOo99e6mpwfY,4457
|
182
|
+
zrb/util/git_subtree.py,sha256=7hxiLWw7el77amT1hrXMHrPyi76KMp11jciEfvfKXHk,2509
|
183
|
+
zrb/util/group.py,sha256=Bg7HrSycoK110U5s_Tca6-uUQuZ5CMgb8wxZSrvDQ98,2790
|
184
|
+
zrb/util/llm/tool.py,sha256=9ezbPEAyMKLWABgeqAimJ82KBFl7ciWNFVGhtllXg6s,2106
|
185
|
+
zrb/util/load.py,sha256=VMScnycP8blLFOGXjFAKShbV-yvPXwRA_J2vt96T-wc,1552
|
186
|
+
zrb/util/run.py,sha256=DGHUP9x1Q8V8UF3FbpmjLGuhVVCCLfjTH2teT8qXlNI,207
|
187
|
+
zrb/util/string/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
188
|
+
zrb/util/string/conversion.py,sha256=utfzaCLS2LTWMr9YbjXt2Z0a_pgzOjq76ZEPUh2UKCc,2876
|
189
|
+
zrb/util/string/format.py,sha256=LuKznDICnnbMOjM7_CEY0drlIlpdNqbBL-n6M4yEUVI,306
|
190
|
+
zrb/util/string/name.py,sha256=8picJfUBXNpdh64GNaHv3om23QHhUZux7DguFLrXHp8,1163
|
191
|
+
zrb/util/todo.py,sha256=Nbe1a-7O5FSkIE7BZxQQt7AhbHFPDbreJJI6C7Rga4o,9171
|
192
|
+
zrb/xcom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
193
|
+
zrb/xcom/xcom.py,sha256=P4aYHdE3FRsTsNrXGyW8N44IWZjw-vG_qys1Ymn3aBg,1572
|
194
|
+
zrb-1.0.0a4.dist-info/METADATA,sha256=sasI6wQ_ZB5ckHwgVeKkOjrpvjN_O_whxw6sBHyJHr8,4105
|
195
|
+
zrb-1.0.0a4.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
196
|
+
zrb-1.0.0a4.dist-info/entry_points.txt,sha256=-Pg3ElWPfnaSM-XvXqCxEAa-wfVI6BEgcs386s8C8v8,46
|
197
|
+
zrb-1.0.0a4.dist-info/RECORD,,
|
zrb/builtin/shell/_group.py
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
from abc import ABC, abstractmethod
|
2
|
-
from typing import Any
|
3
|
-
|
4
|
-
|
5
|
-
class AnyRequestHandler(ABC):
|
6
|
-
@abstractmethod
|
7
|
-
def send_json_response(self, data: Any, http_status: int = 200):
|
8
|
-
pass
|
9
|
-
|
10
|
-
@abstractmethod
|
11
|
-
def send_html_response(self, html: str, http_status: int = 200):
|
12
|
-
pass
|
13
|
-
|
14
|
-
@abstractmethod
|
15
|
-
def read_json_request(self) -> Any:
|
16
|
-
pass
|
17
|
-
|
18
|
-
@abstractmethod
|
19
|
-
def send_css_response(self, css_path: str):
|
20
|
-
pass
|
21
|
-
|
22
|
-
@abstractmethod
|
23
|
-
def send_image_response(self, image_path: str):
|
24
|
-
pass
|
zrb/runner/web_server.py
DELETED
@@ -1,224 +0,0 @@
|
|
1
|
-
import asyncio
|
2
|
-
import datetime
|
3
|
-
import json
|
4
|
-
import os
|
5
|
-
from concurrent.futures import ThreadPoolExecutor
|
6
|
-
from functools import partial
|
7
|
-
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
|
8
|
-
from threading import Thread
|
9
|
-
from typing import Any
|
10
|
-
from urllib.parse import parse_qs, urlparse
|
11
|
-
|
12
|
-
from ..config import BANNER, SESSION_LOG_DIR, WEB_HTTP_PORT
|
13
|
-
from ..context.any_context import AnyContext
|
14
|
-
from ..context.shared_context import SharedContext
|
15
|
-
from ..group.any_group import AnyGroup
|
16
|
-
from ..session.session import Session
|
17
|
-
from ..session_state_logger.default_session_state_logger import (
|
18
|
-
default_session_state_logger,
|
19
|
-
)
|
20
|
-
from ..task.any_task import AnyTask
|
21
|
-
from ..util.group import extract_node_from_args, get_node_path
|
22
|
-
from .web_app.group_info_ui.controller import handle_group_info_ui
|
23
|
-
from .web_app.home_page.controller import handle_home_page
|
24
|
-
from .web_app.task_ui.controller import handle_task_ui
|
25
|
-
from .web_util import node_path_to_url, start_event_loop, url_to_args
|
26
|
-
|
27
|
-
_DIR = os.path.dirname(__file__)
|
28
|
-
_STATIC_DIR = os.path.join(_DIR, "web_app", "static")
|
29
|
-
executor = ThreadPoolExecutor()
|
30
|
-
|
31
|
-
|
32
|
-
class WebRequestHandler(BaseHTTPRequestHandler):
|
33
|
-
def __init__(
|
34
|
-
self,
|
35
|
-
request: Any,
|
36
|
-
client_address: Any,
|
37
|
-
server: Any,
|
38
|
-
root_group: AnyGroup,
|
39
|
-
event_loop: asyncio.AbstractEventLoop,
|
40
|
-
session_dir: str,
|
41
|
-
coros: list,
|
42
|
-
):
|
43
|
-
self._root_group = root_group
|
44
|
-
self._event_loop = event_loop
|
45
|
-
self._session_dir = session_dir
|
46
|
-
self._coros = coros
|
47
|
-
super().__init__(request=request, client_address=client_address, server=server)
|
48
|
-
|
49
|
-
def do_GET(self):
|
50
|
-
parsed_url = urlparse(self.path)
|
51
|
-
if parsed_url.path in ["/", "/ui", "/ui/"]:
|
52
|
-
handle_home_page(self, self._root_group)
|
53
|
-
elif parsed_url.path == "/pico.min.css":
|
54
|
-
self.send_css_response(os.path.join(_STATIC_DIR, "pico.min.css"))
|
55
|
-
elif parsed_url.path == "/favicon-32x32.png":
|
56
|
-
self.send_image_response(os.path.join(_STATIC_DIR, "favicon-32x32.png"))
|
57
|
-
elif parsed_url.path.startswith("/ui/"):
|
58
|
-
args = url_to_args(parsed_url.path[3:])
|
59
|
-
node, node_path, residual_args = extract_node_from_args(
|
60
|
-
self._root_group, args
|
61
|
-
)
|
62
|
-
url = f"/ui{node_path_to_url(node_path)}"
|
63
|
-
if isinstance(node, AnyTask):
|
64
|
-
shared_ctx = SharedContext(env=dict(os.environ))
|
65
|
-
session = Session(shared_ctx=shared_ctx, root_group=self._root_group)
|
66
|
-
handle_task_ui(
|
67
|
-
self, self._root_group, node, session, url, residual_args
|
68
|
-
)
|
69
|
-
elif isinstance(node, AnyGroup):
|
70
|
-
handle_group_info_ui(self, self._root_group, node, url)
|
71
|
-
else:
|
72
|
-
self.send_error(404, "Not Found")
|
73
|
-
elif parsed_url.path.startswith("/api/"):
|
74
|
-
args = url_to_args(parsed_url.path[5:])
|
75
|
-
node, _, residual_args = extract_node_from_args(self._root_group, args)
|
76
|
-
if isinstance(node, AnyTask) and len(residual_args) > 0:
|
77
|
-
if residual_args[0] == "list":
|
78
|
-
task_path = get_node_path(self._root_group, node)
|
79
|
-
query_params = parse_qs(parsed_url.query)
|
80
|
-
self.send_session_list_json_data(task_path, query_params)
|
81
|
-
else:
|
82
|
-
self.send_session_json_data(residual_args[0])
|
83
|
-
else:
|
84
|
-
self.send_error(404, "Not Found")
|
85
|
-
else:
|
86
|
-
self.send_error(404, "Not Found")
|
87
|
-
|
88
|
-
def do_POST(self):
|
89
|
-
parsed_url = urlparse(self.path)
|
90
|
-
if parsed_url.path.startswith("/api/"):
|
91
|
-
args = url_to_args(parsed_url.path[5:])
|
92
|
-
task, _, residual_args = extract_node_from_args(self._root_group, args)
|
93
|
-
session_name = residual_args[0] if len(residual_args) > 0 else None
|
94
|
-
if not isinstance(task, AnyTask):
|
95
|
-
self.send_error(404, "Not found")
|
96
|
-
elif session_name is None:
|
97
|
-
str_kwargs: dict[str, str] = self.read_json_request()
|
98
|
-
shared_ctx = SharedContext(env=dict(os.environ))
|
99
|
-
session = Session(shared_ctx=shared_ctx, root_group=self._root_group)
|
100
|
-
coro = asyncio.run_coroutine_threadsafe(
|
101
|
-
task.async_run(session, str_kwargs=str_kwargs),
|
102
|
-
self._event_loop,
|
103
|
-
)
|
104
|
-
self._coros.append(coro)
|
105
|
-
coro.add_done_callback(lambda coro: self._coros.remove(coro))
|
106
|
-
self.send_json_response({"session_name": session.name})
|
107
|
-
else:
|
108
|
-
self.send_error(404, "Not Found")
|
109
|
-
|
110
|
-
def send_session_list_json_data(
|
111
|
-
self, task_path: list[str], query_params: dict[str, list[Any]]
|
112
|
-
):
|
113
|
-
print(query_params)
|
114
|
-
max_start_time = datetime.datetime.now()
|
115
|
-
if "to" in query_params and len(query_params["to"]) > 0:
|
116
|
-
max_start_time = datetime.datetime.strptime(
|
117
|
-
query_params["to"][0], "%Y-%m-%d %H:%M:%S"
|
118
|
-
)
|
119
|
-
min_start_time = max_start_time - datetime.timedelta(hours=1)
|
120
|
-
if "from" in query_params and len(query_params["from"]) > 0:
|
121
|
-
min_start_time = datetime.datetime.strptime(
|
122
|
-
query_params["from"][0], "%Y-%m-%d %H:%M:%S"
|
123
|
-
)
|
124
|
-
page = 0
|
125
|
-
if "page" in query_params and len(query_params["page"]) > 0:
|
126
|
-
page = int(query_params["page"][0])
|
127
|
-
limit = 10
|
128
|
-
if "limit" in query_params and len(query_params["limit"]) > 0:
|
129
|
-
limit = int(query_params["limit"][0])
|
130
|
-
try:
|
131
|
-
self.send_json_response(
|
132
|
-
default_session_state_logger.list(
|
133
|
-
task_path,
|
134
|
-
min_start_time=min_start_time,
|
135
|
-
max_start_time=max_start_time,
|
136
|
-
page=page,
|
137
|
-
limit=limit,
|
138
|
-
)
|
139
|
-
)
|
140
|
-
except Exception as e:
|
141
|
-
self.send_json_response({"error": f"{e}"}, 500)
|
142
|
-
|
143
|
-
def send_session_json_data(self, session_name: str):
|
144
|
-
try:
|
145
|
-
self.send_json_response(default_session_state_logger.read(session_name))
|
146
|
-
except Exception as e:
|
147
|
-
self.send_json_response({"error": f"{e}"}, 500)
|
148
|
-
|
149
|
-
def send_json_response(self, data: Any, http_status: int = 200):
|
150
|
-
self.send_response(http_status)
|
151
|
-
self.send_header("Content-type", "application/json")
|
152
|
-
self.end_headers()
|
153
|
-
self.wfile.write(f"{json.dumps(data)}".encode())
|
154
|
-
|
155
|
-
def send_html_response(self, html: str, http_status: int = 200):
|
156
|
-
self.send_response(http_status)
|
157
|
-
self.send_header("Content-type", "text/html")
|
158
|
-
self.end_headers()
|
159
|
-
self.wfile.write(f"{html}".encode())
|
160
|
-
|
161
|
-
def send_css_response(self, css_path: str):
|
162
|
-
self.send_response(200)
|
163
|
-
self.send_header("Content-type", "text/css")
|
164
|
-
self.end_headers()
|
165
|
-
# If css_content is provided, send it; otherwise, you could read from a file here
|
166
|
-
with open(css_path, "r") as f:
|
167
|
-
css_content = f.read()
|
168
|
-
self.wfile.write(css_content.encode())
|
169
|
-
|
170
|
-
def send_image_response(self, image_path: str):
|
171
|
-
try:
|
172
|
-
with open(image_path, "rb") as img:
|
173
|
-
self.send_response(200)
|
174
|
-
if image_path.endswith(".png"):
|
175
|
-
self.send_header("Content-type", "image/png")
|
176
|
-
elif image_path.endswith(".jpg") or image_path.endswith(".jpeg"):
|
177
|
-
self.send_header("Content-type", "image/jpeg")
|
178
|
-
self.end_headers()
|
179
|
-
self.wfile.write(img.read())
|
180
|
-
except FileNotFoundError:
|
181
|
-
self.send_error(404, "Image Not Found")
|
182
|
-
|
183
|
-
def read_json_request(self) -> Any:
|
184
|
-
content_length = int(self.headers["Content-Length"])
|
185
|
-
post_data = self.rfile.read(content_length)
|
186
|
-
try:
|
187
|
-
return json.loads(post_data.decode())
|
188
|
-
except json.JSONDecodeError:
|
189
|
-
self.send_json_response({"error": "Invalid JSON"}, http_status=400)
|
190
|
-
return None
|
191
|
-
|
192
|
-
|
193
|
-
def run_web_server(ctx: AnyContext, root_group: AnyGroup, port: int = WEB_HTTP_PORT):
|
194
|
-
server_address = ("", port)
|
195
|
-
event_loop = asyncio.new_event_loop()
|
196
|
-
coros = []
|
197
|
-
# Use functools.partial to bind the custom attribute
|
198
|
-
handler = partial(
|
199
|
-
WebRequestHandler,
|
200
|
-
root_group=root_group,
|
201
|
-
event_loop=event_loop,
|
202
|
-
session_dir=SESSION_LOG_DIR,
|
203
|
-
coros=coros,
|
204
|
-
)
|
205
|
-
httpd = ThreadingHTTPServer(server_address, handler)
|
206
|
-
banner_lines = BANNER.split("\n") + [
|
207
|
-
f"Zrb Server running on http://localhost:{port}"
|
208
|
-
]
|
209
|
-
for line in banner_lines:
|
210
|
-
ctx.print(line)
|
211
|
-
loop_thread = Thread(target=start_event_loop, args=[event_loop], daemon=True)
|
212
|
-
loop_thread.start()
|
213
|
-
try:
|
214
|
-
httpd.serve_forever()
|
215
|
-
finally:
|
216
|
-
for coro in coros:
|
217
|
-
coro.cancel()
|
218
|
-
httpd.shutdown()
|
219
|
-
httpd.server_close()
|
220
|
-
# Cancel all tasks
|
221
|
-
for task in asyncio.all_tasks(event_loop):
|
222
|
-
task.cancel()
|
223
|
-
event_loop.call_soon_threadsafe(event_loop.stop)
|
224
|
-
loop_thread.join()
|
zrb-1.0.0a2.dist-info/RECORD
DELETED
@@ -1,120 +0,0 @@
|
|
1
|
-
zrb/__init__.py,sha256=RA7Vs7KuhAv8XTWgk3devrmchKsWY6x3E6VYlNzns6M,2401
|
2
|
-
zrb/__main__.py,sha256=zlH2ZuqL9zn5xzfrv1H9wF-ltdZkdccOr5i0NR7n0PY,271
|
3
|
-
zrb/attr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
-
zrb/attr/type.py,sha256=nfOt5SYFJ7qsYHa18mPB7KJs5TYsKLM-ys-3sF4qBOA,496
|
5
|
-
zrb/builtin/__init__.py,sha256=746GkBkli7HHcBOegTpJWU1HKcWNNcs7D2Ek0DZnw1E,34
|
6
|
-
zrb/builtin/shell/__init__.py,sha256=UG0y0tkCHdmWsvwaZzYZJeJEu78OkU-r-I7B6TcKgS8,99
|
7
|
-
zrb/builtin/shell/_group.py,sha256=tuVZKhjlknDZtgu3KahBmkfTAP7wv0zu0LOHEVg3pZM,180
|
8
|
-
zrb/builtin/shell/autocomplete/__init__.py,sha256=FxkxPR9Y6O1Du30KsRFtB9W7E6Yr4236NuJDqSbCAd4,288
|
9
|
-
zrb/builtin/shell/autocomplete/_group.py,sha256=5-kpomAKxaXFzcjUutW9iNANguU88GSnrBauSrDXrw4,209
|
10
|
-
zrb/builtin/shell/autocomplete/bash.py,sha256=BpLY1lkJKiOXs5wGu44_jfj3QLVMGi1A0vSfmS3ZRvA,1185
|
11
|
-
zrb/builtin/shell/autocomplete/subcmd.py,sha256=ICnxz625mwTQssMx1dz3n8uQ29Cxj1wthrSehBjrT8Y,609
|
12
|
-
zrb/builtin/shell/autocomplete/zsh.py,sha256=FDegIKuhuSgGj2J3CjsHfVwPBI7fTtUZgq3myvKP-60,1025
|
13
|
-
zrb/callback/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
|
-
zrb/callback/any_callback.py,sha256=a5JcpZ2lfIFKuztUAfyMjJpck26XObthy9DIfclIi3E,245
|
15
|
-
zrb/callback/callback.py,sha256=JDMeM_pSwJTQFZ4At3pR37BEMS-ZaY7gP53iKmT_kiE,829
|
16
|
-
zrb/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
|
-
zrb/cmd/cmd_result.py,sha256=L8bQJzWCpcYexIxHBNsXj2pT3BtLmWex0iJSMkvimOA,597
|
18
|
-
zrb/cmd/cmd_val.py,sha256=Woqa0oEgbeoeLwG8bQxyyEMpEw0zP7sDlyOscVI6VbE,956
|
19
|
-
zrb/config.py,sha256=zO_w3UroXXpHCbxAMGhV4FW87NROBMrtksnYorlnJ3k,2229
|
20
|
-
zrb/content_transformer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
-
zrb/content_transformer/any_content_transformer.py,sha256=jA2GF7Il_AuApml2KMzaN3urQU0WP_UnWqhtYos40Do,739
|
22
|
-
zrb/content_transformer/content_transformer.py,sha256=q4Es3xiMZT0VpYaDSuW0S3JiXJjLpiMbfEkQYs1XqI0,1615
|
23
|
-
zrb/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
24
|
-
zrb/context/any_context.py,sha256=0QyLh1IBff25TKMWvK2C9ZNUyjGTpRx-CpkqHxlru94,6234
|
25
|
-
zrb/context/any_shared_context.py,sha256=bWp2r9BF_b5W9HuMs15V68_-R25o9UzKkOA6w1aZTTY,1762
|
26
|
-
zrb/context/context.py,sha256=h9etXi4AenrvAA6GZmzbM3nwy1U5EHOYWD_Ha2zQMMs,6033
|
27
|
-
zrb/context/shared_context.py,sha256=EdAXSnel-1F6Pyag2upuUagVw8hsUpzvknYr7tfGfhM,2678
|
28
|
-
zrb/dot_dict/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
29
|
-
zrb/dot_dict/dot_dict.py,sha256=ubw_x8I7AOJ59xxtFVJ00VGmq_IYdZP3mUhNlO4nEK0,556
|
30
|
-
zrb/env/__init__.py,sha256=poMQqx2UQHqlvAJmJ6ApkjAN0-h3raCYMCEKmRsGT54,33
|
31
|
-
zrb/env/any_env.py,sha256=dMkx2jnpVxaTVw1Jkf3dbsdHz2h3IxZf5-c59cKxqRc,209
|
32
|
-
zrb/env/env.py,sha256=tAaVIrex5HHyPc2FgIzqKQI5qjcqRHIT3nKSDK5daQY,1051
|
33
|
-
zrb/env/env_file.py,sha256=_RHJRvPIJTmpwmyaa5zsEXKo4lSTPG3nFtaRJiNSeWc,733
|
34
|
-
zrb/env/env_map.py,sha256=FoxG14dPlpeYsJtxMYIp3JdVRC3OlgXUR9fAxkhBHsg,1244
|
35
|
-
zrb/group/__init__.py,sha256=3kqdBRThwO6hJkCGh0F7NtTtzUB9nXrt4dqDqY0ywA0,39
|
36
|
-
zrb/group/any_group.py,sha256=fJKAVo2uHa2aUMfSjkK5S9V9RrNcJlsTQarCaEkPAcs,1094
|
37
|
-
zrb/group/group.py,sha256=V8DjuiFODBG69lxBSL3pXJElOaYG-Ub7NxUb3MvA8zw,1759
|
38
|
-
zrb/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
39
|
-
zrb/input/any_input.py,sha256=h6ECoL9AlEVc7KwkAA2eCf9T37PHCzgvs5B4GegAnBY,699
|
40
|
-
zrb/input/base_input.py,sha256=gpA9UVBdcuJS5rr0ZA--qiKa-tiiVvb9wE4rer_DsOA,2557
|
41
|
-
zrb/input/bool_input.py,sha256=MS4d0WeUzxU-QnVVsyizec6upGWjZAUVMZvZ7gs9s-M,1367
|
42
|
-
zrb/input/float_input.py,sha256=y7ZGT0HTH4q12ISYWUwir3FHjdrSmeAZ9E8XJxSJCJI,991
|
43
|
-
zrb/input/int_input.py,sha256=rSUrC5namx1dLVOdfaI2Mj1nAl3IJmi_1wHMSPFqxKU,992
|
44
|
-
zrb/input/password_input.py,sha256=c69kq_PYMltJoJCRsp_25FfDXGhF-PEgXu7QDZmCk20,1301
|
45
|
-
zrb/input/str_input.py,sha256=_gbOh2xds610Gb1_YByWfEusYBR-jQmrUoNUFJ-kv1c,72
|
46
|
-
zrb/input/text_input.py,sha256=UBfc_0itxvI9hP-goqV9M4YdF27Bu81rXfRZ1VPaQ5w,3021
|
47
|
-
zrb/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
48
|
-
zrb/runner/cli.py,sha256=HHFaPRC2lfQE5o0HGXtTGIajd-KrunHJv4eeztsxGxs,5717
|
49
|
-
zrb/runner/web_app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
50
|
-
zrb/runner/web_app/any_request_handler.py,sha256=QZsr0uxMWvD0VgqhJ04zQVAqkrib5d2D4HuSaJH5moM,538
|
51
|
-
zrb/runner/web_app/group_info_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
52
|
-
zrb/runner/web_app/group_info_ui/controller.py,sha256=Mv8ir5veGz6wwYk2N04AWtXjQCSr7UCxvfus3jHoDMY,2876
|
53
|
-
zrb/runner/web_app/group_info_ui/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
|
54
|
-
zrb/runner/web_app/group_info_ui/partial/group_li.html,sha256=n9d_EBEMUg1rGmNhkYloCwc1jHmwovw3ScxEB_fNL-w,61
|
55
|
-
zrb/runner/web_app/group_info_ui/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
|
56
|
-
zrb/runner/web_app/group_info_ui/partial/task_li.html,sha256=x5Pqa_iN0IyUvzojseGUrHm2Y-xUeO8OFb7Zagui2g0,62
|
57
|
-
zrb/runner/web_app/group_info_ui/view.html,sha256=Ib31OpKoled-a4wkA3Fmngmewttocjro8MQoAul9ESA,822
|
58
|
-
zrb/runner/web_app/home_page/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
59
|
-
zrb/runner/web_app/home_page/controller.py,sha256=75G51Wln3adILH7rYnUMI-J6bxSZS2qb8pVxixi500s,2285
|
60
|
-
zrb/runner/web_app/home_page/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
|
61
|
-
zrb/runner/web_app/home_page/partial/group_li.html,sha256=gHF-RP8LG2ur8_mo1JwPXAZWvPM8BevAsdYrsv0uN6U,60
|
62
|
-
zrb/runner/web_app/home_page/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
|
63
|
-
zrb/runner/web_app/home_page/partial/task_li.html,sha256=m-fs4VhbX27fZKgxBA0_Gv_Utntq5aaXD4sFk3zNMlk,61
|
64
|
-
zrb/runner/web_app/home_page/view.html,sha256=fSlyYU2L9YG6pAk5y83N5TWwjlhH8Mcg0IuK5gdVnsQ,592
|
65
|
-
zrb/runner/web_app/static/favicon-32x32.png,sha256=yu9AIU4k_qD4YHpul6XwJgOxIbmu0thv9ymm2QOsrAk,1456
|
66
|
-
zrb/runner/web_app/static/pico.min.css,sha256=3V_VWRr9ge4h3MEXrYXAFNw_HxncLXt9EB6grMKSdMI,82194
|
67
|
-
zrb/runner/web_app/task_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
68
|
-
zrb/runner/web_app/task_ui/controller.py,sha256=5BcpGw89UZMoEJErTNw68ygQ90R-4jpraJ0qrrewPqo,2541
|
69
|
-
zrb/runner/web_app/task_ui/partial/common-util.js,sha256=Un5HxlFMzNa16UBJZEWvEldFJaZpt6O3Qddd9Zlw0Io,931
|
70
|
-
zrb/runner/web_app/task_ui/partial/input.html,sha256=DDOCdHfwrU8ZF1SSNb0KDaQzbhzn-gipEGaa_ZH5k9I,154
|
71
|
-
zrb/runner/web_app/task_ui/partial/main.js,sha256=3rjahRpypoQ6U2FwDTg21Zx7qt9zfbgzSxk6b6mNOQY,6514
|
72
|
-
zrb/runner/web_app/task_ui/partial/show-existing-session.js,sha256=o5J-O5poWMIL1ujBXparwA4YalFuGXyA8S_wFw8obsM,3637
|
73
|
-
zrb/runner/web_app/task_ui/partial/visualize-history.js,sha256=xKFmE-eXy9PXTWXhG_aQZ15DWStSGRrA8xzHntO-rmY,3916
|
74
|
-
zrb/runner/web_app/task_ui/view.html,sha256=M3qOXAEercUcDy_K6Kb1hkaZXuOah-xdqjwDrKQH23U,2654
|
75
|
-
zrb/runner/web_server.py,sha256=5h2NyqQm8Tlp_loUsIiTiTADm1EC_8PJF_wYBzK8idk,9168
|
76
|
-
zrb/runner/web_util.py,sha256=Fn17emtjg2Z4GfySGIYptDn0zmAakolyQ6YkoVlYjgc,1188
|
77
|
-
zrb/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
78
|
-
zrb/session/any_session.py,sha256=UPqBtNODIaRbRh5iEQEBCcqByc-KFz0fijONDkcky-M,5124
|
79
|
-
zrb/session/session.py,sha256=ITgjR7haZ6JkUAX8Pn6xPqQSjlJ_Ist_-QJABiX8-ro,8972
|
80
|
-
zrb/session_state_log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
81
|
-
zrb/session_state_log/session_state_log.py,sha256=bJj7L_kX7HMC9cd-de6j4xb3ExIVQQ94aV-oC4ghgPE,688
|
82
|
-
zrb/session_state_logger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
83
|
-
zrb/session_state_logger/any_session_state_logger.py,sha256=QLxzrS_DYmAJgjMNrEI8WYZWj0FvqXaanWI6GMyKwSk,609
|
84
|
-
zrb/session_state_logger/default_session_state_logger.py,sha256=4Mk_ONxN9PGx2tCKHXMJHlS52rC62CtJCJyzop66LNw,171
|
85
|
-
zrb/session_state_logger/file_session_state_logger.py,sha256=efkAAXs9kVUpTpnIgGPWeOB9gPrVExI2Tq1Qh6y9O7U,3942
|
86
|
-
zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
87
|
-
zrb/task/any_task.py,sha256=oXS0lqPb_DIMRd7KfbBelkQXyav8Q2pIW7eD4-CR2q4,3888
|
88
|
-
zrb/task/base_task.py,sha256=RvK5P1i6yCCCaBlRrOGDVJE_o8YiCe-G8r1QtXIMaXI,15765
|
89
|
-
zrb/task/base_trigger.py,sha256=_jSr35bjoVee7s0-ktrn1sYY2bTqUwWICbz3-ATVrPU,4454
|
90
|
-
zrb/task/cmd_task.py,sha256=T18V_uFx4OeK-MerkMng2OEjeLLXTy59aapwGWNfe80,9976
|
91
|
-
zrb/task/http_check.py,sha256=hxaC_evUIEM16asny_m6b1JvltQGG-k3Fa3RvYJ2ts0,2458
|
92
|
-
zrb/task/make_task.py,sha256=t9yrEjxFdcFPPyjUDr8kou9S1RU8UgvTdSexfi-RBRc,2139
|
93
|
-
zrb/task/rsync_task.py,sha256=J9NoBjcMJDpC2Agbk8QlWKXEWIiAmO9M6hHnahq0Hkw,6351
|
94
|
-
zrb/task/scaffolder.py,sha256=0DnKN8ao16tqFGUoDzzi9Q6ytfRXmLeLRucM_KiXn2Q,6115
|
95
|
-
zrb/task/scheduler.py,sha256=x8SgbiD7tqZdXHpzNRdYs8A2sVN7KwmOncLGEkBJgmg,3020
|
96
|
-
zrb/task/task.py,sha256=NQ3N3QYKHJhiyfN4QZXm_PoJLoEXi_Sb5dv6nXuncE8,65
|
97
|
-
zrb/task/tcp_check.py,sha256=OM8D_SJ2ZZMmi2XWnSuBxJwOCkC9kIZJywujluyCNvw,2434
|
98
|
-
zrb/task_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
99
|
-
zrb/task_status/task_status.py,sha256=aRygkj0DKrOYWgz2eF5wNmYcpVbLeklxL521BqIQN4A,3005
|
100
|
-
zrb/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
101
|
-
zrb/util/attr.py,sha256=KGp0NchjDzZbF01zLd8mHkFbOCp5o9omPCbxaAUkK9k,2044
|
102
|
-
zrb/util/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
103
|
-
zrb/util/cli/style.py,sha256=BUsc4obp-L_3aO9lK1S_R1Qcl3MW7zJla6jkMYg_mWI,2503
|
104
|
-
zrb/util/cli/subcommand.py,sha256=YeZISsE9Nhql4oM42gNoKxrKACtvAysCrelt3JonrnI,1019
|
105
|
-
zrb/util/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
106
|
-
zrb/util/cmd/remote.py,sha256=VklVORobTmE7FqdtYsVLq9xkSYTR2W5r2Zou0-soidw,710
|
107
|
-
zrb/util/cron.py,sha256=9fTGatUMYCRgmDFGg-z6_XerT4U5Vq72nD05NnEVUm4,2852
|
108
|
-
zrb/util/group.py,sha256=a1rgMEiSpr6vc5xwjPYCXkTxmub0Apx6K5pSdRhsllY,2786
|
109
|
-
zrb/util/load.py,sha256=VMScnycP8blLFOGXjFAKShbV-yvPXwRA_J2vt96T-wc,1552
|
110
|
-
zrb/util/run.py,sha256=DGHUP9x1Q8V8UF3FbpmjLGuhVVCCLfjTH2teT8qXlNI,207
|
111
|
-
zrb/util/string/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
112
|
-
zrb/util/string/conversion.py,sha256=lem0DFkw0VT9j-bgK7Thh3W_RSjt09KACH2M8snFZaA,2641
|
113
|
-
zrb/util/string/format.py,sha256=LuKznDICnnbMOjM7_CEY0drlIlpdNqbBL-n6M4yEUVI,306
|
114
|
-
zrb/util/string/name.py,sha256=8picJfUBXNpdh64GNaHv3om23QHhUZux7DguFLrXHp8,1163
|
115
|
-
zrb/xcom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
116
|
-
zrb/xcom/xcom.py,sha256=P4aYHdE3FRsTsNrXGyW8N44IWZjw-vG_qys1Ymn3aBg,1572
|
117
|
-
zrb-1.0.0a2.dist-info/METADATA,sha256=5iPazsPnoJtYmMc9uaUP-3k16UUhoSJLLr7G0c5u-C4,3751
|
118
|
-
zrb-1.0.0a2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
119
|
-
zrb-1.0.0a2.dist-info/entry_points.txt,sha256=-Pg3ElWPfnaSM-XvXqCxEAa-wfVI6BEgcs386s8C8v8,46
|
120
|
-
zrb-1.0.0a2.dist-info/RECORD,,
|
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
|