-
Notifications
You must be signed in to change notification settings - Fork 71
/
pyproject.toml
111 lines (99 loc) · 2.6 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
[build-system]
requires = ["setuptools > 64", "setuptools-scm > 8.0.0", "setuptools-golang"]
build-backend = "setuptools.build_meta"
[project]
name = "karapace"
requires-python = ">= 3.9"
dynamic = ["version"]
readme = "README.rst"
license = {file = "LICENSE"}
dependencies = [
"accept-types < 1",
"aiohttp < 4",
"aiokafka == 0.10.0",
"cachetools == 5.3.3",
"confluent-kafka == 2.4.0",
"isodate < 1",
"jsonschema < 5",
"lz4",
"networkx < 4",
"protobuf < 4",
"pyjwt >= 2.4.0 , < 3",
"python-dateutil < 3",
"python-snappy",
"rich ~= 13.7.1",
"tenacity < 10",
"typing-extensions",
"ujson < 6",
"watchfiles < 1",
"xxhash ~= 3.3",
"zstandard",
"prometheus-client == 0.20.0",
"yarl == 1.12.1",
# Patched dependencies
#
# Note: It is important to use commits to reference patched dependencies. This
# has two advantages:
# - Reproducible builds
# - The contents of the file change, which invalidates the existing docker
# images and forces a new image generation.
#
"avro @ https://github.com/aiven/avro/archive/5a82d57f2a650fd87c819a30e433f1abb2c76ca2.tar.gz#subdirectory=lang/py",
]
classifiers=[
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Database :: Database Engines/Servers",
"Topic :: Software Development :: Libraries",
]
[project.scripts]
karapace = "karapace.karapace_all:main"
karapace_schema_backup = "karapace.backup.cli:main"
karapace_mkpasswd = "karapace.auth:main"
[project.urls]
Homepage = "https://karapace.io"
Repository = "https://github.com/Aiven-Open/karapace/"
Issues = "https://github.com/Aiven-Open/karapace/issues"
[project.optional-dependencies]
sentry-sdk = ["sentry-sdk>=1.6.0"]
systemd-logging = ["systemd-python==235"]
ujson = ["ujson"]
dev = [
# Developer QoL
"pdbpp",
# testing
"filelock",
"hypothesis",
"psutil",
"pytest",
"pytest-cov",
"pytest-random-order",
"pytest-timeout",
"pytest-xdist[psutil]",
"requests",
# performance test
"locust",
# Sentry SDK
"sentry-sdk"
]
typing = [
"mypy",
"sentry-sdk",
"types-cachetools",
"types-jsonschema",
"types-protobuf < 4"
]
[tool.setuptools]
include-package-data = true
[tool.setuptools_scm]
version_file = "src/karapace/version.py"
[tool.black]
target-version = ["py39"]
line-length = 125