- Run tox via uv:
uv run tox -e <env> tox+tox-uvare declared as the project's default dev dependencies inpyproject.toml, so uv installs them automatically into.venv.
Use tox for testing (not pytest directly):
- Test configuration is in
tox.ini - Common tests:
uv run tox -e tests - Run specific test file:
TESTPATH=tests/integrations/logging/test_logging.py uv run tox -e py3.14-common - Run single test:
TESTPATH=tests/path/to/test_file.py uv run tox -e py3.14-common -- -k "test_name"
Mypy and its type stubs live in the opt-in typing dependency group:
- Run
uv run tox -e mypybefore committing (must pass with zero errors) - Strict mode enabled (
check_untyped_defs,disallow_untyped_defs)
Use ruff for linting and formatting:
uv run ruff check --fix tests bitcaster_sdkuv run ruff format tests bitcaster_sdkuv run tox -e mypy