{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/github/github-automatically-generated-release-notes-configuration/latest.json",
  "title": "GitHub automatically generated release notes config",
  "x-lintel": {
    "source": "https://www.schemastore.org/github-release-config.json",
    "sourceSha256": "fcfcac3a15582d6fef3a03577591e2c93bca9d14363ae278e55137bfb0591e51",
    "fileMatch": [
      "**/.github/release.yml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "changelog": {
      "type": "object",
      "properties": {
        "exclude": {
          "type": "object",
          "properties": {
            "labels": {
              "type": "array",
              "description": "A list of labels that exclude a pull request from appearing in release notes",
              "items": {
                "type": "string",
                "minLength": 1,
                "examples": [
                  "ignore-for-release",
                  "dependencies"
                ]
              }
            },
            "authors": {
              "type": "array",
              "description": "A list of user or bot login handles whose pull requests are to be excluded from release notes",
              "items": {
                "type": "string",
                "minLength": 1,
                "examples": [
                  "octocat"
                ]
              }
            }
          },
          "additionalProperties": false
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "title": {
                "type": "string",
                "description": "The title of a category of changes in release notes",
                "minLength": 1,
                "examples": [
                  "Breaking Changes",
                  "Exciting New Features",
                  "Features",
                  "Dependencies"
                ]
              },
              "labels": {
                "type": "array",
                "description": "Labels that qualify a pull request for this category. Use * as a catch-all for pull requests that didn't match any of the previous categories",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "examples": [
                    "*",
                    "Breaking Changes",
                    "Exciting New Features",
                    "Features",
                    "Dependencies"
                  ]
                }
              },
              "exclude": {
                "type": "object",
                "properties": {
                  "labels": {
                    "type": "array",
                    "description": "A list of labels that exclude a pull request from appearing in this category",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "examples": [
                        "Semver-Major",
                        "breaking-change",
                        "enhancement"
                      ]
                    }
                  },
                  "authors": {
                    "type": "array",
                    "description": "A list of user or bot login handles whose pull requests are to be excluded from this category",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "examples": [
                        "octocat"
                      ]
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "required": [
              "title",
              "labels"
            ]
          }
        }
      },
      "additionalProperties": false
    }
  },
  "$comment": "https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes#configuration-options"
}
