[tox]
isolated_build = true
envlist =
    py3
    lint

[testenv]
commands =
    pytest -n6 {posargs}
setenv =
# Avoid stack overflow when Rust core is built without optimizations.
    RUST_MIN_STACK=8388608
passenv =
    CHATMAIL_DOMAIN
deps =
    pytest
    pytest-timeout
    pytest-xdist

[testenv:lint]
skipsdist = True
skip_install = True
deps =
    ruff
commands =
    ruff format --quiet --diff src/ examples/ tests/
    ruff check src/ examples/ tests/

[pytest]
timeout = 300
log_cli = true
log_level = debug
