[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "awesomeversion"
version = "0"
description = "One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind them."
authors = [
    {name = "Ludeeus", email = "joasoe@proton.me"},
]
maintainers = [
    {name = "Ludeeus", email = "joasoe@proton.me"},
]
license = {text = "MIT"}
readme = "README.md"
keywords = ["calver", "semver", "0ver", "version", "pep440", "buildver"]
classifiers = [
    "Intended Audience :: Developers",
    "Natural Language :: English",
    "Topic :: Software Development :: Libraries :: Python Modules",
]
requires-python = ">=3.9"
dependencies = []

[project.urls]
Repository = "https://github.com/ludeeus/awesomeversion"

[project.optional-dependencies]
dev = [
    "black>=25.1",
    "isort>=6.0.1",
    "mypy>=1.16",
    "pylint>=3.3.7",
    "pytest>=8.4.1",
    "pytest-codspeed>=3.2.0",
    "pytest-cov>=6.2.1",
    "pytest-snapshot>=0.9.0",
    "pytest-timeout>=2.4.0",
]


[tool.isort]
combine_as_imports = true
force_sort_within_sections = true
profile = "black"

[tool.pylint.'MESSAGES CONTROL']
disable = "unsubscriptable-object,duplicate-code,too-many-public-methods"


[tool.coverage.run]
source = ["awesomeversion"]
omit = ["setup.py", "tests/*", "benchmarks/*"]

[tool.coverage.report]
exclude_lines = ["if TYPE_CHECKING:"]

[tool.hatch.build.targets.wheel]
packages = ["awesomeversion"]
