fal 1.26.1__py3-none-any.whl → 1.26.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fal might be problematic. Click here for more details.

fal/_fal_version.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '1.26.1'
21
- __version_tuple__ = version_tuple = (1, 26, 1)
20
+ __version__ = version = '1.26.3'
21
+ __version_tuple__ = version_tuple = (1, 26, 3)
fal/toolkit/file/file.py CHANGED
@@ -1,6 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  import shutil
4
+ import traceback
4
5
  from functools import wraps
5
6
  from pathlib import Path
6
7
  from tempfile import NamedTemporaryFile, mkdtemp
@@ -178,10 +179,16 @@ class File(BaseModel):
178
179
 
179
180
  try:
180
181
  url = repo.save(fdata, **save_kwargs)
181
- except Exception:
182
+ except Exception as exc:
182
183
  if not fallback_repository:
183
184
  raise
184
185
 
186
+ traceback.print_exc()
187
+ print(
188
+ f"Failed to save bytes to repository {repository}: {exc}, "
189
+ f"falling back to {fallback_repository}"
190
+ )
191
+
185
192
  fallback_repo = get_builtin_repository(fallback_repository)
186
193
 
187
194
  url = fallback_repo.save(fdata, **fallback_save_kwargs)
@@ -237,10 +244,16 @@ class File(BaseModel):
237
244
  content_type=content_type,
238
245
  **save_kwargs,
239
246
  )
240
- except Exception:
247
+ except Exception as exc:
241
248
  if not fallback_repository:
242
249
  raise
243
250
 
251
+ traceback.print_exc()
252
+ print(
253
+ f"Failed to save file to repository {repository}: {exc}, "
254
+ f"falling back to {fallback_repository}"
255
+ )
256
+
244
257
  fallback_repo = get_builtin_repository(fallback_repository)
245
258
 
246
259
  url, data = fallback_repo.save_file(
@@ -45,6 +45,9 @@ def _should_retry(exc: Exception) -> bool:
45
45
  if isinstance(exc, HTTPError) and exc.code in RETRY_CODES:
46
46
  return True
47
47
 
48
+ if isinstance(exc, TimeoutError):
49
+ return True
50
+
48
51
  return False
49
52
 
50
53
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fal
3
- Version: 1.26.1
3
+ Version: 1.26.3
4
4
  Summary: fal is an easy-to-use Serverless Python Framework
5
5
  Author: Features & Labels <support@fal.ai>
6
6
  Requires-Python: >=3.8
@@ -1,6 +1,6 @@
1
1
  fal/__init__.py,sha256=wXs1G0gSc7ZK60-bHe-B2m0l_sA6TrFk4BxY0tMoLe8,784
2
2
  fal/__main__.py,sha256=4JMK66Wj4uLZTKbF-sT3LAxOsr6buig77PmOkJCRRxw,83
3
- fal/_fal_version.py,sha256=n2TqZzcgqBKPmTHRD9QCk0lFkU1l5_qG0eOl7E-Tdjs,513
3
+ fal/_fal_version.py,sha256=9Qmp6vQjB4unZk_UypODVD9TXWJfujU_wpuyb9wAzpQ,513
4
4
  fal/_serialization.py,sha256=npXNsFJ5G7jzBeBIyVMH01Ww34mGY4XWhHpRbSrTtnQ,7598
5
5
  fal/_version.py,sha256=1BbTFnucNC_6ldKJ_ZoC722_UkW4S9aDBSW9L0fkKAw,2315
6
6
  fal/api.py,sha256=wIEt21P1C7U-dYQEcyHUxxuuTnvzFyTpWDoHoaxq7tg,47385
@@ -59,9 +59,9 @@ fal/toolkit/types.py,sha256=kkbOsDKj1qPGb1UARTBp7yuJ5JUuyy7XQurYUBCdti8,4064
59
59
  fal/toolkit/audio/__init__.py,sha256=sqNVfrKbppWlIGLoFTaaNTxLpVXsFHxOSHLA5VG547A,35
60
60
  fal/toolkit/audio/audio.py,sha256=gt458h989iQ-EhQSH-mCuJuPBY4RneLJE05f_QWU1E0,572
61
61
  fal/toolkit/file/__init__.py,sha256=FbNl6wD-P0aSSTUwzHt4HujBXrbC3ABmaigPQA4hRfg,70
62
- fal/toolkit/file/file.py,sha256=7JWAwDqT3xnfCtPl75x1TpRmtJmWRRVvsGFMNUta3bY,9765
62
+ fal/toolkit/file/file.py,sha256=4K28gr--5q0nmsm3P76SFoKQj3bPROVwxXrdoMjIiUE,10197
63
63
  fal/toolkit/file/types.py,sha256=MMAH_AyLOhowQPesOv1V25wB4qgbJ3vYNlnTPbdSv1M,2304
64
- fal/toolkit/file/providers/fal.py,sha256=vt4Mznbfca6blfk0psF1ix-zB6309kpIA0_5Qh7bmFw,47217
64
+ fal/toolkit/file/providers/fal.py,sha256=fB8dHO440IxO7PBHBW3XZXHCBBLSoP1oNsSkae7LzsU,47276
65
65
  fal/toolkit/file/providers/gcp.py,sha256=DKeZpm1MjwbvEsYvkdXUtuLIJDr_UNbqXj_Mfv3NTeo,2437
66
66
  fal/toolkit/file/providers/r2.py,sha256=YqnYkkAo_ZKIa-xoSuDnnidUFwJWHdziAR34PE6irdI,3061
67
67
  fal/toolkit/file/providers/s3.py,sha256=EI45T54Mox7lHZKROss_O8o0DIn3CHP9k1iaNYVrxvg,2714
@@ -142,8 +142,8 @@ openapi_fal_rest/models/workflow_node_type.py,sha256=-FzyeY2bxcNmizKbJI8joG7byRi
142
142
  openapi_fal_rest/models/workflow_schema.py,sha256=4K5gsv9u9pxx2ItkffoyHeNjBBYf6ur5bN4m_zePZNY,2019
143
143
  openapi_fal_rest/models/workflow_schema_input.py,sha256=2OkOXWHTNsCXHWS6EGDFzcJKkW5FIap-2gfO233EvZQ,1191
144
144
  openapi_fal_rest/models/workflow_schema_output.py,sha256=EblwSPAGfWfYVWw_WSSaBzQVju296is9o28rMBAd0mc,1196
145
- fal-1.26.1.dist-info/METADATA,sha256=Dk0fMzu4rMEi6H9l2mWWBqjkcyS-QvzxFrVmt6rbnGY,4089
146
- fal-1.26.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
147
- fal-1.26.1.dist-info/entry_points.txt,sha256=32zwTUC1U1E7nSTIGCoANQOQ3I7-qHG5wI6gsVz5pNU,37
148
- fal-1.26.1.dist-info/top_level.txt,sha256=r257X1L57oJL8_lM0tRrfGuXFwm66i1huwQygbpLmHw,21
149
- fal-1.26.1.dist-info/RECORD,,
145
+ fal-1.26.3.dist-info/METADATA,sha256=wg7eO8-SmdSLKvCnrhEgANa7ihLAwrMedxG4rkDd9tU,4089
146
+ fal-1.26.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
147
+ fal-1.26.3.dist-info/entry_points.txt,sha256=32zwTUC1U1E7nSTIGCoANQOQ3I7-qHG5wI6gsVz5pNU,37
148
+ fal-1.26.3.dist-info/top_level.txt,sha256=r257X1L57oJL8_lM0tRrfGuXFwm66i1huwQygbpLmHw,21
149
+ fal-1.26.3.dist-info/RECORD,,
File without changes