forked from saleor/saleor
-
Notifications
You must be signed in to change notification settings - Fork 2
/
pyproject.toml
169 lines (156 loc) · 4.65 KB
/
pyproject.toml
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = "saleor"
version = "3.21.0-a.0"
description = "A modular, high performance, headless e-commerce platform built with Python, GraphQL, Django, and React."
authors = [ "Saleor Commerce <[email protected]>" ]
license = "BSD-3-Clause"
readme = "README.md"
homepage = "https://saleor.io/"
repository = "https://github.com/saleor/saleor"
documentation = "https://docs.saleor.io/"
[tool.poetry.dependencies]
python = "~3.9"
Adyen = "^4.0.0"
aniso8601 = "^7.0.0"
asgiref = "^3.7.2"
Authlib = "^1.3.1"
authorizenet = "^1.1.3"
azure-common = "^1.1.28"
azure-storage-blob = "^12.12.0"
azure-storage-common = "^2.1.0"
babel = ">=2.8,<2.15"
boto3 = "^1.28"
botocore = "^1.34"
braintree = ">=4.2,<4.27"
cryptography = "^42.0.5"
dj-database-url = "^2"
dj-email-url = "^1"
django = {version = "^4.2", extras = ["bcrypt"]}
django-cache-url = "^3.1.2"
django-celery-beat = "^2.2.1"
django-countries = "^7.2"
django-filter = "^23.1"
django-measurement = "^3.0"
django-mptt = "^0"
django-phonenumber-field = ">=4,<8"
django-prices = "^2.3"
django-stubs-ext = "^4.2.1"
draftjs-sanitizer = "^1.0.0"
faker = ">=26.0.0,<27.0"
google-cloud-pubsub = ">=1.7,<3.0"
google-cloud-storage = "^2.0.0"
google-i18n-address = "^3.1.0"
graphene = "<3.0"
graphql-core = "^2.3.2"
graphql-relay = "^2.0.1"
gunicorn = "^22.0.0"
html2text = "^2024.2.26"
html-to-draftjs = "^1.0.1"
jaeger-client = "^4.5.0"
lxml = "^4.9.3"
markdown = "^3.1.1"
measurement = "^3.2.2"
micawber = "^0.5.2"
oauthlib = "^3.1"
opentracing = "^2.3.0"
petl = "1.7.15"
phonenumberslite = "^8.12.25"
pillow = "^10.3.0"
pillow-avif-plugin = "^1.3.1"
posuto = "^2024.7.0"
prices = "^1.0"
promise = "^2.3"
pybars3 = "^0.9.7"
pyjwt = "^2.9.0"
python-dateutil = "^2.8.2"
python-http-client = "^3.3.7"
python-json-logger = ">=0.1.11,<2.1.0"
pytimeparse = "^1.1.8"
pytz = "^2024.1"
razorpay = "^1.2"
redis = "^5.0.1"
requests = "^2.32"
requests-hardened = "1.0.0b4"
Rx = "^1.6.3"
semantic-version = "^2.10.0"
sendgrid = "^6.7.1"
sentry-sdk = "^2.12"
stripe = "^3.0.0"
text-unidecode = "^1.2"
urllib3 = "^1.26.19"
uvicorn = {extras = ["standard"], version = "^0.23.1"}
weasyprint = ">=53.0" # libpango >=1.44 is required
setuptools = "^70.1.0"
psycopg = {version = "^3.1.8", extras = ["binary"]}
[tool.poetry.dependencies.celery]
version = ">=4.4.5,<6.0.0"
extras = [ "redis" ]
[tool.poetry.dependencies.django-storages]
version = "^1.11"
extras = [ "google" ]
[tool.poetry.dependencies.python-magic]
version = "^0.4.27"
markers = "sys_platform != 'win32'"
[tool.poetry.dependencies.python-magic-bin]
version = "^0.4.14"
platform = "win32"
[tool.poetry.group.dev.dependencies]
before_after = "^1.0.1"
coverage = "^7.2"
deptry = "^0.17.0"
django-debug-toolbar = "^4.0"
django-debug-toolbar-request-history = "^0"
django-graphiql-debug-toolbar = "^0.2.0"
django-extensions = "^3.1.2"
django-stubs = { version = "^4.2.7", extras = ["compatible-mypy"] }
fakeredis = "^2.10"
freezegun = "^1"
mypy-extensions = "^1.0.0"
openpyxl = "^3.1.5"
pre-commit = "^3.4"
pytest = "^8.0.0"
pytest-asyncio = "^0.23.7"
pytest-celery = "^0.0.0"
pytest-cov = "^5.0.0"
pytest-django = "4.8.0"
pytest-django-queries = "~1.2"
pytest-memray = "^1.5.0"
pytest-mock = "^3.6.1"
pytest-recording = "^0.13.0"
pytest-socket = "^0.7.0"
pytest-xdist = "^3.0.2"
pywatchman = "^2.0.0"
ruff = "^0.5.4"
semgrep = ">=1.34.0"
types-certifi = "^2021.10.8"
types-freezegun = "^1.1.7"
types-mock = "^5.0.0.5"
types-pkg-resources = "^0.1.3"
types-python-dateutil = "^2.8.19"
types-pytz = "^2024.1.0"
types-redis = "^4.6.0"
types-requests = "^2.31.0"
types-six = "^1.16.17"
vcrpy = ">=4.0,<7.0"
[tool.deptry]
extend_exclude = ["conftest\\.py", ".*/conftest\\.py", ".*/tests/.*"]
[tool.deptry.package_module_name_map]
graphql-core = "graphql"
pillow = "PIL"
python-magic-bin = "magic"
[tool.deptry.per_rule_ignores]
DEP001 = ["pkg_resources"]
DEP002 = ["azure-common", "azure-storage-blob", "azure-storage-common", "gunicorn", "psycopg"]
DEP004 = ["debug_toolbar", "graphiql_debug_toolbar"]
[tool.ruff]
lint.extend-select = ["D", "I", "ISC002", "PIE", "PT", "T20", "UP"]
lint.ignore = ["D100", "D101", "D102", "D103", "D104", "D105", "D106", "D107", "D202", "D203", "D206", "D213", "D407", "PT019"]
target-version = "py39"
[tool.ruff.lint.flake8-pytest-style]
fixture-parentheses = false
mark-parentheses = false
[tool.ruff.lint.isort]
known-first-party = ["saleor"]