diff --git a/pyproject.toml b/pyproject.toml index aad981f..d387236 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,6 +14,102 @@ license = {text = "LicenseRef-Proprietary"} requires = ["pdm-backend"] build-backend = "pdm.backend" +[tool.ruff] +line-length = 94 +indent-width = 4 +target-version = "py311" +src = ["src"] + +[tool.ruff.format] +quote-style = "double" +skip-magic-trailing-comma = false + +[tool.ruff.lint] +select = ["E", "F", "I"] + +[tool.ruff.lint.isort] +extra-standard-library = ["typing_extensions"] + +[tool.pytest.ini_options] +addopts = [ + "-vl", + "--import-mode=importlib", +] +testpaths = [ + "tests", +] +filterwarnings = [ + 'ignore:pkg_resources is deprecated as an API.:DeprecationWarning' +] +markers = [ + "new: to test only new tests, usually removed afterwards (deselect with '-m \"not quick\"')", +] +log_cli = true + +[tool.coverage.run] +relative_files = true +source = [ + "src/", + "tests/", +] + +[tool.coverage.report] +exclude_also = [ + "def __repr__", + "def __str__", + "@overload", + "if logging", + "if TYPE_CHECKING", + "@pytest.fixture", + "if __name__ == __main__:", +] + +[tool.coverage.html] +directory = "reports/coverage" + + +[tool.bumpversion] +current_version = "0.1.1" +parse = """(?x) + (?P0|[1-9]\\d*)\\. + (?P0|[1-9]\\d*)\\. + (?P0|[1-9]\\d*) + (?: + # separator for pre-release section + (?P[a-zA-Z-]+) # pre-release label + (?P0|[1-9]\\d*) # pre-release version number + )? # pre-release section is optional +""" +serialize = [ + "{major}.{minor}.{patch}{pre_l}{pre_n}", + "{major}.{minor}.{patch}", +] +search = "{current_version}" +replace = "{new_version}" +regex = false +ignore_missing_version = false +ignore_missing_files = false +tag = false +sign_tags = false +tag_name = "v{new_version}" +tag_message = "Bump version: {current_version} → {new_version}" +allow_dirty = true +commit = false +message = "Bump version: {current_version} → {new_version}" +commit_args = "" +setup_hooks = [] +pre_commit_hooks = [] +post_commit_hooks = [] + +[tool.bumpversion.parts.pre_l] +values = ["dev", "a", "b", "rc", "final"] +optional_value = "final" + +[[tool.bumpversion.files]] +filename = "pyproject.toml" +search = "version = \"{current_version}\"" +replace = "version = \"{new_version}\"" + [tool.pdm] distribution = true