electionguard-python/pyproject.toml

124 строки
3.1 KiB
TOML

[tool.poetry]
name = "electionguard"
version = "1.4.0"
description = "ElectionGuard: Support for e2e verified elections."
license = "MIT"
authors = ["Microsoft <electionguard@microsoft.com>"]
maintainers = []
readme = "README.md"
homepage = "https://microsoft.github.io/electionguard-python"
repository = "https://github.com/microsoft/electionguard-python"
documentation = "https://microsoft.github.io/electionguard-python"
keywords = []
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: Unix",
"Operating System :: POSIX",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python",
"Topic :: Utilities"]
packages = [
{ include = "electionguard", from = "src" },
{ include = "electionguard_tools", from = "src" },
{ include = "electionguard_cli", from = "src" },
{ include = "electionguard_gui", from = "src" },
]
[tool.poetry.urls]
"GitHub Pages" = "https://microsoft.github.io/electionguard-python"
"Read the Docs" = "https://electionguard-python.readthedocs.io"
"Releases" = "https://github.com/microsoft/electionguard-python/releases"
"Milestones" = "https://github.com/microsoft/electionguard-python/milestones"
"Issue Tracker" = "https://github.com/microsoft/electionguard-python/issues"
[tool.poetry.dependencies]
python = "^3.9.5"
gmpy2 = "^2.0.8"
psutil = ">=5.7.2"
pydantic = "1.9.0"
click = "^8.1.0"
dacite = "^1.6.0"
python-dateutil = "^2.8.2"
types-python-dateutil = "^2.8.14"
Eel = {extras = ["jinja2"], version = "^0.14.0"}
pymongo = "^4.1.1"
dependency-injector = "^4.39.1"
pytest-mock = "^3.8.2"
[tool.poetry.dev-dependencies]
atomicwrites = "*"
black = "22.3.0"
coverage = "*"
docutils = "*"
hypothesis = ">=5.15.1"
ipython = "^7.31.1"
ipykernel = "^6.4.1"
jeepney = "*"
jupyter-black = "^0.3.1"
mkdocs = "^1.3.0"
mkdocs-jupyter = "^0.20.1"
mkinit = "^0.3.3"
mypy = "^0.910"
pydeps = "*"
pylint = "*"
pytest = "*"
secretstorage = "*"
twine = "*"
typish = '*'
[tool.poetry.scripts]
eg = 'electionguard_cli.start:cli'
egui = 'electionguard_gui.start:run'
[tool.black]
target-version = ['py39']
[tool.pylint.basic]
extension-pkg-whitelist = "pydantic"
[tool.pylint.format]
max-line-length = 120
# FIXME: Pylint should not require this many exceptions
[tool.pylint.messages_control]
disable = '''
duplicate-code,
fixme,
invalid-name,
missing-module-docstring,
missing-function-docstring,
no-value-for-parameter,
redefined-builtin,
too-few-public-methods,
too-many-arguments,
too-many-branches,
too-many-function-args,
too-many-lines,
too-many-locals,
too-many-nested-blocks,
unnecessary-lambda,
'''
[tool.coverage.run]
branch = true
source = ["src/electionguard"]
[tool.coverage.html]
directory = "coverage_html_report"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.mypy]
python_version = 3.9
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
ignore_missing_imports = true
show_column_numbers = true