fal 1.28.3__tar.gz → 1.29.0__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.
- {fal-1.28.3/fal.egg-info → fal-1.29.0}/PKG-INFO +1 -1
- {fal-1.28.3 → fal-1.29.0/fal.egg-info}/PKG-INFO +1 -1
- {fal-1.28.3 → fal-1.29.0}/src/fal/_fal_version.py +16 -3
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/apps.py +2 -2
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/deploy.py +7 -4
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/providers/fal.py +6 -1
- {fal-1.28.3 → fal-1.29.0}/.gitignore +0 -0
- {fal-1.28.3 → fal-1.29.0}/Makefile +0 -0
- {fal-1.28.3 → fal-1.29.0}/README.md +0 -0
- {fal-1.28.3 → fal-1.29.0}/docs/conf.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/docs/index.rst +0 -0
- {fal-1.28.3 → fal-1.29.0}/fal.egg-info/SOURCES.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/fal.egg-info/dependency_links.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/fal.egg-info/entry_points.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/fal.egg-info/requires.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/fal.egg-info/top_level.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/README.md +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/applications/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/applications/app_metadata.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/billing/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/billing/get_user_details.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/create_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/delete_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/get_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/list_user_workflows.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/update_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/files/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/files/check_dir_hash.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/files/upload_local_file.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/users/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/users/get_current_user.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/create_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/delete_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/get_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/list_user_workflows.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/update_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/client.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/errors.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/app_metadata_response_app_metadata.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/body_upload_local_file.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_detail.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_item.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema_extra_data.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema_fal_inputs.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema_fal_inputs_dev_info.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema_prompt.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/current_user.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/customer_details.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/hash_check.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/http_validation_error.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/lock_reason.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/page_comfy_workflow_item.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/page_workflow_item.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/team_role.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/typed_comfy_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/typed_comfy_workflow_update.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/typed_workflow.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/typed_workflow_update.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/user_member.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/validation_error.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_metadata.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_nodes.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_output.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_detail.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_detail_contents.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_item.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_node.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_node_type.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_schema.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_schema_input.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_schema_output.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/py.typed +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/types.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/pyproject.toml +0 -0
- {fal-1.28.3 → fal-1.29.0}/openapi_rest.config.yaml +0 -0
- {fal-1.28.3 → fal-1.29.0}/pyproject.toml +0 -0
- {fal-1.28.3 → fal-1.29.0}/setup.cfg +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/__main__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/_serialization.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/_version.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/api.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/app.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/apps.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/auth/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/auth/auth0.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/auth/local.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/_utils.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/api.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/auth.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/cli_nested_json.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/create.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/debug.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/doctor.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/files.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/keys.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/main.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/parser.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/profile.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/run.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/runners.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/secrets.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/cli/teams.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/config.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/console/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/console/icons.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/console/ux.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/container.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/exceptions/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/exceptions/_base.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/exceptions/_cuda.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/exceptions/auth.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/files.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/flags.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/logging/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/logging/isolate.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/logging/style.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/logging/trace.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/logging/user.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/project.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/py.typed +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/rest_client.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/sdk.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/sync.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/audio/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/audio/audio.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/exceptions.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/file.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/providers/gcp.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/providers/r2.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/providers/s3.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/file/types.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/image.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/nsfw_filter/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/nsfw_filter/env.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/nsfw_filter/inference.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/nsfw_filter/model.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/nsfw_filter/requirements.txt +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/image/safety_checker.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/kv.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/optimize.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/types.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/utils/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/utils/download_utils.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/utils/endpoint.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/utils/retry.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/video/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/toolkit/video/video.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/utils.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/src/fal/workflows.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/assets/cat.png +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_apps.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_auth.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_deploy.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_keys.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_run.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/cli/test_secrets.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/conftest.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/integration_test.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/mainify_package/__init__.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/mainify_package/impl.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/mainify_package/utils.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/mainify_target.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/test_apps.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/test_files.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/test_kv.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/test_stability.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/toolkit/file/providers/test_fal_retry.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/toolkit/file_test.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/toolkit/image_test.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/toolkit/test_types.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tests/toolkit/utils/retry.py +0 -0
- {fal-1.28.3 → fal-1.29.0}/tools/demo_script.py +0 -0
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '1.
|
|
21
|
-
__version_tuple__ = version_tuple = (1,
|
|
31
|
+
__version__ = version = '1.29.0'
|
|
32
|
+
__version_tuple__ = version_tuple = (1, 29, 0)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|
|
@@ -69,8 +69,8 @@ def _list(args):
|
|
|
69
69
|
args.console.print(table)
|
|
70
70
|
elif args.output == "json":
|
|
71
71
|
apps_as_dicts = [asdict(a) for a in apps]
|
|
72
|
-
res = json.dumps(apps_as_dicts)
|
|
73
|
-
args.console.print(
|
|
72
|
+
res = json.dumps({"apps": apps_as_dicts})
|
|
73
|
+
args.console.print(res)
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
def _add_list_parser(subparsers, parents):
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import argparse
|
|
2
|
+
import json
|
|
2
3
|
from collections import namedtuple
|
|
3
4
|
from pathlib import Path
|
|
4
5
|
from typing import Literal, Optional, Tuple, Union
|
|
@@ -124,10 +125,12 @@ def _deploy_from_reference(
|
|
|
124
125
|
|
|
125
126
|
if args.output == "json":
|
|
126
127
|
args.console.print(
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
json.dumps(
|
|
129
|
+
{
|
|
130
|
+
"revision": app_id,
|
|
131
|
+
"app_name": app_name,
|
|
132
|
+
}
|
|
133
|
+
)
|
|
131
134
|
)
|
|
132
135
|
elif args.output == "pretty":
|
|
133
136
|
args.console.print(
|
|
@@ -10,7 +10,7 @@ from dataclasses import dataclass
|
|
|
10
10
|
from datetime import datetime, timezone
|
|
11
11
|
from pathlib import Path
|
|
12
12
|
from typing import Any, Dict, Generator, Generic, TypeVar
|
|
13
|
-
from urllib.error import HTTPError
|
|
13
|
+
from urllib.error import HTTPError, URLError
|
|
14
14
|
from urllib.parse import urlparse, urlunparse
|
|
15
15
|
from urllib.request import Request, urlopen
|
|
16
16
|
from urllib.response import addinfourl
|
|
@@ -44,6 +44,11 @@ def _urlopen(
|
|
|
44
44
|
def _should_retry(exc: Exception) -> bool:
|
|
45
45
|
if isinstance(exc, HTTPError) and exc.code in RETRY_CODES:
|
|
46
46
|
return True
|
|
47
|
+
elif type(exc) is URLError:
|
|
48
|
+
# URLError is a base class for other errors,
|
|
49
|
+
# but it can be raised directly, e.g.
|
|
50
|
+
# URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
|
|
51
|
+
return True
|
|
47
52
|
|
|
48
53
|
if isinstance(exc, TimeoutError):
|
|
49
54
|
return True
|
|
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
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/applications/app_metadata.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/comfy/list_user_workflows.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
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/create_workflow.py
RENAMED
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/delete_workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/list_user_workflows.py
RENAMED
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/api/workflows/update_workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/body_upload_local_file.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/comfy_workflow_schema_prompt.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/page_comfy_workflow_item.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/typed_comfy_workflow_update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_metadata.py
RENAMED
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_nodes.py
RENAMED
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_contents_output.py
RENAMED
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_detail_contents.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fal-1.28.3 → fal-1.29.0}/openapi-fal-rest/openapi_fal_rest/models/workflow_schema_output.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
|
|
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
|