dbos 2.2.0__py3-none-any.whl → 2.4.0a5__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.
@@ -1,4 +1,3 @@
1
- import time
2
1
  import uuid
3
2
  from datetime import datetime
4
3
  from typing import TYPE_CHECKING, List, Optional, Union
@@ -7,7 +6,6 @@ from dbos._context import get_local_dbos_context
7
6
 
8
7
  from ._app_db import ApplicationDatabase
9
8
  from ._sys_db import (
10
- GetQueuedWorkflowsInput,
11
9
  GetWorkflowsInput,
12
10
  StepInfo,
13
11
  SystemDatabase,
@@ -28,7 +26,9 @@ def list_workflows(
28
26
  end_time: Optional[str] = None,
29
27
  name: Optional[str] = None,
30
28
  app_version: Optional[str] = None,
29
+ forked_from: Optional[str] = None,
31
30
  user: Optional[str] = None,
31
+ queue_name: Optional[str] = None,
32
32
  limit: Optional[int] = None,
33
33
  offset: Optional[int] = None,
34
34
  sort_desc: bool = False,
@@ -43,6 +43,8 @@ def list_workflows(
43
43
  input.end_time = end_time
44
44
  input.status = status if status is None or isinstance(status, list) else [status]
45
45
  input.application_version = app_version
46
+ input.forked_from = forked_from
47
+ input.queue_name = queue_name
46
48
  input.limit = limit
47
49
  input.name = name
48
50
  input.offset = offset
@@ -61,6 +63,7 @@ def list_queued_workflows(
61
63
  *,
62
64
  queue_name: Optional[str] = None,
63
65
  status: Optional[Union[str, List[str]]] = None,
66
+ forked_from: Optional[str] = None,
64
67
  start_time: Optional[str] = None,
65
68
  end_time: Optional[str] = None,
66
69
  name: Optional[str] = None,
@@ -69,19 +72,20 @@ def list_queued_workflows(
69
72
  sort_desc: bool = False,
70
73
  load_input: bool = True,
71
74
  ) -> List[WorkflowStatus]:
72
- input: GetQueuedWorkflowsInput = {
73
- "queue_name": queue_name,
74
- "start_time": start_time,
75
- "end_time": end_time,
76
- "status": status if status is None or isinstance(status, list) else [status],
77
- "limit": limit,
78
- "name": name,
79
- "offset": offset,
80
- "sort_desc": sort_desc,
81
- }
82
-
83
- infos: List[WorkflowStatus] = sys_db.get_queued_workflows(
84
- input, load_input=load_input
75
+ input = GetWorkflowsInput()
76
+ input.start_time = start_time
77
+ input.end_time = end_time
78
+ input.status = status if status is None or isinstance(status, list) else [status]
79
+ input.forked_from = forked_from
80
+ input.limit = limit
81
+ input.name = name
82
+ input.offset = offset
83
+ input.sort_desc = sort_desc
84
+ input.queues_only = True
85
+ input.queue_name = queue_name
86
+
87
+ infos: List[WorkflowStatus] = sys_db.get_workflows(
88
+ input, load_input=load_input, load_output=False
85
89
  )
86
90
  return infos
87
91
 
dbos/cli/cli.py CHANGED
@@ -140,26 +140,12 @@ def start() -> None:
140
140
  Forward kill signals to children.
141
141
 
142
142
  When we receive a signal, send it to the entire process group of the child.
143
- If that doesn't work, SIGKILL them then exit.
144
143
  """
145
144
  # Send the signal to the child's entire process group
146
145
  if process.poll() is None:
147
146
  os.killpg(os.getpgid(process.pid), signum)
148
147
 
149
- # Give some time for the child to terminate
150
- for _ in range(10): # Wait up to 1 second
151
- if process.poll() is not None:
152
- break
153
- time.sleep(0.1)
154
-
155
- # If the child is still running, force kill it
156
- if process.poll() is None:
157
- try:
158
- os.killpg(os.getpgid(process.pid), signal.SIGKILL)
159
- except Exception:
160
- pass
161
-
162
- # Exit immediately
148
+ # Exit
163
149
  os._exit(process.returncode if process.returncode is not None else 1)
164
150
 
165
151
  # Configure the single handler only on Unix-like systems.
dbos/cli/migration.py CHANGED
@@ -24,6 +24,7 @@ def migrate_dbos_databases(
24
24
  engine=None,
25
25
  schema=schema,
26
26
  serializer=DefaultSerializer(),
27
+ executor_id=None,
27
28
  )
28
29
  sys_db.run_migrations()
29
30
  if app_database_url:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dbos
3
- Version: 2.2.0
3
+ Version: 2.4.0a5
4
4
  Summary: Ultra-lightweight durable execution in Python
5
5
  Author-Email: "DBOS, Inc." <contact@dbos.dev>
6
6
  License: MIT
@@ -1,20 +1,20 @@
1
- dbos-2.2.0.dist-info/METADATA,sha256=CRM_iSw04HkfgSVZQzOeyl3L2YCOk73b0is60R1n8bM,14530
2
- dbos-2.2.0.dist-info/WHEEL,sha256=9P2ygRxDrTJz3gsagc0Z96ukrxjr-LFBGOgv3AuKlCA,90
3
- dbos-2.2.0.dist-info/entry_points.txt,sha256=_QOQ3tVfEjtjBlr1jS4sHqHya9lI2aIEIWkz8dqYp14,58
4
- dbos-2.2.0.dist-info/licenses/LICENSE,sha256=VGZit_a5-kdw9WT6fY5jxAWVwGQzgLFyPWrcVVUhVNU,1067
1
+ dbos-2.4.0a5.dist-info/METADATA,sha256=T82dF2sdLnm7VZd85SZ0udNuw_FoTGCB404Q4LHryDA,14532
2
+ dbos-2.4.0a5.dist-info/WHEEL,sha256=9P2ygRxDrTJz3gsagc0Z96ukrxjr-LFBGOgv3AuKlCA,90
3
+ dbos-2.4.0a5.dist-info/entry_points.txt,sha256=_QOQ3tVfEjtjBlr1jS4sHqHya9lI2aIEIWkz8dqYp14,58
4
+ dbos-2.4.0a5.dist-info/licenses/LICENSE,sha256=VGZit_a5-kdw9WT6fY5jxAWVwGQzgLFyPWrcVVUhVNU,1067
5
5
  dbos/__init__.py,sha256=M7FdFSBGhcvaLIXrNw_0eR68ijwMWV7_UEyimHMP_F4,1039
6
6
  dbos/__main__.py,sha256=G7Exn-MhGrVJVDbgNlpzhfh8WMX_72t3_oJaFT9Lmt8,653
7
- dbos/_admin_server.py,sha256=hubQJw5T8zGKCPNS6FQTXy8jQ8GTJxoYQaDTMlICl9k,16267
8
- dbos/_app_db.py,sha256=mvWQ66ebdbiD9fpGKHZBWNVEza6Ulo1D-3UoTB_LwRc,16378
7
+ dbos/_admin_server.py,sha256=Kce_Cv6JXZBABzfOcNJdVHOwEukmp7SvO24TSa-gLIM,16371
8
+ dbos/_app_db.py,sha256=3XHvTePe1JaAI42rO3waWGoEeDyXkFKGzTFwJxQHUmo,16464
9
9
  dbos/_classproperty.py,sha256=f0X-_BySzn3yFDRKB2JpCbLYQ9tLwt1XftfshvY7CBs,626
10
- dbos/_client.py,sha256=oUpIYcUsWHSH_w1fXQ4ZvbtmgnWZNgDmMj7UqUC0iRA,19317
11
- dbos/_conductor/conductor.py,sha256=3E_hL3c9g9yWqKZkvI6KA0-ZzPMPRo06TOzT1esMiek,24114
12
- dbos/_conductor/protocol.py,sha256=q3rgLxINFtWFigdOONc-4gX4vn66UmMlJQD6Kj8LnL4,7420
10
+ dbos/_client.py,sha256=DvCNKp7O4GixJ6p9xcoqMX5_VQqQUGhSui6C0Fwc5qs,19996
11
+ dbos/_conductor/conductor.py,sha256=ME7sBVK3JJSXd1vEiOTXEyxYoGUDZo6YXSbC4K8wgUU,24282
12
+ dbos/_conductor/protocol.py,sha256=nVjpcSw_OPoCM7NBU_IRWnk9dFQjOgAkg0ufhj8lFzI,8901
13
13
  dbos/_context.py,sha256=XKllmsDR_oMcWOuZnoe1X4yv2JeOi_vsAuyWC-mWs_o,28164
14
- dbos/_core.py,sha256=6OU3SMW5x8CvO7c0LBlHhF1eLiHPLs6nfkkasP73IEo,51124
14
+ dbos/_core.py,sha256=FCspRQFRMFyHpkl4vqR8IEw3aitD-VWB77CMVQrlyy8,50257
15
15
  dbos/_croniter.py,sha256=XHAyUyibs_59sJQfSNWkP7rqQY6_XrlfuuCxk4jYqek,47559
16
- dbos/_dbos.py,sha256=dr32Z_NT36JkUxWGyYVX7xkl3bYJmgsxVMOX8H9_mpM,59394
17
- dbos/_dbos_config.py,sha256=NIMQfxkznoyscyeMFLrfrPAS1W_PHXXWrxqpvvrbp3E,24923
16
+ dbos/_dbos.py,sha256=763igITqTEWRcWU3SFa_x6tCoMHg2UQ3It-GEjFGnH8,59857
17
+ dbos/_dbos_config.py,sha256=mfajyeyeV1ZHaAg2GU3dxwvp_19wZtY2prNdVrXgPb8,24846
18
18
  dbos/_debouncer.py,sha256=qNjIVmWqTPp64M2cEbLnpgGmlKVdCaAKysD1BPJgWh4,15297
19
19
  dbos/_debug.py,sha256=0MfgNqutCUhI4PEmmra9x7f3DiFE_0nscfUCHdLimEY,1415
20
20
  dbos/_docker_pg_helper.py,sha256=xySum4hTA8TVMBODoG19u4cXQAB1vCock-jwM2pnmSI,7791
@@ -22,22 +22,22 @@ dbos/_error.py,sha256=GwO0Ng4d4iB52brY09-Ss6Cz_V28Xc0D0cRCzZ6XmNM,8688
22
22
  dbos/_event_loop.py,sha256=cvaFN9-II3MsHEOq8QoICc_8qSKrjikMlLfuhC3Y8Dk,2923
23
23
  dbos/_fastapi.py,sha256=toYYfbe2aui2aHw0021PoXi2dKlI6NzO3M3pHB0dHOk,3421
24
24
  dbos/_flask.py,sha256=Npnakt-a3W5OykONFRkDRnumaDhTQmA0NPdUCGRYKXE,1652
25
- dbos/_kafka.py,sha256=Gm4fHWl7gYb-i5BMvwNwm5Km3z8zQpseqdMgqgFjlGI,4252
25
+ dbos/_kafka.py,sha256=cA3hXyT-FR4LQZnaBMVLTZn7oko76rcTUC_kOo6aSis,4352
26
26
  dbos/_kafka_message.py,sha256=NYvOXNG3Qn7bghn1pv3fg4Pbs86ILZGcK4IB-MLUNu0,409
27
- dbos/_logger.py,sha256=djnCp147QoQ1iG9Bt3Uz8RyGaXGmi6gebccXsrA6Cps,4660
28
- dbos/_migration.py,sha256=Fvc3m4dC4oDpjPMHX-tUZVnXklVB9OMMojSLuVyV9ak,10312
27
+ dbos/_logger.py,sha256=ByGkkGwEWaqE9z6E2VNDFOgu_z4LNe7_SxsVgAXzoT0,5081
28
+ dbos/_migration.py,sha256=GJdxHhMUnsr3pjrGwi1f4PT76ABnn9kFUyqWp4Hakmw,11701
29
29
  dbos/_outcome.py,sha256=7HvosMfEHTh1U5P6xok7kFTGLwa2lPaul0YApb3UnN4,8191
30
30
  dbos/_queue.py,sha256=GmqZHl9smES1KSmpauhSdsnZFJHDyfvRArmC-jBibhw,6228
31
31
  dbos/_recovery.py,sha256=K-wlFhdf4yGRm6cUzyhcTjQUS0xp2T5rdNMLiiBErYg,2882
32
32
  dbos/_registrations.py,sha256=bEOntObnWaBylnebr5ZpcX2hk7OVLDd1z4BvW4_y3zA,7380
33
33
  dbos/_roles.py,sha256=kCuhhg8XLtrHCgKgm44I0abIRTGHltf88OwjEKAUggk,2317
34
- dbos/_scheduler.py,sha256=n96dNzKMr6-2RQvMxRI6BaoExHbLjw0Kr46j1P-DjP4,2620
34
+ dbos/_scheduler.py,sha256=PLiCSUujlfEfojTnHwzY-P_AEOVEx7bvWvU5BuMgLPY,2708
35
35
  dbos/_schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
36
  dbos/_schemas/application_database.py,sha256=SypAS9l9EsaBHFn9FR8jmnqt01M74d9AF1AMa4m2hhI,1040
37
- dbos/_schemas/system_database.py,sha256=mNsBV0ttlqJArvOqGPY60WvtuiWrHCpYnVxtvMfe2LI,5544
38
- dbos/_serialization.py,sha256=8TVXB1c2k3keodNcXszqmcOGTQz2r5UBSYtxn2OrYjI,2804
39
- dbos/_sys_db.py,sha256=FDboSk58CyQCAFjOF_KMLnRtIw05OL3IpJHT1qwKEKo,87596
40
- dbos/_sys_db_postgres.py,sha256=GuyGVyZZD_Wl7LjRSkHnOuZ-hOROlO4Xs2UeDhKq10E,6963
37
+ dbos/_schemas/system_database.py,sha256=tQAFCnEyZ7bEXZm3FbGIYk5SNGk-AHA3R_vuR0hfH8s,5717
38
+ dbos/_serialization.py,sha256=ZGrkN5UclSLOqMVZgYpT72pw1l888ZXRoYuu3pIg3PA,2957
39
+ dbos/_sys_db.py,sha256=nxxIgwtzoHCRWXydwQHQ65YOTMFmUVX_p8EDZftUXXg,86259
40
+ dbos/_sys_db_postgres.py,sha256=_3m3hF6Pc23iZfUlIFYtDuC1Tw6KsjYqnDQE0HZpjt4,6965
41
41
  dbos/_sys_db_sqlite.py,sha256=ifjKdy-Z9vlVIBf5L6XnSaNjiBdvqPE73asVHim4A5Q,6998
42
42
  dbos/_templates/dbos-db-starter/README.md,sha256=GhxhBj42wjTt1fWEtwNriHbJuKb66Vzu89G4pxNHw2g,930
43
43
  dbos/_templates/dbos-db-starter/__package/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -46,14 +46,14 @@ dbos/_templates/dbos-db-starter/__package/schema.py,sha256=7Z27JGC8yy7Z44cbVXIRE
46
46
  dbos/_templates/dbos-db-starter/dbos-config.yaml.dbos,sha256=0wPktElM7kMB3OPHTXw4xBk9bgGKMqOHrrr7x_R23Z8,446
47
47
  dbos/_templates/dbos-db-starter/migrations/create_table.py.dbos,sha256=pVm2Q0AsxS8pg85llbrXFD6jMccMqGjhGRjTEvS-hXk,942
48
48
  dbos/_templates/dbos-db-starter/start_postgres_docker.py,sha256=lQVLlYO5YkhGPEgPqwGc7Y8uDKse9HsWv5fynJEFJHM,1681
49
- dbos/_tracer.py,sha256=PHbD7iTEkHk7z4B9hc-wPgi2dPTeI1rhZgLI33TQEeM,3786
49
+ dbos/_tracer.py,sha256=jTlTkb5vUr_Ai5W9JIJf6FpYjAL0IWL52EWM_HXsi54,3958
50
50
  dbos/_utils.py,sha256=ZdoM1MDbHnlJrh31zfhp3iX62bAxK1kyvMwXnltC_84,1779
51
- dbos/_workflow_commands.py,sha256=k-i1bCfNrux43BHLT8wQ-l-MVZX3D6LGZLH7-uuiDRo,4951
51
+ dbos/_workflow_commands.py,sha256=ueTQXri2H4np6Sb2Citz3XEqG3a5jg_Q5NEFAx4YHmg,5160
52
52
  dbos/cli/_github_init.py,sha256=R_94Fnn40CAmPy-zM00lwHi0ndyfv57TmIooADjmag4,3378
53
53
  dbos/cli/_template_init.py,sha256=AltKk256VocgvxLpuTxpjJyACrdHFjbGoqYhHzeLae4,2649
54
- dbos/cli/cli.py,sha256=s-gGQvHvVPeQp68raQElGnbBlSCv69JZ3HNFj5Qt2bs,27686
55
- dbos/cli/migration.py,sha256=I0_0ngWTuCPQf6Symbpd0lizaxWUKe3uTYEmuCmsrdU,3775
54
+ dbos/cli/cli.py,sha256=AHz_JJj_qWCTRV8yT1RSA-hISFVIJrE9eUalApw9sxg,27149
55
+ dbos/cli/migration.py,sha256=jRAr4H7Bpf-PfmLoOA6qXk9i15Cl1TehUz-cphjvYJM,3805
56
56
  dbos/dbos-config.schema.json,sha256=47wofTZ5jlFynec7bG0L369tAXbRQQ2euBxBXvg4m9c,1730
57
57
  dbos/py.typed,sha256=QfzXT1Ktfk3Rj84akygc7_42z0lRpCq0Ilh8OXI6Zas,44
58
58
  version/__init__.py,sha256=L4sNxecRuqdtSFdpUGX3TtBi9KL3k7YsZVIvv-fv9-A,1678
59
- dbos-2.2.0.dist-info/RECORD,,
59
+ dbos-2.4.0a5.dist-info/RECORD,,
File without changes