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 75 76 77 78 79 80 81 82
|
# PythonQwt setup configuration file
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
[project]
name = "PythonQwt"
authors = [{ name = "Pierre Raybaut", email = "pierre.raybaut@gmail.com" }]
description = "Qt plotting widgets for Python"
readme = "README.md"
license = { file = "LICENSE" }
classifiers = [
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Visualization",
"Topic :: Software Development :: Widget Sets",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Utilities",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Human Machine Interfaces",
"Topic :: Software Development :: User Interfaces",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
"Operating System :: OS Independent",
"Operating System :: POSIX",
"Operating System :: Unix",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
requires-python = ">=3.8, <4"
dependencies = ["NumPy>=1.21", "QtPy>=1.9"]
dynamic = ["version"]
[project.urls]
Homepage = "https://github.com/PlotPyStack/PythonQwt/"
Documentation = "https://PythonQwt.readthedocs.io/en/latest/"
[project.gui-scripts]
PythonQwt-tests = "qwt.tests:run"
[project.optional-dependencies]
dev = ["ruff", "pylint", "Coverage"]
doc = ["PyQt5", "sphinx>6", "python-docs-theme"]
test = ["pytest", "pytest-xvfb"]
[tool.setuptools.packages.find]
include = ["qwt*"]
[tool.setuptools.package-data]
"*" = ["*.png", "*.svg", "*.mo", "*.cfg", "*.toml"]
[tool.setuptools.dynamic]
version = { attr = "qwt.__version__" }
[tool.pytest.ini_options]
addopts = "qwt"
[tool.ruff]
exclude = [".git", ".vscode", "build", "dist"]
line-length = 88 # Same as Black.
indent-width = 4 # Same as Black.
target-version = "py38" # Assume Python 3.8
[tool.ruff.lint]
# all rules can be found here: https://beta.ruff.rs/docs/rules/
select = ["E", "F", "W", "I", "NPY201"]
ignore = [
"E203", # space before : (needed for how black formats slicing)
]
[tool.ruff.format]
quote-style = "double" # Like Black, use double quotes for strings.
indent-style = "space" # Like Black, indent with spaces, rather than tabs.
skip-magic-trailing-comma = false # Like Black, respect magic trailing commas.
line-ending = "auto" # Like Black, automatically detect the appropriate line ending.
[tool.ruff.lint.per-file-ignores]
"doc/*" = ["E402"]
"qwt/tests/*" = ["E402"]
|