[build-system]
requires = ["setuptools>=40.2.0,<64.0.0", "wheel"]
build-backend = "setuptools.build_meta"

[tool.black]
# File filtering is taken care of in pre-commit.
line-length=100
target-version=['py38']

[tool.isort]
profile = "black"
line_length = 100
lines_between_sections = 1
known_first_party = "sentry"
skip = "migrations"

[tool.pytest.ini_options]
python_files = "test_*.py sentry/testutils/*"
# note: When updating the traceback format, make sure to update .github/pytest.json
# We don't use the celery pytest plugin.
addopts = "-ra --tb=short --strict-markers -p no:celery"
# TODO: --import-mode=importlib will become the default soon,
# currently we have a few relative imports that don't work with that.
markers = [
    "snuba: mark a test as requiring snuba",
    "itunes: test requires iTunes interaction, skipped unless --itunes is provided",
    "getsentryllc: test requires credentials for the GetSentry LLC organisation in Apple App Store Connect",
    "sentry_metrics: test requires access to sentry metrics",
]
selenium_driver = "chrome"
filterwarnings = [
    # Consider all warnings to be errors other than the ignored ones.
    "error",

    "ignore::django.utils.deprecation.RemovedInDjango30Warning",

    # At writing, the Google Bigtable Emulator relies on deprecated behavior
    # internally, this can be removed once a version containing this fix is
    # released: https://github.com/googleapis/python-bigtable/pull/246
    "ignore:The `channel` argument is deprecated; use `transport` instead.:PendingDeprecationWarning:google.cloud.bigtable*",

    # The following warning filters are for pytest only.
    # This is so we don't have to wrap most datetime objects in testing code
    # with django.utils.timezone.
    "ignore:DateTimeField.*naive datetime:RuntimeWarning",
    "ignore:.*sentry.digests.backends.dummy.DummyBackend.*:sentry.utils.warnings.UnsupportedBackend",

    # pytest has not yet implemented the replacement for this yet
    "ignore:The --looponfail command line argument.*",
]
looponfailroots = ["src", "tests"]