-
Notifications
You must be signed in to change notification settings - Fork 54
/
pyproject.toml
111 lines (91 loc) · 2.48 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
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = "pynest-api"
version = "0.3.2"
description = "PyNest is a FastAPI Abstraction for building microservices, influenced by NestJS."
authors = ["itay.dar <[email protected]>"]
readme = "README.md"
homepage = "https://github.com/PythonNest/PyNest"
documentation = "https://pythonnest.github.io/PyNest/"
packages = [
{ include = "nest" }
]
classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"License :: OSI Approved :: MIT License",
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries :: Python Modules",
]
[tool.poetry.dependencies]
python = "^3.9"
# Core dependencies
click = "^8.1.7"
injector = "^0.22.0"
astor = "^0.8.1"
pyyaml = "^6.0.2"
fastapi = "^0.115.4"
pydantic = "^2.9.2"
uvicorn = "^0.32.0"
# Optional dependencies
sqlalchemy = { version = "^2.0.36", optional = true }
asyncpg = { version = "^0.30.0", optional = true }
psycopg2 = { version = "^2.9.3", optional = true }
alembic = { version = "^1.13.3", optional = true }
beanie = { version = "^1.27.0", optional = true }
python-dotenv = { version = "^1.0.1", optional = true }
greenlet = { version = "^3.1.1", optional = true }
black = "^24.10.0"
[tool.poetry.extras]
postgres = ["sqlalchemy", "asyncpg", "psycopg2", "alembic", "greenlet", "python-dotenv"]
mongo = ["beanie", "python-dotenv"]
test = ["pytest"]
[tool.poetry.group.build.dependencies]
setuptools = "^75.3.0"
wheel = "^0.44.0"
build = "^1.2.2.post1"
twine = "^5.1.1"
git-changelog = "^2.5.2"
[tool.poetry.group.test.dependencies]
pytest = "^7.0.1"
fastapi = "^0.115.4"
sqlalchemy = "^2.0.36"
motor = "^3.2.0"
beanie = "^1.27.0"
pydantic = "^2.9.2"
python-dotenv = "^1.0.1"
uvicorn = "^0.32.0"
[tool.poetry.group.docs.dependencies]
mkdocs-material = "^9.5.43"
mkdocstrings-python = "^1.12.2"
[tool.black]
force-exclude = '''
/(
| /*venv*
| /.git
| /dist
| /pytest_compare.egg-info
| *.bac
| .mypy_cache
| .coverage
| /htmlcov
| /docs
| /site
)/
'''
[tool.mypy]
exclude = [
"/*venv*"
]
ignore_missing_imports = true
[tool.poetry.urls]
Homepage = "https://github.com/PythonNest/PyNest"
Documentation = "https://pythonnest.github.io/PyNest/"
[tool.poetry.scripts]
pynest = "nest.cli.cli:nest_cli"