{
  "extends": [
    // Our default configuration. See
    // https://github.com/apollographql/renovate-config-apollo-open-source/blob/master/package.json
    "apollo-open-source",
    // Bundle together Jest/TS-Jest updates (even major ones).
    "group:jestMonorepo",
    "group:jestPlusTSJest",
  ],
  "dependencyDashboard": true,
  "enabledManagers": ["npm"],
  "packageRules": [
    // We set this to the lowest supported Node.js version to ensure we don't
    // use newer Node.js APIs unknowingly during development which are going to
    // fail in CI anyway when they're run against the full range of Node.js
    // versions we support.
    {
      "matchPackageNames": ["@types/node"],
      "allowedVersions": "14.x"
    },
    // Bunch up all non-major npm dependencies into a single PR.  In the common case
    // where the upgrades apply cleanly, this causes less noise and is resolved faster
    // than starting a bunch of upgrades in parallel for what may turn out to be
    // a suite of related packages all released at once.
    {
      groupName: "all non-major dependencies",
      matchUpdateTypes: ["patch", "minor"],
      groupSlug: "all-npm-minor-patch",
      matchManagers: [ "npm" ],
    },
  ],
  "force": {
    "constraints": {
      "node": ">= 16.0",
      "npm": ">= 7.0"
    }
  },
}
