comicfn2dict/pyproject.toml

215 lines
4.0 KiB
TOML
Raw Normal View History

2023-12-21 13:04:52 -08:00
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.poetry]
2023-12-21 13:04:20 -08:00
name = "comicfn2dict"
2024-02-28 13:17:47 -08:00
version = "0.2.0"
2023-12-21 13:04:52 -08:00
description = "Parse common comic filenames and return a dict of metadata attributes. Includes a cli."
license = "GPL-3.0-only"
authors = ["AJ Slater <aj@slater.net>"]
readme = "README.md"
homepage = "https://github.com/ajslater/comicfn2dict"
repository = "https://github.com/ajslater/comicfn2dict"
documentation = "https://github.com/ajslater/comicfn2dict"
keywords = []
classifiers = [
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3 :: Only",
]
2024-02-16 18:27:29 -08:00
packages = [
{ include = "comicfn2dict" },
{ include = "tests", format = "sdist" },
]
2023-12-21 13:04:52 -08:00
exclude = ["*/**/*~"]
include = []
[tool.poetry.dependencies]
python = "^3.10"
2023-12-21 13:04:52 -08:00
[tool.poetry.group.dev.dependencies]
neovim = "^0.3.1"
djlint = "^1.19.17"
wheel = "^0.42.0"
[tool.poetry.group.test.dependencies]
coverage = { extras = ["toml"], version = "^7.0" }
deepdiff = "^6.3.1"
pytest-cov = "^4.1.0"
pytest-gitignore = "^1.3"
[tool.poetry.group.lint.dependencies]
codespell = "^2.1.0"
pyright = "^1.1.232"
radon = { version = "^6.0.1", extras = ["toml"] }
2024-02-16 18:27:29 -08:00
ruff = "^0.2.1"
2023-12-21 13:04:52 -08:00
types-python-dateutil = "^2.8.19"
vulture = "^2.3"
[tool.poetry.scripts]
2023-12-21 13:10:38 -08:00
comicfn2dict = "comicfn2dict.cli:main"
2023-12-21 13:04:52 -08:00
[tool.poetry.urls]
"News" = "https://github.com/ajslater/comicfn2dict/NEWS.md"
"Report Issues" = "https://github.com/ajslater/comicfn2dict/issues"
[tool.codespell]
skip = './cache,./dist,./test-results,.git,.mypy_cache,.pytest_cache,.venv*,node_modules,package-lock.json,poetry.lock,run.spec'
builtin = 'clear,rare,code'
check-hidden = true
# Remove 'coverd' when this issue is resolved
# https://github.com/codespell-project/codespell/issues/1212
ignore-words-list = 'thead,ro,jupyter,coverd,searched,ws'
[tool.coverage.html]
directory = "test-results/coverage"
[tool.coverage.run]
source = ["comicfn2dict"]
branch = true
concurrency = ["multiprocessing"]
omit = [
".git/*",
".mypy_cache/*",
".pytest_cache/*",
".venv*/*",
"*__pycache__*",
"dist/*",
"node_modules/*",
"test-results/*",
2024-02-16 18:27:29 -08:00
"typings/*",
2023-12-21 13:04:52 -08:00
]
[tool.pyright]
exclude = [
"**/__pycache__",
"**/node_modules",
".git",
".mypy_cache",
".pytest_cache",
".venv*",
"cache",
"dist",
"package-lock.json",
"poetry.lock",
"test-results",
"typings",
]
useLibraryCodeForTypes = true
reportMissingImports = true
reportImportCycles = true
pythonVersion = "3.10"
2023-12-21 13:04:52 -08:00
pythonPlatform = "All"
[tool.pytest.ini_options]
addopts = """
--junit-xml=test-results/pytest/results.xml
-ra
--strict-config
--strict-markers
--cov
--cov-append
--cov-report=html
--cov-report=term
"""
2024-02-16 18:27:29 -08:00
junit_family = "xunit2"
testpaths = "tests"
2023-12-21 13:04:52 -08:00
[tool.radon]
exclude = "*~,.git/*,.mypy_cache/*,.pytest_cache/*,.venv*,__pycache__/*,cache/*,dist/*,node_modules/*,test-results/*,typings/*"
[tool.ruff]
extend-exclude = ["typings"]
2024-02-16 18:27:29 -08:00
target-version = "py310"
2024-02-24 19:40:33 -08:00
[tool.ruff.lint]
2024-02-16 18:27:29 -08:00
extend-ignore = [
"S101",
"D203",
"D213",
2023-12-21 13:04:52 -08:00
# Format ignores
2024-02-16 18:27:29 -08:00
"W191",
"E501",
"E111",
"E114",
"E117",
"D206",
"D300",
"Q000",
"Q001",
"Q002",
"Q003",
"COM812",
"COM819",
"ISC001",
"ISC002",
2023-12-21 13:04:52 -08:00
]
extend-select = [
"A",
"ARG",
"B",
"B9",
"C",
"C4",
"C90",
"D",
"DJ",
"DTZ",
"E",
"EM",
"EXE",
"F",
"I",
"ICN",
"INP",
"ISC",
"PIE",
"PL",
"PT",
"PTH",
"PYI",
"Q",
"N",
"RET",
"RSE",
"RUF",
"S",
"SIM",
"SLF",
"T10",
"T20",
"TCH",
"TID",
"TRY",
"UP",
"W",
2024-02-16 18:27:29 -08:00
"YTT",
2023-12-21 13:04:52 -08:00
# "ANN", "ERA", "COM"
]
external = ["V101"]
task-tags = ["TODO", "FIXME", "XXX", "http", "HACK"]
2024-02-16 18:27:29 -08:00
[tool.ruff.lint.per-file-ignores]
2023-12-21 13:04:52 -08:00
"tests/*" = ["SLF001", "T201", "T203"]
2024-02-16 18:27:29 -08:00
[tool.ruff.lint.pycodestyle]
2023-12-21 13:04:52 -08:00
ignore-overlong-task-comments = true
[tool.vulture]
exclude = [
".git/",
".mypy_cache/",
".pytest_cache/",
"*.venv*",
"*/__pycache__",
"dist/",
"node_modules/",
"test_results/",
"typings/",
]
min_confidence = 61
sort_by_size = true