{
  "tasks": {
    "clobber": {
      "name": "clobber",
      "description": "hard resets to HEAD of origin and cleans the local repo",
      "env": {
        "BRANCH": "$(git branch --show-current)"
      },
      "steps": [
        {
          "exec": "git checkout -b scratch",
          "name": "save current HEAD in \"scratch\" branch"
        },
        {
          "exec": "git checkout $BRANCH"
        },
        {
          "exec": "git fetch origin",
          "name": "fetch latest changes from origin"
        },
        {
          "exec": "git reset --hard origin/$BRANCH",
          "name": "hard reset to origin commit"
        },
        {
          "exec": "git clean -fdx",
          "name": "clean all untracked files"
        },
        {
          "say": "ready to rock! (unpushed commits are under the \"scratch\" branch)"
        }
      ],
      "condition": "git diff --exit-code > /dev/null"
    },
    "default": {
      "name": "default",
      "steps": [
        {
          "exec": "node .projenrc.js"
        }
      ]
    },
    "install": {
      "name": "install",
      "description": "Install and upgrade dependencies",
      "steps": [
        {
          "exec": "pip install --upgrade pip"
        },
        {
          "exec": "pip install -r requirements.txt"
        },
        {
          "exec": "pip install -r requirements-dev.txt"
        }
      ]
    },
    "test": {
      "name": "test",
      "description": "Runs tests",
      "steps": [
        {
          "exec": "pytest"
        }
      ]
    }
  },
  "env": {
    "VIRTUAL_ENV": "$(echo $PWD/.env)",
    "PATH": "$(echo $PWD/.env/bin:$PATH)"
  },
  "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
}
