urban-meal-delivery/pyproject.toml
Alexander Hess 0aefa22666
Integrate pytest-randomly into the test suite
As a lot of the integration tests populate the database with test data,
it is deemed safer to run the tests in random order to uncover potential
dependencies between distinct test cases.
Because of how the `db_session` fixture is designed, this should already
be taken care of.
2020-12-15 11:35:05 +01:00

86 lines
2.2 KiB
TOML

[build-system]
build-backend = "poetry.masonry.api"
requires = ["poetry>=0.12"]
[tool.black]
line-length = 88
skip-string-normalization = true # wemake-python-styleguide enforces single quotes
target-version = ["py38"]
[tool.poetry]
name = "urban-meal-delivery"
version = "0.3.0.dev0"
authors = ["Alexander Hess <alexander@webartifex.biz>"]
description = "Optimizing an urban meal delivery platform"
keywords = [
"data-science",
"meal-delivery",
"vehicle-routing-problem",
]
license = "MIT"
readme = "README.md"
homepage = "https://github.com/webartifex/urban-meal-delivery"
repository = "https://github.com/webartifex/urban-meal-delivery"
[tool.poetry.dependencies]
python = "^3.8"
# Package => code developed in *.py files and packaged under src/urban_meal_delivery
alembic = "^1.4.2"
click = "^7.1.2"
psycopg2 = "^2.8.5" # adapter for PostgreSQL
sqlalchemy = "^1.3.18"
# Jupyter Lab => notebooks with analyses using the developed package
# IMPORTANT: must be kept in sync with the "research" extra below
jupyterlab = { version="^2.2.2", optional=true }
nb_black = { version="^1.0.7", optional=true }
numpy = { version="^1.19.1", optional=true }
pandas = { version="^1.1.0", optional=true }
pytz = { version="^2020.1", optional=true }
[tool.poetry.extras]
research = [
"jupyterlab",
"nb_black",
"numpy",
"pandas",
"pytz",
]
[tool.poetry.dev-dependencies]
# Task Runners
nox = "^2020.5.24"
pre-commit = "^2.6.0"
# Code Formatters
autoflake = "^1.3.1"
black = "^19.10b0"
isort = "^4.3.21" # TODO (isort): not ^5.5.4 due to wemake-python-styleguide
# (Static) Code Analyzers
flake8 = "^3.8.3"
flake8-annotations = "^2.3.0"
flake8-black = "^0.2.1"
flake8-expression-complexity = "^0.0.8"
flake8-pytest-style = "^1.2.2"
mypy = "^0.782"
pylint = "^2.5.3"
wemake-python-styleguide = "^0.14.1" # flake8 plug-in
# Test Suite
packaging = "^20.4" # used to test the packaged version
pytest = "^6.0.1"
pytest-cov = "^2.10.0"
pytest-env = "^0.6.2"
pytest-randomly = "^3.5.0"
xdoctest = { version="^0.13.0", extras=["optional"] }
# Documentation
sphinx = "^3.1.2"
sphinx-autodoc-typehints = "^1.11.0"
[tool.poetry.scripts]
umd = "urban_meal_delivery.console:main"