)]}'
{
  "log": [
    {
      "commit": "79d692f2d4a3db725d6bff2abb431ea9cbcc77bc",
      "tree": "8ad5d4d358537f69467fc48d3cbde5ae9c02e66a",
      "parents": [
        "b9f05a18ab1ff96a8b287ee4336cf99e8ef53701",
        "40e40ffa35ec98c618051d2745d62aedbc9011ec"
      ],
      "author": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:27:57 2021 +0100"
      },
      "committer": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:27:57 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.3\u0027 into master\n\n* stable-3.3:\n  Fix kafka-events replay messages feature\n\nChange-Id: I22db5cbcff4dc63752be9d419f5415e76abc6acb\n"
    },
    {
      "commit": "40e40ffa35ec98c618051d2745d62aedbc9011ec",
      "tree": "190f3e0f3ee6638f7796781024ddd4d428e118ca",
      "parents": [
        "040f71e7c8339b02f9e47b0d453e019488555126",
        "a7173cfdb986f443de80379a64ed70c9e8619553"
      ],
      "author": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:27:23 2021 +0100"
      },
      "committer": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:27:23 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.2\u0027 into stable-3.3\n\n* stable-3.2:\n  Fix kafka-events replay messages feature\n\nChange-Id: I8d7c99e2b1604d52642d6f477b12e45af4a93a95\n"
    },
    {
      "commit": "a7173cfdb986f443de80379a64ed70c9e8619553",
      "tree": "5b40a88839762b43cccdf16565f0e1fff985380f",
      "parents": [
        "a5196799a1d163fc37218d3d7d399f8087175ff5",
        "ba8df0bb236fd5b931888180ecfe324ffba6f3e5"
      ],
      "author": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:26:36 2021 +0100"
      },
      "committer": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Wed Mar 10 11:26:36 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.1\u0027 into stable-3.2\n\n* stable-3.1:\n  Fix kafka-events replay messages feature\n\nChange-Id: I980ce9c77b9f2f2c242c3a0eaf1538c1d10a7ded\n"
    },
    {
      "commit": "ba8df0bb236fd5b931888180ecfe324ffba6f3e5",
      "tree": "99a423af3814c3e74136e715a320b4b36937dc5b",
      "parents": [
        "ed1926e46a28d72d84ed42d393ea91e71a2ef3ed",
        "a573a3119f9f84f86e57758a1600bb775e39f66c"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Mar 09 15:07:05 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 09 15:07:05 2021 +0000"
      },
      "message": "Merge \"Fix kafka-events replay messages feature\" into stable-3.1"
    },
    {
      "commit": "a573a3119f9f84f86e57758a1600bb775e39f66c",
      "tree": "99a423af3814c3e74136e715a320b4b36937dc5b",
      "parents": [
        "67c5c3e28c879a6bbb3a1a7d5ffdfcec3c3f3720"
      ],
      "author": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Tue Mar 02 21:38:50 2021 +0100"
      },
      "committer": {
        "name": "Antonio Barone",
        "email": "syntonyze@gmail.com",
        "time": "Thu Mar 04 17:35:51 2021 +0100"
      },
      "message": "Fix kafka-events replay messages feature\n\nWhen requesting to reset the offset and consume messages from the\nbeginning, the subscriber has to wait first for the assignment of\npartitions.\n\nFailing to do so will cause the subscriber to consume zero records,\nsince no partitions have yet been assigned.\n\nMake an explicit poll() call before the seekToBeginning() to ensure that\nthe consumer heartbeat is sent to kafka and thus a partition is\nassigned.\n\nBug: Issue 14136\nChange-Id: Ibc6a66507ebfc9bb6c67df9e576114bed8973e74\n"
    },
    {
      "commit": "b9f05a18ab1ff96a8b287ee4336cf99e8ef53701",
      "tree": "d171f995e651def16967a55c1b09d44de827ca80",
      "parents": [
        "9dfbdec1d9a04b37297bcc8f8d83c69657bcdfbc"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Wed Feb 03 18:28:21 2021 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sat Feb 06 00:37:48 2021 +0000"
      },
      "message": "Bazel: Excempt events-broker from final artifact\n\nChange-Id: I3a01dcda76315303cd8ceccd1e95f8fa94a3b1f8\n"
    },
    {
      "commit": "9dfbdec1d9a04b37297bcc8f8d83c69657bcdfbc",
      "tree": "eaaa3899f34568cd3608cb865b08fcab0d79dc5d",
      "parents": [
        "8e5126b8e316fbe79ce7ab6b70a2e94b26da8f36"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Fri Feb 05 08:53:53 2021 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Fri Feb 05 09:45:15 2021 +0000"
      },
      "message": "Update event-broker to 3.4-alpha-20210205083200\n\nChange-Id: Ifb4fae56b658281c7a5b102e801159b5a8878a7f\n"
    },
    {
      "commit": "8e5126b8e316fbe79ce7ab6b70a2e94b26da8f36",
      "tree": "51c0ec7aa61afe68e9208b9cd62d6f89b1f8c918",
      "parents": [
        "0352332105412ab78049f6fea009000f7ef30c3f",
        "040f71e7c8339b02f9e47b0d453e019488555126"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:25:48 2021 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:25:53 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.3\u0027\n\n* stable-3.3:\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n  Add build validation with Jenkinsfile\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n  Add missing dependency to jackson-annotations library\n  Update events-broker to v3.3.0-rc7\n  Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I660309fc5d68a8ce4745f18ec339924641a723af\n"
    },
    {
      "commit": "040f71e7c8339b02f9e47b0d453e019488555126",
      "tree": "51c0ec7aa61afe68e9208b9cd62d6f89b1f8c918",
      "parents": [
        "109350a7667f56adef9bfd2686eb5f0c6921b13e",
        "a5196799a1d163fc37218d3d7d399f8087175ff5"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:23:56 2021 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:24:10 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.2\u0027 into stable-3.3\n\n* stable-3.2:\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n  Add build validation with Jenkinsfile\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I660309fc5d68a8ce4745f18ec339924641a723af\n"
    },
    {
      "commit": "a5196799a1d163fc37218d3d7d399f8087175ff5",
      "tree": "c4f1fde9d2db9efc0aab08cffe84123443dbc561",
      "parents": [
        "f360304cf5d143b0025d7531715b35b3d0480b1c",
        "ed1926e46a28d72d84ed42d393ea91e71a2ef3ed"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:22:57 2021 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:23:04 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.1\u0027 into stable-3.2\n\n* stable-3.1:\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n  Add build validation with Jenkinsfile\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n\nChange-Id: If2369741a95ba537c959e2af4d7895ec4a2920ee\n"
    },
    {
      "commit": "ed1926e46a28d72d84ed42d393ea91e71a2ef3ed",
      "tree": "635c5958c34dec379962c00acabc16e9f65ca790",
      "parents": [
        "67c5c3e28c879a6bbb3a1a7d5ffdfcec3c3f3720",
        "48fe6aa2d3ba777fdaac825b761b0338b7a49cea"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:21:53 2021 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:22:08 2021 +0100"
      },
      "message": "Merge branch \u0027stable-3.0\u0027 into stable-3.1\n\n* stable-3.0:\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I336e2fee317e792d886dbbf280613b761c0323ae\n"
    },
    {
      "commit": "48fe6aa2d3ba777fdaac825b761b0338b7a49cea",
      "tree": "72985427aad1521546a69d3d23cc35f2f475c26f",
      "parents": [
        "1d2c3ad20dfdf32ddcdcf5a9a0dbfe06888407d2",
        "88bc166cf00db3e598ce5fe606c862580859a976"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:20:41 2021 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:20:47 2021 +0100"
      },
      "message": "Merge branch \u0027stable-2.16\u0027 into stable-3.0\n\n* stable-2.16:\n  Add missing dependency to jackson-annotations library\n  Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I4847b371dc320dca4d2d26285bba0dcb8b4df03a\n"
    },
    {
      "commit": "88bc166cf00db3e598ce5fe606c862580859a976",
      "tree": "8164621439852ade3b176a0d35c8e4b3f8d626c8",
      "parents": [
        "32f25c8b93aa108769f6cc2c6403c09c494fb404"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 15:19:01 2020 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:19:10 2021 +0100"
      },
      "message": "Add missing dependency to jackson-annotations library\n\nIn I69d239fbd7 testcontainers dependency was aligned to v1.15, since it\nwas bumped in: Ifc3e5b51cc.\n\nHowever transitive dependency jackson-annotations was missed to be\nadded. As the consequence, the tests are failing with the message:\n\n  Could not find a valid Docker environment.\n  Please see logs and check configuration.\n\nChange-Id: I70517d0714eecfcc16dd6a5530c33a25345ae78a\n"
    },
    {
      "commit": "32f25c8b93aa108769f6cc2c6403c09c494fb404",
      "tree": "5699df9f66dd9455e541c6e2ae96b6baab63b671",
      "parents": [
        "ffe159dc37cb018a2fe1327e0fe1fcf465eefa8c"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Nov 26 23:21:14 2020 +0000"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Jan 28 14:19:08 2021 +0100"
      },
      "message": "Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I69d239fbd7db85bcf33e4914eea6d78fe67a2275\n"
    },
    {
      "commit": "67c5c3e28c879a6bbb3a1a7d5ffdfcec3c3f3720",
      "tree": "635c5958c34dec379962c00acabc16e9f65ca790",
      "parents": [
        "7055d55c98cca7495b4f7d26fb242ecab61a40f4"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Wed Dec 02 20:09:03 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Dec 02 23:56:52 2020 +0000"
      },
      "message": "Add build validation with Jenkinsfile\n\nChange-Id: I9bdaf73aea45fef0d8c922ae69596fb693972344\n"
    },
    {
      "commit": "7055d55c98cca7495b4f7d26fb242ecab61a40f4",
      "tree": "29247e005ae1b1c03a60e6802c72a4b0c264fa17",
      "parents": [
        "a8aeac3046a59ed30c6278fbf9a2349a9ef603a2"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 15:19:01 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Dec 02 23:56:32 2020 +0000"
      },
      "message": "Add missing dependency to jackson-annotations library\n\nIn I69d239fbd7 testcontainers dependency was aligned to v1.15, since it\nwas bumped in: Ifc3e5b51cc.\n\nHowever transitive dependency jackson-annotations was missed to be\nadded. As the consequence, the tests are failing with the message:\n\n  Could not find a valid Docker environment.\n  Please see logs and check configuration.\n\nChange-Id: I70517d0714eecfcc16dd6a5530c33a25345ae78a\n"
    },
    {
      "commit": "a8aeac3046a59ed30c6278fbf9a2349a9ef603a2",
      "tree": "6a6ab1d5239fe41094407408cfbcdc75849759b3",
      "parents": [
        "5bc89ffaa1a383515bbc577122a1e18a3fa36895"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Nov 26 23:21:14 2020 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Dec 02 23:56:10 2020 +0000"
      },
      "message": "Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I69d239fbd7db85bcf33e4914eea6d78fe67a2275\n"
    },
    {
      "commit": "109350a7667f56adef9bfd2686eb5f0c6921b13e",
      "tree": "648470bcf7cf9571e391a9f2d71437d6d43d03a1",
      "parents": [
        "196f0a0138e62b43b89fdca037be5ee038ea5fd4"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 15:19:01 2020 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 15:28:28 2020 +0100"
      },
      "message": "Add missing dependency to jackson-annotations library\n\nIn I69d239fbd7 testcontainers dependency was aligned to v1.15, since it\nwas bumped in: Ifc3e5b51cc.\n\nHowever transitive dependency jackson-annotations was missed to be\nadded. As the consequence, the tests are failing with the message:\n\n  Could not find a valid Docker environment.\n  Please see logs and check configuration.\n\nChange-Id: I70517d0714eecfcc16dd6a5530c33a25345ae78a\n"
    },
    {
      "commit": "196f0a0138e62b43b89fdca037be5ee038ea5fd4",
      "tree": "34879760701849b716eb14556958f80e14db6a6a",
      "parents": [
        "5be4957c4309132f326acab96af44baf41ce8644"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 14:57:26 2020 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Nov 30 14:57:26 2020 +0100"
      },
      "message": "Update events-broker to v3.3.0-rc7\n\nChange-Id: I282295895dd1e435f45e5e4d23d76939de178d9b\n"
    },
    {
      "commit": "5be4957c4309132f326acab96af44baf41ce8644",
      "tree": "76a03be789dbb1c1c026b0de09151eebe706ea92",
      "parents": [
        "0352332105412ab78049f6fea009000f7ef30c3f"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Nov 26 23:21:14 2020 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Nov 26 23:21:14 2020 +0000"
      },
      "message": "Align testcontainers with v1.15 in Gerrit\n\nChange-Id: I69d239fbd7db85bcf33e4914eea6d78fe67a2275\n"
    },
    {
      "commit": "0352332105412ab78049f6fea009000f7ef30c3f",
      "tree": "16c3ff80d368919bb194f06dca506696bdc4b8c7",
      "parents": [
        "c496b582234878884abdf47011bf6fcf80814d2e",
        "f360304cf5d143b0025d7531715b35b3d0480b1c"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Mon Jun 22 18:00:08 2020 +0200"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Mon Jun 22 18:00:08 2020 +0200"
      },
      "message": "Merge branch \u0027stable-3.2\u0027\n\n* stable-3.2:\n  Adapt kafka publisher metrics to the metrics framework\n  Add publisher metrics\n\nChange-Id: I09cac819532dbdb72656ca788745a304d71eed75\n"
    },
    {
      "commit": "f360304cf5d143b0025d7531715b35b3d0480b1c",
      "tree": "16c3ff80d368919bb194f06dca506696bdc4b8c7",
      "parents": [
        "c496b582234878884abdf47011bf6fcf80814d2e",
        "5bc89ffaa1a383515bbc577122a1e18a3fa36895"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Mon Jun 22 15:35:40 2020 +0200"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Mon Jun 22 15:35:40 2020 +0200"
      },
      "message": "Merge branch \u0027stable-3.1\u0027 into stable-3.2\n\n* stable-3.1:\n  Adapt kafka publisher metrics to the metrics framework\n  Add publisher metrics\n\nChange-Id: I2048adca509aaa86409d647675934848eeb3786e\n"
    },
    {
      "commit": "5bc89ffaa1a383515bbc577122a1e18a3fa36895",
      "tree": "bb1a3e66d1c70ad1e6532ba3ae0f76862bc24f94",
      "parents": [
        "3e4af2239e037757f694f9ac9801f684e0a0217d"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jun 10 15:31:46 2020 +0200"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jun 10 15:33:29 2020 +0200"
      },
      "message": "Adapt kafka publisher metrics to the metrics framework\n\nBug: Issue 12727\nChange-Id: I27cad4b846b4e7b50b39adbd2ec9889812839203\n"
    },
    {
      "commit": "3e4af2239e037757f694f9ac9801f684e0a0217d",
      "tree": "77994c703c24d2be2d69bdedbb40537786c4070b",
      "parents": [
        "0ec3b914de59950b2bd1b563b47cb1522848e16d",
        "1d2c3ad20dfdf32ddcdcf5a9a0dbfe06888407d2"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jun 10 15:07:32 2020 +0200"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jun 10 15:07:32 2020 +0200"
      },
      "message": "Merge branch \u0027stable-3.0\u0027 into stable-3.1\n\n* stable-3.0:\n  Add publisher metrics\n\nChange-Id: I213a2fe90144459f9a4f9c19d394da3f7eb7c4ae\n"
    },
    {
      "commit": "1d2c3ad20dfdf32ddcdcf5a9a0dbfe06888407d2",
      "tree": "bfa00446489cf3e3b12db0929a8c5bd1ca7f8916",
      "parents": [
        "d4a3264627f5690c0abe325d12a94ede930ea0ab"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Jun 04 18:40:48 2020 +0200"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jun 10 14:48:13 2020 +0200"
      },
      "message": "Add publisher metrics\n\nCurrently only subscriber metrics are supported in kafka-events plugin.\nProducer metrics are handled in multi-site plugin. Producer async mode\ncaused regression because we handle issues with sending in the callback.\nTo record proper metrics for message producer add the metrics code from\nto kafka-events.\n\nFeature: Issue 12727\nChange-Id: Ie81196e4f598466c670a486f0597c01a6761cd93\n"
    },
    {
      "commit": "c496b582234878884abdf47011bf6fcf80814d2e",
      "tree": "a69281e9fb0acca831e3fa84867d9f5caac7df00",
      "parents": [
        "c905d71459bc3f9a4058164fda543ada211c893b"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed May 27 11:09:11 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed May 27 11:09:11 2020 +0100"
      },
      "message": "Update events-broker to v3.2.0-rc4\n\nChange-Id: I29db14e8c040062cb094f02a49b5a4fd8a770730\n"
    },
    {
      "commit": "c905d71459bc3f9a4058164fda543ada211c893b",
      "tree": "a0daf03b1d7aabb7a03c9ebc4578e2be016be5e4",
      "parents": [
        "5737b79748383c53d9a48b053d6be0137b6459eb",
        "0ec3b914de59950b2bd1b563b47cb1522848e16d"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 23 00:26:21 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 23 00:26:21 2020 +0100"
      },
      "message": "Merge branch \u0027stable-3.1\u0027\n\n* stable-3.1:\n  Align testcontainers-kafka to the version used in Gerrit\n  Do not listen for Kafka/Zookeeper on fixed ports\n\nChange-Id: I9ac76663aa8a7c53ce852cf9a92397ce408ed1fb\n"
    },
    {
      "commit": "0ec3b914de59950b2bd1b563b47cb1522848e16d",
      "tree": "033272c425da2cffe0ddc5bd299eb8e2ea0cadf4",
      "parents": [
        "be162c5295e9c68285125b431e233ec1b7a5c9e3"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 23 00:00:33 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 23 00:00:33 2020 +0100"
      },
      "message": "Align testcontainers-kafka to the version used in Gerrit\n\nFix an issue where the Kafka container was failing to start because\nof an incompatibility between the Gerrit-provided testcontainer version\nand the one required by testcontainers-kafka.\n\nChange-Id: I683aaaeb53fcc5b524494ab4526828c536dc40ec\n"
    },
    {
      "commit": "be162c5295e9c68285125b431e233ec1b7a5c9e3",
      "tree": "da6781452d68be376f94ce9b362f745044dac965",
      "parents": [
        "1ef9b338e6a31d8ce9ac5062c3a175183d2fb248"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 18:10:38 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 18:10:38 2020 +0100"
      },
      "message": "Do not listen for Kafka/Zookeeper on fixed ports\n\nChange-Id: I89631dcd34b5b4057a8f90a8397989b9b4a4614c\n"
    },
    {
      "commit": "5737b79748383c53d9a48b053d6be0137b6459eb",
      "tree": "93fd63b4c3f099674da89bf1dc4f12e0d0550470",
      "parents": [
        "9ec88004977e8f27896ce4690402b66dec510b3b",
        "1ef9b338e6a31d8ce9ac5062c3a175183d2fb248"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 13:39:00 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 13:39:00 2020 +0100"
      },
      "message": "Merge branch \u0027stable-3.1\u0027\n\n* stable-3.1:\n  Allow to send message to Kafka asynchronously\n  Fix Kafka container-test when running on CI\n  Increase default number of subscribers\n  Re-run consumer when exited because of an error\n  Trace errors that cause a consumer thread to exit\n  Add singleton scope to KafkaSubscriberProperties\n\nChange-Id: I0a65e161439307407d0ac3946cdcebdc0b87ead6\n"
    },
    {
      "commit": "1ef9b338e6a31d8ce9ac5062c3a175183d2fb248",
      "tree": "84b0e67449571f9f28eb38f0d30ce4eeb6a87036",
      "parents": [
        "d99875cfee25fdd217b28a4e47055767f12a7776",
        "d4a3264627f5690c0abe325d12a94ede930ea0ab"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 13:35:08 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 13:35:08 2020 +0100"
      },
      "message": "Merge branch \u0027stable-3.0\u0027 into stable-3.1\n\n* stable-3.0:\n  Allow to send message to Kafka asynchronously\n  Fix Kafka container-test when running on CI\n  Increase default number of subscribers\n  Re-run consumer when exited because of an error\n  Trace errors that cause a consumer thread to exit\n  Add singleton scope to KafkaSubscriberProperties\n\nChange-Id: I0bb5e8c36d17d57a86806132acddf2d3039a1894\n"
    },
    {
      "commit": "d4a3264627f5690c0abe325d12a94ede930ea0ab",
      "tree": "f3bf1f4d44c59036cd2e0b2fbee730d2747e101e",
      "parents": [
        "15542c5e6c7532925e613d043a3d419455044024"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 01:51:53 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Apr 22 11:17:19 2020 +0100"
      },
      "message": "Allow to send message to Kafka asynchronously\n\nIntroduce a new configuration setting plugin.kafka-events.sendAsync\nthat allows to control the synchrony of the send() operation to a\nKafka producer.\n\nThe existing behaviour on stable-2.16 do not wait for the Kafka\nbroker to confirm that the message is sent to all the in-sync replicas.\nBy disabling the asynchronous send of message, the send() would wait\nfor the message to be sent  and return the boolean result\nof the operation.\n\nNOTE: The drawback of the enabling the sendAsync parameter is that\n      the broker-api would only return the status of the successful\n      invocation of the Produder.send() operation and not the actual\n      ack received by the Broker at the successful replication to\n      all the replicas.\n\nBug: Issue 12604\nChange-Id: Iec5d1efb033d978bf12c47317895c68604dffecb\n"
    },
    {
      "commit": "15542c5e6c7532925e613d043a3d419455044024",
      "tree": "ddabbec0ba1a4b1ba0faf6010f07abc35053b986",
      "parents": [
        "f8f5624a16f95d072338233f172591568eb06654"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Fri Apr 17 00:43:06 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 16 23:44:53 2020 +0000"
      },
      "message": "Fix Kafka container-test when running on CI\n\nDo not assume that the Kafka container-based tests are run\nwith a local Docker server: get the actual bootstrap server\ndetails from the container itself.\n\nOn the Gerrit-CI the Docker servers can be remote and\ntherefore the bootstrap server won\u0027t be available on localhost.\n\nChange-Id: I607d320666627dd89352f81592e056e670b227d8\n"
    },
    {
      "commit": "f8f5624a16f95d072338233f172591568eb06654",
      "tree": "81e28388a7c23c4625368f91131acf6ac69430f0",
      "parents": [
        "001bd9b9c5726ef5f8720ea96d3d2719aa5b1424"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Feb 06 12:41:46 2020 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 16 22:23:04 2020 +0000"
      },
      "message": "Increase default number of subscribers\n\nMulti-site plugin is using additional topic for batch indexing events.\nTo prevent threads starvation default number of subscribers is\nincreased.\n\nFeature: Issue 12228\nChange-Id: Iee3262d67dfc8b050c16bf4088dd9a730b6c021d\n"
    },
    {
      "commit": "001bd9b9c5726ef5f8720ea96d3d2719aa5b1424",
      "tree": "71e964ace9ebb959da26716a4db28b9b958e491c",
      "parents": [
        "9d27e78454c96cf9addae8c6efa74151af4c29bb",
        "3b4187e01281f28e446d4512998de0af982f91bc"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Apr 16 22:22:04 2020 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 16 22:22:04 2020 +0000"
      },
      "message": "Merge \"Add singleton scope to KafkaSubscriberProperties\" into stable-3.0"
    },
    {
      "commit": "9d27e78454c96cf9addae8c6efa74151af4c29bb",
      "tree": "5b3db408fcfd7730d8ab4619bd342ddb6d5267ae",
      "parents": [
        "4b6647e3478275d37f14465abc6d614b63441a1b"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Mar 18 00:26:10 2020 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Mar 31 09:11:55 2020 +0000"
      },
      "message": "Re-run consumer when exited because of an error\n\nWhen a Kafka consumer is ending because of an error, re-run\nthe subscription so that the it can smoothly recover from\ntemporary failures.\n\nTest explicitly the use-case of reconnect after a kafka failure.\n\nBug: Issue 12463\nChange-Id: Id061475197d3a481d3fb3bd1210936caee64119c\n"
    },
    {
      "commit": "4b6647e3478275d37f14465abc6d614b63441a1b",
      "tree": "6a48bf397c0eafb8ee5374fe906dd66b9aeda6af",
      "parents": [
        "5c5790bf3bca4dde9fe78481c33c7f45d7a0f4ca"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Mar 18 00:05:21 2020 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Mar 18 00:07:23 2020 +0000"
      },
      "message": "Trace errors that cause a consumer thread to exit\n\nLog more details about the cause of the premature exit\nof the Kafka consumer thread.\n\nThis helps Gerrit admininstrators to understand the root\ncause of a problem where the Kafka consumer thread ends\nprematurely and thus Gerrit is unable to consume message\nfrom one or more topics.\n\nBug: Issue 12463\nChange-Id: I968263b85ae8c8a7860fe41231caf4cc6e61c668\n"
    },
    {
      "commit": "9ec88004977e8f27896ce4690402b66dec510b3b",
      "tree": "59f94a0a3744fefa96cf154d3b230ce3e3ceed20",
      "parents": [
        "d99875cfee25fdd217b28a4e47055767f12a7776"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Fri Jan 10 16:12:26 2020 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Fri Jan 10 15:15:25 2020 +0000"
      },
      "message": "Fix EventConsumerIT compilation issue\n\nGerritConfig annotation is moved to\ncom.google.gerrit.acceptance.config package in gerrit core\n\nChange-Id: I2e6eb345000cc9877fb246888a35b0722fc291f4\n"
    },
    {
      "commit": "d99875cfee25fdd217b28a4e47055767f12a7776",
      "tree": "6c970eb9d2fe25f9d3bd5c0ff86b2d1d25ead66a",
      "parents": [
        "39bbba8c62c1c8042785706ce39c3dec87a3106e"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Jan 09 09:58:36 2020 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Jan 09 09:58:36 2020 +0100"
      },
      "message": "Bump events-broker version to 3.1.3\n\nFeature: Issue 11600\nChange-Id: I0312f70337c2eba8da972e37e1418f157a410299\n"
    },
    {
      "commit": "39bbba8c62c1c8042785706ce39c3dec87a3106e",
      "tree": "a46381063a4753ead7af4197a6d65703932c1c5a",
      "parents": [
        "2b76d22dbf124335806d0ae170cd959592e9841d",
        "5c5790bf3bca4dde9fe78481c33c7f45d7a0f4ca"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Mon Dec 30 19:11:00 2019 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Jan 09 09:57:21 2020 +0100"
      },
      "message": "Merge branch \u0027stable-3.0\u0027\n\n* stable-3.0:\n  Implement broker api replayAllEvents functionality\n  Fix issue with kafka subscribers properties\n\nChange-Id: I0b19ec6077e7ca1396b22c73b7af4bc3a058849c\n"
    },
    {
      "commit": "3b4187e01281f28e446d4512998de0af982f91bc",
      "tree": "e2720826bfcd02716249907bfbe5523222356660",
      "parents": [
        "5c5790bf3bca4dde9fe78481c33c7f45d7a0f4ca"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jan 08 19:08:00 2020 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Jan 08 19:08:00 2020 +0100"
      },
      "message": "Add singleton scope to KafkaSubscriberProperties\n\nChange-Id: If1df5aaa491681e381835703b854567e79d0187d\n"
    },
    {
      "commit": "5c5790bf3bca4dde9fe78481c33c7f45d7a0f4ca",
      "tree": "2d0a955e0d05d795e8e3b6d4adad67d6b4261c12",
      "parents": [
        "9b97b9c6685df685d55ccfd759c05fe98841c4b8"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Dec 19 12:57:59 2019 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Fri Dec 27 12:52:57 2019 +0000"
      },
      "message": "Implement broker api replayAllEvents functionality\n\nThis functionality allows to reset kafka offset and redeliver all stored\nmessages.\n\nChange-Id: I0aeacd79b90c21de95317b212173362a3db9e2e0\n"
    },
    {
      "commit": "9b97b9c6685df685d55ccfd759c05fe98841c4b8",
      "tree": "640c8bbe55153038463641c9f9697ec2cda540da",
      "parents": [
        "bb28fbbb8fa488b0fbd7e4dd0ea70a320f50dd76"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Dec 12 21:47:36 2019 +0100"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Tue Dec 24 14:04:52 2019 +0100"
      },
      "message": "Fix issue with kafka subscribers properties\n\nKafkaProperties class is formatting configuration parameters from camel\ncase to separeted by dot. This formatting is required by kafka producer\nand consumer. KafkaSubscriberProperties must follow the same pattern.\n\nBug: Issue 12109\nChange-Id: Iede3c9e35eb405ccb2ec9ade45aede811e83131a\n"
    },
    {
      "commit": "2b76d22dbf124335806d0ae170cd959592e9841d",
      "tree": "c33528346f2bc7f2d5291fac18e044b2a04458db",
      "parents": [
        "b7b6412a527ba11d2df58faf6ac9862dbb3f6eae",
        "bb28fbbb8fa488b0fbd7e4dd0ea70a320f50dd76"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Nov 13 14:23:39 2019 -0800"
      },
      "committer": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Wed Nov 13 19:00:46 2019 -0800"
      },
      "message": "Merge branch \u0027stable-3.0\u0027\n\n* stable-3.0:\n  Move kafka related code from multi-site plugin to kafka-events plugin\n\nChange-Id: I35768ce0556f4e4a9ff01928ac02422a62fa8de1\n"
    },
    {
      "commit": "bb28fbbb8fa488b0fbd7e4dd0ea70a320f50dd76",
      "tree": "7a89d59ac40471bc9720db9a995db0934e7062c6",
      "parents": [
        "b7b6412a527ba11d2df58faf6ac9862dbb3f6eae"
      ],
      "author": {
        "name": "Marcin Czech",
        "email": "maczech@gmail.com",
        "time": "Thu Oct 10 22:22:23 2019 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Nov 13 17:09:30 2019 +0000"
      },
      "message": "Move kafka related code from multi-site plugin to kafka-events plugin\n\nKafka broker implementation is provided as a plugin.\nMulti-site plugin is message broker implementation agnostic.\nThis separation allows replacing message broker implementation.\n\nFeature: Issue 11599\nChange-Id: Id35f0a8fe6e1d43cd893e7b9521c2c67f0160ed9\n"
    },
    {
      "commit": "b7b6412a527ba11d2df58faf6ac9862dbb3f6eae",
      "tree": "997752582f56ec46e0c02118d6925638defce4b8",
      "parents": [
        "4a730e63dd5f61405eecce0125e5c86e78dc2e98",
        "ffe159dc37cb018a2fe1327e0fe1fcf465eefa8c"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 19:41:47 2019 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 19:50:03 2019 +0100"
      },
      "message": "Merge branch \u0027stable-2.16\u0027\n\n* stable-2.16:\n  Bump kafka-clients version to 2.1.0\n  Bump testcontainers kafka version to 1.10.6\n  EventConsumerIT: Support ReviewDb and NoteDb backends\n\nChange-Id: I7d2dbd95a18bc93a4c542075c1a9f1b5c7f3e87e\n"
    },
    {
      "commit": "ffe159dc37cb018a2fe1327e0fe1fcf465eefa8c",
      "tree": "c4ed6f9aab28735e62437198cb242517b718bd95",
      "parents": [
        "90d971bbc9fdbfeddae51edbd5035917364b0f39"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 16:40:03 2019 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 19:40:17 2019 +0100"
      },
      "message": "Bump kafka-clients version to 2.1.0\n\nChange-Id: I2adc2ae8b70a7925562f69fd67f463ca4803f1f8\n"
    },
    {
      "commit": "90d971bbc9fdbfeddae51edbd5035917364b0f39",
      "tree": "e9e9cca65bd570c1a3e5e71b46cd2e152490f23e",
      "parents": [
        "2e4923a99f36cf770818f6a795b74d45e26384a6"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 14:00:26 2019 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 19:40:17 2019 +0100"
      },
      "message": "Bump testcontainers kafka version to 1.10.6\n\nChange-Id: I9938817d3d157f04f881ff728994fcc04dec6c2b\n"
    },
    {
      "commit": "2e4923a99f36cf770818f6a795b74d45e26384a6",
      "tree": "bfa49e12afada9fcc35f5835adf69933156ef9a0",
      "parents": [
        "4a730e63dd5f61405eecce0125e5c86e78dc2e98"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 14:23:01 2019 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Feb 11 19:40:16 2019 +0100"
      },
      "message": "EventConsumerIT: Support ReviewDb and NoteDb backends\n\nWhen NoteDb mode is used more ref updated events are triggered.\n\nTest Plan:\n\n1. Run tests in ReviewDb mode:\n  $ bazel test plugins/kafka-events:kafka_events_tests\n\n2. Run tests in NoteDb mode:\n  $ bazel test --test_env\u003dGERRIT_NOTEDB\u003dREAD_WRITE \\\n      plugins/kafka-events:kafka_events_tests\n\nChange-Id: I96d9602d978c419c5fcc753015d6b01ed6cf620b\n"
    },
    {
      "commit": "4a730e63dd5f61405eecce0125e5c86e78dc2e98",
      "tree": "f90594fd1441c858cad7f33a81b931864443715e",
      "parents": [
        "9eae7ad9634b400434bf560a6e08a3acd86de934"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 17:56:56 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Dec 07 23:18:52 2018 +0100"
      },
      "message": "Start dockerized kafka server from junit test using testcontainers\n\nUse testcontainers to spawn dockerized Kafka server from within junit\ntest.\n\nOne challenge to solve is to bootstrap initialization properties from the\ndockerized kafka server.  There is no way to inject custom values after\nthe docker instance was started by testcontainers library. To overcome,\nset special system property in test environment and check for that\nproperty in production code. If present, inject special properties in\nKafka server\u0027s test environment.\n\nTest Plan:\n\n1. Start docker daemon:\n\n  $ sudo service docker start\n\n2. Run tests:\n\n  $ bazel test plugins/kafka-events:kafka_events_tests\n\nChange-Id: Iaca0901410460bbbfa731b4da1625a9600402e08\n"
    },
    {
      "commit": "9eae7ad9634b400434bf560a6e08a3acd86de934",
      "tree": "3f8bc1b89ec598b0af34cf87137d972854d61f3d",
      "parents": [
        "85013bb630b9d9766acfff14bde635b4932c5a33"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 14:30:46 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Dec 07 23:18:18 2018 +0100"
      },
      "message": "Add junit test for kafka events consumer\n\nUse LightweightPluginDaemonTest class infrastructure to boot the\ngerrit server and deploy the plugin. This test assumes that the full\nversion of Kafka server is up and running prior to test execution.\n\nAn alternative approach (not done in this change) is to set up\ntestcontainers library with provided KafkaContainer: [1] and start\ndockerized Kafka instance from within the JUnit test\u0027s setUp method.\n\nTest Plan:\n\n1. Run Kafka Server:\n  $ docker run -p 2181:2181 -p 9092:9092 -d -e ADVERTISED_HOST\u003d127.0.1 -e ADVERTISED_PORT\u003d9092 spotify/kafka\n2. Run the test:\n  $ bazel test plugins/kafka-events:kafka_events_tests\n\n[1] https://github.com/testcontainers/testcontainers-java/blob/master\\\n/modules/kafka/src/main/java/org/testcontainers/containers/KafkaContainer.java\n\nChange-Id: Ia61868acc50d47b742126208fd078076dc2c2a94\n"
    },
    {
      "commit": "85013bb630b9d9766acfff14bde635b4932c5a33",
      "tree": "671b39146e07ef8d452fb2ead09d81166eefec57",
      "parents": [
        "283a11fa12d36dadd42e8b66b30bb221124ba995"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 14:32:06 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 16:23:57 2018 -0800"
      },
      "message": "KafkaProperties: Use Class.getName() idiom for serializer registration\n\nChange-Id: I8d17e0483ecdfe9a207e0a12c7910aba4799abae\n"
    },
    {
      "commit": "283a11fa12d36dadd42e8b66b30bb221124ba995",
      "tree": "73060ca075215b06a50314618e856bbbcac08d35",
      "parents": [
        "f91b4cb69a4f5703de5d2c7fc7333962fe0f9441"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 18:04:39 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Wed Nov 14 00:11:26 2018 +0000"
      },
      "message": "KafkaProperties: Mark it as singleton\n\nChange-Id: I416ad8b6a69061eecc66ce393bf098b7121cf7f2\n"
    },
    {
      "commit": "f91b4cb69a4f5703de5d2c7fc7333962fe0f9441",
      "tree": "83c2147bc93631bb5e36f1511df34144cb5205d9",
      "parents": [
        "9eccd4b84c118a641a8914e684df4fc260acb256"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:58:29 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 16:04:54 2018 -0800"
      },
      "message": "Format java files with google-java-format 1.6\n\nChange-Id: I4eedffc36f52fe32d4e3179fddbe3766402c0d39\n"
    },
    {
      "commit": "9eccd4b84c118a641a8914e684df4fc260acb256",
      "tree": "9ae429c5eb5facccd48ecdd3b522f956391135b7",
      "parents": [
        "8d6dc9bacfff16d5f48d3bbab1b2118611667497"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 09:01:33 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 16:02:59 2018 -0800"
      },
      "message": "KafkaPublisher: Remove unused getName method\n\nChange-Id: I80eb1d2a89b4e67d865006d35869e0873e2a8e15\n"
    },
    {
      "commit": "8d6dc9bacfff16d5f48d3bbab1b2118611667497",
      "tree": "879ad7a676e306cbfb64596457343f5a96c73a23",
      "parents": [
        "4ff19a12643e1eaaed907eca21dcbabee7b62560"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 08:56:47 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 16:01:58 2018 -0800"
      },
      "message": "KafkaPublisher: Remove redundant available attribute and methods\n\nChange-Id: Ic6522c3d6c2c63f431b303312e7f07fc3dc71818\n"
    },
    {
      "commit": "4ff19a12643e1eaaed907eca21dcbabee7b62560",
      "tree": "47ac4f7b0e3c32159b596ad3bb427c38b15286f0",
      "parents": [
        "8abf1ca2348e50aa66ec18563463229eb838e952"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 08:46:12 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 15:57:20 2018 -0800"
      },
      "message": "Rename Publisher to KafkaPublisher\n\nChange-Id: I691dc3b1d183d14e3b5d2a3200f69ad5f30f70c8\n"
    },
    {
      "commit": "8abf1ca2348e50aa66ec18563463229eb838e952",
      "tree": "a4a3338606463bb13a17620e0495b95f16ae3488",
      "parents": [
        "2b1b3c576342ae39b8d715b437305a5b3e375660"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 08:45:09 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 15:52:52 2018 -0800"
      },
      "message": "Rename message package to publish\n\nChange-Id: I4462361b6b614cabf182eced0c7312258e7c771a\n"
    },
    {
      "commit": "2b1b3c576342ae39b8d715b437305a5b3e375660",
      "tree": "57edcbe3476e1ba1b5bf457767ecbb2e49e947be",
      "parents": [
        "db2bfddbf48851d376431ddb611e3fbeef5f38d5"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 08:42:37 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 23:43:28 2018 +0000"
      },
      "message": "KafkaSession: clarify use of ContextClassLoader\n\nChange-Id: If2ac679c0efae80aa1cb13d32a4d6d0d3b4a55ce\n"
    },
    {
      "commit": "db2bfddbf48851d376431ddb611e3fbeef5f38d5",
      "tree": "7c57d829c726a2ca35bdf71f6e607c5ea7a5ae23",
      "parents": [
        "764b6e00815acd399d2436599c4f84d9de32dc37"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 07:40:48 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 14:07:48 2018 -0800"
      },
      "message": "Handle single publisher instance\n\nJust instantiate a single publisher instance directly\nwithout the need of factory indirections for session and publisher\n\nChange-Id: I7fb21a2185451531634a282ac0fc1705645ece19"
    },
    {
      "commit": "764b6e00815acd399d2436599c4f84d9de32dc37",
      "tree": "f8a7a6c5ba6911c704e0773604d9bbff65f33bb4",
      "parents": [
        "64ef5c283f756835e751de26d2b5273300ffa611"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 07:36:22 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Tue Nov 13 20:24:03 2018 +0000"
      },
      "message": "Remove event worker abstraction\n\nRemove event worker abstraction that only purpose is to delegate event\nprocessing to publisher and bind publisher instance itself as event\nlistener.\n\nChange-Id: Ic530a9b0d271ae230c5edb3a684b0b899091cb5d\n"
    },
    {
      "commit": "64ef5c283f756835e751de26d2b5273300ffa611",
      "tree": "90027c15142a93beb349de5e4b6cc985814f6b01",
      "parents": [
        "575e85f7785335144ab98183248a3eb452a93aa9"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 07:31:26 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david.ostrovsky@gmail.com",
        "time": "Mon Jul 16 08:52:08 2018 +0000"
      },
      "message": "Simplify kafka session creation\n\nRemove unneeded SessionFactoryProvider abstraction and use factory\nmodule instead as it\u0027s already done for publisher creation.\n\nChange-Id: I58ccdbb12b48fab6a6cc8e4c5315b90d20def27f\n"
    },
    {
      "commit": "575e85f7785335144ab98183248a3eb452a93aa9",
      "tree": "993f95cd483a6fc5a47018dfabffd5f106f0db35",
      "parents": [
        "156ae222488b66904174a4c1a3b87fb36b079a0e"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 07:18:34 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 09:05:36 2018 +0200"
      },
      "message": "Simplify event publishing\n\nEliminate Session interface as there is only one implementation class\ncurrently exists (KafkaSession) and use it directly.\n\nChange-Id: I437ce3cdc6a09c6aadf2c770b754883cd7afcacb\n"
    },
    {
      "commit": "156ae222488b66904174a4c1a3b87fb36b079a0e",
      "tree": "d416cfa753239d012c5f9edfaaa7c39ca0320a91",
      "parents": [
        "9ce6c75c2d817915e51b25dac01f475189098f2e"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 07:15:18 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 09:05:31 2018 +0200"
      },
      "message": "KafkaSession: Move it to session package\n\nChange-Id: I031041fe8df0d7c012185fcf1546ec04af574096\n"
    },
    {
      "commit": "9ce6c75c2d817915e51b25dac01f475189098f2e",
      "tree": "d65f4bc6a4be30dc67d58ff337d0888ddce93af6",
      "parents": [
        "e31e610f24078b5cfe6ce6177ede3f45cf263e63"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:56:44 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 06:51:43 2018 +0200"
      },
      "message": "Format build files with buildifier 0.12\n\nChange-Id: Id32445357fc93ee398c345388def75f804e21df8\n"
    },
    {
      "commit": "e31e610f24078b5cfe6ce6177ede3f45cf263e63",
      "tree": "e54f5d29e7f622d5b4c544445b2806d633893d13",
      "parents": [
        "c82d18005fb203fe632bbfd9bcc0b06a7ee2b48a"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:53:05 2018 +0200"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Fri Jul 13 23:24:59 2018 +0000"
      },
      "message": "Simplify event publishing\n\nEliminate Publisher interface as there is only one implementation class\ncurrently exists (MessagePublisher) and use it directly.\n\nChange-Id: I3133777be962121750ecaf515509fe74f7ed64fd\n"
    },
    {
      "commit": "c82d18005fb203fe632bbfd9bcc0b06a7ee2b48a",
      "tree": "116561bec6b457e130b8129e83e11f7c3d609981",
      "parents": [
        "7513db8f0fd79f4f6d1d772f3573f130b7ccb9cc"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:42:34 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 00:03:15 2018 +0200"
      },
      "message": "MessagePublisher.java: Re-order constructor arguments\n\nChange-Id: I1da448e97c19531b5bcbb80bf993c6610171b31e\n"
    },
    {
      "commit": "7513db8f0fd79f4f6d1d772f3573f130b7ccb9cc",
      "tree": "487162510c8eaf28563ba45ff918db80b7a4c812",
      "parents": [
        "06cb380221220a588f05fa441629ef137f52c243"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:40:49 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 00:03:10 2018 +0200"
      },
      "message": "MessagePublisher: Remove unused LifecycleListener interface\n\nChange-Id: Iecc428494860d91d4a5e8df6458e00baaacd475b\n"
    },
    {
      "commit": "06cb380221220a588f05fa441629ef137f52c243",
      "tree": "ddf70744e75222f2759c06820a5a72d89b458ca1",
      "parents": [
        "d33de1afa6caf8f949f28ae72f104d2f314152da"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Jul 13 23:40:15 2018 +0200"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Sat Jul 14 00:03:02 2018 +0200"
      },
      "message": "KafkaPropertiesProvider.java: Remove unused import\n\nChange-Id: I152e47798e6d8556348bee3bea3ffd99ca610575\n"
    },
    {
      "commit": "d33de1afa6caf8f949f28ae72f104d2f314152da",
      "tree": "f6a24ecf4bf15b24221878e00f29247b2dcdad02",
      "parents": [
        "efe9cc6a30e1ec658949eedaf86cc03ea2659fb8"
      ],
      "author": {
        "name": "Chuck Pierce",
        "email": "cpierce@linkedin.com",
        "time": "Tue May 15 16:21:35 2018 -0700"
      },
      "committer": {
        "name": "Chuck Pierce",
        "email": "cpierce@linkedin.com",
        "time": "Tue May 15 16:35:12 2018 -0700"
      },
      "message": "Fix EventListener imports to reflect correct scope from Gerrit master\n\nChange-Id: I7c691ae9bfb2dc0da09dc0980d638592d1b5905b\n"
    },
    {
      "commit": "efe9cc6a30e1ec658949eedaf86cc03ea2659fb8",
      "tree": "bb418301bdcd36ea902c8c8c70e4bbaebd4a5610",
      "parents": [
        "0d1043a51807bad8d8a08048d9f503b44beab84b"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Jan 22 09:03:14 2018 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Jan 22 09:03:16 2018 +0000"
      },
      "message": "Adapt README.md to a Bazel in-tree build\n\nWhile the Buck build has been removed, the README.md instructions\nwere still stuck with it. Adapt all the instructions to reflect\nwhat is needed to successfuly build the plugin with Bazel\nusing a Gerrit in-tree style plugin build process.\n\nChange-Id: I32282c89ba799ccbf09e9023eb5c33ee5eebbff9\n"
    },
    {
      "commit": "0d1043a51807bad8d8a08048d9f503b44beab84b",
      "tree": "3a178bb84eeccd366101be5dcd11e8c6b3a17bde",
      "parents": [
        "0c3c59f31971421eed79fe8a9d44f83036a49d28"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Jan 22 08:52:57 2018 +0000"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Jan 22 08:53:02 2018 +0000"
      },
      "message": "Fix broken builds status badge\n\nChange-Id: Iecc85ee8490052a450cb67e7bbc0a402fff0006f\n"
    },
    {
      "commit": "0c3c59f31971421eed79fe8a9d44f83036a49d28",
      "tree": "61d457f76541e4d8e01d5a28de470e3a91f4004c",
      "parents": [
        "df65ae2afd71e58599a3e6b9d599f3795a4303f5"
      ],
      "author": {
        "name": "Paladox none",
        "email": "thomasmulhall410@yahoo.com",
        "time": "Sun Feb 12 19:42:09 2017 +0000"
      },
      "committer": {
        "name": "Paladox none",
        "email": "thomasmulhall410@yahoo.com",
        "time": "Sun Feb 12 19:42:26 2017 +0000"
      },
      "message": "Remove buck build\n\nChange-Id: Idab09d01f66b4c2f4f3b549fb037df08c65dfc43\n"
    },
    {
      "commit": "df65ae2afd71e58599a3e6b9d599f3795a4303f5",
      "tree": "3d56104abf8f0c925fbb59ab2784be23f73e7dde",
      "parents": [
        "a00708ddc5cf1a25d2430501b958035190a9f58c"
      ],
      "author": {
        "name": "Paladox none",
        "email": "thomasmulhall410@yahoo.com",
        "time": "Sun Feb 12 01:49:41 2017 +0000"
      },
      "committer": {
        "name": "Paladox none",
        "email": "thomasmulhall410@yahoo.com",
        "time": "Sun Feb 12 17:54:30 2017 +0000"
      },
      "message": "Add support for Bazel in Gerrit tree build\n\nChange-Id: Icad8def01e08710fb32fbf77c1993455b86d29dd\n"
    },
    {
      "commit": "a00708ddc5cf1a25d2430501b958035190a9f58c",
      "tree": "702c49f7bd51b364b5f5e16e8c0cd5e9aad90f9f",
      "parents": [
        "481e6e80432681840f0a47fc27abe5730c783e40"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Oct 17 08:58:36 2016 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Mon Oct 17 12:17:45 2016 +0100"
      },
      "message": "Reset current thread classLoader to avoid Kafka to use it\n\nWhen the current thread classloader is set, Apache Kafka tries to\nuse it to resolve its classes. For plugins the thread class loader\nis not the one that read from the jar and thus connections to Kafka\nfail because of ClassNotFoundException\n\nChange-Id: I4f14cf43d1465841c5eb7db2c35acd9beed8d19f\n"
    },
    {
      "commit": "481e6e80432681840f0a47fc27abe5730c783e40",
      "tree": "c32b4b32377edf7ccf2912e75708fbbda947a91a",
      "parents": [
        "a5c676ee10e5060fffddc6198d06ae85d3fc2e75"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sun Oct 16 21:57:41 2016 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sun Oct 16 21:57:41 2016 +0100"
      },
      "message": "Fix repository and CI URL in README.md\n\nChange-Id: I62fc3e85aa9b1d2076c7d9163d268572605b2baf\n"
    },
    {
      "commit": "a5c676ee10e5060fffddc6198d06ae85d3fc2e75",
      "tree": "12f41a7a4dfe332503c0daaea29c676c0ad2622f",
      "parents": [
        "bf028428910176cde97ea569f99c682d4a0c266d"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sun Oct 16 00:05:54 2016 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sun Oct 16 00:05:54 2016 +0100"
      },
      "message": "Fix README instructions\n\nChange-Id: I78e5fe64b9fb9fb500dfe3e0782363fb6bee0cb7\n"
    },
    {
      "commit": "bf028428910176cde97ea569f99c682d4a0c266d",
      "tree": "6271e5b28d8a114f9b097f7e82d0af31ca0248fb",
      "parents": [
        "576ba6b75891a5a1f7e0c9f4f0d108c08621f3c9"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sat Oct 15 23:53:07 2016 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sat Oct 15 23:53:07 2016 +0100"
      },
      "message": "Add build status badge\n\nChange-Id: I9a202b56eb0830b99740521c6bc2686e366cac4a\n"
    },
    {
      "commit": "576ba6b75891a5a1f7e0c9f4f0d108c08621f3c9",
      "tree": "9c0e10ebce5eb2752a222b9bd59760bd25cf163e",
      "parents": [
        "1d5e2056b3d05f0cabc26f8cea2df85d031591aa"
      ],
      "author": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Thu Oct 13 23:41:48 2016 +0100"
      },
      "committer": {
        "name": "Luca Milanesio",
        "email": "luca.milanesio@gmail.com",
        "time": "Sat Oct 15 20:43:01 2016 +0000"
      },
      "message": "Initial code-base of stream events to Kafka topic\n\nPublish Gerrit stream events to a Kafka topic called \u0027gerrit\u0027.\n\nChange-Id: I8c15dea904bcbcffaae38254ceb5beac61661c40"
    },
    {
      "commit": "1d5e2056b3d05f0cabc26f8cea2df85d031591aa",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [],
      "author": {
        "name": "David Pursehouse",
        "email": "dpursehouse@collab.net",
        "time": "Thu Oct 13 03:26:19 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 13 03:26:19 2016 +0000"
      },
      "message": "Initial empty repository\n"
    }
  ]
}
