)]}'
{
  "log": [
    {
      "commit": "2602a9a9703db9df4088b7e88bf8a307ecdfe968",
      "tree": "33dcf5a3cf531e9a15f31aa8325d65f8abe453bd",
      "parents": [
        "13597e44deb1e5870e0615af56a71254f14e6690"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Apr 10 23:46:50 2026 +0000"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Sat Apr 11 06:20:37 2026 +0200"
      },
      "message": "Bump org.apache.logging.log4j:log4j-core from 2.25.3 to 2.25.4\n\nBumps org.apache.logging.log4j:log4j-core from 2.25.3 to 2.25.4.\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.logging.log4j:log4j-core\n  dependency-version: 2.25.4\n  dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "13597e44deb1e5870e0615af56a71254f14e6690",
      "tree": "31bc42f65802da14068221e029e9a9645ed9ddff",
      "parents": [
        "6caa08a24e47490d097965efe174e768bfac8f38"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Sun Mar 08 22:59:02 2026 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Mar 13 15:12:00 2026 +0100"
      },
      "message": "[PERF] Reduce String allocs in RawFieldParser\n"
    },
    {
      "commit": "6caa08a24e47490d097965efe174e768bfac8f38",
      "tree": "9f24494b2d9a6b4559714b521202ac99670a6e2b",
      "parents": [
        "d10cd40fa46785f4efcc45b79c15d40d4fcfcd33"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Sun Mar 08 22:16:50 2026 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Mar 13 15:12:00 2026 +0100"
      },
      "message": "[PERF] String allocation \u0026 conversions\n\n  ByteArrayBuffer.toString() creates an intermediate byte\n  array + a new String per field header.\n\n  Direction: Expose a CharBuffer or compare directly in\n  bytes on hot paths. Check if ContentUtil.asString() can\n  reuse a CharsetDecoder instantiated once per thread.\n"
    },
    {
      "commit": "d10cd40fa46785f4efcc45b79c15d40d4fcfcd33",
      "tree": "402348a571462ec4e9b1d9981994003f6a883c92",
      "parents": [
        "e91a5b5adb2d440f09f430c1c76b3832a7e16ed4"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Sun Mar 08 22:07:53 2026 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Mar 13 15:12:00 2026 +0100"
      },
      "message": "[PERF] Boundary matching — QS table rebuilt every call\n\n  The Quick Search shift-table is rebuilt on every indexOf() call,\n  but the MIME boundary is fixed for the entire lifetime of a\n  MimeBoundaryInputStream.\n\n  Pre-compute and cache the shift-table inside\n  MimeBoundaryInputStream at construction time. Direct gain\n  on all multipart messages.\n"
    },
    {
      "commit": "e91a5b5adb2d440f09f430c1c76b3832a7e16ed4",
      "tree": "c0e33135e2050d80a160591cc772cac3f3cc2228",
      "parents": [
        "5a65342305c354da4a991b3bf9523f2991697721"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jan 26 21:55:30 2026 +0000"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Tue Jan 27 09:26:03 2026 +0700"
      },
      "message": "Bump org.assertj:assertj-core from 3.27.3 to 3.27.7\n\nBumps [org.assertj:assertj-core](https://github.com/assertj/assertj) from 3.27.3 to 3.27.7.\n- [Release notes](https://github.com/assertj/assertj/releases)\n- [Commits](https://github.com/assertj/assertj/compare/assertj-build-3.27.3...assertj-build-3.27.7)\n\n---\nupdated-dependencies:\n- dependency-name: org.assertj:assertj-core\n  dependency-version: 3.27.7\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "5a65342305c354da4a991b3bf9523f2991697721",
      "tree": "46a24779ac0212790efe515a2cdc6e6aea5b4877",
      "parents": [
        "d0a648af86ddc4c957dcc11991cfc6e5048dca6e"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Dec 20 21:47:51 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 21:47:51 2025 +0100"
      },
      "message": "Bump org.apache.logging.log4j:log4j-core from 2.25.0 to 2.25.3 (#120)\n\nBumps org.apache.logging.log4j:log4j-core from 2.25.0 to 2.25.3.\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.logging.log4j:log4j-core\n  dependency-version: 2.25.3\n  dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "d0a648af86ddc4c957dcc11991cfc6e5048dca6e",
      "tree": "446a469e362fe0bab90ac90b8a9d915da1d01233",
      "parents": [
        "964f97b5774cc2a57b5ea7c92b755c4cdb116fc8"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Sun Sep 07 20:53:27 2025 +0200"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Tue Sep 09 09:20:22 2025 +0700"
      },
      "message": "Adopt JDK 11 as a build target\n"
    },
    {
      "commit": "964f97b5774cc2a57b5ea7c92b755c4cdb116fc8",
      "tree": "2363af07764a7c0b9f2e17d3cc659b8659b20792",
      "parents": [
        "a8cedf42488692b1ab5395e8ab1ea63bdb29cde1"
      ],
      "author": {
        "name": "Rene Cordier",
        "email": "rcordier@linagora.com",
        "time": "Mon Sep 01 05:54:26 2025 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 01 00:54:26 2025 +0200"
      },
      "message": "MIME4J-333 Introducing a getSafeRaw() method in RawField (#118)\n\nThat would allow projects using the mime4j library to be able to get a raw field without it returning a null value, to protect against potential NPE, without introducing breaking changes with its core API.\n\nThe computing of the raw value in case it\u0027s null is based on what was in writeField method in DefaultMessageWriter."
    },
    {
      "commit": "a8cedf42488692b1ab5395e8ab1ea63bdb29cde1",
      "tree": "eab87343c75bdaac49340c22e92e0e5563d8e4a4",
      "parents": [
        "a74237cd6a413a06bc54fd6389b2ea0281357fc2"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Thu Jul 17 20:17:30 2025 +0200"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 18 07:02:30 2025 +0200"
      },
      "message": "Update changelog\n"
    },
    {
      "commit": "a74237cd6a413a06bc54fd6389b2ea0281357fc2",
      "tree": "0ab04f0b3537b674d0ba45deb141ec30394579d5",
      "parents": [
        "49de8ac98768fbe63ba3272264404ceb302e0a94"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Thu Jul 03 12:18:49 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:40:43 2025 +0200"
      },
      "message": "This updates dependencies and tweaks javadocs so that they work\n"
    },
    {
      "commit": "49de8ac98768fbe63ba3272264404ceb302e0a94",
      "tree": "787fe52b7f625ed93e9c98262689ced2f4e9658d",
      "parents": [
        "3d2b5af1e681107fed7ffead01d131f18871a316"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Thu Jul 03 11:46:57 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- revert inadvertent new line\n"
    },
    {
      "commit": "3d2b5af1e681107fed7ffead01d131f18871a316",
      "tree": "39510030d51c17c380cc27d0ba03811a5cc94d2d",
      "parents": [
        "d43feae84ffe6d484ada025df69b8ba9ef984451"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Thu Jul 03 11:44:22 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- improve documentation\n"
    },
    {
      "commit": "d43feae84ffe6d484ada025df69b8ba9ef984451",
      "tree": "f9de8e5ec4618127b777ff15b6bc51f2961ce8ed",
      "parents": [
        "d4d60bd1597ab6d29cb59f776695c76a683cdc78"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Thu Jul 03 11:37:44 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- clear up extended vs continuation handling\n"
    },
    {
      "commit": "d4d60bd1597ab6d29cb59f776695c76a683cdc78",
      "tree": "a38600b6f2936f3268dc6a0338bb675e92c7f00b",
      "parents": [
        "edfe10ba2fc1761894136cbca021f4293de8a011"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Wed Jul 02 17:35:09 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- update comment to point to this issue\n"
    },
    {
      "commit": "edfe10ba2fc1761894136cbca021f4293de8a011",
      "tree": "a9bfec253d27b1b50e4efb6416e99a5b435e8fdc",
      "parents": [
        "518477e38c08a438e1747d49a13b28242810ed7d"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Wed Jul 02 17:17:12 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- remove unused imports and improve comments\n"
    },
    {
      "commit": "518477e38c08a438e1747d49a13b28242810ed7d",
      "tree": "423f8a3f1d32386d3d76d6a17909a2e74a5a5e69",
      "parents": [
        "676e3028ff0de4fc11950654fcf3b433a068a6e1"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Wed Jul 02 15:15:02 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- break out unit tests\n"
    },
    {
      "commit": "676e3028ff0de4fc11950654fcf3b433a068a6e1",
      "tree": "6030514ce8f6737d55affafc119e50f767d53191",
      "parents": [
        "f43b2d8e291ca4f05049e1952dc551135247cbd5"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Wed Jul 02 15:02:11 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- small fixes\n"
    },
    {
      "commit": "f43b2d8e291ca4f05049e1952dc551135247cbd5",
      "tree": "82461c5a34b8e09322c802ca66f3fd4d152c0b73",
      "parents": [
        "0ee7cc830ed449d8c44c0e5e2398a79fa2f5ff89"
      ],
      "author": {
        "name": "tallison",
        "email": "tallison@apache.org",
        "time": "Wed Jul 02 14:55:56 2025 -0400"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jul 04 17:39:52 2025 +0200"
      },
      "message": "MIME4J-332 -- improve handling of \"sectioned\" field names\n"
    },
    {
      "commit": "0ee7cc830ed449d8c44c0e5e2398a79fa2f5ff89",
      "tree": "d987ee9c3def073074bb67856bdc15aba9e22ffd",
      "parents": [
        "3d1f2cf35501ac457ef2e6b71306be5f1295df55"
      ],
      "author": {
        "name": "Arnt Gulbrandsen",
        "email": "arnt@gulbrandsen.priv.no",
        "time": "Tue Mar 18 15:05:09 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 18 15:05:09 2025 +0100"
      },
      "message": "MIME4J-331 Add support for RFC 6532, and test it. (#114)\n\n* Add support for RFC 6532, and test it.\n* Test long headers explicitly\n* Extend the 653x test with unencoded UTF8 Subject."
    },
    {
      "commit": "3d1f2cf35501ac457ef2e6b71306be5f1295df55",
      "tree": "566b79ec6faf639630062e0eec98145b58cd0735",
      "parents": [
        "a2822aa9587ce3eb3fa9a72c375e7db2bd5b9333"
      ],
      "author": {
        "name": "hung phan",
        "email": "hphan@linagora.com",
        "time": "Fri Jan 10 15:24:14 2025 +0700"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Mon Jan 13 10:39:27 2025 +0700"
      },
      "message": "MIME4J-330 Fix MimeStreamParser bug: part body stream ends with CR\n"
    },
    {
      "commit": "a2822aa9587ce3eb3fa9a72c375e7db2bd5b9333",
      "tree": "ccc16437527a42a7a99202935afc85709bc38315",
      "parents": [
        "acc45aab9d076c980bf94b9acfd3a76bb7f93485"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 07:01:30 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 07:01:30 2024 +0100"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "acc45aab9d076c980bf94b9acfd3a76bb7f93485",
      "tree": "b997a97db1d097bbc2cffcf3b9b68b811e758c59",
      "parents": [
        "d0b03355236db94b698ef83a9e68d6cf3a10fa72"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 07:01:14 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 07:01:14 2024 +0100"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.12\n"
    },
    {
      "commit": "d0b03355236db94b698ef83a9e68d6cf3a10fa72",
      "tree": "c8d1ed057d2aaa8cbc7d747f70c3dd7c6f099595",
      "parents": [
        "1f8283f0bda5bcaf58611a3e42421371f6fb13cb"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:55:50 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:55:50 2024 +0100"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "1f8283f0bda5bcaf58611a3e42421371f6fb13cb",
      "tree": "ec784d9a35169c274d98207d51870dd098c3ef6b",
      "parents": [
        "1e17e5839993898b55ad9b787d9489d6dfb87525"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:53:20 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:53:20 2024 +0100"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.11\n"
    },
    {
      "commit": "1e17e5839993898b55ad9b787d9489d6dfb87525",
      "tree": "9e2ea3aa63714eb7a44cb35ab3548f78b5ba09b2",
      "parents": [
        "58f8fe35f157b38787f021427c61cd8095c289a7"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:52:03 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:52:03 2024 +0100"
      },
      "message": "Revert \"[maven-release-plugin] prepare release apache-mime4j-project-0.8.11\"\n\nThis reverts commit 58f8fe35f157b38787f021427c61cd8095c289a7.\n"
    },
    {
      "commit": "58f8fe35f157b38787f021427c61cd8095c289a7",
      "tree": "ec784d9a35169c274d98207d51870dd098c3ef6b",
      "parents": [
        "c5a290de416d3dbbbd9658a720d13f8ee8f70166"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:51:37 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Dec 23 06:51:37 2024 +0100"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.11\n"
    },
    {
      "commit": "c5a290de416d3dbbbd9658a720d13f8ee8f70166",
      "tree": "9e2ea3aa63714eb7a44cb35ab3548f78b5ba09b2",
      "parents": [
        "66a09219457854c7a26e5b7c0e4c9dd59b4b0c32"
      ],
      "author": {
        "name": "hung phan",
        "email": "hphan@linagora.com",
        "time": "Wed Nov 06 14:45:59 2024 +0700"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Thu Nov 07 09:15:45 2024 +0700"
      },
      "message": "Update comments of method fold in MimeUtil\n"
    },
    {
      "commit": "66a09219457854c7a26e5b7c0e4c9dd59b4b0c32",
      "tree": "4e92fc1f952803fb249ecff13f50bdca449b2c83",
      "parents": [
        "bc1abadf34e8daf92dafd8bcdb5e36eeda418867"
      ],
      "author": {
        "name": "hung phan",
        "email": "hphan@linagora.com",
        "time": "Tue Nov 05 15:07:25 2024 +0700"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Wed Nov 06 10:37:33 2024 +0700"
      },
      "message": "Update fold method in MimeUtil to allow inputing max characters\n"
    },
    {
      "commit": "bc1abadf34e8daf92dafd8bcdb5e36eeda418867",
      "tree": "9487b05d6d86846f06afcc65e75efc6451e035e1",
      "parents": [
        "f0e8465667f406314259b043c728f3aab10d1769"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 25 09:13:34 2024 +0200"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Mon Oct 28 10:14:56 2024 +0700"
      },
      "message": "Bump commons-io:commons-io from 2.14.0 to 2.17.0\n"
    },
    {
      "commit": "f0e8465667f406314259b043c728f3aab10d1769",
      "tree": "8349f1a8c09e9fed175929bddc8235dc29e75036",
      "parents": [
        "2b747bbbf3617796b10aa5df21e751ada8339c35"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Oct 03 21:40:41 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 03 21:40:41 2024 +0200"
      },
      "message": "Bump commons-io:commons-io from 2.11.0 to 2.14.0 (#108)\n\nBumps commons-io:commons-io from 2.11.0 to 2.14.0.\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: commons-io:commons-io\r\n  dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "2b747bbbf3617796b10aa5df21e751ada8339c35",
      "tree": "cd119a37d3af9dd5096f20bb51b4ded2bbc81d32",
      "parents": [
        "85995590ad6700cc8bf7a3b8462ce87843dab5bd"
      ],
      "author": {
        "name": "Houssem Nasri",
        "email": "housi.housi2015@gmail.com",
        "time": "Mon Sep 23 11:00:13 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 23 12:00:13 2024 +0200"
      },
      "message": "Set James logo (#107)\n\n"
    },
    {
      "commit": "85995590ad6700cc8bf7a3b8462ce87843dab5bd",
      "tree": "3c675a563249e767ba15ba997d3fb847b5b333ce",
      "parents": [
        "70a7b1ee87b20a332aa78aeb65baff38b6a48f6b"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue May 07 15:05:49 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 07 15:05:49 2024 +0200"
      },
      "message": "MIME4J-327 LenientAddressParser now handles UTF-8 (#104)\n\nHuge thanks to Chung dae hyun for reporting the issue and writing the test\r\nHuge thanks to @twn for fixing utf-8 handling in the first place and\r\nfixing up the test"
    },
    {
      "commit": "70a7b1ee87b20a332aa78aeb65baff38b6a48f6b",
      "tree": "a5814acc2382d5c9f2867ccfa5b0f90dca474590",
      "parents": [
        "ff415b3a664066818b7e9ed1ad65f36d9e1fd0f2"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue May 07 15:05:36 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 07 15:05:36 2024 +0200"
      },
      "message": "MIME4J-284 Test unfolding with equal sign (#105)\n\n"
    },
    {
      "commit": "ff415b3a664066818b7e9ed1ad65f36d9e1fd0f2",
      "tree": "1d7c951453a08bea3fe9bbb10877043868342eb1",
      "parents": [
        "bdb2264abd17badf70e27f7e32907bccc82d005e"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Apr 29 14:29:19 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 29 14:29:19 2024 +0200"
      },
      "message": "MIME4J-328 Fix DecoderUtil split point (#101)\n\nHuge thanks to Chung dae hyun\r\n"
    },
    {
      "commit": "bdb2264abd17badf70e27f7e32907bccc82d005e",
      "tree": "10b0bab7b69cb41b2ec5fcabfe8efc8511815015",
      "parents": [
        "ea6ff94407216bf3c57daca82dafcb668e90e774"
      ],
      "author": {
        "name": "Thomas",
        "email": "thomas.weinlein@ul.com",
        "time": "Fri Apr 26 04:51:34 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 26 09:51:34 2024 +0700"
      },
      "message": "Fixes parsing headers containing UTF-8 characters (#103)\n\n"
    },
    {
      "commit": "ea6ff94407216bf3c57daca82dafcb668e90e774",
      "tree": "9bee46e3eea67c61c1c9b965175c2a9e32792838",
      "parents": [
        "46a59b1df3962b4c852e83672be3ab843c7488c7"
      ],
      "author": {
        "name": "Tung Tran",
        "email": "vttran@linagora.com",
        "time": "Mon Apr 22 14:55:53 2024 +0700"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Mon Apr 22 16:11:13 2024 +0700"
      },
      "message": "MIME4J-197 Fixup case Mailbox parser absent domain part\n"
    },
    {
      "commit": "46a59b1df3962b4c852e83672be3ab843c7488c7",
      "tree": "695d63103d5e69e14a5016c6bd7b329c42f3a759",
      "parents": [
        "e7f7d02c60d63a814f2a149d54525def03da42fb",
        "e0fd696852756441d0bcdca9c0a600ad68b5cc80"
      ],
      "author": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 14 22:54:12 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 14 22:54:12 2024 +0200"
      },
      "message": "Merge pull request #98 from chibenwa/changelog-05-03-2024\n\nChangelog + README 0.8.11"
    },
    {
      "commit": "e7f7d02c60d63a814f2a149d54525def03da42fb",
      "tree": "78471757c53c27dc092fc1ca64edb8f7556f2d18",
      "parents": [
        "3dcc0d684737d8dd5424939c32db01b1d1b801b3",
        "59225eca61cc822f09fe292e2775ca0aebbdf96f"
      ],
      "author": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 14 22:53:23 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 14 22:53:23 2024 +0200"
      },
      "message": "Merge pull request #99 from apache/doap-0.8.11\n\nAdded 0.8.11 release to DOAP"
    },
    {
      "commit": "59225eca61cc822f09fe292e2775ca0aebbdf96f",
      "tree": "78471757c53c27dc092fc1ca64edb8f7556f2d18",
      "parents": [
        "3dcc0d684737d8dd5424939c32db01b1d1b801b3"
      ],
      "author": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 07 14:19:51 2024 +0200"
      },
      "committer": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 07 14:44:32 2024 +0200"
      },
      "message": "Added 0.8.11 release to DOAP\n"
    },
    {
      "commit": "3dcc0d684737d8dd5424939c32db01b1d1b801b3",
      "tree": "312dd082027ee50e70e94535961c3d1e20d59a2c",
      "parents": [
        "a05d99318e487ec11f08cdb7b8dcc3db414516e2"
      ],
      "author": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 07 14:17:32 2024 +0200"
      },
      "committer": {
        "name": "Eugen Stan",
        "email": "eugen.stan@netdava.com",
        "time": "Thu Mar 07 14:17:32 2024 +0200"
      },
      "message": "Updated DOAP file with older release information\n"
    },
    {
      "commit": "e0fd696852756441d0bcdca9c0a600ad68b5cc80",
      "tree": "08c6111458535d3511e7a363da14fa5b14a9f626",
      "parents": [
        "2eb94e53cc8502dfa2d1f9b5c3859ab75320aad3"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Mar 05 16:26:50 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Mar 05 16:26:50 2024 +0100"
      },
      "message": "README for 0.8.11\n"
    },
    {
      "commit": "2eb94e53cc8502dfa2d1f9b5c3859ab75320aad3",
      "tree": "08fac24a91c521c07bc92fb53a5352fde166f3c6",
      "parents": [
        "a05d99318e487ec11f08cdb7b8dcc3db414516e2"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Mar 05 15:32:50 2024 +0100"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Mar 05 16:25:43 2024 +0100"
      },
      "message": "Update changelog for 0.8.11\n"
    },
    {
      "commit": "a05d99318e487ec11f08cdb7b8dcc3db414516e2",
      "tree": "736abe184603b3a4a6a7fe0bee5a559595552e68",
      "parents": [
        "db19e21243101d51544a0acce0c079cfc552e9c8"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Mar 01 10:31:14 2024 +0100"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Mon Mar 04 10:34:55 2024 +0700"
      },
      "message": "[RELEASE] Rollover to 0.8.11-SNAPSHOT\n"
    },
    {
      "commit": "db19e21243101d51544a0acce0c079cfc552e9c8",
      "tree": "e76597727c33aa6893c18dce9f1982605f458a08",
      "parents": [
        "597db871705f2083041db39eb207cbb85ef533b4"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Mar 01 10:26:03 2024 +0100"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Mon Mar 04 10:34:55 2024 +0700"
      },
      "message": "MIME4J-326 SILENT monitor for header decoding\n"
    },
    {
      "commit": "597db871705f2083041db39eb207cbb85ef533b4",
      "tree": "95543162c83c6c36de7caecf3ae479b5e0d718ab",
      "parents": [
        "d25fb3fd35db42b060789a20634fbe3cb84aba17"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Feb 27 07:34:25 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 27 07:34:25 2024 +0100"
      },
      "message": "[RELEASE] Rollover to 0.8.10 (#93)\n\n"
    },
    {
      "commit": "d25fb3fd35db42b060789a20634fbe3cb84aba17",
      "tree": "7c7dad2f0cfd820aa0650d224741e112aa5f9d63",
      "parents": [
        "ac81a5d45204bfdbfc43cc1eef73ae3238f53cee"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Feb 23 21:24:07 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Feb 23 21:24:07 2024 +0100"
      },
      "message": "CHANGELOG CVE-2024-21742: Mime4J DOM header injection (#95)\n\n"
    },
    {
      "commit": "ac81a5d45204bfdbfc43cc1eef73ae3238f53cee",
      "tree": "251495898c16d656959c78939889fd6fcd11f640",
      "parents": [
        "a069e1e22cef144a69489a33c0127a083efe759a"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Thu Feb 01 07:35:27 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 01 07:35:27 2024 +0100"
      },
      "message": "DefaultBodyDescriptorBuilder: Allow to customize standard charset (#94)\n\n"
    },
    {
      "commit": "a069e1e22cef144a69489a33c0127a083efe759a",
      "tree": "61c46d147bcb8d7b2b3e20b8a5a1cce750d75285",
      "parents": [
        "9dec5df2a588fed8027839815daefa79ee66efd1"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Jan 09 08:09:33 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 09 08:09:33 2024 +0100"
      },
      "message": "Refresh changelog (#92)\n\n"
    },
    {
      "commit": "9dec5df2a588fed8027839815daefa79ee66efd1",
      "tree": "194bd845187f78237d52bf3641c62126b91a84a2",
      "parents": [
        "6581bd264b5c60fae23bdd7e5990c2641ae3bed8"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jan 05 08:12:54 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 05 08:12:54 2024 +0100"
      },
      "message": "[FIX] Prevent header injection with MIME4J DOM (#91)\n\n"
    },
    {
      "commit": "6581bd264b5c60fae23bdd7e5990c2641ae3bed8",
      "tree": "96e70c62f13fa7ef2af226ee14cc0233d36e46f1",
      "parents": [
        "d5ddd879a7fd4e1e1e7c9edb30850a43031fa7b3"
      ],
      "author": {
        "name": "Shamil Vakhitov",
        "email": "33479697+Pingvin235@users.noreply.github.com",
        "time": "Tue Nov 28 14:52:00 2023 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 28 14:52:00 2023 +0100"
      },
      "message": "Parsing multipart UTF-8 encoded filename. (#89)\n\n"
    },
    {
      "commit": "d5ddd879a7fd4e1e1e7c9edb30850a43031fa7b3",
      "tree": "27bf19fc6548c143f4ff8a5d0739f8a233e37c4c",
      "parents": [
        "8122e4b901274b2e377f2642b4874951a8f6fea1"
      ],
      "author": {
        "name": "Shamil Vakhitov",
        "email": "shamil@bgerp.org",
        "time": "Thu Aug 19 13:25:26 2021 +0500"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Nov 27 13:23:11 2023 +0100"
      },
      "message": "Content-Disposition filename Q and UTF-8 encoded.\n"
    },
    {
      "commit": "8122e4b901274b2e377f2642b4874951a8f6fea1",
      "tree": "e7d7a4b96d05ef35c6064646ce6ce0852854f234",
      "parents": [
        "0ef216839687e1b0b027f2cff75912f4432747a1"
      ],
      "author": {
        "name": "Shamil Vakhitov",
        "email": "shamil@bgerp.org",
        "time": "Wed Aug 18 20:25:15 2021 +0500"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Nov 27 13:23:11 2023 +0100"
      },
      "message": "RawField.getBody() in UTF-8\n"
    },
    {
      "commit": "0ef216839687e1b0b027f2cff75912f4432747a1",
      "tree": "c1bd08a6d13d5a5201fa1588e6225a3661e92c45",
      "parents": [
        "7cae9fb84dadb1bb43fc609a858151cce0dbe210"
      ],
      "author": {
        "name": "Wojtek",
        "email": "woj-tek@users.noreply.github.com",
        "time": "Fri Jun 30 02:08:28 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 30 13:08:28 2023 +0700"
      },
      "message": "MIME4J-325 DateTimeParser should throw ParseException if value can\u0027t be parsed (#88)\n\n"
    },
    {
      "commit": "7cae9fb84dadb1bb43fc609a858151cce0dbe210",
      "tree": "f511a11165b55f373f0df6691c5324c986c3cd30",
      "parents": [
        "2db07c2135d0222777868ca1be67b7303d0e4aae"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jun 14 22:26:09 2023 +0000"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Thu Jun 15 10:32:29 2023 +0700"
      },
      "message": "Bump guava from 28.1-jre to 32.0.0-jre in /james-utils\n\nBumps [guava](https://github.com/google/guava) from 28.1-jre to 32.0.0-jre.\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\n---\nupdated-dependencies:\n- dependency-name: com.google.guava:guava\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "2db07c2135d0222777868ca1be67b7303d0e4aae",
      "tree": "13872efbef2349ebd7153ad03e3514f1590c3191",
      "parents": [
        "53413b0acd5500a678dde75824f2f30d7a52a589"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 05 09:01:04 2023 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 05 09:01:04 2023 +0700"
      },
      "message": "[PERF] ContentTypeFieldLenientImpl: clear is not needed (#86)\n\n"
    },
    {
      "commit": "53413b0acd5500a678dde75824f2f30d7a52a589",
      "tree": "9e8baf10802bbf47f47048add2bae941baeba206",
      "parents": [
        "15d873873db4eceb0a0057cc1e46aa71fce155f8"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Feb 13 16:58:45 2023 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Thu Jun 01 22:30:27 2023 +0700"
      },
      "message": "MIME4J-322 Use ArrayDeque in MimeTokenStream\n\nThis reduces overall allocations as structures related to \"linked lists\"\ndo not need to be allocated.\n"
    },
    {
      "commit": "15d873873db4eceb0a0057cc1e46aa71fce155f8",
      "tree": "e1812a99eb41ee6e496b1f73043b6730a3faa0d8",
      "parents": [
        "8f72ae5ae442427f84e561793396f3b52eb09f48"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Apr 18 09:21:12 2023 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Wed Apr 19 08:25:42 2023 +0700"
      },
      "message": "MIME4J-324 Avoid an extra copy of ContentDispositionFieldLenientImpl parameters\n"
    },
    {
      "commit": "8f72ae5ae442427f84e561793396f3b52eb09f48",
      "tree": "330760ac27c3ca8aaa6b024d42ece3e8216f7d31",
      "parents": [
        "26c8c38f14bdccf917dbbe56ade8cd137548694e"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Apr 18 09:20:39 2023 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Wed Apr 19 08:25:42 2023 +0700"
      },
      "message": "MIME4J-324 Handle URL parsing exception in LenientContentDispositionField\n"
    },
    {
      "commit": "26c8c38f14bdccf917dbbe56ade8cd137548694e",
      "tree": "26e68bb07f2156c5e0bd81d08cbb01a7c91ebb20",
      "parents": [
        "04ae0f671253301cbb60a3d43ab8067a96f56550"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Jan 06 13:54:35 2023 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 06 13:54:35 2023 +0700"
      },
      "message": "[RELEASE] Bump changelog, readme, to 0.8.9 (#83)\n\n"
    },
    {
      "commit": "04ae0f671253301cbb60a3d43ab8067a96f56550",
      "tree": "6a4ed46a5da286abc2a16d0b293c704d4800ab89",
      "parents": [
        "8964fbd808a823672a516b669be4edebc191aa17"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Dec 30 12:53:04 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Dec 30 12:53:04 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "8964fbd808a823672a516b669be4edebc191aa17",
      "tree": "e4f0e842d6600013f0064ec35b4aa7b2f0fa6577",
      "parents": [
        "021eb79ba312fe5a7f99fa867ee5350aa5533069"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Dec 30 12:52:45 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Dec 30 12:52:45 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.9\n"
    },
    {
      "commit": "021eb79ba312fe5a7f99fa867ee5350aa5533069",
      "tree": "b0a1bf27002c518bddc0f38daf25755c09cc5f86",
      "parents": [
        "8479bf6650cf6e56f7446438c23cad2803fc08d2"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Tue Nov 22 09:14:14 2022 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 22 09:14:14 2022 +0700"
      },
      "message": "MIME4J-322 Rely on Files.createTempFile (#82)\n\n"
    },
    {
      "commit": "8479bf6650cf6e56f7446438c23cad2803fc08d2",
      "tree": "98d03efc1baf9ad5e3ea97b8fe438fc550b8ba73",
      "parents": [
        "d7569c4cb2ef24ad583ecf6197771c87ab578e21"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Nov 04 14:09:14 2022 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 04 14:09:14 2022 +0700"
      },
      "message": "MIME4J-321 SingleBody should return its size (#80)\n\nA quite common need is for instance to get the size off attachments.\r\n\r\nToday the DOM API offer no other ways than to read the inputstream of the Body Part and manually compute the size.\r\n\r\nHowever, implementation holding the raw data might already have this value pre-computed and this could be used to get the size very cheaply, without copies.\r\n\r\nI propose to add a default \"copy\" implementation, and provide more optimal implementations where possible."
    },
    {
      "commit": "d7569c4cb2ef24ad583ecf6197771c87ab578e21",
      "tree": "cd3e912c9100f3671ed28ebb113f73610e2e5b2c",
      "parents": [
        "25d9ff6c68b98e2a7911271496b976b55821c99a"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Nov 04 14:08:15 2022 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 04 14:08:15 2022 +0700"
      },
      "message": "[RELEASE] Bump changelog, readme, to 0.8.8 (#79)\n\n"
    },
    {
      "commit": "25d9ff6c68b98e2a7911271496b976b55821c99a",
      "tree": "432868b8e1ce092c3f04f69d0cced00cb4da5476",
      "parents": [
        "3105188d68d824baff0570f9dd91edb2050c0d79"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:16:15 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:16:15 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "3105188d68d824baff0570f9dd91edb2050c0d79",
      "tree": "51d1470686b5d0a5d1f5ae27fe49c611fdd84a62",
      "parents": [
        "a1652d9c2ef34d70c867acd3611729d937c81c39"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:15:56 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:15:56 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.8\n"
    },
    {
      "commit": "a1652d9c2ef34d70c867acd3611729d937c81c39",
      "tree": "4adc3dc051341d4188be789cf29a95a1c2c4dee6",
      "parents": [
        "11d8dcee9af6f2f7b98144af2e8aa0ff5cbf6277"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:11:57 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 28 09:15:06 2022 +0700"
      },
      "message": "Update developer connection\n"
    },
    {
      "commit": "11d8dcee9af6f2f7b98144af2e8aa0ff5cbf6277",
      "tree": "0e49e2c5948b7d50faf72d6babf94bebfd6d9372",
      "parents": [
        "4216ca27396b3516ad874d89a60868c5032b5068"
      ],
      "author": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Oct 21 10:28:37 2022 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 21 10:28:37 2022 +0700"
      },
      "message": "[UPGRADE] log4j 2.17.1 -\u003e 2.19.0 (#78)\n\n"
    },
    {
      "commit": "4216ca27396b3516ad874d89a60868c5032b5068",
      "tree": "960893f146dcb792fb01ecfd10caae09fcb188bc",
      "parents": [
        "3b3f09e3b45cb3a090855145dbfe315e11d409c0"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Thu Aug 25 08:19:57 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Allow disabling buffer recycling\n"
    },
    {
      "commit": "3b3f09e3b45cb3a090855145dbfe315e11d409c0",
      "tree": "aa8f87467e6aee8c06f14f7d2b4f1e98f602f8e9",
      "parents": [
        "432b786a4b7ca565b3d3b9c94640f3d03c8f58eb"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Wed Jun 29 08:35:44 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Improve writing bodies into an output stream\n"
    },
    {
      "commit": "432b786a4b7ca565b3d3b9c94640f3d03c8f58eb",
      "tree": "c59cda693c584e9b850dd66fb4d5d451dc421d8a",
      "parents": [
        "a741f65dd6d2eb21f1be7fcfd37d5fac52d28777"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Wed Jun 29 08:23:08 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Add a TextBody::getCharset\n\nThis avoids client application to re-parse the charset\n"
    },
    {
      "commit": "a741f65dd6d2eb21f1be7fcfd37d5fac52d28777",
      "tree": "055ac6a9d9c58dc14b53a5170656afde201dc231",
      "parents": [
        "639e74d1dced1efadefc9b44f1951c2557c2e897"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 28 09:40:10 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Improve writing recycled buffers\n"
    },
    {
      "commit": "639e74d1dced1efadefc9b44f1951c2557c2e897",
      "tree": "bb1f67fadb658af2e5b0a4f8e6ecfd32c7d8a680",
      "parents": [
        "c340fe60f2f27d47858c67dbde25387c4d94310c"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 27 13:38:47 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Fields: rely on lenient parsers\n\nJMH proves this to be an order of magnitude faster than default implementation.\n\nThis provides a 25% boost on message writing. (benchmark7)\n"
    },
    {
      "commit": "c340fe60f2f27d47858c67dbde25387c4d94310c",
      "tree": "e6e790345a02566085d541ff219ab72ef9ea2244",
      "parents": [
        "2f53da3849ae04866c411e431ace3835df80765e"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Thu Jun 23 16:23:16 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Do not use Synchronised byte array output streams\n"
    },
    {
      "commit": "2f53da3849ae04866c411e431ace3835df80765e",
      "tree": "76d79700559b861bccea6eaff90b476e2cbef5da",
      "parents": [
        "e2ad9a2da0c4385aad2dcd82caf37ccb4b1f6124"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 11:46:55 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 DefaultBodyDescriptorBuilder should avoid copying all headers\n\nIt only need to copy headers describing body content.\n\n  JMHLongMultipartReadBench.benchmark4                               avgt   10     41.344 ±   1.121   us/op\n  JMHLongMultipartReadBench.benchmark4:·gc.alloc.rate                avgt   10    609.846 ±  16.101  MB/sec\n  JMHLongMultipartReadBench.benchmark4                               avgt   10     39.936 ±   1.612   us/op\n  JMHLongMultipartReadBench.benchmark4:·gc.alloc.rate                avgt   10    611.421 ±  23.750  MB/sec\n"
    },
    {
      "commit": "e2ad9a2da0c4385aad2dcd82caf37ccb4b1f6124",
      "tree": "4b66e891f8f8e3da9691c3e908df8806a64498eb",
      "parents": [
        "2a234381ac67bbf4a8149d79e63faa667c031ca0"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 11:06:21 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Fasten ContentDispositionFieldLenientImpl\n\n - Prevent useless copies\n - Rely on Java 8 time API\n\n From 32 ns down to 9ns.\n"
    },
    {
      "commit": "2a234381ac67bbf4a8149d79e63faa667c031ca0",
      "tree": "1a4a7b920b1a33f5996cf7f8aee0c9219de3b60d",
      "parents": [
        "cd9f63be2b784028e8b5602f8436b660793ee6e4"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 10:50:23 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 RawBody is used solely for parsing and not exposed nor kept.\n\nRawBody: prevent a useless defensive copy\n"
    },
    {
      "commit": "cd9f63be2b784028e8b5602f8436b660793ee6e4",
      "tree": "96715fafcf91b3851c71bad8ec83e97f95a587b3",
      "parents": [
        "ad155f9797038ba91a6fe79ae7cdc426899da6dc"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 23:24:27 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Write single body backed by ByteArrayOutputStream, add recycling\n\nReduce allocation rate by ~30% which allow to fasten Mime\nmessage parsing from 45 us to 39us, which represents a ~12%\nspeedup.\n\nRecycling those output stream drops the GC churn rate below\n500MB/s while yielding a message parsing in 34us.\n"
    },
    {
      "commit": "ad155f9797038ba91a6fe79ae7cdc426899da6dc",
      "tree": "dcc73976bb3aca2a740637ba17d6386725b9bdba",
      "parents": [
        "7f56f6501afac8ce2b26a70b0d4038b1096a241f"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 22:55:54 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Write single body backed by ByteArrayOutputStream\n\nReduce allocation rate by ~30% which allow to fasten Mime\nmessage parsing from 45 us to 39us, which represents a ~12%\nspeedup.\n"
    },
    {
      "commit": "7f56f6501afac8ce2b26a70b0d4038b1096a241f",
      "tree": "264bdfc2a3cae9586825f919bed077b8eb90405e",
      "parents": [
        "e88d55b60a34b73a7eefc478a310d4616f01e350"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 11:20:08 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Buffer recycling for ContentUtil copies\n\nParsing 100K messages locally drops from 4,9s to 4.6s...\n"
    },
    {
      "commit": "e88d55b60a34b73a7eefc478a310d4616f01e350",
      "tree": "38d95bbbeb2dd2ed3585b605d6ce73ced633c162",
      "parents": [
        "215f8ed3107909a1b8671b8e0f2c5063d2f626fe"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 11:57:09 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 BufferedLineReaderInputStream: shift table can be reused\n"
    },
    {
      "commit": "215f8ed3107909a1b8671b8e0f2c5063d2f626fe",
      "tree": "097342e0b5e250c9796286cf06c1e1d0cf658822",
      "parents": [
        "2dd9015a302c53c935c2c165ed70e3c3554bcb97"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 11:06:02 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Mon Oct 17 10:11:44 2022 +0700"
      },
      "message": "MIME4J-318 Adopt commons-io ByteArrayOutputStream\n\nParsing 100K messages locally drops from 5.6s to 4.9s...\n"
    },
    {
      "commit": "2dd9015a302c53c935c2c165ed70e3c3554bcb97",
      "tree": "b2d9a73bb0efeb2b5829d2dafe8913c6557ac991",
      "parents": [
        "133ac409404895a992c894b1e62a86036cc39082"
      ],
      "author": {
        "name": "cketti",
        "email": "ck@cketti.de",
        "time": "Thu Aug 25 23:51:00 2022 +0200"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:51:46 2022 +0700"
      },
      "message": "MIME4J-109 Add (disabled) tests for MIME parameter decoding\n"
    },
    {
      "commit": "133ac409404895a992c894b1e62a86036cc39082",
      "tree": "0deae5388208dddfef545c97435c268ceeee9589",
      "parents": [
        "1171711e4411becf3b625f1a55cea13059e73f93"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 10:49:26 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:50:15 2022 +0700"
      },
      "message": "MIME4J-317 JMH benchmark: DOM fields\n"
    },
    {
      "commit": "1171711e4411becf3b625f1a55cea13059e73f93",
      "tree": "7ffcc8ad4586cae4cfbe614f9de55f097a6a7ac6",
      "parents": [
        "38992555b2a4bca60bb9ab0b8c7dda6724683fb9"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Thu Jun 23 16:25:02 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:50:15 2022 +0700"
      },
      "message": "MIME4J-317 Add a JMH benchmark for emails made of headers\n"
    },
    {
      "commit": "38992555b2a4bca60bb9ab0b8c7dda6724683fb9",
      "tree": "6ed416264a755423fe50029a8ce4c7404cd90e1c",
      "parents": [
        "e480ed3d80e2c35acbb4efcc4de60e619398bd9a"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 09:03:48 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:50:15 2022 +0700"
      },
      "message": "MIME4J-317 JMH benchmark: have more representative headers\n"
    },
    {
      "commit": "e480ed3d80e2c35acbb4efcc4de60e619398bd9a",
      "tree": "79309a82d0e68957d11d0780911da838535a55db",
      "parents": [
        "53ccf4631a62eeb3121c2a47fa9fba6172320215"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Tue Jun 21 08:24:22 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:50:15 2022 +0700"
      },
      "message": "MIME4J-317 Improve message writing (JMH + optimized copy)\n\nJMHLongMultipartReadBench.benchmark5                               avgt   10      46.152 ±    3.084   us/op\nJMHLongMultipartReadBench.benchmark5:·gc.alloc.rate                avgt   10    1972.992 ±  121.382  MB/sec\n\nJMHLongMultipartReadBench.benchmark5                               avgt   10     37.964 ±   0.430   us/op\nJMHLongMultipartReadBench.benchmark5:·gc.alloc.rate                avgt   10    517.658 ±   5.853  MB/sec\n"
    },
    {
      "commit": "53ccf4631a62eeb3121c2a47fa9fba6172320215",
      "tree": "aebe6794919cd37282c9995e69e5c26ac0771bdd",
      "parents": [
        "ccf26e8cbb62418638e09ef2020da9eaf47820bb"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Mon Jun 20 15:13:04 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri Sep 09 18:50:15 2022 +0700"
      },
      "message": "MIME4J-317 Example of MIME4 benchmark using JMH\n"
    },
    {
      "commit": "ccf26e8cbb62418638e09ef2020da9eaf47820bb",
      "tree": "bba8fdafc58d5a2c62a3c3219e123a97ed0cc81b",
      "parents": [
        "7327a679b8492cc7c1225071d30b50f09b5e537a"
      ],
      "author": {
        "name": "cketti",
        "email": "ck@cketti.de",
        "time": "Wed Aug 10 21:42:09 2022 +0200"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Fri Sep 09 14:53:38 2022 +0700"
      },
      "message": "MIME4J-320 Make DateTimeParser case-insensitive for day of week and month\n"
    },
    {
      "commit": "7327a679b8492cc7c1225071d30b50f09b5e537a",
      "tree": "ba1424d629654da4a386f18c9c97c1825f03dccb",
      "parents": [
        "16d6c56cf6a16bfed7aaedf6024c154c00093032"
      ],
      "author": {
        "name": "Rene Cordier",
        "email": "rcordier@linagora.com",
        "time": "Fri Sep 09 11:23:03 2022 +0700"
      },
      "committer": {
        "name": "Rene Cordier",
        "email": "rene.cordier@gmail.com",
        "time": "Fri Sep 09 13:58:56 2022 +0700"
      },
      "message": "Add version for the javacc-maven-plugin\n\nThe javacc-maven-plugin recently got a major upgrade to 3.0.0. The modifications are generating numerous errors in our code that depends on 2.6.\n"
    },
    {
      "commit": "16d6c56cf6a16bfed7aaedf6024c154c00093032",
      "tree": "4e98ecbac422f219c974ef560fdb1e33cf858854",
      "parents": [
        "dc15857d4b999c0f095b4e00aee5d89e1e0047aa"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Wed May 18 11:14:47 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri May 27 14:05:52 2022 +0700"
      },
      "message": "MIME4J-315 Test suite for DateTime\n\nThis is a copy of LenientDateTimeFieldTest\n"
    },
    {
      "commit": "dc15857d4b999c0f095b4e00aee5d89e1e0047aa",
      "tree": "3be8b031c3e7c122ec238b25fa2cd8ffce4b3643",
      "parents": [
        "d79c2eccb9733ddbf13c7749071fba72d1948db7"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Wed May 18 11:13:35 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri May 27 14:05:52 2022 +0700"
      },
      "message": "MIME4J-315 Add a convenient method to parse DateTime\n\nTHis enables building DateTime without knowledge of its parser\n"
    },
    {
      "commit": "d79c2eccb9733ddbf13c7749071fba72d1948db7",
      "tree": "106c6a1346fd57eea164aefc6471c0e48098456a",
      "parents": [
        "7e23d5e1cc2bd77f3e5129622472b995cd3f034e"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Wed May 18 11:10:59 2022 +0700"
      },
      "committer": {
        "name": "Benoit TELLIER",
        "email": "btellier@linagora.com",
        "time": "Fri May 27 14:05:52 2022 +0700"
      },
      "message": "MIME4J-315 Add a convenient method to transform DateTime into a java date\n"
    },
    {
      "commit": "7e23d5e1cc2bd77f3e5129622472b995cd3f034e",
      "tree": "e9d5fb8b6c7faae12c2ac09f7793c752f1b195bc",
      "parents": [
        "4ecbe86e4248062fe0cf3dc49f03290fe8904945"
      ],
      "author": {
        "name": "Thomas Fricker",
        "email": "tommi.fricker@googlemail.com",
        "time": "Thu May 19 10:11:08 2022 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 19 15:11:08 2022 +0700"
      },
      "message": "MIME4J-316 Parts missing in case of a specific combination of boundaries\n\nThe problem can be reproduced by parsing a very specific email structure, where\r\nan inner boundary matches the name of another outer boundary followed by a \"-\" character.\r\nIn the following example, the attached pdf file will be ignored by the parser. \r\n\r\nMerge pull request #2 from bluemind-net/bugfix/BM-18542 (#71)\r\n\r\nBM-18542 Fix: check for -- boundary ending\r\n\r\nThanks @tommix000 for the fix."
    },
    {
      "commit": "4ecbe86e4248062fe0cf3dc49f03290fe8904945",
      "tree": "a011bc0724c1444b3188f8df664eec35f1ce8fb5",
      "parents": [
        "4f07346d9913179b05a8e4f2644a0c4fa7b535c2"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Apr 22 11:39:29 2022 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 22 11:39:29 2022 +0700"
      },
      "message": "Bump log4j-core from 2.16.0 to 2.17.1 (#69)\n\nBumps log4j-core from 2.16.0 to 2.17.1.\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: org.apache.logging.log4j:log4j-core\r\n  dependency-type: direct:development\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\n\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\r\n\r\nPlease note that Log4J is used only as a testing library."
    },
    {
      "commit": "4f07346d9913179b05a8e4f2644a0c4fa7b535c2",
      "tree": "95b933b6fc0947bbe4b2fd686ed0a2b5ca853686",
      "parents": [
        "dbbcb43a86df95e6f6d37afd0cbcfd3e0c514efe"
      ],
      "author": {
        "name": "Tim Allison",
        "email": "tallison314159@gmail.com",
        "time": "Thu Apr 21 22:09:40 2022 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 22 09:09:40 2022 +0700"
      },
      "message": "MIME4J-313 -- correctly allow for builds with JDK \u003e 8 but target/release of 8. (#67)\n\n"
    },
    {
      "commit": "dbbcb43a86df95e6f6d37afd0cbcfd3e0c514efe",
      "tree": "124ef680658ef9f292c3d1a8725f99877bfefb0b",
      "parents": [
        "ed5a50c8071080b4eaedd6ab13baf25843d691a3"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:36:17 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:36:17 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "ed5a50c8071080b4eaedd6ab13baf25843d691a3",
      "tree": "0f854ec32a56f415f9b6e5002ab88338fcce3d8f",
      "parents": [
        "c5b93cdd001223761221baa81c7a776f6194c2aa"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:35:28 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:35:28 2022 +0700"
      },
      "message": "[maven-release-plugin] prepare release apache-mime4j-project-0.8.7\n"
    },
    {
      "commit": "c5b93cdd001223761221baa81c7a776f6194c2aa",
      "tree": "ecd95bb7988eac36a21c5cf41f3f84badb272c0f",
      "parents": [
        "ceb6267ddc465c0feb0d5647c43c130930a37f3c"
      ],
      "author": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:30:54 2022 +0700"
      },
      "committer": {
        "name": "Benoit Tellier",
        "email": "btellier@linagora.com",
        "time": "Fri Apr 01 11:30:54 2022 +0700"
      },
      "message": "Changelog for 8.7.0\n"
    },
    {
      "commit": "ceb6267ddc465c0feb0d5647c43c130930a37f3c",
      "tree": "f6167be8ca3b781ee3f4334955a5967544b6d259",
      "parents": [
        "41b9ab33f0de55ea514b6a0c7c813510fbdd11d1"
      ],
      "author": {
        "name": "Trần Hồng Quân",
        "email": "55171818+quantranhong1999@users.noreply.github.com",
        "time": "Thu Dec 16 21:24:08 2021 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 16 21:24:08 2021 +0700"
      },
      "message": "Update log4j to 2.16.0\n\n"
    }
  ],
  "next": "41b9ab33f0de55ea514b6a0c7c813510fbdd11d1"
}
