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
|
[build-system]
build-backend = "setuptools.build_meta"
requires = [
"setuptools",
]
[project]
name = "sshoot"
description = "Manage multiple sshuttle VPN sessions"
readme = "README.rst"
keywords = [
"ssh",
"sshuttle",
"vpn",
]
license = {file = "LICENSE.txt"}
maintainers = [
{name = "Alberto Donato", email = "alberto.donato@gmail.com"},
]
authors = [
{name = "Alberto Donato", email = "alberto.donato@gmail.com"},
]
requires-python = ">=3.8"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: System :: Networking",
"Topic :: Utilities",
]
dynamic = [
"version",
]
dependencies = [
"argcomplete",
"prettytable",
"pyxdg",
"PyYAML",
"toolrack>=3",
]
[project.optional-dependencies]
testing = [
"pytest",
"pytest-mock",
]
[project.urls]
changelog = "https://github.com/albertodonato/sshoot/blob/main/CHANGES.rst"
homepage = "https://github.com/albertodonato/sshoot"
[project.scripts]
sshoot = "sshoot.main:sshoot"
[tool.setuptools.dynamic]
version = {attr = "sshoot.__version__"}
[tool.setuptools.packages.find]
include = ["sshoot*"]
[tool.black]
line-length = 79
[tool.isort]
combine_as_imports = true
force_grid_wrap = 2
force_sort_within_sections = true
from_first = false
include_trailing_comma = true
multi_line_output = 3
order_by_type = false
profile = "black"
use_parentheses = true
[tool.flake8]
ignore = ["E203", "E501", "W503"]
max-line-length = 80
select = ["C", "E", "F", "W", "B", "B950"]
[tool.coverage.report]
fail_under = 100.0
show_missing = true
skip_covered = true
omit = [
"__main__.py"
]
[tool.coverage.run]
source = ["sshoot"]
[tool.mypy]
ignore_missing_imports = true
install_types = true
non_interactive = true
warn_return_any = true
warn_unused_configs = true
|