)]}'
{
  "commit": "23afa6492dbab8877c34bba2c9d6a45e6c1e8bf6",
  "tree": "950a3797b00153be85875e7be1ea2c8df246304c",
  "parents": [
    "a590a7a2073d38586eff9db3e9fddb83fc92a8ee"
  ],
  "author": {
    "name": "Edwin Kempin",
    "email": "ekempin@google.com",
    "time": "Fri Dec 04 11:34:42 2020 +0100"
  },
  "committer": {
    "name": "Edwin Kempin",
    "email": "ekempin@google.com",
    "time": "Thu Dec 10 12:03:31 2020 +0100"
  },
  "message": "Allow to ignore self approvals for required approval\n\nIf a label has ignoreSelfApproval set to true, self approvals from the\nuploader are ignored. However so far this flag was ignored for code\nowner approvals. This means the code owners check did pass if there was\nan approval from the uploader, even if ignoreSelfApproval was set to\ntrue. With this change now, any vote from the uploader is ignored for\nthe code owners check if the required label has ignoreSelfApproval set\nto true. In this case the enableImplicitApprovals configuration is\nignored because there can never be an implicit approval of the uploader\nif self approvals of the uploader are ignored.\n\nSigned-off-by: Edwin Kempin \u003cekempin@google.com\u003e\nChange-Id: I698a737bc2551e638c11b8cdd4ca3256fa3d45e0\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "26d67f06d7aecfc54f9aa7f2cf0b3d0efedeff42",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerApprovalCheck.java",
      "new_id": "2c4f6de292b9fd7cd6253a6a540e35c4a752407d",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerApprovalCheck.java"
    },
    {
      "type": "modify",
      "old_id": "57bc488f9bd811180d46e2e25dbd619348be80a5",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/config/CodeOwnersPluginConfiguration.java",
      "new_id": "60c14d2d81a252193006a3ff98b914491a752e3e",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/config/CodeOwnersPluginConfiguration.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3207f6794fd99b3d94d7f896db9b7695133149a7",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnerApprovalCheckWithSelfApprovalsIgnoredTest.java"
    },
    {
      "type": "modify",
      "old_id": "6acb2680ea7a04e5ff428e38f6135e9d7645c9af",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/config/CodeOwnersPluginConfigurationTest.java",
      "new_id": "641bf101cb9081e1cebba111a713f8dce37623e0",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/config/CodeOwnersPluginConfigurationTest.java"
    },
    {
      "type": "modify",
      "old_id": "24ed4b915076ec0f95b3167cfaa65b065bdb5c9b",
      "old_mode": 33188,
      "old_path": "resources/Documentation/config.md",
      "new_id": "7fbf4c9f8201c23fa43da1d1ebdfd7da6e89fc87",
      "new_mode": 33188,
      "new_path": "resources/Documentation/config.md"
    }
  ]
}
