|
| 1 | +[project] |
| 2 | +dynamic = ["version"] |
| 3 | +name = "python-xz" |
| 4 | +authors = [{ name = "Rogdham", email = "[email protected]" }] |
| 5 | +description = "Pure Python implementation of the XZ file format with random access support" |
| 6 | +readme = { file = "README.md", content-type = "text/markdown" } |
| 7 | +keywords = ["xz", "lzma", "compression", "decompression"] |
| 8 | +license = "MIT" |
| 9 | +license-files = ["LICENSE.txt"] |
| 10 | +classifiers = [ |
| 11 | + "Development Status :: 3 - Alpha", |
| 12 | + "Operating System :: OS Independent", |
| 13 | + "Programming Language :: Python", |
| 14 | + "Programming Language :: Python :: 3", |
| 15 | + "Programming Language :: Python :: 3 :: Only", |
| 16 | + "Programming Language :: Python :: 3.9", |
| 17 | + "Programming Language :: Python :: 3.10", |
| 18 | + "Programming Language :: Python :: 3.11", |
| 19 | + "Topic :: Utilities", |
| 20 | + "Topic :: System :: Archiving", |
| 21 | + "Topic :: System :: Archiving :: Compression", |
| 22 | +] |
| 23 | +requires-python = ">=3.9" |
| 24 | + |
| 25 | +[project.urls] |
| 26 | +Homepage = "https://github.com/rogdham/python-xz" |
| 27 | +Source = "https://github.com/rogdham/python-xz" |
| 28 | + |
| 29 | +# |
| 30 | +# build |
| 31 | +# |
| 32 | + |
| 33 | +[build-system] |
| 34 | +requires = ["hatchling", "hatch-vcs"] |
| 35 | +build-backend = "hatchling.build" |
| 36 | + |
| 37 | +[tool.hatch.build.hooks.vcs] |
| 38 | +template = "__version__ = \"{version}\"\n" |
| 39 | +version-file = "src/xz/_version.py" |
| 40 | + |
| 41 | +[tool.hatch.build.targets.wheel] |
| 42 | +packages = ["src/xz"] |
| 43 | + |
| 44 | +[tool.hatch.version] |
| 45 | +source = "vcs" |
| 46 | + |
| 47 | + |
| 48 | +# |
| 49 | +# coverage |
| 50 | +# |
| 51 | + |
| 52 | +[tool.coverage.html] |
| 53 | +directory = "coverage" |
| 54 | + |
| 55 | +[tool.coverage.paths] |
| 56 | +source = [ |
| 57 | + "src/xz/", |
| 58 | + ".tox/py*/lib/python*/site-packages/xz/", |
| 59 | + ".tox/py*/site-packages/xz/", |
| 60 | +] |
| 61 | + |
| 62 | +[tool.coverage.report] |
| 63 | +exclude_lines = [ |
| 64 | + "pragma: no cover", |
| 65 | + "def __repr__", |
| 66 | + "def __str__", |
| 67 | + "if __name__ == \"__main__\":", |
| 68 | + "@overload", |
| 69 | + "if TYPE_CHECKING:", |
| 70 | +] |
| 71 | +show_missing = true |
| 72 | + |
| 73 | +[tool.coverage.run] |
| 74 | +branch = true |
| 75 | +source = ["xz"] |
| 76 | + |
| 77 | +# |
| 78 | +# mypy |
| 79 | +# |
| 80 | + |
| 81 | +[tool.mypy] |
| 82 | +# Import discovery |
| 83 | +files = "src" |
| 84 | +ignore_missing_imports = false |
| 85 | +follow_imports = "normal" |
| 86 | +# Platform configuration |
| 87 | +python_version = "3.11" |
| 88 | +# Disallow dynamic typing |
| 89 | +disallow_any_unimported = true |
| 90 | +disallow_any_decorated = true |
| 91 | +disallow_any_generics = true |
| 92 | +disallow_subclassing_any = true |
| 93 | +# Untyped definitions and calls |
| 94 | +disallow_untyped_calls = true |
| 95 | +disallow_untyped_defs = true |
| 96 | +disallow_incomplete_defs = true |
| 97 | +check_untyped_defs = true |
| 98 | +disallow_untyped_decorators = true |
| 99 | +# None and Optional handling |
| 100 | +no_implicit_optional = true |
| 101 | +strict_optional = true |
| 102 | +# Configuring warning |
| 103 | +warn_redundant_casts = true |
| 104 | +warn_unused_ignores = true |
| 105 | +warn_no_return = true |
| 106 | +warn_return_any = true |
| 107 | +warn_unreachable = true |
| 108 | +# Suppressing errors |
| 109 | +ignore_errors = false |
| 110 | +# Miscellaneous strictness flags |
| 111 | +strict_equality = true |
| 112 | +# Configuring error messages |
| 113 | +show_error_context = true |
| 114 | +show_error_codes = true |
| 115 | +# Miscellaneous |
| 116 | +warn_unused_configs = true |
| 117 | + |
| 118 | + |
| 119 | +# |
| 120 | +# pytest |
| 121 | +# |
| 122 | + |
| 123 | +[tool.pytest.ini_options] |
| 124 | +addopts = """ |
| 125 | + --cov |
| 126 | + --strict-markers |
| 127 | + """ |
| 128 | +filterwarnings = ["error"] |
| 129 | +markers = ["generate_integration_files", "integration", "unit"] |
| 130 | +testpaths = ["tests"] |
| 131 | + |
| 132 | + |
1 | 133 | # |
2 | 134 | # ruff |
3 | 135 | # |
|
0 commit comments