251 lines
5.3 KiB
TOML
251 lines
5.3 KiB
TOML
[tool.poetry]
|
||
name = "supervision"
|
||
version = "0.22.0"
|
||
description = "A set of easy-to-use utils that will come in handy in any Computer Vision project"
|
||
authors = ["Piotr Skalski <piotr.skalski92@gmail.com>"]
|
||
maintainers = ["Piotr Skalski <piotr.skalski92@gmail.com>"]
|
||
readme = "README.md"
|
||
license = "MIT"
|
||
packages = [{ include = "supervision" }]
|
||
homepage = "https://github.com/roboflow/supervision"
|
||
repository = "https://github.com/roboflow/supervision"
|
||
documentation = "https://github.com/roboflow/supervision/blob/main/README.md"
|
||
keywords = [
|
||
"machine-learning",
|
||
"deep-learning",
|
||
"vision",
|
||
"ML",
|
||
"DL",
|
||
"AI",
|
||
"Roboflow",
|
||
]
|
||
|
||
classifiers = [
|
||
'Development Status :: 4 - Beta',
|
||
'Intended Audience :: Developers',
|
||
'Intended Audience :: Education',
|
||
'Intended Audience :: Science/Research',
|
||
'License :: OSI Approved :: MIT License',
|
||
'Programming Language :: Python :: 3',
|
||
'Programming Language :: Python :: 3 :: Only',
|
||
'Topic :: Software Development',
|
||
'Topic :: Scientific/Engineering',
|
||
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
||
"Topic :: Scientific/Engineering :: Image Recognition",
|
||
'Typing :: Typed',
|
||
'Operating System :: Microsoft :: Windows',
|
||
'Operating System :: POSIX :: Linux',
|
||
'Operating System :: MacOS',
|
||
]
|
||
|
||
[tool.poetry.dependencies]
|
||
python = "^3.8"
|
||
numpy = [
|
||
{ version = ">=1.21.2,<1.23.3", python = "<=3.10" },
|
||
{ version = ">=1.23.3", python = ">3.10" },
|
||
]
|
||
scipy = [
|
||
{ version = "1.10.0", python = "<3.9" },
|
||
{ version = "^1.10.0", python = ">=3.9" },
|
||
]
|
||
matplotlib = ">=3.6.0"
|
||
pyyaml = ">=5.3"
|
||
defusedxml = "^0.7.1"
|
||
opencv-python = { version = ">=4.5.5.64", optional = true }
|
||
opencv-python-headless = ">=4.5.5.64"
|
||
requests = { version = ">=2.26.0,<=2.32.3", optional = true }
|
||
tqdm = { version = ">=4.62.3,<=4.66.5", optional = true }
|
||
pillow = ">=9.4"
|
||
|
||
[tool.poetry.extras]
|
||
desktop = ["opencv-python"]
|
||
assets = ["requests", "tqdm"]
|
||
|
||
[tool.poetry.group.dev.dependencies]
|
||
twine = "^5.1.1"
|
||
pytest = ">=7.2.2,<9.0.0"
|
||
wheel = ">=0.40,<0.45"
|
||
build = ">=0.10,<1.3"
|
||
ruff = ">=0.1.0"
|
||
mypy = "^1.4.1"
|
||
pre-commit = "^3.3.3"
|
||
tox = "^4.11.4"
|
||
notebook = ">=6.5.3,<8.0.0"
|
||
ipywidgets = "^8.1.1"
|
||
jupytext = "^1.16.1"
|
||
nbconvert = "^7.14.2"
|
||
docutils = [
|
||
{ version = "^0.20.1", python = "<3.9" },
|
||
{ version = "^0.21.1", python = ">=3.9" },
|
||
]
|
||
|
||
|
||
[tool.poetry.group.docs.dependencies]
|
||
mkdocs-material = { extras = ["imaging"], version = "^9.5.5" }
|
||
mkdocstrings = { extras = ["python"], version = ">=0.20,<0.26" }
|
||
mike = "^2.0.0"
|
||
# For Documentation Development use Python 3.10 or above
|
||
# Use Latest mkdocs-jupyter min 0.24.6 for Jupyter Notebook Theme support
|
||
mkdocs-jupyter = "^0.24.3"
|
||
mkdocs-git-committers-plugin-2 = "^2.2.3"
|
||
mkdocs-git-revision-date-localized-plugin = "^1.2.4"
|
||
|
||
[tool.isort]
|
||
line_length = 88
|
||
profile = "black"
|
||
|
||
[tool.bandit]
|
||
target = ["test", "supervision"]
|
||
tests = ["B201", "B301", "B318", "B314", "B303", "B413", "B412", "B410"]
|
||
|
||
[tool.autoflake]
|
||
check = true
|
||
imports = ["cv2", "supervision"]
|
||
|
||
[tool.black]
|
||
target-version = ["py38"]
|
||
line-length = 88
|
||
include = '\.pyi?$'
|
||
exclude = '''
|
||
/(
|
||
\.git
|
||
| \.hg
|
||
| \.mypy_cache
|
||
| \.tox
|
||
| \.venv
|
||
| _build
|
||
| buck-out
|
||
| build
|
||
| dist
|
||
| docs
|
||
)/
|
||
'''
|
||
|
||
[tool.ruff]
|
||
target-version = "py38"
|
||
|
||
# Exclude a variety of commonly ignored directories.
|
||
exclude = [
|
||
".bzr",
|
||
".direnv",
|
||
".eggs",
|
||
".git",
|
||
".git-rewrite",
|
||
".hg",
|
||
".mypy_cache",
|
||
".nox",
|
||
".pants.d",
|
||
".pytype",
|
||
".ruff_cache",
|
||
".svn",
|
||
".tox",
|
||
".venv",
|
||
"__pypackages__",
|
||
"_build",
|
||
"buck-out",
|
||
"build",
|
||
"dist",
|
||
"node_modules",
|
||
"venv",
|
||
"yarn-error.log",
|
||
"yarn.lock",
|
||
"docs",
|
||
]
|
||
|
||
line-length = 88
|
||
indent-width = 4
|
||
|
||
[tool.ruff.lint]
|
||
# Enable pycodestyle (`E`) and Pyflakes (`F`) codes by default.
|
||
select = ["E", "F"]
|
||
ignore = []
|
||
# Allow autofix for all enabled rules (when `--fix`) is provided.
|
||
fixable = [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"F",
|
||
"G",
|
||
"I",
|
||
"N",
|
||
"Q",
|
||
"S",
|
||
"T",
|
||
"W",
|
||
"ANN",
|
||
"ARG",
|
||
"BLE",
|
||
"COM",
|
||
"DJ",
|
||
"DTZ",
|
||
"EM",
|
||
"ERA",
|
||
"EXE",
|
||
"FBT",
|
||
"ICN",
|
||
"INP",
|
||
"ISC",
|
||
"NPY",
|
||
"PD",
|
||
"PGH",
|
||
"PIE",
|
||
"PL",
|
||
"PT",
|
||
"PTH",
|
||
"PYI",
|
||
"RET",
|
||
"RSE",
|
||
"RUF",
|
||
"SIM",
|
||
"SLF",
|
||
"TCH",
|
||
"TID",
|
||
"TRY",
|
||
"UP",
|
||
"YTT",
|
||
]
|
||
unfixable = []
|
||
# Allow unused variables when underscore-prefixed.
|
||
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
||
pylint.max-args = 20
|
||
|
||
[tool.ruff.lint.flake8-quotes]
|
||
inline-quotes = "double"
|
||
multiline-quotes = "double"
|
||
docstring-quotes = "double"
|
||
|
||
[tool.ruff.lint.pydocstyle]
|
||
convention = "google"
|
||
|
||
[tool.ruff.lint.per-file-ignores]
|
||
"__init__.py" = ["E402", "F401"]
|
||
|
||
[tool.ruff.lint.mccabe]
|
||
# Flag errors (`C901`) whenever the complexity level exceeds 5.
|
||
max-complexity = 20
|
||
|
||
[tool.ruff.format]
|
||
# Like Black, use double quotes for strings.
|
||
quote-style = "double"
|
||
|
||
# Like Black, indent with spaces, rather than tabs.
|
||
indent-style = "space"
|
||
|
||
# Like Black, respect magic trailing commas.
|
||
skip-magic-trailing-comma = false
|
||
|
||
# Like Black, automatically detect the appropriate line ending.
|
||
line-ending = "auto"
|
||
|
||
[tool.setuptools]
|
||
include-package-data = false
|
||
|
||
[tool.setuptools.packages.find]
|
||
exclude = ["docs*", "test*", "examples*"]
|
||
|
||
[build-system]
|
||
requires = ["poetry-core"]
|
||
build-backend = "poetry.core.masonry.api"
|