-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathpyproject.toml
More file actions
88 lines (79 loc) · 1.89 KB
/
pyproject.toml
File metadata and controls
88 lines (79 loc) · 1.89 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
[project]
name = "commcare-sync"
version = "0.1.0"
description = "CommCare Data Pipeline continuously exports CommCare data into your own databases and BI platforms."
readme = "README.md"
requires-python = ">=3.12,<3.15"
dependencies = [
"Django~=5.2",
"django-allauth",
"psycopg[binary]", # psycopg 3: https://www.psycopg.org/psycopg3/docs/basic/from_pg2.html
"django-anymail[mailgun]", # email services
"celery-progress",
"celery[redis]",
"cryptography",
"django-celery-beat",
"django-reversion>=5.0.4",
"commcare-export",
"pyopenssl>=20.0.1", # here to force upgrades of commcare-export dependencies
"db-query-fwd",
]
[project.optional-dependencies]
prod = [
"gunicorn[eventlet]",
]
postgres = [
"commcare-export[postgres]",
]
mysql = [
"commcare-export[mysql]",
]
odbc = [
"commcare-export[odbc]",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[dependency-groups]
dev = [
{include-group = "test"},
"ipython",
"pip-tools",
]
test = [
"django-stubs",
"mypy",
"playwright",
"pytest",
"pytest-asyncio",
"pytest-django",
"pytest-playwright",
"pytest-unmagic",
"ruff",
"time-machine",
"types-requests",
]
[tool.uv.sources]
db-query-fwd = { git = "https://github.com/dimagi/db-query-fwd.git" }
commcare-export = { git = "https://github.com/dimagi/commcare-export.git", branch = "master" }
[tool.mypy]
disallow_incomplete_defs = true
ignore_missing_imports = true
plugins = [
"mypy_django_plugin.main",
]
disable_error_code = [
"var-annotated",
]
[tool.django-stubs]
django_settings_module = "commcare_sync.settings"
[tool.ruff]
line-length = 79
[tool.ruff.format]
quote-style = "single"
[tool.pytest.ini_options]
DJANGO_SETTINGS_MODULE = "commcare_sync.settings"
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
asyncio_mode = "auto"