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
|
[project]
name = "trollsift"
description = "String parser/formatter"
readme = "README.rst"
authors = [
{ name = "The Pytroll Team", email = "pytroll@googlegroups.com" }
]
license = "Apache-2.0"
license-files = ["LICENSE.txt"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Scientific/Engineering",
"Typing :: Typed",
]
keywords = ["string parsing", "string formatting", "pytroll"]
requires-python = ">=3.9"
dependencies = []
dynamic = ["version"]
[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["trollsift"]
[tool.hatch.version]
source = "vcs"
[tool.hatch.build.hooks.vcs]
version-file = "trollsift/version.py"
[tool.coverage.run]
relative_files = true
omit = ["trollsift/version.py"]
[tool.pytest.ini_options]
minversion = 6.0
addopts = ["-ra", "--showlocals", "--strict-markers", "--strict-config"]
xfail_strict = true
log_cli_level = "info"
testpaths = ["trollsift/tests"]
filterwarnings = [
"error",
"ignore:numpy.ndarray size changed, may indicate binary incompatibility:RuntimeWarning",
]
[tool.ruff]
line-length = 120
[tool.ruff.lint]
# See https://docs.astral.sh/ruff/rules/
select = ["E", "W", "B", "D", "T10", "C90"]
ignore = ["D101", "D102", "D103", "D104", "D105", "D106", "D107", "E203"]
[tool.ruff.lint.per-file-ignores]
"doc/source/conf.py" = ["E501"]
"trollsift/tests/*.py" = ["D205", "D400", "D415", "S101"] # assert allowed in tests
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.lint.mccabe]
max-complexity = 10
[tool.ruff.lint.isort]
known-first-party = ["trollsift"]
|