forked from marcosschroh/dataclasses-avroschema
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
107 lines (92 loc) · 2.35 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
[tool.poetry]
name = "dataclasses-avroschema"
version = "0.57.0"
description = "Generate Avro Schemas from Python classes. Serialize/Deserialize python instances with avro schemas"
authors = ["Marcos Schroh <schrohm@gmail.com>"]
license = "MIT"
readme = "README.md"
packages = [{include = "dataclasses_avroschema"}]
classifiers = [
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3 :: Only",
"Topic :: Software Development",
]
[tool.poetry.dependencies]
python = "^3.8"
fastavro = "^1.7.3"
dacite = "^1.8.0"
faker = {version = ">=18.3.1,<24.0.0", optional = true}
inflector = "^3.1.1"
faust-streaming = {version = "^0.10.11", optional = true}
casefy = "^0.1.7"
typing-extensions = "^4.2.0"
pydantic = {version = "^2.4.2", optional = true, extras = ["email"]}
[tool.poetry.group.dev.dependencies]
mypy = "^1.8.0"
ruff = ">=0.1,<0.3"
pytest = ">=7,<9"
pytest-cov = "^4"
types-pytz = ">=2023,<2025"
[tool.poetry.group.docs.dependencies]
mkdocs = "^1"
mkdocs-material = "^9"
mkdocstrings = {version = "^0.24.0", extras = ["python"]}
[tool.poetry.group.cli.dependencies]
dc-avro = ">=0.6.4,<0.9.0"
[tool.poetry.group.ci-publish.dependencies]
commitizen = "^3.2.2"
[tool.poetry.extras]
pydantic = [
"pydantic",
]
faust = [
"faust-streaming",
]
faker = [
"faker"
]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[[tool.mypy.overrides]]
module = "stringcase.*"
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = "inflector.*"
ignore_missing_imports = true
[tool.ruff]
line-length = 120
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.lint]
select = [
# pycodestyle"
"E4",
"E7",
"E9",
"E501",
# Pyflakes
"F",
# isort
"I001"
]
ignore = ["E402"]
fixable = ["ALL"]
unfixable = []
[tool.ruff.lint.extend-per-file-ignores]
"tests/schemas/test_schema.py" = ["E501"]
"tests/model_generator/test_model_generator.py" = ["E501"]
[tool.commitizen]
version = "0.57.0"
tag_format = "$version"
version_files = [
"pyproject.toml:version",
]
update_changelog_on_bump = true
major_version_zero = true