dbos 0.26.0a23__tar.gz → 0.26.0a25__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.

Potentially problematic release.


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

Files changed (104) hide show
  1. {dbos-0.26.0a23 → dbos-0.26.0a25}/PKG-INFO +1 -1
  2. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_dbos.py +4 -5
  3. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_dbos_config.py +19 -10
  4. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/dbos-config.schema.json +9 -9
  5. {dbos-0.26.0a23 → dbos-0.26.0a25}/pyproject.toml +1 -1
  6. {dbos-0.26.0a23 → dbos-0.26.0a25}/LICENSE +0 -0
  7. {dbos-0.26.0a23 → dbos-0.26.0a25}/README.md +0 -0
  8. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/__init__.py +0 -0
  9. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/__main__.py +0 -0
  10. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_admin_server.py +0 -0
  11. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_app_db.py +0 -0
  12. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_classproperty.py +0 -0
  13. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_client.py +0 -0
  14. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_conductor/conductor.py +0 -0
  15. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_conductor/protocol.py +0 -0
  16. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_context.py +0 -0
  17. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_core.py +0 -0
  18. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_croniter.py +0 -0
  19. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_debug.py +0 -0
  20. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_docker_pg_helper.py +0 -0
  21. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_error.py +0 -0
  22. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_event_loop.py +0 -0
  23. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_fastapi.py +0 -0
  24. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_flask.py +0 -0
  25. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_kafka.py +0 -0
  26. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_kafka_message.py +0 -0
  27. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_logger.py +0 -0
  28. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/env.py +0 -0
  29. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/script.py.mako +0 -0
  30. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/04ca4f231047_workflow_queues_executor_id.py +0 -0
  31. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/50f3227f0b4b_fix_job_queue.py +0 -0
  32. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/5c361fc04708_added_system_tables.py +0 -0
  33. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/83f3732ae8e7_workflow_timeout.py +0 -0
  34. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/a3b18ad34abe_added_triggers.py +0 -0
  35. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/d76646551a6b_job_queue_limiter.py +0 -0
  36. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/d76646551a6c_workflow_queue.py +0 -0
  37. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/eab0cc1d9a14_job_queue.py +0 -0
  38. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_migrations/versions/f4b9b32ba814_functionname_childid_op_outputs.py +0 -0
  39. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_outcome.py +0 -0
  40. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_queue.py +0 -0
  41. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_recovery.py +0 -0
  42. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_registrations.py +0 -0
  43. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_request.py +0 -0
  44. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_roles.py +0 -0
  45. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_scheduler.py +0 -0
  46. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_schemas/__init__.py +0 -0
  47. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_schemas/application_database.py +0 -0
  48. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_schemas/system_database.py +0 -0
  49. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_serialization.py +0 -0
  50. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_sys_db.py +0 -0
  51. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/README.md +0 -0
  52. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/__package/__init__.py +0 -0
  53. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/__package/main.py +0 -0
  54. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/__package/schema.py +0 -0
  55. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/alembic.ini +0 -0
  56. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/dbos-config.yaml.dbos +0 -0
  57. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/migrations/env.py.dbos +0 -0
  58. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/migrations/script.py.mako +0 -0
  59. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/migrations/versions/2024_07_31_180642_init.py +0 -0
  60. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_templates/dbos-db-starter/start_postgres_docker.py +0 -0
  61. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_tracer.py +0 -0
  62. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_utils.py +0 -0
  63. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/_workflow_commands.py +0 -0
  64. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/cli/_github_init.py +0 -0
  65. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/cli/_template_init.py +0 -0
  66. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/cli/cli.py +0 -0
  67. {dbos-0.26.0a23 → dbos-0.26.0a25}/dbos/py.typed +0 -0
  68. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/__init__.py +0 -0
  69. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/atexit_no_ctor.py +0 -0
  70. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/atexit_no_launch.py +0 -0
  71. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/classdefs.py +0 -0
  72. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/client_collateral.py +0 -0
  73. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/client_worker.py +0 -0
  74. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/conftest.py +0 -0
  75. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/dupname_classdefs1.py +0 -0
  76. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/dupname_classdefsa.py +0 -0
  77. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/more_classdefs.py +0 -0
  78. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/queuedworkflow.py +0 -0
  79. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_admin_server.py +0 -0
  80. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_async.py +0 -0
  81. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_classdecorators.py +0 -0
  82. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_client.py +0 -0
  83. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_concurrency.py +0 -0
  84. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_config.py +0 -0
  85. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_croniter.py +0 -0
  86. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_dbos.py +0 -0
  87. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_debug.py +0 -0
  88. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_docker_secrets.py +0 -0
  89. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_failures.py +0 -0
  90. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_fastapi.py +0 -0
  91. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_fastapi_roles.py +0 -0
  92. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_flask.py +0 -0
  93. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_kafka.py +0 -0
  94. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_outcome.py +0 -0
  95. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_package.py +0 -0
  96. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_queue.py +0 -0
  97. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_scheduler.py +0 -0
  98. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_schema_migration.py +0 -0
  99. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_singleton.py +0 -0
  100. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_spans.py +0 -0
  101. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_sqlalchemy.py +0 -0
  102. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_workflow_introspection.py +0 -0
  103. {dbos-0.26.0a23 → dbos-0.26.0a25}/tests/test_workflow_management.py +0 -0
  104. {dbos-0.26.0a23 → dbos-0.26.0a25}/version/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dbos
3
- Version: 0.26.0a23
3
+ Version: 0.26.0a25
4
4
  Summary: Ultra-lightweight durable execution in Python
5
5
  Author-Email: "DBOS, Inc." <contact@dbos.dev>
6
6
  License: MIT
@@ -33,11 +33,7 @@ from opentelemetry.trace import Span
33
33
  from dbos._conductor.conductor import ConductorWebsocket
34
34
  from dbos._sys_db import WorkflowStatus
35
35
  from dbos._utils import INTERNAL_QUEUE_NAME, GlobalParams
36
- from dbos._workflow_commands import (
37
- fork_workflow,
38
- list_queued_workflows,
39
- list_workflows,
40
- )
36
+ from dbos._workflow_commands import fork_workflow, list_queued_workflows, list_workflows
41
37
 
42
38
  from ._classproperty import classproperty
43
39
  from ._core import (
@@ -351,6 +347,9 @@ class DBOS:
351
347
  # If no config is provided, load it from dbos-config.yaml
352
348
  unvalidated_config = load_config(run_process_config=False)
353
349
  elif is_dbos_configfile(config):
350
+ dbos_logger.warning(
351
+ "ConfigFile config strutcture detected. This will be deprecated in favor of DBOSConfig in an upcoming release."
352
+ )
354
353
  unvalidated_config = cast(ConfigFile, config)
355
354
  if os.environ.get("DBOS__CLOUD") == "true":
356
355
  unvalidated_config = overwrite_config(unvalidated_config)
@@ -58,19 +58,28 @@ class RuntimeConfig(TypedDict, total=False):
58
58
 
59
59
 
60
60
  class DatabaseConfig(TypedDict, total=False):
61
- hostname: str
62
- port: int
63
- username: str
64
- password: str
65
- connectionTimeoutMillis: Optional[int]
66
- app_db_name: str
61
+ """
62
+ Internal data structure containing the DBOS database configuration.
63
+ Attributes:
64
+ app_db_pool_size (int): Application database pool size
65
+ sys_db_name (str): System database name
66
+ sys_db_pool_size (int): System database pool size
67
+ migrate (List[str]): Migration commands to run on startup
68
+ """
69
+
70
+ hostname: str # Will be removed in a future version
71
+ port: int # Will be removed in a future version
72
+ username: str # Will be removed in a future version
73
+ password: str # Will be removed in a future version
74
+ connectionTimeoutMillis: Optional[int] # Will be removed in a future version
75
+ app_db_name: str # Will be removed in a future version
67
76
  app_db_pool_size: Optional[int]
68
77
  sys_db_name: Optional[str]
69
78
  sys_db_pool_size: Optional[int]
70
- ssl: Optional[bool]
71
- ssl_ca: Optional[str]
79
+ ssl: Optional[bool] # Will be removed in a future version
80
+ ssl_ca: Optional[str] # Will be removed in a future version
72
81
  migrate: Optional[List[str]]
73
- rollback: Optional[List[str]]
82
+ rollback: Optional[List[str]] # Will be removed in a future version
74
83
 
75
84
 
76
85
  def parse_database_url_to_dbconfig(database_url: str) -> DatabaseConfig:
@@ -117,7 +126,7 @@ class ConfigFile(TypedDict, total=False):
117
126
  Attributes:
118
127
  name (str): Application name
119
128
  runtimeConfig (RuntimeConfig): Configuration for request serving
120
- database (DatabaseConfig): Configuration for the application and system databases
129
+ database (DatabaseConfig): Configure pool sizes, migrate commands
121
130
  database_url (str): Database connection string
122
131
  telemetry (TelemetryConfig): Configuration for tracing / logging
123
132
  env (Dict[str,str]): Environment varialbes
@@ -25,17 +25,17 @@
25
25
  "properties": {
26
26
  "hostname": {
27
27
  "type": ["string", "null"],
28
- "description": "The hostname or IP address of the application database",
28
+ "description": "The hostname or IP address of the application database. DEPRECATED: Use database_url instead",
29
29
  "deprecated": true
30
30
  },
31
31
  "port": {
32
32
  "type": ["number", "null"],
33
- "description": "The port number of the application database",
33
+ "description": "The port number of the application database. DEPRECATED: Use database_url instead",
34
34
  "deprecated": true
35
35
  },
36
36
  "username": {
37
37
  "type": ["string", "null"],
38
- "description": "The username to use when connecting to the application database",
38
+ "description": "The username to use when connecting to the application database. DEPRECATED: Use database_url instead",
39
39
  "not": {
40
40
  "enum": ["dbos"]
41
41
  },
@@ -43,17 +43,17 @@
43
43
  },
44
44
  "password": {
45
45
  "type": ["string", "null"],
46
- "description": "The password to use when connecting to the application database. Developers are strongly encouraged to use environment variable substitution (${VAR_NAME}) or Docker secrets (${DOCKER_SECRET:SECRET_NAME}) to avoid storing secrets in source.",
46
+ "description": "The password to use when connecting to the application database. Developers are strongly encouraged to use environment variable substitution (${VAR_NAME}) or Docker secrets (${DOCKER_SECRET:SECRET_NAME}) to avoid storing secrets in source. DEPRECATED: Use database_url instead",
47
47
  "deprecated": true
48
48
  },
49
49
  "connectionTimeoutMillis": {
50
50
  "type": ["number", "null"],
51
- "description": "The number of milliseconds the system waits before timing out when connecting to the application database",
51
+ "description": "The number of milliseconds the system waits before timing out when connecting to the application database. DEPRECATED: Use database_url instead",
52
52
  "deprecated": true
53
53
  },
54
54
  "app_db_name": {
55
55
  "type": ["string", "null"],
56
- "description": "The name of the application database",
56
+ "description": "The name of the application database. DEPRECATED: Use database_url instead",
57
57
  "deprecated": true
58
58
  },
59
59
  "sys_db_name": {
@@ -62,12 +62,12 @@
62
62
  },
63
63
  "ssl": {
64
64
  "type": ["boolean", "null"],
65
- "description": "Use SSL/TLS to securely connect to the database (default: true)",
65
+ "description": "Use SSL/TLS to securely connect to the database (default: true). DEPRECATED: Use database_url instead",
66
66
  "deprecated": true
67
67
  },
68
68
  "ssl_ca": {
69
69
  "type": ["string", "null"],
70
- "description": "If using SSL/TLS to securely connect to a database, path to an SSL root certificate file",
70
+ "description": "If using SSL/TLS to securely connect to a database, path to an SSL root certificate file. DEPRECATED: Use database_url instead",
71
71
  "deprecated": true
72
72
  },
73
73
  "app_db_client": {
@@ -86,7 +86,7 @@
86
86
  },
87
87
  "rollback": {
88
88
  "type": "array",
89
- "description": "Specify a list of user DB rollback commands to run",
89
+ "description": "Specify a list of user DB rollback commands to run. DEPRECATED",
90
90
  "deprecated": true
91
91
  }
92
92
  }
@@ -28,7 +28,7 @@ dependencies = [
28
28
  ]
29
29
  requires-python = ">=3.9"
30
30
  readme = "README.md"
31
- version = "0.26.0a23"
31
+ version = "0.26.0a25"
32
32
 
33
33
  [project.license]
34
34
  text = "MIT"
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