[build-system] build-backend = "setuptools.build_meta" requires = [ "setuptools>=63", ] [project] name = "pytools" version = "2024.1.6" description = "A collection of tools for Python" readme = "README.rst" license = { text = "MIT" } authors = [ { name = "Andreas Kloeckner", email = "inform@tiker.net" }, ] requires-python = ">=3.8" classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Other Audience", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Information Analysis", "Topic :: Scientific/Engineering :: Mathematics", "Topic :: Scientific/Engineering :: Visualization", "Topic :: Software Development :: Libraries", "Topic :: Utilities", ] dependencies = [ "platformdirs>=2.2", "typing-extensions>=4; python_version<'3.11'", "siphash24>=1.6", ] [project.optional-dependencies] numpy = [ "numpy>=1.6", ] test = [ "mypy", "pytest", "ruff", ] [project.urls] Documentation = "https://documen.tician.de/pytools/" Homepage = "https://github.com/inducer/pytools/" [tool.setuptools.packages.find] include = [ "pytools*", ] [tool.setuptools.package-dir] # https://github.com/Infleqtion/client-superstaq/pull/715 "" = "." [tool.setuptools.package-data] pytools = [ "py.typed", ] [tool.ruff] target-version = "py38" preview = true [tool.ruff.lint] extend-select = [ "B", # flake8-bugbear "C", # flake8-comprehensions "E", # pycodestyle "F", # pyflakes "G", # flake8-logging-format "I", # flake8-isort "N", # pep8-naming "NPY", # numpy "Q", # flake8-quotes "UP", # pyupgrade "RUF", # ruff "W", # pycodestyle ] extend-ignore = [ "C90", # McCabe complexity "E221", # multiple spaces before operator "E226", # missing whitespace around arithmetic operator "E402", # module-level import not at top of file "UP006", # updated annotations due to __future__ import "UP007", # updated annotations due to __future__ import "UP031", # use f-strings instead of % "UP032", # use f-strings instead of .format ] [tool.ruff.lint.flake8-quotes] docstring-quotes = "double" inline-quotes = "double" multiline-quotes = "double" [tool.ruff.lint.isort] combine-as-imports = true known-local-folder = [ "pytools", ] lines-after-imports = 2 [tool.mypy] ignore_missing_imports = true warn_unused_ignores = true