-
Notifications
You must be signed in to change notification settings - Fork 1
/
pyproject.toml
102 lines (83 loc) · 2.97 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
[tool.poetry]
name = "jasmin-services"
version = "1.1.7"
description = "Django application for managing services, roles and access."
authors = ["Matt Pryor <[email protected]>"]
license = "BSD-3-Clause"
packages = [
{ include = "jasmin_services"},
{ include = "jasmin_metadata"},
]
[tool.poetry.dependencies]
python = "^3.10"
# Dependencies of dependencies. Need to specify here so poetry knows where to get them from.
jasmin-ldap = {git = "https://github.com/cedadev/jasmin-ldap.git", tag = "v1.0.2", optional=true}
# CEDA dependencies.
jasmin-django-utils = {git = "https://github.com/cedadev/jasmin-django-utils.git", tag = "v1.0.9" }# Also required for API.
jasmin-notifications = {git = "https://github.com/cedadev/jasmin-notifications.git", rev = "2bbffd65915ccd75c3f26af20cf0a1f6ba2faac1"}
Django = "^5"
django-bootstrap5 = "^24.1"
django-markdown-deux = "^1.0.6"
python-dateutil = "^2.8.2"
django-polymorphic = {git = "https://github.com/jazzband/django-polymorphic.git", rev = "f4286f583d6f91e896b73e450154af0fea3935a4"}
django-countries = "^7.6.0"
djangorestframework = {version = "^3.13.1", optional = true}
django-filter = {version = "^24.1", optional = true}
drf-spectacular = {version="^0.27.1", optional = true}
drf-spectacular-sidecar = {version="^2024.1.1", optional = true}
django-picklefield = "^3.1"
httpx = "^0.27.0"
# Optional dependencies for behaviours.
jasmin-ldap-django = {git = "https://github.com/cedadev/jasmin-ldap-django.git", rev = "2b708c9136f31e8819ffff00fcb95567c27ed659", optional=true}
python-keycloak = {version = "^3.2.0", optional = true}
drf-nested-routers = {version = "^0.94.1", optional = true}
[tool.poetry.extras]
api = ["djangorestframework", "django-filter", "drf-spectacular", "drf-spectacular-sidecar", "drf-nested-routers"]
keycloak = ["python-keycloak"]
jasmin-ldap = ["jasmin-ldap-django", "jasmin-ldap"]
[tool.poetry.group.dev.dependencies]
tox = "^4.4.12"
pytest = "^8.0.0"
black = "^24.2.0"
isort = "^5.10.1"
mypy = "^1.2.0"
types-python-dateutil = "^2.8.19.12"
django-stubs = {extras = ["compatible-mypy"], version = "^5.0.0"}
pylint-django = "^2.5.5"
bandit = "^1.7.8"
tblib = "^3.0.0"
[tool.poetry.group.test.dependencies]
django-oauth-toolkit = "^2.3.0"
coverage = "^7.4.4"
tblib = "^3.0.0"
[tool.black]
line-length = 100
target-version = ['py39', 'py310', 'py311']
[tool.isort]
profile = "black"
[tool.mypy]
plugins = ["mypy_django_plugin.main"]
ignore_missing_imports = true
strict = false
[tool.django-stubs]
django_settings_module = "tests.settings"
[tool.pydocstyle]
ignore = ['D106']
[tool.pylint.main]
load-plugins = 'pylint_django'
[tool.pylint.'MESSAGES CONTROL']
disable = ['too-few-public-methods', 'missing-class-docstring']
[tool.coverage.run]
branch = true
include = [
"jasmin_services/*",
"jasmin_metadata/*"
]
[tool.coverage.report]
show_missing = true
skip_empty = true
skip_covered = true
fail_under = 40
[build-system]
requires = ["poetry-core>=1.0.0", "setuptools>=59.6.0"]
build-backend = "poetry.core.masonry.api"