pyproject.toml 1.79 KiB
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "querybuilder"
dynamic = ["version"]
description = "An SQL query builder written in Python."
readme = "README.md"
license = "BSD-3-Clause"
authors = [
{ name = "Bruno Guillon", email = "bruno.guillon@uca.fr" },
{ name = "Charles Paperman", email = "charles.paperman@univ-lille.fr" },
]
keywords = [
"database",
]
classifiers = [
"Development Status :: 4 - Beta",
"License :: OSI Approved :: BSD License",
"Topic :: Utilities",
]
dependencies = [
"termcolor",
"pygments",
"IPython",
]
[project.optional-dependencies]
test = [
"pytest",
"pytest-cov",
"pytest-mock",
"mock"
]
doc = [
"numpydoc",
"matplotlib",
"sphinx",
"sphinx_rtd_theme",
"sphinx_autorun",
"sphinx_copybutton",
]
dev = [
"ruff",
"mypy",
]
postgres = [
"psycopg",
]
all = [
"querybuilder[dev]",
"querybuilder[doc]",
"querybuilder[test]",
"querybuilder[postgres]",
]
#[project.urls]
#Homepage = "https://networkdisk.inria.fr"
#documentation = "https://networkdisk.inria.fr/documentation"
#repository = "https://gitlab.inria.fr/guillonb/networkdisk"
[tool.setuptools.package-data]
"querybuilder" = ["py.typed"]
[tool.hatch.version]
path = "querybuilder/__init__.py"
[tool.hatch.build.targets.sdist]
include = [
"/querybuilder",
]
[tool.ruff.lint.per-file-ignores]
#I001 (sort import)
#F401 (drop unused imports)
"__init__.py" = ["I001", "F401"]
"post_init.py" = ["F401"]
"querybuilder/formatting/token.py" = ["F401"]
#E501 (long lines)
"doctest/*.py" = ["E501"]
[tool.mypy]
exclude = "test_.*\\.py"
## Allow redefinition with distinct types (singledispatch)
#[[tool.mypy.overrides]]
#module = 'querybuilder.drivers.*.tokenizer'
#allow_redefinition = "True"