content: [build-system]
  # Explicitly specifying setuptools and wheel because pip >=24 no longer
  # includes wheel by default. We need both for our python installation.
  #
  # Without this, pip install semgrep with pip 24 would fail to build,
  # which has started to affect our docker and brew builds.
  #
  # A bit more discussion for context here:
  # https://github.com/Homebrew/homebrew-core/pull/175401
  requires = ["setuptools", "wheel"]
  build-backend = "setuptools.build_meta"
  
  [tool.pytest.ini_options]
  # coupling: if you add a dep here it would be great if you added it to the top
  # level flake.nix in devPipInputs
  minversion = "7.0"
  # The default folders where pytest looks for tests when none is specified
  # on the command line. Don't extend this list so as to minimize surprises.
  testpaths = [
      "tests/default",
  ]
  addopts = "--strict-markers"
  markers = [
      "quick: test takes less than 100 ms",
      "kinda_slow: test takes up to 2s",
      "slow: test takes more than 2s",
      "todo: the test is not implemented or needs work",
      "no_semgrep_cli: this test doesn't invoke the semgrep CLI or osemgrep",
      "osemfail: this test currently fails with osemgrep",
      "pysemfail: this test currently fails with pysemgrep",
      "requires_lockfileless_deps: this test requires lockfileless environment dependencies (java, etc)",
  ]
  
  [tool.tox]
  legacy_tox_ini = """
  [tox]
  envlist = py38, py39, py310, py311
  
  [testenv]
  allowlist_externals = pipenv
  commands =
      pipenv install --dev
      pipenv run pytest -n auto -vv --tb=short
  setenv =
      # suppress a pipenv warning about using the active env
      PIPENV_VERBOSITY = -1
  """
  