loom-core 0.1.0__tar.gz → 0.1.2__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.
Files changed (61) hide show
  1. {loom_core-0.1.0 → loom_core-0.1.2}/MANIFEST.in +1 -1
  2. {loom_core-0.1.0/loom_core.egg-info → loom_core-0.1.2}/PKG-INFO +2 -45
  3. {loom_core-0.1.0 → loom_core-0.1.2}/README.md +1 -44
  4. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/__init__.py +7 -7
  5. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/database.py +1 -1
  6. {loom_core-0.1.0 → loom_core-0.1.2/loom_core.egg-info}/PKG-INFO +2 -45
  7. loom_core-0.1.2/loom_core.egg-info/SOURCES.txt +56 -0
  8. loom_core-0.1.2/loom_core.egg-info/entry_points.txt +2 -0
  9. loom_core-0.1.2/loom_core.egg-info/top_level.txt +1 -0
  10. {loom_core-0.1.0 → loom_core-0.1.2}/pyproject.toml +5 -5
  11. {loom_core-0.1.0 → loom_core-0.1.2}/setup.py +2 -2
  12. loom_core-0.1.0/loom_core.egg-info/SOURCES.txt +0 -56
  13. loom_core-0.1.0/loom_core.egg-info/entry_points.txt +0 -2
  14. loom_core-0.1.0/loom_core.egg-info/top_level.txt +0 -1
  15. {loom_core-0.1.0 → loom_core-0.1.2}/LICENSE +0 -0
  16. {loom_core-0.1.0 → loom_core-0.1.2}/QUICKSTART.md +0 -0
  17. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/cli/__init__.py +0 -0
  18. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/cli/cli.py +0 -0
  19. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/common/activity.py +0 -0
  20. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/common/config.py +0 -0
  21. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/common/errors.py +0 -0
  22. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/common/workflow.py +0 -0
  23. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/__init__.py +0 -0
  24. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/compiled.py +0 -0
  25. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/context.py +0 -0
  26. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/engine.py +0 -0
  27. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/handle.py +0 -0
  28. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/logger.py +0 -0
  29. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/runner.py +0 -0
  30. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/state.py +0 -0
  31. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/worker.py +0 -0
  32. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/core/workflow.py +0 -0
  33. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/database/__init__.py +0 -0
  34. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/database/db.py +0 -0
  35. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/decorators/__init__.py +0 -0
  36. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/decorators/activity.py +0 -0
  37. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/decorators/workflow.py +0 -0
  38. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/lib/progress.py +0 -0
  39. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/lib/utils.py +0 -0
  40. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/001_setup_pragma.sql +0 -0
  41. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/002_create_workflows.sql +0 -0
  42. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/003.create_events.sql +0 -0
  43. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/004.create_tasks.sql +0 -0
  44. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/005.create_indexes.sql +0 -0
  45. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/006_auto_update_triggers.sql +0 -0
  46. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/down/007_create_logs.sql +0 -0
  47. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/001_setup_pragma.sql +0 -0
  48. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/002_create_workflows.sql +0 -0
  49. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/003_create_events.sql +0 -0
  50. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/004_create_tasks.sql +0 -0
  51. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/005_create_indexes.sql +0 -0
  52. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/006_auto_update_triggers.sql +0 -0
  53. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/migrations/up/007_create_logs.sql +0 -0
  54. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/__init__.py +0 -0
  55. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/activity.py +0 -0
  56. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/events.py +0 -0
  57. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/tasks.py +0 -0
  58. {loom_core-0.1.0/src → loom_core-0.1.2/loom}/schemas/workflow.py +0 -0
  59. {loom_core-0.1.0 → loom_core-0.1.2}/loom_core.egg-info/dependency_links.txt +0 -0
  60. {loom_core-0.1.0 → loom_core-0.1.2}/loom_core.egg-info/requires.txt +0 -0
  61. {loom_core-0.1.0 → loom_core-0.1.2}/setup.cfg +0 -0
@@ -1,7 +1,7 @@
1
1
  include README.md
2
2
  include QUICKSTART.md
3
3
  include LICENSE
4
- recursive-include src/migrations *.sql
4
+ recursive-include loom/migrations *.sql
5
5
  recursive-exclude tests *
6
6
  recursive-exclude examples *
7
7
  recursive-exclude __pycache__ *
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: loom-core
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: Durable workflow orchestration engine for Python
5
5
  Home-page: https://github.com/satadeep3927/loom
6
6
  Author: Satadeep Dasgupta
@@ -202,34 +202,7 @@ loom stats
202
202
 
203
203
  ### Core Components
204
204
 
205
- ```
206
- ┌─────────────────────────────────────────────────────────┐
207
- │ Workflow │
208
- │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
209
- │ │ Step 1 │→ │ Step 2 │→ │ Step 3 │ │
210
- │ └──────────┘ └──────────┘ └──────────┘ │
211
- └─────────────────────────────────────────────────────────┘
212
-
213
- ┌─────────────────────────────────────────────────────────┐
214
- │ WorkflowContext │
215
- │ • State Management (StateProxy) │
216
- │ • Activity Execution │
217
- │ • Event Replay & Cursor │
218
- │ • Logger (replay-safe) │
219
- └─────────────────────────────────────────────────────────┘
220
-
221
- ┌─────────────────────────────────────────────────────────┐
222
- │ Engine │
223
- │ • replay_until_block() - Step execution │
224
- │ • replay_activity() - Activity retry │
225
- │ • Event matching & determinism │
226
- └─────────────────────────────────────────────────────────┘
227
-
228
- ┌─────────────────────────────────────────────────────────┐
229
- │ Database (SQLite) │
230
- │ • workflows • events • tasks • logs │
231
- └─────────────────────────────────────────────────────────┘
232
- ```
205
+ ![Architecture](docs/diagram.svg)
233
206
 
234
207
  ### Event Types
235
208
 
@@ -306,22 +279,6 @@ Contributions welcome! Please ensure:
306
279
  3. Type checking: `mypy .`
307
280
  4. Linting: `ruff check .`
308
281
 
309
- ## License
310
-
311
- MIT License - see LICENSE file for details
312
-
313
- ## Acknowledgments
314
-
315
- Inspired by:
316
- - [Temporal](https://temporal.io/) - The workflow orchestration platform
317
- - [Durable Task Framework](https://github.com/Azure/durabletask) - Microsoft's durable task library
318
- - [Cadence](https://cadenceworkflow.io/) - Uber's workflow platform
319
-
320
- ---
321
-
322
- **Built withpy src`
323
- 4. Linting: `ruff check src`
324
-
325
282
  ## 📝 License
326
283
 
327
284
  MIT License - see LICENSE file for details
@@ -163,34 +163,7 @@ loom stats
163
163
 
164
164
  ### Core Components
165
165
 
166
- ```
167
- ┌─────────────────────────────────────────────────────────┐
168
- │ Workflow │
169
- │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
170
- │ │ Step 1 │→ │ Step 2 │→ │ Step 3 │ │
171
- │ └──────────┘ └──────────┘ └──────────┘ │
172
- └─────────────────────────────────────────────────────────┘
173
-
174
- ┌─────────────────────────────────────────────────────────┐
175
- │ WorkflowContext │
176
- │ • State Management (StateProxy) │
177
- │ • Activity Execution │
178
- │ • Event Replay & Cursor │
179
- │ • Logger (replay-safe) │
180
- └─────────────────────────────────────────────────────────┘
181
-
182
- ┌─────────────────────────────────────────────────────────┐
183
- │ Engine │
184
- │ • replay_until_block() - Step execution │
185
- │ • replay_activity() - Activity retry │
186
- │ • Event matching & determinism │
187
- └─────────────────────────────────────────────────────────┘
188
-
189
- ┌─────────────────────────────────────────────────────────┐
190
- │ Database (SQLite) │
191
- │ • workflows • events • tasks • logs │
192
- └─────────────────────────────────────────────────────────┘
193
- ```
166
+ ![Architecture](docs/diagram.svg)
194
167
 
195
168
  ### Event Types
196
169
 
@@ -267,22 +240,6 @@ Contributions welcome! Please ensure:
267
240
  3. Type checking: `mypy .`
268
241
  4. Linting: `ruff check .`
269
242
 
270
- ## License
271
-
272
- MIT License - see LICENSE file for details
273
-
274
- ## Acknowledgments
275
-
276
- Inspired by:
277
- - [Temporal](https://temporal.io/) - The workflow orchestration platform
278
- - [Durable Task Framework](https://github.com/Azure/durabletask) - Microsoft's durable task library
279
- - [Cadence](https://cadenceworkflow.io/) - Uber's workflow platform
280
-
281
- ---
282
-
283
- **Built withpy src`
284
- 4. Linting: `ruff check src`
285
-
286
243
  ## 📝 License
287
244
 
288
245
  MIT License - see LICENSE file for details
@@ -17,13 +17,13 @@ Example:
17
17
  ... await ctx.state.set("result", result)
18
18
  """
19
19
 
20
- from src.core.context import WorkflowContext
21
- from src.core.runner import run_once
22
- from src.core.worker import WorkflowWorker, start_worker
23
- from src.core.workflow import Workflow
24
- from src.database.db import Database
25
- from src.decorators.activity import activity
26
- from src.decorators.workflow import step, workflow
20
+ from loom.core.context import WorkflowContext
21
+ from loom.core.runner import run_once
22
+ from loom.core.worker import WorkflowWorker, start_worker
23
+ from loom.core.workflow import Workflow
24
+ from loom.database.db import Database
25
+ from loom.decorators.activity import activity
26
+ from loom.decorators.workflow import step, workflow
27
27
 
28
28
  __version__ = "0.1.0"
29
29
 
@@ -1,6 +1,6 @@
1
1
  from typing import TypedDict
2
2
 
3
- from src.schemas.workflow import Step
3
+ from loom.schemas.workflow import Step
4
4
 
5
5
 
6
6
  class Migration(TypedDict):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: loom-core
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: Durable workflow orchestration engine for Python
5
5
  Home-page: https://github.com/satadeep3927/loom
6
6
  Author: Satadeep Dasgupta
@@ -202,34 +202,7 @@ loom stats
202
202
 
203
203
  ### Core Components
204
204
 
205
- ```
206
- ┌─────────────────────────────────────────────────────────┐
207
- │ Workflow │
208
- │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
209
- │ │ Step 1 │→ │ Step 2 │→ │ Step 3 │ │
210
- │ └──────────┘ └──────────┘ └──────────┘ │
211
- └─────────────────────────────────────────────────────────┘
212
-
213
- ┌─────────────────────────────────────────────────────────┐
214
- │ WorkflowContext │
215
- │ • State Management (StateProxy) │
216
- │ • Activity Execution │
217
- │ • Event Replay & Cursor │
218
- │ • Logger (replay-safe) │
219
- └─────────────────────────────────────────────────────────┘
220
-
221
- ┌─────────────────────────────────────────────────────────┐
222
- │ Engine │
223
- │ • replay_until_block() - Step execution │
224
- │ • replay_activity() - Activity retry │
225
- │ • Event matching & determinism │
226
- └─────────────────────────────────────────────────────────┘
227
-
228
- ┌─────────────────────────────────────────────────────────┐
229
- │ Database (SQLite) │
230
- │ • workflows • events • tasks • logs │
231
- └─────────────────────────────────────────────────────────┘
232
- ```
205
+ ![Architecture](docs/diagram.svg)
233
206
 
234
207
  ### Event Types
235
208
 
@@ -306,22 +279,6 @@ Contributions welcome! Please ensure:
306
279
  3. Type checking: `mypy .`
307
280
  4. Linting: `ruff check .`
308
281
 
309
- ## License
310
-
311
- MIT License - see LICENSE file for details
312
-
313
- ## Acknowledgments
314
-
315
- Inspired by:
316
- - [Temporal](https://temporal.io/) - The workflow orchestration platform
317
- - [Durable Task Framework](https://github.com/Azure/durabletask) - Microsoft's durable task library
318
- - [Cadence](https://cadenceworkflow.io/) - Uber's workflow platform
319
-
320
- ---
321
-
322
- **Built withpy src`
323
- 4. Linting: `ruff check src`
324
-
325
282
  ## 📝 License
326
283
 
327
284
  MIT License - see LICENSE file for details
@@ -0,0 +1,56 @@
1
+ LICENSE
2
+ MANIFEST.in
3
+ QUICKSTART.md
4
+ README.md
5
+ pyproject.toml
6
+ setup.py
7
+ loom/__init__.py
8
+ loom/cli/__init__.py
9
+ loom/cli/cli.py
10
+ loom/common/activity.py
11
+ loom/common/config.py
12
+ loom/common/errors.py
13
+ loom/common/workflow.py
14
+ loom/core/__init__.py
15
+ loom/core/compiled.py
16
+ loom/core/context.py
17
+ loom/core/engine.py
18
+ loom/core/handle.py
19
+ loom/core/logger.py
20
+ loom/core/runner.py
21
+ loom/core/state.py
22
+ loom/core/worker.py
23
+ loom/core/workflow.py
24
+ loom/database/__init__.py
25
+ loom/database/db.py
26
+ loom/decorators/__init__.py
27
+ loom/decorators/activity.py
28
+ loom/decorators/workflow.py
29
+ loom/lib/progress.py
30
+ loom/lib/utils.py
31
+ loom/migrations/down/001_setup_pragma.sql
32
+ loom/migrations/down/002_create_workflows.sql
33
+ loom/migrations/down/003.create_events.sql
34
+ loom/migrations/down/004.create_tasks.sql
35
+ loom/migrations/down/005.create_indexes.sql
36
+ loom/migrations/down/006_auto_update_triggers.sql
37
+ loom/migrations/down/007_create_logs.sql
38
+ loom/migrations/up/001_setup_pragma.sql
39
+ loom/migrations/up/002_create_workflows.sql
40
+ loom/migrations/up/003_create_events.sql
41
+ loom/migrations/up/004_create_tasks.sql
42
+ loom/migrations/up/005_create_indexes.sql
43
+ loom/migrations/up/006_auto_update_triggers.sql
44
+ loom/migrations/up/007_create_logs.sql
45
+ loom/schemas/__init__.py
46
+ loom/schemas/activity.py
47
+ loom/schemas/database.py
48
+ loom/schemas/events.py
49
+ loom/schemas/tasks.py
50
+ loom/schemas/workflow.py
51
+ loom_core.egg-info/PKG-INFO
52
+ loom_core.egg-info/SOURCES.txt
53
+ loom_core.egg-info/dependency_links.txt
54
+ loom_core.egg-info/entry_points.txt
55
+ loom_core.egg-info/requires.txt
56
+ loom_core.egg-info/top_level.txt
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ loom = loom.cli.cli:cli
@@ -0,0 +1 @@
1
+ loom
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "loom-core"
7
- version = "0.1.0"
7
+ version = "0.1.2"
8
8
  description = "Durable workflow orchestration engine for Python"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -41,7 +41,7 @@ dev = [
41
41
  ]
42
42
 
43
43
  [project.scripts]
44
- loom = "src.cli.cli:cli"
44
+ loom = "loom.cli.cli:cli"
45
45
 
46
46
  [project.urls]
47
47
  Homepage = "https://github.com/satadeep3927/loom"
@@ -50,11 +50,11 @@ Repository = "https://github.com/satadeep3927/loom"
50
50
  Issues = "https://github.com/satadeep3927/loom/issues"
51
51
 
52
52
  [tool.setuptools]
53
- packages = ["src", "src.common", "src.core", "src.database", "src.decorators", "src.lib", "src.schemas", "src.cli", "src.migrations"]
53
+ packages = ["loom", "loom.common", "loom.core", "loom.database", "loom.decorators", "loom.lib", "loom.schemas", "loom.cli", "loom.migrations"]
54
54
  include-package-data = true
55
55
 
56
56
  [tool.setuptools.package-data]
57
- src = ["migrations/up/*.sql", "migrations/down/*.sql"]
57
+ loom = ["migrations/up/*.sql", "migrations/down/*.sql"]
58
58
 
59
59
  [tool.black]
60
60
  line-length = 88
@@ -78,7 +78,7 @@ exclude = ["setup.py", "tests", "examples"]
78
78
  testpaths = ["tests"]
79
79
  pythonpath = ["."]
80
80
  asyncio_mode = "auto"
81
- addopts = "-v --cov=src --cov-report=term-missing"
81
+ addopts = "-v --cov=loom --cov-report=term-missing"
82
82
 
83
83
  [tool.ruff]
84
84
  line-length = 88
@@ -16,7 +16,7 @@ setup(
16
16
  url="https://github.com/satadeep3927/loom",
17
17
  packages=find_packages(exclude=["tests", "tests.*", "examples", "examples.*"]),
18
18
  package_data={
19
- "src": ["migrations/up/*.sql", "migrations/down/*.sql"],
19
+ "loom": ["migrations/up/*.sql", "migrations/down/*.sql"],
20
20
  },
21
21
  include_package_data=True,
22
22
  classifiers=[
@@ -46,7 +46,7 @@ setup(
46
46
  },
47
47
  entry_points={
48
48
  "console_scripts": [
49
- "loom=src.cli.cli:cli",
49
+ "loom=loom.cli.cli:cli",
50
50
  ],
51
51
  },
52
52
  )
@@ -1,56 +0,0 @@
1
- LICENSE
2
- MANIFEST.in
3
- QUICKSTART.md
4
- README.md
5
- pyproject.toml
6
- setup.py
7
- loom_core.egg-info/PKG-INFO
8
- loom_core.egg-info/SOURCES.txt
9
- loom_core.egg-info/dependency_links.txt
10
- loom_core.egg-info/entry_points.txt
11
- loom_core.egg-info/requires.txt
12
- loom_core.egg-info/top_level.txt
13
- src/__init__.py
14
- src/cli/__init__.py
15
- src/cli/cli.py
16
- src/common/activity.py
17
- src/common/config.py
18
- src/common/errors.py
19
- src/common/workflow.py
20
- src/core/__init__.py
21
- src/core/compiled.py
22
- src/core/context.py
23
- src/core/engine.py
24
- src/core/handle.py
25
- src/core/logger.py
26
- src/core/runner.py
27
- src/core/state.py
28
- src/core/worker.py
29
- src/core/workflow.py
30
- src/database/__init__.py
31
- src/database/db.py
32
- src/decorators/__init__.py
33
- src/decorators/activity.py
34
- src/decorators/workflow.py
35
- src/lib/progress.py
36
- src/lib/utils.py
37
- src/migrations/down/001_setup_pragma.sql
38
- src/migrations/down/002_create_workflows.sql
39
- src/migrations/down/003.create_events.sql
40
- src/migrations/down/004.create_tasks.sql
41
- src/migrations/down/005.create_indexes.sql
42
- src/migrations/down/006_auto_update_triggers.sql
43
- src/migrations/down/007_create_logs.sql
44
- src/migrations/up/001_setup_pragma.sql
45
- src/migrations/up/002_create_workflows.sql
46
- src/migrations/up/003_create_events.sql
47
- src/migrations/up/004_create_tasks.sql
48
- src/migrations/up/005_create_indexes.sql
49
- src/migrations/up/006_auto_update_triggers.sql
50
- src/migrations/up/007_create_logs.sql
51
- src/schemas/__init__.py
52
- src/schemas/activity.py
53
- src/schemas/database.py
54
- src/schemas/events.py
55
- src/schemas/tasks.py
56
- src/schemas/workflow.py
@@ -1,2 +0,0 @@
1
- [console_scripts]
2
- loom = src.cli.cli:cli
@@ -1 +0,0 @@
1
- src
File without changes
File without changes
File without changes
File without changes