-
Notifications
You must be signed in to change notification settings - Fork 3
/
pyproject.toml
113 lines (96 loc) · 2.66 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
# SPDX-FileCopyrightText: 2021-2022 Carnegie Mellon University
# SPDX-License-Identifier: 0BSD
[tool.poetry]
name = "sinfonia"
version = "0.4.10.post.dev0"
description = "Tier 1 and 2 components of the Sinfonia system"
authors = [
"Carnegie Mellon University <satya+group@cs.cmu.edu>",
"Jan Harkes <jaharkes@cs.cmu.edu>",
]
license = "MIT"
packages = [
{ include = "sinfonia", from = "src" },
{ include = "tests", format="sdist" },
]
[tool.poetry.dependencies]
# common dependencies
python = "^3.7"
typer = {extras = ["all"], version = "^0.6.1"}
yarl = "^1.7.2"
# tier 1,2 common dependencies
attrs = ">=21.3.0"
connexion = {version = "^2.9.0", extras = ["swagger-ui"]}
Flask-APScheduler = "^1.12.3"
jsonschema = {version = ">=4.4.0, <4.6.0", extras = ["format_nongpl"]}
pendulum = "^2.1.2"
requests = "^2.26.0"
# tier 1 specific dependencies
Flask-Executor = "^0.10.0"
geopy = "^2.2.0"
importlib-metadata = "^4.12.0"
maxminddb = "^2.2.0"
maxminddb-geolite2 = "^2018.703"
openapi-spec-validator = "<0.5.0"
prance = {version = "^0.21.8", extras = ["osv"]}
# tier 2 specific dependencies
plumbum = "^1.7.2"
randomname = "^0.1.5"
wireguard-tools = "^0.4.0"
zeroconf = "^0.38.7"
# workaround for an odd dependency issue in poetry export
urllib3 = "<1.27"
[tool.poetry.group.dev.dependencies]
black = { version = ">=24.3.0", python = "^3.8" }
jsonpatch = "^1.32"
poethepoet = "^0.16.5"
pre-commit = { version = "^3.5.0", python = "^3.8.1" }
tbump = "~6.9.0"
[tool.poetry.group.test.dependencies]
mypy = "^0.961"
pytest = "^6.2.5"
pytest-mock = "^3.6.1"
requests-mock = "^1.9.3"
types-PyYAML = "^6.0.8"
types-requests = "^2.27.30"
types-jsonschema = {version = ">=4.4.0, <4.6.0"}
types-python-dateutil = "^2.8.17"
[tool.poetry.group.admin.dependencies]
# dependencies for sinfonia.s3_upload
boto3 = "^1.26.21"
tqdm = "^4.64.1"
[tool.poetry.scripts]
sinfonia-tier1 = "sinfonia.app_tier1:cli"
sinfonia-tier2 = "sinfonia.app_tier2:cli"
[tool.poetry.plugins."sinfonia.tier1_matchers"]
network = "sinfonia.matchers:match_by_network"
location = "sinfonia.matchers:match_by_location"
random = "sinfonia.matchers:match_random"
[tool.black]
target-version = ["py37"]
[tool.isort]
py_version = 37
profile = "black"
[tool.mypy]
check_untyped_defs = true
files = ["src", "tests"]
[[tool.mypy.overrides]]
# ignore missing type hints errors from untyped modules
module = [
"boto3.*",
"connexion.*",
"geolite2.*",
"geopy.*",
"flask_apscheduler.*",
"flask_executor.*",
"plumbum.*",
"prance.*",
"randomname.*",
"tqdm.*",
]
ignore_missing_imports = true
[tool.poe]
include = "tasks.toml"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"