dbos 1.3.0a5__py3-none-any.whl → 1.3.0a8__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.
- dbos/_client.py +7 -6
- dbos/_core.py +6 -9
- dbos/_dbos_config.py +1 -1
- dbos/_migrations/versions/d994145b47b6_consolidate_inputs.py +30 -0
- dbos/_queue.py +5 -3
- dbos/_schemas/system_database.py +1 -15
- dbos/_sys_db.py +32 -97
- {dbos-1.3.0a5.dist-info → dbos-1.3.0a8.dist-info}/METADATA +1 -1
- {dbos-1.3.0a5.dist-info → dbos-1.3.0a8.dist-info}/RECORD +12 -11
- {dbos-1.3.0a5.dist-info → dbos-1.3.0a8.dist-info}/WHEEL +0 -0
- {dbos-1.3.0a5.dist-info → dbos-1.3.0a8.dist-info}/entry_points.txt +0 -0
- {dbos-1.3.0a5.dist-info → dbos-1.3.0a8.dist-info}/licenses/LICENSE +0 -0
dbos/_client.py
CHANGED
@@ -141,6 +141,11 @@ class DBOSClient:
|
|
141
141
|
"priority": options.get("priority"),
|
142
142
|
}
|
143
143
|
|
144
|
+
inputs: WorkflowInputs = {
|
145
|
+
"args": args,
|
146
|
+
"kwargs": kwargs,
|
147
|
+
}
|
148
|
+
|
144
149
|
status: WorkflowStatusInternal = {
|
145
150
|
"workflow_uuid": workflow_id,
|
146
151
|
"status": WorkflowStatusString.ENQUEUED.value,
|
@@ -169,16 +174,11 @@ class DBOSClient:
|
|
169
174
|
if enqueue_options_internal["priority"] is not None
|
170
175
|
else 0
|
171
176
|
),
|
172
|
-
|
173
|
-
|
174
|
-
inputs: WorkflowInputs = {
|
175
|
-
"args": args,
|
176
|
-
"kwargs": kwargs,
|
177
|
+
"inputs": _serialization.serialize_args(inputs),
|
177
178
|
}
|
178
179
|
|
179
180
|
self._sys_db.init_workflow(
|
180
181
|
status,
|
181
|
-
_serialization.serialize_args(inputs),
|
182
182
|
max_recovery_attempts=None,
|
183
183
|
)
|
184
184
|
return workflow_id
|
@@ -237,6 +237,7 @@ class DBOSClient:
|
|
237
237
|
"workflow_deadline_epoch_ms": None,
|
238
238
|
"deduplication_id": None,
|
239
239
|
"priority": 0,
|
240
|
+
"inputs": _serialization.serialize_args({"args": (), "kwargs": {}}),
|
240
241
|
}
|
241
242
|
with self._sys_db.engine.begin() as conn:
|
242
243
|
self._sys_db._insert_workflow_status(
|
dbos/_core.py
CHANGED
@@ -252,6 +252,10 @@ def _init_workflow(
|
|
252
252
|
raise DBOSNonExistentWorkflowError(wfid)
|
253
253
|
return get_status_result
|
254
254
|
|
255
|
+
# If we have a class name, the first arg is the instance and do not serialize
|
256
|
+
if class_name is not None:
|
257
|
+
inputs = {"args": inputs["args"][1:], "kwargs": inputs["kwargs"]}
|
258
|
+
|
255
259
|
# Initialize a workflow status object from the context
|
256
260
|
status: WorkflowStatusInternal = {
|
257
261
|
"workflow_uuid": wfid,
|
@@ -291,16 +295,12 @@ def _init_workflow(
|
|
291
295
|
if enqueue_options is not None
|
292
296
|
else 0
|
293
297
|
),
|
298
|
+
"inputs": _serialization.serialize_args(inputs),
|
294
299
|
}
|
295
300
|
|
296
|
-
# If we have a class name, the first arg is the instance and do not serialize
|
297
|
-
if class_name is not None:
|
298
|
-
inputs = {"args": inputs["args"][1:], "kwargs": inputs["kwargs"]}
|
299
|
-
|
300
301
|
# Synchronously record the status and inputs for workflows
|
301
302
|
wf_status, workflow_deadline_epoch_ms = dbos._sys_db.init_workflow(
|
302
303
|
status,
|
303
|
-
_serialization.serialize_args(inputs),
|
304
304
|
max_recovery_attempts=max_recovery_attempts,
|
305
305
|
)
|
306
306
|
|
@@ -441,16 +441,13 @@ def execute_workflow_by_id(dbos: "DBOS", workflow_id: str) -> "WorkflowHandle[An
|
|
441
441
|
status = dbos._sys_db.get_workflow_status(workflow_id)
|
442
442
|
if not status:
|
443
443
|
raise DBOSRecoveryError(workflow_id, "Workflow status not found")
|
444
|
-
inputs =
|
445
|
-
if not inputs:
|
446
|
-
raise DBOSRecoveryError(workflow_id, "Workflow inputs not found")
|
444
|
+
inputs = _serialization.deserialize_args(status["inputs"])
|
447
445
|
wf_func = dbos._registry.workflow_info_map.get(status["name"], None)
|
448
446
|
if not wf_func:
|
449
447
|
raise DBOSWorkflowFunctionNotFoundError(
|
450
448
|
workflow_id, "Workflow function not found"
|
451
449
|
)
|
452
450
|
with DBOSContextEnsure():
|
453
|
-
ctx = assert_current_dbos_context()
|
454
451
|
# If this function belongs to a configured class, add that class instance as its first argument
|
455
452
|
if status["config_name"] is not None:
|
456
453
|
config_name = status["config_name"]
|
dbos/_dbos_config.py
CHANGED
@@ -91,7 +91,7 @@ class ConfigFile(TypedDict, total=False):
|
|
91
91
|
Data structure containing the DBOS Configuration.
|
92
92
|
|
93
93
|
This configuration data is typically loaded from `dbos-config.yaml`.
|
94
|
-
See `https://docs.dbos.dev/
|
94
|
+
See `https://docs.dbos.dev/python/reference/configuration#dbos-configuration-file`
|
95
95
|
|
96
96
|
Attributes:
|
97
97
|
name (str): Application name
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"""consolidate_inputs
|
2
|
+
|
3
|
+
Revision ID: d994145b47b6
|
4
|
+
Revises: 66478e1b95e5
|
5
|
+
Create Date: 2025-05-23 08:09:15.515009
|
6
|
+
|
7
|
+
"""
|
8
|
+
|
9
|
+
from typing import Sequence, Union
|
10
|
+
|
11
|
+
import sqlalchemy as sa
|
12
|
+
from alembic import op
|
13
|
+
|
14
|
+
# revision identifiers, used by Alembic.
|
15
|
+
revision: str = "d994145b47b6"
|
16
|
+
down_revision: Union[str, None] = "66478e1b95e5"
|
17
|
+
branch_labels: Union[str, Sequence[str], None] = None
|
18
|
+
depends_on: Union[str, Sequence[str], None] = None
|
19
|
+
|
20
|
+
|
21
|
+
def upgrade() -> None:
|
22
|
+
op.add_column(
|
23
|
+
"workflow_status",
|
24
|
+
sa.Column("inputs", sa.Text(), nullable=True),
|
25
|
+
schema="dbos",
|
26
|
+
)
|
27
|
+
|
28
|
+
|
29
|
+
def downgrade() -> None:
|
30
|
+
op.drop_column("workflow_status", "inputs", schema="dbos")
|
dbos/_queue.py
CHANGED
@@ -7,7 +7,7 @@ from sqlalchemy.exc import OperationalError
|
|
7
7
|
|
8
8
|
from dbos._context import get_local_dbos_context
|
9
9
|
from dbos._logger import dbos_logger
|
10
|
-
from dbos._utils import GlobalParams
|
10
|
+
from dbos._utils import INTERNAL_QUEUE_NAME, GlobalParams
|
11
11
|
|
12
12
|
from ._core import P, R, execute_workflow_by_id, start_workflow, start_workflow_async
|
13
13
|
|
@@ -60,7 +60,7 @@ class Queue:
|
|
60
60
|
from ._dbos import _get_or_create_dbos_registry
|
61
61
|
|
62
62
|
registry = _get_or_create_dbos_registry()
|
63
|
-
if self.name in registry.queue_info_map:
|
63
|
+
if self.name in registry.queue_info_map and self.name != INTERNAL_QUEUE_NAME:
|
64
64
|
dbos_logger.warning(f"Queue {name} has already been declared")
|
65
65
|
registry.queue_info_map[self.name] = self
|
66
66
|
|
@@ -75,7 +75,9 @@ class Queue:
|
|
75
75
|
and context.priority is not None
|
76
76
|
and not self.priority_enabled
|
77
77
|
):
|
78
|
-
dbos_logger.warning(
|
78
|
+
dbos_logger.warning(
|
79
|
+
f"Priority is not enabled for queue {self.name}. Setting priority will not have any effect."
|
80
|
+
)
|
79
81
|
|
80
82
|
dbos = _get_dbos_instance()
|
81
83
|
return start_workflow(dbos, func, self.name, False, *args, **kwargs)
|
dbos/_schemas/system_database.py
CHANGED
@@ -58,6 +58,7 @@ class SystemSchema:
|
|
58
58
|
Column("workflow_deadline_epoch_ms", BigInteger, nullable=True),
|
59
59
|
Column("started_at_epoch_ms", BigInteger(), nullable=True),
|
60
60
|
Column("deduplication_id", Text(), nullable=True),
|
61
|
+
Column("inputs", Text()),
|
61
62
|
Column("priority", Integer(), nullable=False, server_default=text("'0'::int")),
|
62
63
|
Index("workflow_status_created_at_index", "created_at"),
|
63
64
|
Index("workflow_status_executor_id_index", "executor_id"),
|
@@ -88,21 +89,6 @@ class SystemSchema:
|
|
88
89
|
PrimaryKeyConstraint("workflow_uuid", "function_id"),
|
89
90
|
)
|
90
91
|
|
91
|
-
workflow_inputs = Table(
|
92
|
-
"workflow_inputs",
|
93
|
-
metadata_obj,
|
94
|
-
Column(
|
95
|
-
"workflow_uuid",
|
96
|
-
Text,
|
97
|
-
ForeignKey(
|
98
|
-
"workflow_status.workflow_uuid", onupdate="CASCADE", ondelete="CASCADE"
|
99
|
-
),
|
100
|
-
primary_key=True,
|
101
|
-
nullable=False,
|
102
|
-
),
|
103
|
-
Column("inputs", Text, nullable=False),
|
104
|
-
)
|
105
|
-
|
106
92
|
notifications = Table(
|
107
93
|
"notifications",
|
108
94
|
metadata_obj,
|
dbos/_sys_db.py
CHANGED
@@ -140,6 +140,8 @@ class WorkflowStatusInternal(TypedDict):
|
|
140
140
|
deduplication_id: Optional[str]
|
141
141
|
# Priority of the workflow on the queue, starting from 1 ~ 2,147,483,647. Default 0 (highest priority).
|
142
142
|
priority: int
|
143
|
+
# Serialized workflow inputs
|
144
|
+
inputs: str
|
143
145
|
|
144
146
|
|
145
147
|
class EnqueueOptionsInternal(TypedDict):
|
@@ -462,6 +464,7 @@ class SystemDatabase:
|
|
462
464
|
workflow_deadline_epoch_ms=status["workflow_deadline_epoch_ms"],
|
463
465
|
deduplication_id=status["deduplication_id"],
|
464
466
|
priority=status["priority"],
|
467
|
+
inputs=status["inputs"],
|
465
468
|
)
|
466
469
|
.on_conflict_do_update(
|
467
470
|
index_elements=["workflow_uuid"],
|
@@ -642,9 +645,6 @@ class SystemDatabase:
|
|
642
645
|
status = self.get_workflow_status(original_workflow_id)
|
643
646
|
if status is None:
|
644
647
|
raise Exception(f"Workflow {original_workflow_id} not found")
|
645
|
-
inputs = self.get_workflow_inputs(original_workflow_id)
|
646
|
-
if inputs is None:
|
647
|
-
raise Exception(f"Workflow {original_workflow_id} not found")
|
648
648
|
|
649
649
|
with self.engine.begin() as c:
|
650
650
|
# Create an entry for the forked workflow with the same
|
@@ -666,13 +666,7 @@ class SystemDatabase:
|
|
666
666
|
authenticated_roles=status["authenticated_roles"],
|
667
667
|
assumed_role=status["assumed_role"],
|
668
668
|
queue_name=INTERNAL_QUEUE_NAME,
|
669
|
-
|
670
|
-
)
|
671
|
-
# Copy the original workflow's inputs into the forked workflow
|
672
|
-
c.execute(
|
673
|
-
pg.insert(SystemSchema.workflow_inputs).values(
|
674
|
-
workflow_uuid=forked_workflow_id,
|
675
|
-
inputs=_serialization.serialize_args(inputs),
|
669
|
+
inputs=status["inputs"],
|
676
670
|
)
|
677
671
|
)
|
678
672
|
|
@@ -732,6 +726,7 @@ class SystemDatabase:
|
|
732
726
|
SystemSchema.workflow_status.c.workflow_timeout_ms,
|
733
727
|
SystemSchema.workflow_status.c.deduplication_id,
|
734
728
|
SystemSchema.workflow_status.c.priority,
|
729
|
+
SystemSchema.workflow_status.c.inputs,
|
735
730
|
).where(SystemSchema.workflow_status.c.workflow_uuid == workflow_uuid)
|
736
731
|
).fetchone()
|
737
732
|
if row is None:
|
@@ -758,6 +753,7 @@ class SystemDatabase:
|
|
758
753
|
"workflow_timeout_ms": row[15],
|
759
754
|
"deduplication_id": row[16],
|
760
755
|
"priority": row[17],
|
756
|
+
"inputs": row[18],
|
761
757
|
}
|
762
758
|
return status
|
763
759
|
|
@@ -788,53 +784,6 @@ class SystemDatabase:
|
|
788
784
|
pass # CB: I guess we're assuming the WF will show up eventually.
|
789
785
|
time.sleep(1)
|
790
786
|
|
791
|
-
def _update_workflow_inputs(
|
792
|
-
self, workflow_uuid: str, inputs: str, conn: sa.Connection
|
793
|
-
) -> None:
|
794
|
-
if self._debug_mode:
|
795
|
-
raise Exception("called update_workflow_inputs in debug mode")
|
796
|
-
|
797
|
-
cmd = (
|
798
|
-
pg.insert(SystemSchema.workflow_inputs)
|
799
|
-
.values(
|
800
|
-
workflow_uuid=workflow_uuid,
|
801
|
-
inputs=inputs,
|
802
|
-
)
|
803
|
-
.on_conflict_do_update(
|
804
|
-
index_elements=["workflow_uuid"],
|
805
|
-
set_=dict(workflow_uuid=SystemSchema.workflow_inputs.c.workflow_uuid),
|
806
|
-
)
|
807
|
-
.returning(SystemSchema.workflow_inputs.c.inputs)
|
808
|
-
)
|
809
|
-
|
810
|
-
row = conn.execute(cmd).fetchone()
|
811
|
-
if row is not None and row[0] != inputs:
|
812
|
-
# In a distributed environment, scheduled workflows are enqueued multiple times with slightly different timestamps
|
813
|
-
if not workflow_uuid.startswith("sched-"):
|
814
|
-
dbos_logger.warning(
|
815
|
-
f"Workflow {workflow_uuid} has been called multiple times with different inputs"
|
816
|
-
)
|
817
|
-
# TODO: actually changing the input
|
818
|
-
|
819
|
-
return
|
820
|
-
|
821
|
-
@db_retry()
|
822
|
-
def get_workflow_inputs(
|
823
|
-
self, workflow_uuid: str
|
824
|
-
) -> Optional[_serialization.WorkflowInputs]:
|
825
|
-
with self.engine.begin() as c:
|
826
|
-
row = c.execute(
|
827
|
-
sa.select(SystemSchema.workflow_inputs.c.inputs).where(
|
828
|
-
SystemSchema.workflow_inputs.c.workflow_uuid == workflow_uuid
|
829
|
-
)
|
830
|
-
).fetchone()
|
831
|
-
if row is None:
|
832
|
-
return None
|
833
|
-
inputs: _serialization.WorkflowInputs = _serialization.deserialize_args(
|
834
|
-
row[0]
|
835
|
-
)
|
836
|
-
return inputs
|
837
|
-
|
838
787
|
def get_workflows(self, input: GetWorkflowsInput) -> List[WorkflowStatus]:
|
839
788
|
"""
|
840
789
|
Retrieve a list of workflows result and inputs based on the input criteria. The result is a list of external-facing workflow status objects.
|
@@ -855,15 +804,11 @@ class SystemDatabase:
|
|
855
804
|
SystemSchema.workflow_status.c.updated_at,
|
856
805
|
SystemSchema.workflow_status.c.application_version,
|
857
806
|
SystemSchema.workflow_status.c.application_id,
|
858
|
-
SystemSchema.
|
807
|
+
SystemSchema.workflow_status.c.inputs,
|
859
808
|
SystemSchema.workflow_status.c.output,
|
860
809
|
SystemSchema.workflow_status.c.error,
|
861
810
|
SystemSchema.workflow_status.c.workflow_deadline_epoch_ms,
|
862
811
|
SystemSchema.workflow_status.c.workflow_timeout_ms,
|
863
|
-
).join(
|
864
|
-
SystemSchema.workflow_inputs,
|
865
|
-
SystemSchema.workflow_status.c.workflow_uuid
|
866
|
-
== SystemSchema.workflow_inputs.c.workflow_uuid,
|
867
812
|
)
|
868
813
|
if input.sort_desc:
|
869
814
|
query = query.order_by(SystemSchema.workflow_status.c.created_at.desc())
|
@@ -953,39 +898,31 @@ class SystemDatabase:
|
|
953
898
|
"""
|
954
899
|
Retrieve a list of queued workflows result and inputs based on the input criteria. The result is a list of external-facing workflow status objects.
|
955
900
|
"""
|
956
|
-
query = (
|
957
|
-
|
958
|
-
|
959
|
-
|
960
|
-
|
961
|
-
|
962
|
-
|
963
|
-
|
964
|
-
|
965
|
-
|
966
|
-
|
967
|
-
|
968
|
-
|
969
|
-
|
970
|
-
|
971
|
-
|
972
|
-
|
973
|
-
|
974
|
-
|
975
|
-
|
976
|
-
|
977
|
-
|
978
|
-
|
979
|
-
|
980
|
-
SystemSchema.
|
981
|
-
SystemSchema.workflow_status.c.workflow_uuid
|
982
|
-
== SystemSchema.workflow_inputs.c.workflow_uuid,
|
983
|
-
)
|
984
|
-
.where(
|
985
|
-
sa.and_(
|
986
|
-
SystemSchema.workflow_status.c.queue_name.isnot(None),
|
987
|
-
SystemSchema.workflow_status.c.status.in_(["ENQUEUED", "PENDING"]),
|
988
|
-
)
|
901
|
+
query = sa.select(
|
902
|
+
SystemSchema.workflow_status.c.workflow_uuid,
|
903
|
+
SystemSchema.workflow_status.c.status,
|
904
|
+
SystemSchema.workflow_status.c.name,
|
905
|
+
SystemSchema.workflow_status.c.recovery_attempts,
|
906
|
+
SystemSchema.workflow_status.c.config_name,
|
907
|
+
SystemSchema.workflow_status.c.class_name,
|
908
|
+
SystemSchema.workflow_status.c.authenticated_user,
|
909
|
+
SystemSchema.workflow_status.c.authenticated_roles,
|
910
|
+
SystemSchema.workflow_status.c.assumed_role,
|
911
|
+
SystemSchema.workflow_status.c.queue_name,
|
912
|
+
SystemSchema.workflow_status.c.executor_id,
|
913
|
+
SystemSchema.workflow_status.c.created_at,
|
914
|
+
SystemSchema.workflow_status.c.updated_at,
|
915
|
+
SystemSchema.workflow_status.c.application_version,
|
916
|
+
SystemSchema.workflow_status.c.application_id,
|
917
|
+
SystemSchema.workflow_status.c.inputs,
|
918
|
+
SystemSchema.workflow_status.c.output,
|
919
|
+
SystemSchema.workflow_status.c.error,
|
920
|
+
SystemSchema.workflow_status.c.workflow_deadline_epoch_ms,
|
921
|
+
SystemSchema.workflow_status.c.workflow_timeout_ms,
|
922
|
+
).where(
|
923
|
+
sa.and_(
|
924
|
+
SystemSchema.workflow_status.c.queue_name.isnot(None),
|
925
|
+
SystemSchema.workflow_status.c.status.in_(["ENQUEUED", "PENDING"]),
|
989
926
|
)
|
990
927
|
)
|
991
928
|
if input["sort_desc"]:
|
@@ -1895,7 +1832,6 @@ class SystemDatabase:
|
|
1895
1832
|
def init_workflow(
|
1896
1833
|
self,
|
1897
1834
|
status: WorkflowStatusInternal,
|
1898
|
-
inputs: str,
|
1899
1835
|
*,
|
1900
1836
|
max_recovery_attempts: Optional[int],
|
1901
1837
|
) -> tuple[WorkflowStatuses, Optional[int]]:
|
@@ -1906,7 +1842,6 @@ class SystemDatabase:
|
|
1906
1842
|
wf_status, workflow_deadline_epoch_ms = self._insert_workflow_status(
|
1907
1843
|
status, conn, max_recovery_attempts=max_recovery_attempts
|
1908
1844
|
)
|
1909
|
-
self._update_workflow_inputs(status["workflow_uuid"], inputs, conn)
|
1910
1845
|
return wf_status, workflow_deadline_epoch_ms
|
1911
1846
|
|
1912
1847
|
def check_connection(self) -> None:
|
@@ -1,20 +1,20 @@
|
|
1
|
-
dbos-1.3.
|
2
|
-
dbos-1.3.
|
3
|
-
dbos-1.3.
|
4
|
-
dbos-1.3.
|
1
|
+
dbos-1.3.0a8.dist-info/METADATA,sha256=-8b7wnKoWpc5UCVaKOSah7jpJMbC-RjV0i1tQwQ4gw0,13267
|
2
|
+
dbos-1.3.0a8.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
|
3
|
+
dbos-1.3.0a8.dist-info/entry_points.txt,sha256=_QOQ3tVfEjtjBlr1jS4sHqHya9lI2aIEIWkz8dqYp14,58
|
4
|
+
dbos-1.3.0a8.dist-info/licenses/LICENSE,sha256=VGZit_a5-kdw9WT6fY5jxAWVwGQzgLFyPWrcVVUhVNU,1067
|
5
5
|
dbos/__init__.py,sha256=NssPCubaBxdiKarOWa-wViz1hdJSkmBGcpLX_gQ4NeA,891
|
6
6
|
dbos/__main__.py,sha256=G7Exn-MhGrVJVDbgNlpzhfh8WMX_72t3_oJaFT9Lmt8,653
|
7
7
|
dbos/_admin_server.py,sha256=TWXi4drrzKFpKkUmEJpJkQBZxAtOalnhtYicEn2nDK0,10618
|
8
8
|
dbos/_app_db.py,sha256=0PKqpxJ3EbIaak3Wl0lNl3hXvhBfz4EEHaCw1bUOvIM,9937
|
9
9
|
dbos/_classproperty.py,sha256=f0X-_BySzn3yFDRKB2JpCbLYQ9tLwt1XftfshvY7CBs,626
|
10
|
-
dbos/_client.py,sha256=
|
10
|
+
dbos/_client.py,sha256=cQxw1Nbh_vKZ03lONt0EmUhwXBk3B3NczZrmfXXeefY,14667
|
11
11
|
dbos/_conductor/conductor.py,sha256=o0IaZjwnZ2TOyHeP2H4iSX6UnXLXQ4uODvWAKD9hHMs,21703
|
12
12
|
dbos/_conductor/protocol.py,sha256=wgOFZxmS81bv0WCB9dAyg0s6QzldpzVKQDoSPeaX0Ws,6967
|
13
13
|
dbos/_context.py,sha256=5ajoWAmToAfzzmMLylnJZoL4Ny9rBwZWuG05sXadMIA,24798
|
14
|
-
dbos/_core.py,sha256
|
14
|
+
dbos/_core.py,sha256=hvHKi31-3LG5yfWa-KhsnoFrXsV_eT-GeKIZFT4chx8,48533
|
15
15
|
dbos/_croniter.py,sha256=XHAyUyibs_59sJQfSNWkP7rqQY6_XrlfuuCxk4jYqek,47559
|
16
16
|
dbos/_dbos.py,sha256=Y---ozwd9OXzA1o-oWEbnafQkUibblE6o1kUuVZa_90,47163
|
17
|
-
dbos/_dbos_config.py,sha256=
|
17
|
+
dbos/_dbos_config.py,sha256=2CC1YR8lP9W-_NsMUMnTnW-v-70KN4XkbJEeNJ78RlQ,20373
|
18
18
|
dbos/_debug.py,sha256=MNlQVZ6TscGCRQeEEL0VE8Uignvr6dPeDDDefS3xgIE,1823
|
19
19
|
dbos/_docker_pg_helper.py,sha256=tLJXWqZ4S-ExcaPnxg_i6cVxL6ZxrYlZjaGsklY-s2I,6115
|
20
20
|
dbos/_error.py,sha256=q0OQJZTbR8FFHV9hEpAGpz9oWBT5L509zUhmyff7FJw,8500
|
@@ -36,19 +36,20 @@ dbos/_migrations/versions/933e86bdac6a_add_queue_priority.py,sha256=yZX2kGF33skp
|
|
36
36
|
dbos/_migrations/versions/a3b18ad34abe_added_triggers.py,sha256=Rv0ZsZYZ_WdgGEULYsPfnp4YzaO5L198gDTgYY39AVA,2022
|
37
37
|
dbos/_migrations/versions/d76646551a6b_job_queue_limiter.py,sha256=8PyFi8rd6CN-mUro43wGhsg5wcQWKZPRHD6jw8R5pVc,986
|
38
38
|
dbos/_migrations/versions/d76646551a6c_workflow_queue.py,sha256=G942nophZ2uC2vc4hGBC02Ptng1715roTjY3xiyzZU4,729
|
39
|
+
dbos/_migrations/versions/d994145b47b6_consolidate_inputs.py,sha256=_J0jP247fuo66fzOmLlKFO9FJ_CRBXlqa2lnLrcXugQ,672
|
39
40
|
dbos/_migrations/versions/eab0cc1d9a14_job_queue.py,sha256=uvhFOtqbBreCePhAxZfIT0qCAI7BiZTou9wt6QnbY7c,1412
|
40
41
|
dbos/_migrations/versions/f4b9b32ba814_functionname_childid_op_outputs.py,sha256=m90Lc5YH0ZISSq1MyxND6oq3RZrZKrIqEsZtwJ1jWxA,1049
|
41
42
|
dbos/_outcome.py,sha256=EXxBg4jXCVJsByDQ1VOCIedmbeq_03S6d-p1vqQrLFU,6810
|
42
|
-
dbos/_queue.py,sha256=
|
43
|
+
dbos/_queue.py,sha256=Csp6wrLg6TyZJMeAWkbQAiviIDiucbP-qrBaqp2WJwY,4097
|
43
44
|
dbos/_recovery.py,sha256=jVMexjfCCNopzyn8gVQzJCmGJaP9G3C1EFaoCQ_Nh7g,2564
|
44
45
|
dbos/_registrations.py,sha256=CZt1ElqDjCT7hz6iyT-1av76Yu-iuwu_c9lozO87wvM,7303
|
45
46
|
dbos/_roles.py,sha256=iOsgmIAf1XVzxs3gYWdGRe1B880YfOw5fpU7Jwx8_A8,2271
|
46
47
|
dbos/_scheduler.py,sha256=SR1oRZRcVzYsj-JauV2LA8JtwTkt8mru7qf6H1AzQ1U,2027
|
47
48
|
dbos/_schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
48
49
|
dbos/_schemas/application_database.py,sha256=SypAS9l9EsaBHFn9FR8jmnqt01M74d9AF1AMa4m2hhI,1040
|
49
|
-
dbos/_schemas/system_database.py,sha256=
|
50
|
+
dbos/_schemas/system_database.py,sha256=rbFKggONdvvbb45InvGz0TM6a7c-Ux9dcaL-h_7Z7pU,4438
|
50
51
|
dbos/_serialization.py,sha256=bWuwhXSQcGmiazvhJHA5gwhrRWxtmFmcCFQSDJnqqkU,3666
|
51
|
-
dbos/_sys_db.py,sha256=
|
52
|
+
dbos/_sys_db.py,sha256=67z_K0aKH8M_oRs9c13zhp6skpT-sLAw8nYRBa3JM5w,77844
|
52
53
|
dbos/_templates/dbos-db-starter/README.md,sha256=GhxhBj42wjTt1fWEtwNriHbJuKb66Vzu89G4pxNHw2g,930
|
53
54
|
dbos/_templates/dbos-db-starter/__package/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
54
55
|
dbos/_templates/dbos-db-starter/__package/main.py.dbos,sha256=aQnBPSSQpkB8ERfhf7gB7P9tsU6OPKhZscfeh0yiaD8,2702
|
@@ -68,4 +69,4 @@ dbos/cli/cli.py,sha256=EemOMqNpzSU2BQhAxV_e59pBRITDLwt49HF6W3uWBZg,20775
|
|
68
69
|
dbos/dbos-config.schema.json,sha256=CjaspeYmOkx6Ip_pcxtmfXJTn_YGdSx_0pcPBF7KZmo,6060
|
69
70
|
dbos/py.typed,sha256=QfzXT1Ktfk3Rj84akygc7_42z0lRpCq0Ilh8OXI6Zas,44
|
70
71
|
version/__init__.py,sha256=L4sNxecRuqdtSFdpUGX3TtBi9KL3k7YsZVIvv-fv9-A,1678
|
71
|
-
dbos-1.3.
|
72
|
+
dbos-1.3.0a8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|