-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
44 lines (38 loc) · 1.58 KB
/
pyproject.toml
File metadata and controls
44 lines (38 loc) · 1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "queue_workflows"
version = "0.3.0"
description = "Postgres-as-queue workflow engine (SKIP LOCKED claim, lease reclaim, DAG dispatch, GPU warm-model cache)."
readme = "README.md"
requires-python = ">=3.10"
license = "MIT"
license-files = ["LICENSE"]
authors = [{ name = "Robert Zieliński", email = "hello@robertz.co" }]
keywords = ["postgres", "queue", "workflow", "dag", "skip-locked", "task-queue"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Topic :: Database",
"Topic :: System :: Distributed Computing",
]
dependencies = [
"psycopg[binary,pool]>=3.1", # the only hard runtime dep (pool + connection + LISTEN/NOTIFY)
]
[project.optional-dependencies]
metrics = ["psutil"] # hw_metrics CPU/RAM probe (GPU probe shells out, no dep)
test = ["pytest", "pytest-cov"]
[project.scripts]
queue-claim-worker = "queue_workflows.claim_worker:main" # generic CLIs (used standalone / other projects)
queue-scheduler = "queue_workflows.scheduler:main"
queue-orchestrator = "queue_workflows.orchestrator:main"
queue-worker-control = "queue_workflows.worker_control:main" # turn a (host,queue) worker ON/OFF
[tool.hatch.build.targets.wheel]
packages = ["queue_workflows"]
[tool.hatch.build.targets.wheel.force-include]
"queue_workflows/migrations" = "queue_workflows/migrations" # ship the SQL as package data
[tool.pytest.ini_options]
testpaths = ["tests"]