zrb 1.17.3__tar.gz → 1.17.4__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.
- {zrb-1.17.3 → zrb-1.17.4}/PKG-INFO +1 -1
 - {zrb-1.17.3 → zrb-1.17.4}/pyproject.toml +1 -1
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/web.py +28 -4
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/config.py +28 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/rsync_task.py +24 -10
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/attr.py +5 -1
 - {zrb-1.17.3 → zrb-1.17.4}/README.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/__main__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/attr/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/attr/type.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/base64.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/git.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/git_subtree.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/group.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/http.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/jwt.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/chat_session.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/chat_trigger.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/history.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/llm_ask.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/previous-session.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/api.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/cli.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/code.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/file.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/note.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/rag.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/llm/tool/sub_agent.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/md5.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.coveragerc +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.flake8 +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.gitignore +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/README.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/column/add_column_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/column/add_column_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/gateway/view/content/my-module/my-entity.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/my_entity_service.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/my_entity_service_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/repository/my_entity_db_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/repository/my_entity_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/repository/my_entity_repository_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/schema/my_entity.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/test/my_module/my_entity/test_create_my_entity.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/test/my_module/my_entity/test_delete_my_entity.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/test/my_module/my_entity/test_read_my_entity.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/test/my_module/my_entity/test_update_my_entity.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/client_method.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/gateway_subroute.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/navigation_config_file.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/format_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/group.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/gateway/subroute/my_module.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/alembic.ini +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/my_module_api_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/my_module_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/my_module_client_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/my_module_direct_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/migration/README +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/migration/env.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/migration/script.py.mako +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/migration/versions/.gitkeep +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/migration_metadata.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/service/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/module_task_definition.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/navigation_config_file.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/task_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/venv_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/app_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/base_db_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/base_service.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/db_engine_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/error.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/logger_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/parser_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/schema.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/util/app.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/util/parser.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/util/user_agent.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/common/util/view.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/main.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/alembic.ini +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/auth_api_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/auth_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/auth_client_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/auth_direct_client.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration/README +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration/env.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration/script.py.mako +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration/versions/3093c7336477_add_auth_tables.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration/versions/8ed025bcc845_create_permissions.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/migration_metadata.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/permission_service.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/permission_service_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/repository/permission_db_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/repository/permission_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/permission/repository/permission_repository_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/repository/role_db_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/repository/role_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/repository/role_repository_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/role_service.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/role/role_service_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/user_db_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/user_repository.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/user_repository_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/user_service.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/user_service_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/alembic.ini +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/config/navigation.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/migration/README +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/migration/env.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/migration/script.py.mako +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/migration/versions/.gitkeep +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/migration_metadata.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/schema/navigation.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/subroute/auth.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/util/auth.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/util/view.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/auth/permission.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/auth/role.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/auth/user.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/error.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/homepage.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/login.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/content/logout.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/common/util.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/crud/style.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/crud/util.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/default/pico-style.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/default/script.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/default/style.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/images/android-chrome-192x192.png +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/images/android-chrome-512x512.png +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/images/favicon-32x32.png +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.amber.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.blue.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.cyan.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.fuchsia.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.green.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.grey.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.indigo.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.jade.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.lime.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.orange.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.pink.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.pumpkin.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.purple.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.red.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.sand.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.slate.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.violet.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.yellow.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/static/pico-css/pico.zinc.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/view/template/default.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/requirements.txt +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/permission.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/role.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/user.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/template.env +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/_util/access_token.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/auth/permission/test_create_permission.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/auth/permission/test_delete_permission.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/auth/permission/test_read_permission.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/auth/permission/test_update_permission.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/auth/test_user_session.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/test_health_and_readiness.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/test_homepage.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test/test_not_found_error.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/test.sh +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/create/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/create/project-template/README.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/create/project-template/zrb_init.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/create/project_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/python.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/random.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/searxng/config/settings.yml +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/searxng/start.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/asdf/asdf.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/asdf/asdf_helper.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/common_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/latex/ubuntu.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/tmux/tmux.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/tmux/tmux_config.sh +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/tmux/tmux_helper.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/ubuntu.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/zsh/zsh.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/zsh/zsh_config.sh +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/setup/zsh/zsh_helper.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/shell/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/shell/autocomplete/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/shell/autocomplete/bash.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/shell/autocomplete/subcmd.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/shell/autocomplete/zsh.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/todo.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/uuid.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/callback/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/callback/any_callback.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/callback/callback.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/cmd/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/cmd/cmd_result.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/cmd/cmd_val.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/file_extractor_system_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/interactive_system_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/persona.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/repo_extractor_system_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/repo_summarizer_system_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/summarization_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/default_prompt/system_prompt.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/llm_config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/llm_context/config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/llm_context/config_parser.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/llm_rate_limitter.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/config/web_auth_config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/content_transformer/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/content_transformer/any_content_transformer.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/content_transformer/content_transformer.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/context/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/context/any_context.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/context/any_shared_context.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/context/context.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/context/shared_context.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/dot_dict/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/dot_dict/dot_dict.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/env/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/env/any_env.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/env/env.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/env/env_file.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/env/env_map.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/group/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/group/any_group.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/group/group.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/any_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/base_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/bool_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/float_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/int_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/option_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/password_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/str_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/input/text_input.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/cli.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/common_util.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_app.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/docs_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/error_page/serve_default_404.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/error_page/show_error_page.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/error_page/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/home_page/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/home_page/home_page_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/home_page/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/login_api_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/login_page/login_page_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/login_page/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/logout_api_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/logout_page/logout_page_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/logout_page/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/group/show_group_page.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/group/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/node_page_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/task/partial/input.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/task/show_task_page.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/node_page/task/view.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/refresh_token_api_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/global_template.html +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/refresh-token.template.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/common.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/common.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/favicon-32x32.png +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/login/event.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/logout/event.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.amber.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.blue.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.cyan.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.fuchsia.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.green.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.grey.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.indigo.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.jade.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.lime.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.orange.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.pink.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.pumpkin.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.purple.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.red.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.sand.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.slate.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.violet.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.yellow.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/pico-css/pico.zinc.min.css +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/session/common-util.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/session/current-session.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/session/event.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/resources/session/past-session.js +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/static/static_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/task_input_api_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_route/task_session_api_route.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_schema/session.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_schema/token.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_schema/user.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_util/cookie.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_util/html.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_util/token.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/runner/web_util/user.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session/any_session.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session/session.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_log/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_log/session_state_log.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_logger/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_logger/any_session_state_logger.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_logger/file_session_state_logger.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/session_state_logger/session_state_logger_factory.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/any_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/context.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/execution.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/lifecycle.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/monitoring.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base/operators.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/base_trigger.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/cmd_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/http_check.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/agent.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/config.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/conversation_history.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/conversation_history_model.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/default_workflow/coding.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/default_workflow/copywriting.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/default_workflow/researching.md +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/error.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/history_summarization.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/history_summarization_tool.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/print_node.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/prompt.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/tool_wrapper.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm/typing.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/llm_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/make_task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/scaffolder.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/scheduler.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/task.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task/tcp_check.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task_status/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/task_status/task_status.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/callable.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cli/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cli/markdown.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cli/style.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cli/subcommand.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cli/text.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cmd/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cmd/command.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cmd/remote.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modification_mode.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_class.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_class_parent.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_class_property.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_dict.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_function.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_function_call.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_method.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/codemod/modify_module.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/cron.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/file.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/git.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/git_diff_model.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/git_subtree.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/git_subtree_model.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/group.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/init_path.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/llm/prompt.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/load.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/run.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/string/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/string/conversion.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/string/format.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/string/name.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/todo.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/todo_model.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/util/truncate.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/xcom/__init__.py +0 -0
 - {zrb-1.17.3 → zrb-1.17.4}/src/zrb/xcom/xcom.py +0 -0
 
| 
         @@ -52,18 +52,41 @@ def create_search_internet_tool() -> Callable: 
     | 
|
| 
       52 
52 
     | 
    
         
             
                    """
         
     | 
| 
       53 
53 
     | 
    
         
             
                    import requests
         
     | 
| 
       54 
54 
     | 
    
         | 
| 
       55 
     | 
    
         
            -
                    if  
     | 
| 
      
 55 
     | 
    
         
            +
                    if (
         
     | 
| 
      
 56 
     | 
    
         
            +
                        CFG.SEARCH_INTERNET_METHOD.strip().lower() == "serpapi"
         
     | 
| 
      
 57 
     | 
    
         
            +
                        and CFG.SERPAPI_KEY != ""
         
     | 
| 
      
 58 
     | 
    
         
            +
                    ):
         
     | 
| 
       56 
59 
     | 
    
         
             
                        response = requests.get(
         
     | 
| 
       57 
60 
     | 
    
         
             
                            "https://serpapi.com/search",
         
     | 
| 
       58 
61 
     | 
    
         
             
                            headers={"User-Agent": _DEFAULT_USER_AGENT},
         
     | 
| 
       59 
62 
     | 
    
         
             
                            params={
         
     | 
| 
       60 
63 
     | 
    
         
             
                                "q": query,
         
     | 
| 
       61 
64 
     | 
    
         
             
                                "start": (page - 1) * 10,
         
     | 
| 
       62 
     | 
    
         
            -
                                "hl":  
     | 
| 
       63 
     | 
    
         
            -
                                "safe":  
     | 
| 
      
 65 
     | 
    
         
            +
                                "hl": CFG.SERPAPI_LANG,
         
     | 
| 
      
 66 
     | 
    
         
            +
                                "safe": CFG.SERPAPI_SAFE,
         
     | 
| 
       64 
67 
     | 
    
         
             
                                "api_key": CFG.SERPAPI_KEY,
         
     | 
| 
       65 
68 
     | 
    
         
             
                            },
         
     | 
| 
       66 
69 
     | 
    
         
             
                        )
         
     | 
| 
      
 70 
     | 
    
         
            +
                    elif (
         
     | 
| 
      
 71 
     | 
    
         
            +
                        CFG.SEARCH_INTERNET_METHOD.strip().lower() == "brave"
         
     | 
| 
      
 72 
     | 
    
         
            +
                        and CFG.BRAVE_API_KEY != ""
         
     | 
| 
      
 73 
     | 
    
         
            +
                    ):
         
     | 
| 
      
 74 
     | 
    
         
            +
                        response = requests.get(
         
     | 
| 
      
 75 
     | 
    
         
            +
                            "https://api.search.brave.com/res/v1/web/search",
         
     | 
| 
      
 76 
     | 
    
         
            +
                            headers={
         
     | 
| 
      
 77 
     | 
    
         
            +
                                "User-Agent": _DEFAULT_USER_AGENT,
         
     | 
| 
      
 78 
     | 
    
         
            +
                                "Accept": "application/json",
         
     | 
| 
      
 79 
     | 
    
         
            +
                                "x-subscription-token": CFG.BRAVE_API_KEY,
         
     | 
| 
      
 80 
     | 
    
         
            +
                            },
         
     | 
| 
      
 81 
     | 
    
         
            +
                            params={
         
     | 
| 
      
 82 
     | 
    
         
            +
                                "q": query,
         
     | 
| 
      
 83 
     | 
    
         
            +
                                "count": "10",
         
     | 
| 
      
 84 
     | 
    
         
            +
                                "offset": (page - 1) * 10,
         
     | 
| 
      
 85 
     | 
    
         
            +
                                "safesearch": CFG.BRAVE_API_SAFE,
         
     | 
| 
      
 86 
     | 
    
         
            +
                                "search_lang": CFG.BRAVE_API_LANG,
         
     | 
| 
      
 87 
     | 
    
         
            +
                                "summary": "true",
         
     | 
| 
      
 88 
     | 
    
         
            +
                            },
         
     | 
| 
      
 89 
     | 
    
         
            +
                        )
         
     | 
| 
       67 
90 
     | 
    
         
             
                    else:
         
     | 
| 
       68 
91 
     | 
    
         
             
                        response = requests.get(
         
     | 
| 
       69 
92 
     | 
    
         
             
                            url=f"{CFG.SEARXNG_BASE_URL}/search",
         
     | 
| 
         @@ -72,7 +95,8 @@ def create_search_internet_tool() -> Callable: 
     | 
|
| 
       72 
95 
     | 
    
         
             
                                "q": query,
         
     | 
| 
       73 
96 
     | 
    
         
             
                                "format": "json",
         
     | 
| 
       74 
97 
     | 
    
         
             
                                "pageno": page,
         
     | 
| 
       75 
     | 
    
         
            -
                                "safesearch":  
     | 
| 
      
 98 
     | 
    
         
            +
                                "safesearch": CFG.SEARXNG_SAFE,
         
     | 
| 
      
 99 
     | 
    
         
            +
                                "language": CFG.SEARXNG_LANG,
         
     | 
| 
       76 
100 
     | 
    
         
             
                            },
         
     | 
| 
       77 
101 
     | 
    
         
             
                        )
         
     | 
| 
       78 
102 
     | 
    
         
             
                    if response.status_code != 200:
         
     | 
| 
         @@ -442,10 +442,30 @@ class Config: 
     | 
|
| 
       442 
442 
     | 
    
         
             
                    """Either serpapi or searxng"""
         
     | 
| 
       443 
443 
     | 
    
         
             
                    return self._getenv("SEARCH_INTERNET_METHOD", "serpapi")
         
     | 
| 
       444 
444 
     | 
    
         | 
| 
      
 445 
     | 
    
         
            +
                @property
         
     | 
| 
      
 446 
     | 
    
         
            +
                def BRAVE_API_KEY(self) -> str:
         
     | 
| 
      
 447 
     | 
    
         
            +
                    return os.getenv("BRAVE_API_KEY", "")
         
     | 
| 
      
 448 
     | 
    
         
            +
             
     | 
| 
      
 449 
     | 
    
         
            +
                @property
         
     | 
| 
      
 450 
     | 
    
         
            +
                def BRAVE_API_SAFE(self) -> str:
         
     | 
| 
      
 451 
     | 
    
         
            +
                    return self._getenv("BRAVE_API_SAFE", "off")
         
     | 
| 
      
 452 
     | 
    
         
            +
             
     | 
| 
      
 453 
     | 
    
         
            +
                @property
         
     | 
| 
      
 454 
     | 
    
         
            +
                def BRAVE_API_LANG(self) -> str:
         
     | 
| 
      
 455 
     | 
    
         
            +
                    return self._getenv("BRAVE_API_LANG", "en")
         
     | 
| 
      
 456 
     | 
    
         
            +
             
     | 
| 
       445 
457 
     | 
    
         
             
                @property
         
     | 
| 
       446 
458 
     | 
    
         
             
                def SERPAPI_KEY(self) -> str:
         
     | 
| 
       447 
459 
     | 
    
         
             
                    return os.getenv("SERPAPI_KEY", "")
         
     | 
| 
       448 
460 
     | 
    
         | 
| 
      
 461 
     | 
    
         
            +
                @property
         
     | 
| 
      
 462 
     | 
    
         
            +
                def SERPAPI_SAFE(self) -> str:
         
     | 
| 
      
 463 
     | 
    
         
            +
                    return self._getenv("SERPAPI_SAFE", "off")
         
     | 
| 
      
 464 
     | 
    
         
            +
             
     | 
| 
      
 465 
     | 
    
         
            +
                @property
         
     | 
| 
      
 466 
     | 
    
         
            +
                def SERPAPI_LANG(self) -> str:
         
     | 
| 
      
 467 
     | 
    
         
            +
                    return self._getenv("SERPAPI_LANG", "en")
         
     | 
| 
      
 468 
     | 
    
         
            +
             
     | 
| 
       449 
469 
     | 
    
         
             
                @property
         
     | 
| 
       450 
470 
     | 
    
         
             
                def SEARXNG_PORT(self) -> int:
         
     | 
| 
       451 
471 
     | 
    
         
             
                    return int(self._getenv("SEARXNG_PORT", "8080"))
         
     | 
| 
         @@ -454,6 +474,14 @@ class Config: 
     | 
|
| 
       454 
474 
     | 
    
         
             
                def SEARXNG_BASE_URL(self) -> str:
         
     | 
| 
       455 
475 
     | 
    
         
             
                    return self._getenv("SEARXNG_BASE_URL", f"http://localhost:{self.SEARXNG_PORT}")
         
     | 
| 
       456 
476 
     | 
    
         | 
| 
      
 477 
     | 
    
         
            +
                @property
         
     | 
| 
      
 478 
     | 
    
         
            +
                def SEARXNG_SAFE(self) -> int:
         
     | 
| 
      
 479 
     | 
    
         
            +
                    return int(self._getenv("SEARXNG_SAFE", "0"))
         
     | 
| 
      
 480 
     | 
    
         
            +
             
     | 
| 
      
 481 
     | 
    
         
            +
                @property
         
     | 
| 
      
 482 
     | 
    
         
            +
                def SEARXNG_LANG(self) -> int:
         
     | 
| 
      
 483 
     | 
    
         
            +
                    return int(self._getenv("SEARXNG_LANG", "en"))
         
     | 
| 
      
 484 
     | 
    
         
            +
             
     | 
| 
       457 
485 
     | 
    
         
             
                @property
         
     | 
| 
       458 
486 
     | 
    
         
             
                def BANNER(self) -> str:
         
     | 
| 
       459 
487 
     | 
    
         
             
                    return fstring_format(
         
     | 
| 
         @@ -1,6 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            from  
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            from zrb.attr.type import IntAttr, StrAttr
         
     | 
| 
      
 1 
     | 
    
         
            +
            from zrb.attr.type import BoolAttr, IntAttr, StrAttr
         
     | 
| 
       4 
2 
     | 
    
         
             
            from zrb.context.any_context import AnyContext
         
     | 
| 
       5 
3 
     | 
    
         
             
            from zrb.env.any_env import AnyEnv
         
     | 
| 
       6 
4 
     | 
    
         
             
            from zrb.input.any_input import AnyInput
         
     | 
| 
         @@ -17,8 +15,8 @@ class RsyncTask(CmdTask): 
     | 
|
| 
       17 
15 
     | 
    
         
             
                    icon: str | None = None,
         
     | 
| 
       18 
16 
     | 
    
         
             
                    description: str | None = None,
         
     | 
| 
       19 
17 
     | 
    
         
             
                    cli_only: bool = False,
         
     | 
| 
       20 
     | 
    
         
            -
                    input: list[AnyInput] | AnyInput | None = None,
         
     | 
| 
       21 
     | 
    
         
            -
                    env: list[AnyEnv] | AnyEnv | None = None,
         
     | 
| 
      
 18 
     | 
    
         
            +
                    input: list[AnyInput | None] | AnyInput | None = None,
         
     | 
| 
      
 19 
     | 
    
         
            +
                    env: list[AnyEnv | None] | AnyEnv | None = None,
         
     | 
| 
       22 
20 
     | 
    
         
             
                    shell: StrAttr | None = None,
         
     | 
| 
       23 
21 
     | 
    
         
             
                    auto_render_shell: bool = True,
         
     | 
| 
       24 
22 
     | 
    
         
             
                    remote_host: StrAttr | None = None,
         
     | 
| 
         @@ -39,12 +37,14 @@ class RsyncTask(CmdTask): 
     | 
|
| 
       39 
37 
     | 
    
         
             
                    render_local_source_path: bool = True,
         
     | 
| 
       40 
38 
     | 
    
         
             
                    local_destination_path: StrAttr | None = None,
         
     | 
| 
       41 
39 
     | 
    
         
             
                    render_local_destination_path: bool = True,
         
     | 
| 
      
 40 
     | 
    
         
            +
                    exclude_from: StrAttr | None = None,
         
     | 
| 
      
 41 
     | 
    
         
            +
                    render_exclude_from: bool = True,
         
     | 
| 
       42 
42 
     | 
    
         
             
                    cwd: str | None = None,
         
     | 
| 
       43 
43 
     | 
    
         
             
                    render_cwd: bool = True,
         
     | 
| 
       44 
44 
     | 
    
         
             
                    plain_print: bool = False,
         
     | 
| 
       45 
45 
     | 
    
         
             
                    max_output_line: int = 1000,
         
     | 
| 
       46 
46 
     | 
    
         
             
                    max_error_line: int = 1000,
         
     | 
| 
       47 
     | 
    
         
            -
                    execute_condition:  
     | 
| 
      
 47 
     | 
    
         
            +
                    execute_condition: BoolAttr = True,
         
     | 
| 
       48 
48 
     | 
    
         
             
                    retries: int = 2,
         
     | 
| 
       49 
49 
     | 
    
         
             
                    retry_period: float = 0,
         
     | 
| 
       50 
50 
     | 
    
         
             
                    readiness_check: list[AnyTask] | AnyTask | None = None,
         
     | 
| 
         @@ -93,6 +93,8 @@ class RsyncTask(CmdTask): 
     | 
|
| 
       93 
93 
     | 
    
         
             
                    self._render_local_source_path = render_local_source_path
         
     | 
| 
       94 
94 
     | 
    
         
             
                    self._local_destination_path = local_destination_path
         
     | 
| 
       95 
95 
     | 
    
         
             
                    self._render_local_destination_path = render_local_destination_path
         
     | 
| 
      
 96 
     | 
    
         
            +
                    self._exclude_from = exclude_from
         
     | 
| 
      
 97 
     | 
    
         
            +
                    self._render_exclude_from = render_exclude_from
         
     | 
| 
       96 
98 
     | 
    
         | 
| 
       97 
99 
     | 
    
         
             
                def _get_source_path(self, ctx: AnyContext) -> str:
         
     | 
| 
       98 
100 
     | 
    
         
             
                    local_source_path = self._get_local_source_path(ctx)
         
     | 
| 
         @@ -144,16 +146,28 @@ class RsyncTask(CmdTask): 
     | 
|
| 
       144 
146 
     | 
    
         
             
                        auto_render=self._render_local_destination_path,
         
     | 
| 
       145 
147 
     | 
    
         
             
                    )
         
     | 
| 
       146 
148 
     | 
    
         | 
| 
      
 149 
     | 
    
         
            +
                def _get_exclude_from_param(self, ctx: AnyContext) -> str:
         
     | 
| 
      
 150 
     | 
    
         
            +
                    exclude_from = get_str_attr(
         
     | 
| 
      
 151 
     | 
    
         
            +
                        ctx,
         
     | 
| 
      
 152 
     | 
    
         
            +
                        self._exclude_from,
         
     | 
| 
      
 153 
     | 
    
         
            +
                        "",
         
     | 
| 
      
 154 
     | 
    
         
            +
                        auto_render=self._render_exclude_from,
         
     | 
| 
      
 155 
     | 
    
         
            +
                    ).strip()
         
     | 
| 
      
 156 
     | 
    
         
            +
                    if exclude_from == "":
         
     | 
| 
      
 157 
     | 
    
         
            +
                        return ""
         
     | 
| 
      
 158 
     | 
    
         
            +
                    return f"--exclude-from='{exclude_from}'"
         
     | 
| 
      
 159 
     | 
    
         
            +
             
     | 
| 
       147 
160 
     | 
    
         
             
                def _get_cmd_script(self, ctx: AnyContext) -> str:
         
     | 
| 
       148 
161 
     | 
    
         
             
                    port = self._get_remote_port(ctx)
         
     | 
| 
       149 
162 
     | 
    
         
             
                    password = self._get_remote_password(ctx)
         
     | 
| 
       150 
163 
     | 
    
         
             
                    key = self._get_remote_ssh_key(ctx)
         
     | 
| 
       151 
164 
     | 
    
         
             
                    src = self._get_source_path(ctx)
         
     | 
| 
       152 
165 
     | 
    
         
             
                    dst = self._get_destination_path(ctx)
         
     | 
| 
      
 166 
     | 
    
         
            +
                    exclude_from = self._get_exclude_from_param(ctx)
         
     | 
| 
       153 
167 
     | 
    
         
             
                    if key != "" and password != "":
         
     | 
| 
       154 
     | 
    
         
            -
                        return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -i {key} -p {port}" {src} {dst}'  # noqa
         
     | 
| 
      
 168 
     | 
    
         
            +
                        return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -i {key} -p {port}" {exclude_from} {src} {dst}'  # noqa
         
     | 
| 
       155 
169 
     | 
    
         
             
                    if key != "":
         
     | 
| 
       156 
     | 
    
         
            -
                        return f'rsync --mkpath -avz -e "ssh -i {key} -p {port}" {src} {dst}'
         
     | 
| 
      
 170 
     | 
    
         
            +
                        return f'rsync --mkpath -avz -e "ssh -i {key} -p {port}" {exclude_from} {src} {dst}'
         
     | 
| 
       157 
171 
     | 
    
         
             
                    if password != "":
         
     | 
| 
       158 
     | 
    
         
            -
                        return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -p {port}" {src} {dst}'  # noqa
         
     | 
| 
       159 
     | 
    
         
            -
                    return f'rsync --mkpath -avz -e "ssh -p {port}" {src} {dst}'
         
     | 
| 
      
 172 
     | 
    
         
            +
                        return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -p {port}" {exclude_from} {src} {dst}'  # noqa
         
     | 
| 
      
 173 
     | 
    
         
            +
                    return f'rsync --mkpath -avz -e "ssh -p {port}" {exclude_from} {src} {dst}'
         
     | 
| 
         @@ -27,9 +27,11 @@ def get_str_list_attr( 
     | 
|
| 
       27 
27 
     | 
    
         
             
                Returns:
         
     | 
| 
       28 
28 
     | 
    
         
             
                    list[str]: A list of string attributes.
         
     | 
| 
       29 
29 
     | 
    
         
             
                """
         
     | 
| 
      
 30 
     | 
    
         
            +
                if attr is None:
         
     | 
| 
      
 31 
     | 
    
         
            +
                    return []
         
     | 
| 
       30 
32 
     | 
    
         
             
                if callable(attr):
         
     | 
| 
       31 
33 
     | 
    
         
             
                    return attr(shared_ctx)
         
     | 
| 
       32 
     | 
    
         
            -
                return  
     | 
| 
      
 34 
     | 
    
         
            +
                return [get_str_attr(shared_ctx, val, "", auto_render) for val in attr]
         
     | 
| 
       33 
35 
     | 
    
         | 
| 
       34 
36 
     | 
    
         | 
| 
       35 
37 
     | 
    
         
             
            def get_str_dict_attr(
         
     | 
| 
         @@ -46,6 +48,8 @@ def get_str_dict_attr( 
     | 
|
| 
       46 
48 
     | 
    
         
             
                Returns:
         
     | 
| 
       47 
49 
     | 
    
         
             
                    dict[str, Any]: A dictionary of string attributes.
         
     | 
| 
       48 
50 
     | 
    
         
             
                """
         
     | 
| 
      
 51 
     | 
    
         
            +
                if attr is None:
         
     | 
| 
      
 52 
     | 
    
         
            +
                    return {}
         
     | 
| 
       49 
53 
     | 
    
         
             
                if callable(attr):
         
     | 
| 
       50 
54 
     | 
    
         
             
                    return attr(shared_ctx)
         
     | 
| 
       51 
55 
     | 
    
         
             
                return {
         
     | 
| 
         
            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
         
     | 
    
        {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.flake8
    RENAMED
    
    | 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
    
        {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/README.md
    RENAMED
    
    | 
         
            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
         
     | 
| 
         
            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
         
     | 
    
        {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/config.py
    RENAMED
    
    | 
         
            File without changes
         
     | 
    
        {zrb-1.17.3 → zrb-1.17.4}/src/zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/main.py
    RENAMED
    
    | 
         
            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
         
     | 
| 
         
            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
         
     |