-
Notifications
You must be signed in to change notification settings - Fork 8
/
pyproject.toml
119 lines (108 loc) · 2.89 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
114
115
116
117
118
# pyproject.toml format -> See PEP 621
[project]
name = "ciscoconfparse2"
description = "Parse, Audit, Query, Build, and Modify Cisco IOS-style and JunOS-style configs"
readme = "README.md"
license = "GPL-3.0-only"
requires-python = ">= 3.9"
dynamic = ["version"]
dependencies = [
# NOTE changing attrs versions may require code / test changes
"attrs==24.3.0",
"scrypt==0.8.27",
"dnspython>=2.6.1",
"macaddress==2.0.2",
"loguru>=0.7.2",
"tomlkit==0.13.2",
"hier_config==2.2.3",
"pyparsing>=3.2.1",
# NOTE changing typeguard versions may require code / test changes
"typeguard==4.1.5",
"PyYAML>=6.0.2",
"rich>=13.6.0",
# passlib uses crypt
"passlib==1.7.4",
# Using crypt-r as a replacement for crypt in Python3.13+
# NOTE: crypt-r is not available for python 3.10 and lower so keeping
# as a dependency may not be possible
# "crypt-r>=3.13.1",
]
authors = [
{ name = "Mike Pennington", email = "[email protected]" },
]
keywords = [
"Parse",
"audit",
"query",
"modify",
"Cisco IOS",
"Cisco",
"NXOS",
"ASA",
"Juniper",
]
classifiers=[
"Development Status :: 5 - Production/Stable",
"Environment :: Plugins",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"Intended Audience :: Information Technology",
"Intended Audience :: Telecommunications Industry",
"License :: OSI Approved :: GNU General Public License (GPL)",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Communications",
"Topic :: Internet",
"Topic :: System :: Networking",
"Topic :: System :: Networking :: Monitoring",
]
[project.optional-dependencies]
# Ensure wheel is upgraded... ref Github Issue #257
dev = [
"wheel>=0.38.4",
"twine>=4.0.2",
"pytest>=7.4.3",
"pylama==8.4.1",
"pylint==3.0.3",
"coverage>=7.3.2",
"pytest-cov>=4.1.0",
"pyroma==4.2",
"invoke==2.1.3",
"fabric==3.0.0",
"commitizen>=2.40.0",
"Sphinx==6.1.3",
"sphinx-rtd-theme>=2.0.0",
"numpydoc==1.5.0",
"pydocstyle==6.3.0",
"python-lsp-server==1.9.0",
"tox==4.11.3",
]
[project.scripts]
ccp = "ciscoconfparse2.cli_script:ccp_script_entry"
[build-system]
requires = ["hatchling>=1.22.2"]
build-backend = "hatchling.build"
[project.urls]
homepage = "http://github.com/mpenning/ciscoconfparse2"
changelog = "https://github.com/mpenning/ciscoconfparse2/blob/main/CHANGES.md"
repository = "https://github.com/mpenning/ciscoconfparse2"
documentation = "http://www.pennington.net/py/ciscoconfparse2/"
[tool.hatch.version]
path = "ciscoconfparse2/__about__.py"
scheme = "standard"
[tool.hatch.build.targets.sdist]
exclude = [
"/.github",
"/.git",
"/dev_tools",
"/dist",
]
[tool.hatch.build.targets.wheel]
packages = [
"ciscoconfparse2/",
"tests/",
]
[tool.hatch.envs.default.scripts]
pytest = "cd tests && pytest ."