fal 1.5.17__py3-none-any.whl → 1.6.0__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
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '1.5.17'
16
- __version_tuple__ = version_tuple = (1, 5, 17)
15
+ __version__ = version = '1.6.0'
16
+ __version_tuple__ = version_tuple = (1, 6, 0)
fal/app.py CHANGED
@@ -23,7 +23,7 @@ from fal._serialization import include_modules_from
23
23
  from fal.api import RouteSignature
24
24
  from fal.exceptions import FalServerlessException, RequestCancelledException
25
25
  from fal.logging import get_logger
26
- from fal.toolkit.file import request_lifecycle_repference
26
+ from fal.toolkit.file import request_lifecycle_preference
27
27
  from fal.toolkit.file.providers.fal import LIFECYCLE_PREFERENCE
28
28
 
29
29
  REALTIME_APP_REQUIREMENTS = ["websockets", "msgpack"]
@@ -342,7 +342,7 @@ class App(fal.api.BaseServable):
342
342
  @app.middleware("http")
343
343
  async def set_global_object_preference(request, call_next):
344
344
  try:
345
- preference_dict = request_lifecycle_repference(request)
345
+ preference_dict = request_lifecycle_preference(request)
346
346
  if preference_dict is not None:
347
347
  # This will not work properly for apps with multiplexing enabled
348
348
  # we may mix up the preferences between requests
fal/cli/main.py CHANGED
@@ -6,7 +6,7 @@ from fal import __version__
6
6
  from fal.console import console
7
7
  from fal.console.icons import CROSS_ICON
8
8
 
9
- from . import apps, auth, create, deploy, doctor, keys, machine, run, secrets
9
+ from . import apps, auth, create, deploy, doctor, keys, run, runners, secrets
10
10
  from .debug import debugtools, get_debug_parser
11
11
  from .parser import FalParser, FalParserExit
12
12
 
@@ -31,7 +31,7 @@ def _get_main_parser() -> argparse.ArgumentParser:
31
31
  required=True,
32
32
  )
33
33
 
34
- for cmd in [auth, apps, deploy, run, keys, secrets, doctor, create, machine]:
34
+ for cmd in [auth, apps, deploy, run, keys, secrets, doctor, create, runners]:
35
35
  cmd.add_parser(subparsers, parents)
36
36
 
37
37
  return parser
@@ -10,7 +10,7 @@ def _kill(args):
10
10
 
11
11
 
12
12
  def _add_kill_parser(subparsers, parents):
13
- kill_help = "Kill a machine."
13
+ kill_help = "Kill a runner."
14
14
  parser = subparsers.add_parser(
15
15
  "kill",
16
16
  description=kill_help,
@@ -25,12 +25,13 @@ def _add_kill_parser(subparsers, parents):
25
25
 
26
26
 
27
27
  def add_parser(main_subparsers, parents):
28
- machine_help = "Manage fal machines."
28
+ runners_help = "Manage fal runners."
29
29
  parser = main_subparsers.add_parser(
30
- "machine",
31
- description=machine_help,
32
- help=machine_help,
30
+ "runners",
31
+ description=runners_help,
32
+ help=runners_help,
33
33
  parents=parents,
34
+ aliases=["machine"], # backwards compatibility
34
35
  )
35
36
 
36
37
  subparsers = parser.add_subparsers(
fal/toolkit/file/file.py CHANGED
@@ -151,7 +151,7 @@ class File(BaseModel):
151
151
  fdata = FileData(data, content_type, file_name)
152
152
 
153
153
  object_lifecycle_preference = (
154
- request_lifecycle_repference(request) or LIFECYCLE_PREFERENCE.get()
154
+ request_lifecycle_preference(request) or LIFECYCLE_PREFERENCE.get()
155
155
  )
156
156
 
157
157
  try:
@@ -207,7 +207,7 @@ class File(BaseModel):
207
207
 
208
208
  content_type = content_type or "application/octet-stream"
209
209
  object_lifecycle_preference = (
210
- request_lifecycle_repference(request) or LIFECYCLE_PREFERENCE.get()
210
+ request_lifecycle_preference(request) or LIFECYCLE_PREFERENCE.get()
211
211
  )
212
212
 
213
213
  try:
@@ -293,7 +293,7 @@ class CompressedFile(File):
293
293
  shutil.rmtree(self.extract_dir)
294
294
 
295
295
 
296
- def request_lifecycle_repference(request: Optional[Request]) -> dict[str, str] | None:
296
+ def request_lifecycle_preference(request: Optional[Request]) -> dict[str, str] | None:
297
297
  import json
298
298
 
299
299
  if request is None:
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fal
3
- Version: 1.5.17
3
+ Version: 1.6.0
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
7
7
  Description-Content-Type: text/markdown
8
- Requires-Dist: isolate[build]<0.15.0,>=0.14.3
8
+ Requires-Dist: isolate[build]<0.16.0,>=0.15.0
9
9
  Requires-Dist: isolate-proto<0.7.0,>=0.6.0
10
10
  Requires-Dist: grpcio==1.64.0
11
11
  Requires-Dist: dill==0.3.7
@@ -1,10 +1,10 @@
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=pqPZqU0SMvSiE-_JolScA8UT2UZT9TmDka1pcSoM4sg,413
3
+ fal/_fal_version.py,sha256=Ry70pc5l-IBhT9gahlkNwZPp4g0CzVEWqsat9H-UASY,411
4
4
  fal/_serialization.py,sha256=rD2YiSa8iuzCaZohZwN_MPEB-PpSKbWRDeaIDpTEjyY,7653
5
5
  fal/_version.py,sha256=EBGqrknaf1WygENX-H4fBefLvHryvJBBGtVJetaB0NY,266
6
6
  fal/api.py,sha256=xTtPvDqaEHsq2lFsMwRZiHb4hzjVY3y6lV-xbzkSetI,43375
7
- fal/app.py,sha256=_0bWVe4BmbN01UoMso21-eJlLugDJ1CxVnzQdCtK93k,22636
7
+ fal/app.py,sha256=ksp9Xv5EY3mL5FMfWLrIgVUQehm1o89RfW-8HeJpGzQ,22636
8
8
  fal/apps.py,sha256=RpmElElJnDYjsTRQOdNYiJwd74GEOGYA38L5O5GzNEg,11068
9
9
  fal/container.py,sha256=V7riyyq8AZGwEX9QaqRQDZyDN_bUKeRKV1OOZArXjL0,622
10
10
  fal/files.py,sha256=QgfYfMKmNobMPufrAP_ga1FKcIAlSbw18Iar1-0qepo,2650
@@ -27,10 +27,10 @@ fal/cli/debug.py,sha256=u_urnyFzSlNnrq93zz_GXE9FX4VyVxDoamJJyrZpFI0,1312
27
27
  fal/cli/deploy.py,sha256=ZBM4pLDDj9ZntlSoFvK_-ZGO-lAOHoZFkYXS-OAxXT0,7461
28
28
  fal/cli/doctor.py,sha256=U4ne9LX5gQwNblsYQ27XdO8AYDgbYjTO39EtxhwexRM,983
29
29
  fal/cli/keys.py,sha256=trDpA3LJu9S27qE_K8Hr6fKLK4vwVzbxUHq8TFrV4pw,3157
30
- fal/cli/machine.py,sha256=BY8v7B3uGhjd6fKuPBGUOGShIntjMkphOlmF1EwFMzI,992
31
- fal/cli/main.py,sha256=ivLtV5XYDUNB5FydVjBTL_yZCwFSYekODYh9RGDwYG0,2027
30
+ fal/cli/main.py,sha256=O0i9wdLPxcd1u4CvXit-ufkT_UnON-baTN6v9HaHPmw,2027
32
31
  fal/cli/parser.py,sha256=edCqFWYAQSOhrxeEK9BtFRlTEUAlG2JUDjS_vhZ_nHE,2868
33
32
  fal/cli/run.py,sha256=J1lSZ_wJIhrygSduMr0Wf2pQ8OUJlFbyH5KKUjxDF6w,1204
33
+ fal/cli/runners.py,sha256=5pXuKq7nSkf0VpnppNnvxwP8XDq0SWkc6mkfizDwWMQ,1046
34
34
  fal/cli/secrets.py,sha256=740msFm7d41HruudlcfqUXlFl53N-WmChsQP9B9M9Po,2572
35
35
  fal/console/__init__.py,sha256=ernZ4bzvvliQh5SmrEqQ7lA5eVcbw6Ra2jalKtA7dxg,132
36
36
  fal/console/icons.py,sha256=De9MfFaSkO2Lqfne13n3PrYfTXJVIzYZVqYn5BWsdrA,108
@@ -48,7 +48,7 @@ fal/toolkit/__init__.py,sha256=sV95wiUzKoiDqF9vDgq4q-BLa2sD6IpuKSqp5kdTQNE,658
48
48
  fal/toolkit/exceptions.py,sha256=elHZ7dHCJG5zlHGSBbz-ilkZe9QUvQMomJFi8Pt91LA,198
49
49
  fal/toolkit/optimize.py,sha256=p75sovF0SmRP6zxzpIaaOmqlxvXB_xEz3XPNf59EF7w,1339
50
50
  fal/toolkit/file/__init__.py,sha256=FbNl6wD-P0aSSTUwzHt4HujBXrbC3ABmaigPQA4hRfg,70
51
- fal/toolkit/file/file.py,sha256=yWzR0ZIqDwxwQDRiVv89_ShepzdBJoXdK5QYNph_9gQ,9475
51
+ fal/toolkit/file/file.py,sha256=fJpvydwefQ5CT_3q8YYfckH_6MdSFLF-se6jNOWGGxc,9475
52
52
  fal/toolkit/file/types.py,sha256=MjZ6xAhKPv4rowLo2Vcbho0sX7AQ3lm3KFyYDcw0dL4,1845
53
53
  fal/toolkit/file/providers/fal.py,sha256=V5CZz6EKmIs2-nm_mWeN9YxUOZCKIuPsZFjkZyazrgk,22375
54
54
  fal/toolkit/file/providers/gcp.py,sha256=iQtkoYUqbmKKpC5srVOYtrruZ3reGRm5lz4kM8bshgk,2247
@@ -128,8 +128,8 @@ openapi_fal_rest/models/workflow_node_type.py,sha256=-FzyeY2bxcNmizKbJI8joG7byRi
128
128
  openapi_fal_rest/models/workflow_schema.py,sha256=4K5gsv9u9pxx2ItkffoyHeNjBBYf6ur5bN4m_zePZNY,2019
129
129
  openapi_fal_rest/models/workflow_schema_input.py,sha256=2OkOXWHTNsCXHWS6EGDFzcJKkW5FIap-2gfO233EvZQ,1191
130
130
  openapi_fal_rest/models/workflow_schema_output.py,sha256=EblwSPAGfWfYVWw_WSSaBzQVju296is9o28rMBAd0mc,1196
131
- fal-1.5.17.dist-info/METADATA,sha256=8UnuHRmBcWkQTTAkojd_Ab7oXnJQdCg7wHaKfvgfUu4,3997
132
- fal-1.5.17.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
133
- fal-1.5.17.dist-info/entry_points.txt,sha256=32zwTUC1U1E7nSTIGCoANQOQ3I7-qHG5wI6gsVz5pNU,37
134
- fal-1.5.17.dist-info/top_level.txt,sha256=r257X1L57oJL8_lM0tRrfGuXFwm66i1huwQygbpLmHw,21
135
- fal-1.5.17.dist-info/RECORD,,
131
+ fal-1.6.0.dist-info/METADATA,sha256=xCN7CJgGzbkaqcRtoA0HcirBCGV-I8qWFFNvZr5rE0U,3996
132
+ fal-1.6.0.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
133
+ fal-1.6.0.dist-info/entry_points.txt,sha256=32zwTUC1U1E7nSTIGCoANQOQ3I7-qHG5wI6gsVz5pNU,37
134
+ fal-1.6.0.dist-info/top_level.txt,sha256=r257X1L57oJL8_lM0tRrfGuXFwm66i1huwQygbpLmHw,21
135
+ fal-1.6.0.dist-info/RECORD,,
File without changes