{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "label": "run precommit",
      "type": "shell",
      "command": "poetry",
      "args": [
        "run",
        "pre-commit",
        "run",
        "--all-files"
      ]
    },
    {
      "label": "manual lint with flake8",
      "type": "shell",
      "command": "poetry",
      "args": [
        "run",
        "flake8"
      ]
    },
    {
      "label": "manual lint with bandit",
      "type": "shell",
      "command": "poetry",
      "args": [
        "run",
        "bandit",
        "doxysphinx/",
        "-r"
      ]
    },
    {
      "label": "manual dependency security check with safety",
      "type": "shell",
      "command": "poetry",
      "args": [
        "run",
        "safety",
        "check",
        "--help"
      ]
    },
    // helpers for debugging
    {
      "label": "_DEBUG: doxysphinx clean",
      "type": "shell",
      "command": "poetry",
      "args": [
        "run",
        "doxysphinx",
        "--verbosity=DEBUG",
        "clean",
        ".",
        ".build/html",
        "demo/demo.doxyfile"
      ]
    },
    {
      "label": "_DEBUG: make doxygen",
      "type": "shell",
      "command": "make",
      "args": [
        "doxygen",
      ]
    },
    {
      "label": "_DEBUG: clean",
      "dependsOn": [
        // comment out the following depending on your needs (e.g. you can skip make doxygen if you ran that once)
        "_DEBUG: make doxygen",
        "_DEBUG: doxysphinx clean"
      ]
    },
  ]
}
