[tox]
envlist = py{37,38,39},mypy,lint

[testenv]
usedevelop = true
deps =
  setuptools
  pytest
  pytest-cov
  freezegun
commands = py.test \
  --cov ulid \
  --cov-config tox.ini \
  --cov-report term-missing \
  --cov-report xml {posargs}

[testenv:lint]
skip_install = True
deps =
  flake8
  flake8-isort
commands = flake8 tests ulid

[testenv:fmt]
skip_install = True
deps =
  black==21.6b0
commands = black --check .

[testenv:mypy]
skip_install = True
deps =
  mypy
commands = mypy --ignore-missing-imports --disallow-untyped-calls .

[flake8]
max-line-length = 100
ignore = H803,E203,W503

[run]
branch = True

[report]
exclude_lines =
  nocov

[isort]
profile = black
force_alphabetical_sort_within_sections = True
force_single_line = True
line_length = 100
lines_after_imports = 2
known_third_party =
  freezegun
  pytest

[tox]
envlist = py{37,38,39},mypy,lint

[testenv]
usedevelop = true
deps =
  setuptools
  pytest
  pytest-cov
  freezegun
commands = py.test \
  --cov ulid \
  --cov-config tox.ini \
  --cov-report term-missing \
  --cov-report xml {posargs}

[testenv:lint]
skip_install = True
deps =
  flake8
  flake8-isort
commands = flake8 tests ulid

[testenv:fmt]
skip_install = True
deps =
  black==21.6b0
commands = black --check .

[testenv:mypy]
skip_install = True
deps =
  mypy==0.910
  types-freezegun==0.1.4
commands = mypy --ignore-missing-imports --disallow-untyped-calls .

[flake8]
max-line-length = 100
ignore = H803,E203,W503

[run]
branch = True

[report]
exclude_lines =
  nocov

[isort]
profile = black
force_alphabetical_sort_within_sections = True
force_single_line = True
line_length = 100
lines_after_imports = 2
known_third_party =
  freezegun
  pytest

Add typing stubs for freezegun
chore: Add typing stubs for freezegun
