)]}'
{
  "log": [
    {
      "commit": "fd11bb59e416cb1416ec58e331a837de5a7d0239",
      "tree": "3e34671b485000c1386d6fd8ded5f6adfd2eeec3",
      "parents": [
        "32d84a4eeeafb94f810ae40977caa72613182bfd"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Feb 21 18:00:21 2022 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Jun 18 13:20:26 2026 -0400"
      },
      "message": "NO-JIRA: Allow azure CI to test sasl properly\n"
    },
    {
      "commit": "32d84a4eeeafb94f810ae40977caa72613182bfd",
      "tree": "6bfb92468b813a5ffc39bd1de197e395e9731666",
      "parents": [
        "bb73a2269b560ff847fb034db3e3c45724006736"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Feb 21 13:06:56 2022 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Jun 18 13:20:26 2026 -0400"
      },
      "message": "PROTON-2502: Stop testing using MD5 SASL mechanisms\n\nMD5 based mechanisms are now considered insecure and future systems will\nbe configured without them available. We should stop using them to test\nProton so we can build on securely configured machines.\n"
    },
    {
      "commit": "bb73a2269b560ff847fb034db3e3c45724006736",
      "tree": "5d5e271ef0bfbf4f9e46b12b5f72ca1f3341941d",
      "parents": [
        "3f4a08cdaf7d177be91d5ff83c77d5aaba790351"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 17:44:33 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 17 18:12:02 2026 -0400"
      },
      "message": "Set up default protection ruleset for default and release branches"
    },
    {
      "commit": "3f4a08cdaf7d177be91d5ff83c77d5aaba790351",
      "tree": "7d7f13c8688d9df206cbba74d4e8810d40499fad",
      "parents": [
        "7be093d8d96104caab3fa858ab9886f23d62ee04"
      ],
      "author": {
        "name": "Stephen Baldwin",
        "email": "stephen.baldwin@syncromsp.com",
        "time": "Fri Oct 31 13:56:31 2025 -0700"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 17 17:54:18 2026 -0400"
      },
      "message": "[PROTON-2907] Check what parser URI::DEFAULT_PARSER is set to instead of ruby version\n"
    },
    {
      "commit": "7be093d8d96104caab3fa858ab9886f23d62ee04",
      "tree": "f6701b75b5c241d71916c0e8629678d5b2205a07",
      "parents": [
        "253ec1b4769b752e0609394e0b0cea0b6be5cb41"
      ],
      "author": {
        "name": "Thomas Goirand",
        "email": "zigo@debian.org",
        "time": "Wed Jun 17 15:31:31 2026 +0200"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 17 16:39:52 2026 +0100"
      },
      "message": "PROTON-2937: Add OpenSSL 4.x compat\n\nFixes this Debian bug: https://bugs.debian.org/1138394\n\nIt retains compatibility with OpenSSL 3\n\nCloses #447\n"
    },
    {
      "commit": "253ec1b4769b752e0609394e0b0cea0b6be5cb41",
      "tree": "b9ef5e7e977d59b0c8ccde2922c02b0cfdee8ee3",
      "parents": [
        "a1d52dfe07bbfdc269a3377444682e13b7dd5a8f"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 12 15:04:39 2026 +0100"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 12 15:04:39 2026 +0100"
      },
      "message": "PROTON-2864: Bump library .so versions for 0.41.0\n"
    },
    {
      "commit": "a1d52dfe07bbfdc269a3377444682e13b7dd5a8f",
      "tree": "d27246cee7d4ff66d843e71e3b25da89f0bf8eaa",
      "parents": [
        "a932ea4322f18b72ee924317dd336d36c924620d"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 03 00:21:22 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-2922: Add comprehensive C++ API transaction tests\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "a932ea4322f18b72ee924317dd336d36c924620d",
      "tree": "a8e6731129d0d7ffdf6aaefbb9ef2e51c2f0cf48",
      "parents": [
        "d153c3a8ae627d03e08e31e976d18f121ff30646"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 01:46:29 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-2922: Transaction testing\n\nImprove interactive tester so that it is capable of automatically\ntesting transactions at build time.\nIt still requires a transaction supporting broker to test against.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "d153c3a8ae627d03e08e31e976d18f121ff30646",
      "tree": "e4b739bc5c3000ec6d4efeacd81bf1d26f237a9b",
      "parents": [
        "329edf8e1e281806f024c9f79ea8f7e86c067c67"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 13:32:49 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-1442: Ensure that transaction id is empty outside transaction\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "329edf8e1e281806f024c9f79ea8f7e86c067c67",
      "tree": "ec9ee763bbadeeffe38406d9974035eabd46780e",
      "parents": [
        "7cfcc8344fb4a36ba6ba6d35819a1bf25fca4247"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 21 16:12:56 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-1442: Make sure we only respond if we are in a transaction\n\nIf the peer is misbehaved it could send us a transactioned disposition\nwhen we\u0027re not in a transaction or it could be for a different\ntransaction.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "7cfcc8344fb4a36ba6ba6d35819a1bf25fca4247",
      "tree": "48c462eb5004452f179b741a4adcd888b9ed3a52",
      "parents": [
        "4db5f231edcfef0dd9f630383db945cba7f89510"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 01 19:00:26 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-1442: Correct outgoing message callbacks\n\nMake sure that the correct callbacks for the final committed\ndisposition of messages happens on commit.\n\n[On abort or commit error, then there is no callback as there is no\nfinal disposition update - but there may be a provisional update\ncallback which happened during the transaction]\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "4db5f231edcfef0dd9f630383db945cba7f89510",
      "tree": "6ff0af7308e35e6551a9bd218f2bb0a56805de2a",
      "parents": [
        "e99e6306489a71d47cc3aaee516720c2700420be"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Apr 20 16:37:13 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-2921: Change default message rollback behaviour\n\n* Default rollback behaviour is now is to use a modified disposition\n  with failed delivery.\n* Do this by default on receiving transactional messages within a failed\n  or rolled back transaction.\n* Create options to change transactional defaults:\n  Currently there is only one option which sets the default behaviour\n  for received messages in a rolled back transaction.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "e99e6306489a71d47cc3aaee516720c2700420be",
      "tree": "31f58c973f14e1b32d03e89088550843eed13364",
      "parents": [
        "84048049f964ed325c6fa71bb6584cb4555600c3"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue May 05 23:42:11 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-1442: Improve C++ transaction API documentation\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "84048049f964ed325c6fa71bb6584cb4555600c3",
      "tree": "c358fabee151cda797c00860ae10fd1098d7a599",
      "parents": [
        "0a4c7b2bb9fc093505e5d451fe2d9660f2213622"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue May 26 14:26:54 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:19:29 2026 -0400"
      },
      "message": "NO-JIRA: [Python example broker] Improve readability of timeout\n"
    },
    {
      "commit": "0a4c7b2bb9fc093505e5d451fe2d9660f2213622",
      "tree": "311589cfddda49883ab8b8e575ae27521c47b655",
      "parents": [
        "e64c9fada89a940448fdf578c01a4e57f2c34844"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 15 18:53:49 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 18:17:04 2026 -0400"
      },
      "message": "PROTON-2936: [C++] Add container quiescent callback\n\nThis callback will be invoked when the event loop has no immediate\nevents to process - it indicates that there is nothing currently to do,\nso is a good place for an application to do short lived background\nprocessing, or to wait for the immediate effects of some protocol action\nto complete, for example to initiate an interactive prompt.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "e64c9fada89a940448fdf578c01a4e57f2c34844",
      "tree": "853e8cc3f98a88bdf3b4f0811a40f07de3ff6601",
      "parents": [
        "3206e809dafd09dfd771aee51bfc1d19ae8893be"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Jun 09 14:53:17 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 10 14:22:51 2026 -0400"
      },
      "message": "PROTON-2873: Work around transacted modified dispositions\n\nThe disposition API currently gives no access to the nested outcome of a\ntransacted modified disposition - however the usual case has the\ndelivery-failed boolean set for this disposition and this is the default\nbehaviour for this disposition (otherwise the release disposition could\nbe used instead in most cases). So we need to work around this until we\nhave a better fix:\n\n- When fix a transacted modified outcome to be delivery-failed and\n  redeliverable on the wire.\n- In the example python broker we assume that any received transacted modify\n  will be failed delivery, redeliverable.\n- In the C++ API we change the processing of modify to allow transacted\n  modifies to work.\n"
    },
    {
      "commit": "3206e809dafd09dfd771aee51bfc1d19ae8893be",
      "tree": "8cbf13d99e284087b1d4e764f7a8dc1843ba11e0",
      "parents": [
        "ee41bfc9d37e0cd1bc534082cf92030ca28788a1"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 15 18:53:49 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "PROTON-2834: [C++] Container stop should ignore cancelled timers\n\nContainer stop is documented to stop the container after queued qork is\ncompleted. However if shouldn\u0027t wait for any timer work that has already\nbeen cancelled. So if there are only cancelled timers left it should\nexit immediately.\n"
    },
    {
      "commit": "ee41bfc9d37e0cd1bc534082cf92030ca28788a1",
      "tree": "5deb915d575f8cbbcb0aa99ff3671818af446470",
      "parents": [
        "f2030b7774ec51d4d4939db40815c80aea1ad28c"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 15 18:53:49 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "NO-JIRA: [Ruby] Fix tests for recent ruby with removed minitest/unit\n"
    },
    {
      "commit": "f2030b7774ec51d4d4939db40815c80aea1ad28c",
      "tree": "9067975ca282044d90ba8f3b32ff52689a402344",
      "parents": [
        "9a1664f2b4b66d924e56b6a4238ea876121d9d25"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 06 17:23:04 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "NO-JIRA: [C++] Make output of binary types prettier\n\nAvoid including formatting (newlines, tabs etc.) in the output for\nbinary values.\n"
    },
    {
      "commit": "9a1664f2b4b66d924e56b6a4238ea876121d9d25",
      "tree": "46b86ed11925c6cb100c35cbc9a1fb3eb4168582",
      "parents": [
        "dd905346d9bfaea02d4604321126b5840669ebda"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 11 17:10:44 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "NO-JIRA: [C++ docs] Improvements to description of proton::work_queue\n"
    },
    {
      "commit": "dd905346d9bfaea02d4604321126b5840669ebda",
      "tree": "6022633e1c86cb659a31700ab2b59be607113fbe",
      "parents": [
        "29844e81ec8ba15ddac82cf61d4d54fed1c5893c"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 11 15:13:52 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "NO-JIRA: Update github build action for latest runners.\n"
    },
    {
      "commit": "29844e81ec8ba15ddac82cf61d4d54fed1c5893c",
      "tree": "7c0f7f7b544a90a0ba24b1f88d51b365d9dece53",
      "parents": [
        "48209807deb6ae3a36c28915a78656cd1acdf0be"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 21 16:12:56 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:28 2026 -0400"
      },
      "message": "PROTON-1442: Reorder messaging_handler callbacks to maintain ABI\n"
    },
    {
      "commit": "48209807deb6ae3a36c28915a78656cd1acdf0be",
      "tree": "828c23a9749790c9ed1b7e5c43a79dd93c38a89f",
      "parents": [
        "13275ca2710d4f659bda540e8358f22b0a10be24"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue May 26 14:26:54 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 29 17:09:02 2026 -0400"
      },
      "message": "PROTON-2935: Setting default logger sink doesn\u0027t fully work\n\nIf you change the default logger sink before creating a transport then\nthe context that you set for the default logger would get overwritten.\n"
    },
    {
      "commit": "13275ca2710d4f659bda540e8358f22b0a10be24",
      "tree": "41790a9abcf23cc21b84c68e87e36e78d22f3751",
      "parents": [
        "490d64a25d6b526c6df2de9d8b35f42ef66a5fc6"
      ],
      "author": {
        "name": "Cliff Jansen",
        "email": "cjansen@redhat.com",
        "time": "Fri May 01 11:52:47 2026 -0700"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 20 21:04:03 2026 -0400"
      },
      "message": "PROTON-2931: epoll proactor thread races using async c-ares name resolver library\n"
    },
    {
      "commit": "490d64a25d6b526c6df2de9d8b35f42ef66a5fc6",
      "tree": "4810da97a1365336e8c06520b3e1684aa02b006e",
      "parents": [
        "e1695bc5e1013f65777af8ef2a92a62b9609e047"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 01 18:45:46 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 04 21:26:09 2026 -0400"
      },
      "message": "PROTON-2932: [C++] Allow proton::transfer to be hashed\n"
    },
    {
      "commit": "e1695bc5e1013f65777af8ef2a92a62b9609e047",
      "tree": "dc46f3678b21718700aab7c8a68e90fd56a018b9",
      "parents": [
        "169e19a757ca8a3c998e29266f319a41a70d39ba"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Sun Apr 26 19:45:29 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Sun Apr 26 21:12:19 2026 -0400"
      },
      "message": "PROTON-2873: Make it easier to switch between disposition types\n\nAdd pn_disposition_clear to exposed API so that you can set a\nchange the disposition type and parameters of a disposition that is\nalready set using the new disposition API.\n\nDoing this is an unusual case, but occurs when you have an incoming\ndelivery inside a transaction which has been transactionally\nacknowledged but the transaction aborts or commit fails and now needs to\nbe have a modified disposition.\n"
    },
    {
      "commit": "169e19a757ca8a3c998e29266f319a41a70d39ba",
      "tree": "643adc1c0fcda554e1c8850983905a0f8e95df04",
      "parents": [
        "0643d7c769744515d88f2eec629513ae308c52ad"
      ],
      "author": {
        "name": "Cliff Jansen",
        "email": "cjansen@redhat.com",
        "time": "Thu Apr 16 08:44:08 2026 -0700"
      },
      "committer": {
        "name": "Cliff Jansen",
        "email": "cjansen@redhat.com",
        "time": "Thu Apr 16 08:44:08 2026 -0700"
      },
      "message": "PROTON-2930: epoll proator repeated epoll_wait on disconnected socket\n"
    },
    {
      "commit": "0643d7c769744515d88f2eec629513ae308c52ad",
      "tree": "33bc3f512794dba61ed7322d27e1d71817088a6b",
      "parents": [
        "7474c4b64ac7bce2ffbf24b3650d74dda0f4f6c7"
      ],
      "author": {
        "name": "Cliff Jansen",
        "email": "cjansen@redhat.com",
        "time": "Sun Apr 12 11:06:49 2026 -0700"
      },
      "committer": {
        "name": "Cliff Jansen",
        "email": "cjansen@redhat.com",
        "time": "Sun Apr 12 11:06:49 2026 -0700"
      },
      "message": "PROTON-2928: epoll proactor: fix amqp connection task scheduling if Proton events are pending\n"
    },
    {
      "commit": "7474c4b64ac7bce2ffbf24b3650d74dda0f4f6c7",
      "tree": "bbfc36dac6247175c094878b83c7891dc73f9eb2",
      "parents": [
        "d90c70637fed77c18e62fb12b84613d6ffc865df"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 19 17:51:12 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Mar 25 21:30:57 2026 -0400"
      },
      "message": "PROTON-2926: Message ttl\u003d0 improvements\n\n- Document that ttl\u003d0 represents no ttl for the proton-c API.\n- Change python API to accept None and treat it as no expiry\n- Change python API to return float inf for no expiry\n  This is the closest correct semantic value that can be represented in a\n  python float.\n\nCloses #348\n"
    },
    {
      "commit": "d90c70637fed77c18e62fb12b84613d6ffc865df",
      "tree": "457b52400e1ed1a729ef328a4b0c87ff4bb06095",
      "parents": [
        "e595ce6c3b61b397ab4d48a3c9dfd8daf3c2ffd7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 06 17:10:56 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:40:08 2026 -0400"
      },
      "message": "PROTON-1442: [C++] Interactive transaction tester\n\nYou can interactively declare, commit, abort transactions;\nfetch/send messages;\nlist pending unsettled messages;\nrelease unsettled messages\n\nThis needs to be run against a broker that supports transactions\n\nProbably shouldn\u0027t be in examples as it\u0027s really a tester\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "e595ce6c3b61b397ab4d48a3c9dfd8daf3c2ffd7",
      "tree": "b85f8144698264e72bcb175d4d8744ec25ec9a73",
      "parents": [
        "63559f3c97e3ed42ee82617b6626e9843415d4e7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Feb 17 12:52:43 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:40:08 2026 -0400"
      },
      "message": "PROTON-1442: [Python] Interactive tx recv example\n\nAdded callback to note aborted/failed transaction\n"
    },
    {
      "commit": "63559f3c97e3ed42ee82617b6626e9843415d4e7",
      "tree": "0b88fdbec6be7c464523f428173ddac4e0a8a9a8",
      "parents": [
        "b6673de70e5d0d0d9d09a35c1dbf657f675bafbb"
      ],
      "author": {
        "name": "Rakhi Kumari",
        "email": "rakhi.cs61@gmail.com",
        "time": "Sat Oct 04 01:20:17 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:40:08 2026 -0400"
      },
      "message": "PROTON-1442: [C++] Some examples using transactions\n\nThese examples are also useful for manually testing transactions against\na broker that supports them.\n"
    },
    {
      "commit": "b6673de70e5d0d0d9d09a35c1dbf657f675bafbb",
      "tree": "f292caa2de1e798e15a0340dadb0404641dc44a8",
      "parents": [
        "2ccfe74438ba283428a22a251e80bf25f6060457"
      ],
      "author": {
        "name": "Rakhi Kumari",
        "email": "rakhi.cs61@gmail.com",
        "time": "Sat Oct 04 01:20:17 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:39:58 2026 -0400"
      },
      "message": "PROTON-1442: [C++] Implement local transactions\n\nImplement handling for declaring and discharging transactions on AMQP\nsessions.\n\nAdded new callbacks which allow the application to respond to\ntransaction events: declaring, committing and aborting transactions;\nprovisionally accepting, rejecting \u0026 releasing deliveries in a\ntransaction.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "2ccfe74438ba283428a22a251e80bf25f6060457",
      "tree": "fb0d819b856915dcc65c88449827a5535efdac56",
      "parents": [
        "344e0bd6772fcaca5c3f1b7c2463898ee7de27ea"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 06 17:01:12 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:39:04 2026 -0400"
      },
      "message": "PROTON-1442: [C++] Implement iterator for unsettled transfers\n\nThis returns an iterator for all unsettled transfers on a link.\n\nUsed to access transfers within a transaction or left unsettled after\none has failed.\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "344e0bd6772fcaca5c3f1b7c2463898ee7de27ea",
      "tree": "c795f42a73928112c7ed9ec3983ef1b4d6599aaf",
      "parents": [
        "e654cd91ba96732d47b69be82b228973e9936a9a"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 12 16:54:05 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 13:38:44 2026 -0400"
      },
      "message": "PROTON-1442: [C++ examples] Allow string cli options to contain spaces\n\nThis code was written with the assistance of Cursor.\n"
    },
    {
      "commit": "e654cd91ba96732d47b69be82b228973e9936a9a",
      "tree": "37924596e4730b4619512dca561274bf08ff6c85",
      "parents": [
        "ea0985f643c6019050a40f69753f4cceaeccb9b2"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 12 16:54:05 2026 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 13 03:32:07 2026 -0400"
      },
      "message": "NO-JIRA: Add build as a symlink to .gitignore\n"
    },
    {
      "commit": "ea0985f643c6019050a40f69753f4cceaeccb9b2",
      "tree": "0e4b24e25027e0de85eb085b3f4c54a32e796491",
      "parents": [
        "e5d5c2badb964684bf41ba509a110bf06a24712a"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jan 30 02:15:32 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Feb 10 13:11:12 2026 -0500"
      },
      "message": "PROTON-2812: Implement async name lookup with c-ares\n\n* TODO: Would be useful to implement a specific async name lookup call\n  with a specific proactor event signalling the completed lookup for use\n  in code that just provides us with fds.\n"
    },
    {
      "commit": "e5d5c2badb964684bf41ba509a110bf06a24712a",
      "tree": "4276ea427dbb88cbdc7ca23fec3ee10e41fcbe34",
      "parents": [
        "88888895737b21e48b19cb13d5654c151dd859ba"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Feb 06 16:34:25 2026 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Feb 06 16:43:51 2026 -0500"
      },
      "message": "PROTON-2916: Speed up c++ reconnect test\n\nWe were using bad names to make name lookup fail - these were valid top\nlevel domains and caused the full name lookup timeout for them to fail.\n\nChanging these absent names to use the .invalid domain which is reverved\nfor non existent names makes the test run much faster.\n"
    },
    {
      "commit": "88888895737b21e48b19cb13d5654c151dd859ba",
      "tree": "2ca0b21765703f5a8fb390481c237e2cb1ab3f4b",
      "parents": [
        "2dd96803da21c37ccfd8dca6db3bffabe4d02fbe"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Dec 19 11:03:10 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Dec 19 11:03:10 2025 -0500"
      },
      "message": "NO-JIRA: Git ignore .cache\n"
    },
    {
      "commit": "2dd96803da21c37ccfd8dca6db3bffabe4d02fbe",
      "tree": "a492cc699bffaa69cce6ce66fb7ff15284d165ec",
      "parents": [
        "d7fc8e5d8237f968c2afe846936aa3254d755402"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Dec 19 01:05:44 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Dec 19 01:05:44 2025 -0500"
      },
      "message": "NO-JIRA: More reliably run the tox tests\n"
    },
    {
      "commit": "d7fc8e5d8237f968c2afe846936aa3254d755402",
      "tree": "cc59c79d78b20f4afe43972a1084e412cf8eb872",
      "parents": [
        "746b8b7722e2f7320cbf3089a741b1bc5485e235"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 20:29:37 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:43:04 2025 -0500"
      },
      "message": "PROTON-2890: [Python] Broker example: reorganised disposition handling\n"
    },
    {
      "commit": "746b8b7722e2f7320cbf3089a741b1bc5485e235",
      "tree": "fbd78a253dd65546b4786c04dea9660de5db768e",
      "parents": [
        "040578eb7b5a9711b3de7f96ac78d2d4e8a3567b"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 17 22:53:28 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:43:04 2025 -0500"
      },
      "message": "PROTON-2890: Restructure broker to allow transaction timeout abort\n\nAlso rollback shouldn\u0027t requeue transactionally updated outgoing\nmessages.\n"
    },
    {
      "commit": "040578eb7b5a9711b3de7f96ac78d2d4e8a3567b",
      "tree": "44544c1b23a268e3e0d36ec6b027ec90fa60052e",
      "parents": [
        "32bcfccbd295bf576c8b5e02ed50afb8d6fbb7a1"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 11 23:34:28 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:43:04 2025 -0500"
      },
      "message": "PROTON-2890: [Python] Example broker shouldn\u0027t settle on rollback\n\nRollbacks shouldn\u0027t settle incoming deliveries.\n"
    },
    {
      "commit": "32bcfccbd295bf576c8b5e02ed50afb8d6fbb7a1",
      "tree": "e3c22813279f911316f8cb25c6f815824007559c",
      "parents": [
        "3e8ca41542901987496ce53ad6fb4bd9cc897ab0"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:06:28 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:43:04 2025 -0500"
      },
      "message": "PROTON-2873: [Python] Remove caching for delivery remote disposition\n\nWe can\u0027t cache the remote disposition because it might be updated by the\nremote peer, but we have no way to know it has been changed in the\ndelivery to invalidate the cache entry.\n"
    },
    {
      "commit": "3e8ca41542901987496ce53ad6fb4bd9cc897ab0",
      "tree": "9050a9088f9b52fe3c426f6505f7fde206cdd91b",
      "parents": [
        "6ff983d1c3a67c8ffe3702d1e58d27697b3254a3"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:36:45 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 18 21:43:04 2025 -0500"
      },
      "message": "NO-JIRA: [Python] Don\u0027t return inside a finally block\n\nDetected by Python 3.14\n"
    },
    {
      "commit": "6ff983d1c3a67c8ffe3702d1e58d27697b3254a3",
      "tree": "c059adb2e6e6db7bbe03db06a1976a7aee1c7a24",
      "parents": [
        "67b5455445de6c97fb656f83b2af3331a9d899ab"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 10 19:16:38 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 10 20:01:46 2025 -0500"
      },
      "message": "NO-JIRA: Update github actions build to use latest MacOSX image\n\n- Also stop Azure dev MacOS build using wrong version of OpenSSL\n- Remove deprecated MacOSX linker flag\n"
    },
    {
      "commit": "67b5455445de6c97fb656f83b2af3331a9d899ab",
      "tree": "4872dd89110e8792fcafa88f0e668d31dbad26f1",
      "parents": [
        "b053795579f4269fdbd956efe5e06a2a3445e671"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 10 19:00:48 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 10 19:00:48 2025 -0500"
      },
      "message": "PROTON-2913: pn_message_encode could generate an illegal message\n\nIf given a message with no message body, pn_message_encode would\ngenerate a message with no body which is illegal in AMQP.\n\nWould have preferred to generate an error in this case, but this would\nbe a change to a very long standing behaviour.\n"
    },
    {
      "commit": "b053795579f4269fdbd956efe5e06a2a3445e671",
      "tree": "30407e24c0cf37a9a9900d6858ca4c68d1a0875f",
      "parents": [
        "912158e646b562ccacd815e38348c5361ac881c6"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 16:15:03 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 16:15:03 2025 -0500"
      },
      "message": "PROTON-2890: Elaborate python transaction send example...\n\n... to more correctly handle transactioned disposition updates to the\nmessages it sends. Including handling erroneous disposition updates from\nbuggy brokers.\n"
    },
    {
      "commit": "912158e646b562ccacd815e38348c5361ac881c6",
      "tree": "409f49469b91c4081ac5a55cd97c0c3546f0128d",
      "parents": [
        "478d99301d8c44ab7372400ee71faf21b10c14b7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 11:12:15 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 16:10:08 2025 -0500"
      },
      "message": "PROTON-2890: [Python] Broker should send transactioned updates\n\nFor a messages sent in a transaction any accept/reject etc. disposition\nupdates must be sent in a transactional state disposition update.\nSection 4.4.1 of the AMQP spec.\n"
    },
    {
      "commit": "478d99301d8c44ab7372400ee71faf21b10c14b7",
      "tree": "466938728f9da99d549f8c75d5723ef3c4da9d39",
      "parents": [
        "35536253534af8984d74cbc52ca07827788832f9"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 15:38:21 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 09 16:06:51 2025 -0500"
      },
      "message": "PROTON-2873: [Python] Allow Delivery.update to take Disposition\n\nTo allow more convenient local delivery disposition updates allow update\nto take a LocalDisposition object and use that for the update as well as\na disposition type.\n\nAlso allow TransactionalDisposition to take a Disposition outcome as\nwell as a disposisiton type for convenience of creating a more complex\ntransactional disposition update. At this point the underlying C API\nonly allows the outcome type to be recorded though.\n"
    },
    {
      "commit": "35536253534af8984d74cbc52ca07827788832f9",
      "tree": "20dc592f6358e781c1cd4b379f351005104e94c0",
      "parents": [
        "b1b9b07a2552c69ad6512d5e272534d26538f692"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Nov 24 22:06:23 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 04 21:47:48 2025 -0500"
      },
      "message": "PROTON-2911: [C++] Correctly handle terminus capabilities\n\nTerminus capabilities can be a single AMQP symbol as well as an AMQP array of\nsymbols.\n"
    },
    {
      "commit": "b1b9b07a2552c69ad6512d5e272534d26538f692",
      "tree": "587f7de7afefc1a3211cc5db8fa244f4446d0884",
      "parents": [
        "5aa83a6d162fc4bf405149756b9f67dcfc43d0cc"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 22:53:02 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 04 18:43:33 2025 -0500"
      },
      "message": "PROTON-2910: [core] Changed generated code to use better names\n\nThe generated code now uses the specs to generate the frame\nencode/decode functions, but allows you to specify their names. This\nallows the actual code to read a whole lot better.\n\nAlso now documented the spec codes at the top of the generate.py code.\nI think this doc can still be improved.\n\n(Also removed some holdovers from the initial PROTON-2451 work)\n"
    },
    {
      "commit": "5aa83a6d162fc4bf405149756b9f67dcfc43d0cc",
      "tree": "d45b1713a74299706091ff8ebde26f7d63d83733",
      "parents": [
        "606e839c0cf63ea187123326b74773e21e68f121"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 19:37:13 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Dec 04 18:17:05 2025 -0500"
      },
      "message": "PROTON-1779: Omit empty HEADERS and PROPERTIES message sections\n"
    },
    {
      "commit": "606e839c0cf63ea187123326b74773e21e68f121",
      "tree": "d264fd0395c6110bedde9ccd4df97d30c05a3992",
      "parents": [
        "debbe8219c625d04d6760cff8f360b8133f72777"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 01:39:48 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 03:23:01 2025 -0500"
      },
      "message": "PROTON-2908/PROTON-2909: Remove unused (and expired) test ssl certs\n"
    },
    {
      "commit": "debbe8219c625d04d6760cff8f360b8133f72777",
      "tree": "56e07ea5ff1059918ec78128fc248f4d5a4727fc",
      "parents": [
        "60d7677fd47df911a17553efaac24a79eb815ff1"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 01:21:59 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 03:22:34 2025 -0500"
      },
      "message": "PROTON-2909: Modify tests to use the same ssl certificates\n\nWith a CMake parameter allowing the location to be selected\n"
    },
    {
      "commit": "60d7677fd47df911a17553efaac24a79eb815ff1",
      "tree": "ad909f1abeda3ddf08867865322d4e67de33efd1",
      "parents": [
        "34035ca47813fa0d9a6d472326300794fbbf8a39"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 01:26:50 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 03:21:17 2025 -0500"
      },
      "message": "PROTON-2908: Add new unexpired ssl certs using new scripting\n\nThese new certs won\u0027t expire until the year 3000, so this problem should\nbe gone! However the tooling to generate them is now in the tree so we\ncould create them for every test run if we wanted.\n"
    },
    {
      "commit": "34035ca47813fa0d9a6d472326300794fbbf8a39",
      "tree": "4ae4ccdb6b59a2ac15c5f4bd2f2c0cc26f458e3c",
      "parents": [
        "b19fbee7fc03d8e14791382416105fd4aed7ddb7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Dec 02 17:43:28 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Dec 03 03:18:59 2025 -0500"
      },
      "message": "PROTON-2909: Add python scripting to make test certs\n\nThis code was written with the assistance of Cursor running the Claude\n4.5 opus high model.\n"
    },
    {
      "commit": "b19fbee7fc03d8e14791382416105fd4aed7ddb7",
      "tree": "c83e539c7f17d1111bb5176d2dc0dd3d54c59233",
      "parents": [
        "f3de4e59bd40a1e1db351b2bf73aa5cf9da45118"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Jun 12 18:54:41 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Jun 17 18:36:59 2025 -0400"
      },
      "message": "PROTON-2898: [C} Some examples using pn_proactor_import_socket\n\nThere is an example for both client and server ends.\n"
    },
    {
      "commit": "f3de4e59bd40a1e1db351b2bf73aa5cf9da45118",
      "tree": "e80dc71f10af49ae08695cae392da0fbe9fe2635",
      "parents": [
        "83a0b5e50ea15ffa0026d5c8af786d8b8604d080"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Jun 12 18:42:40 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Jun 17 18:36:59 2025 -0400"
      },
      "message": "PROTON-2898: [C] Introduce pn_proactor_import_socket API\n\nImplement functionality to import a socket that is already connected to\nthe proactor.\n\nThis can be for either the server or client end of the\nconnection. So it can be used for both socket activation at the server\nend and protocols running on the connection prior to AMQP at the\nclient end.\n\nThe new pn_proactor_import_socket API is defined in a new header\nproactor_ext.h which will contain any other similarly OS dependent\nproactor APIs.\n"
    },
    {
      "commit": "83a0b5e50ea15ffa0026d5c8af786d8b8604d080",
      "tree": "ff8e1fb3ebd41ca159c1ef93228b7be38fae8733",
      "parents": [
        "81417af373b395a961a47ff226669d29f87f0622"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 11 10:27:16 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Jun 11 10:36:22 2025 -0400"
      },
      "message": "PROTON-2873: Correctly finalize declared disposition\n\nLeak found by oss fuzz in the previous commit.\n"
    },
    {
      "commit": "81417af373b395a961a47ff226669d29f87f0622",
      "tree": "5b0fa87ed0bf160882fcf3e64e190be29113f70e",
      "parents": [
        "36b6ec5c84b18b564ce12fafb0c85489b539b29e"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Jun 09 18:05:47 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Jun 09 18:15:28 2025 -0400"
      },
      "message": "PROTON-2873: Add a disposition for transaction declaration\n\nThe original work adding in the transactional state disposition did not\ninclude the declared disposition used by the transaction coordinator to\nallocate a transaction id to a new transaction.\n\nSubsequent code used the tranasaction state disposition instead of the\ndeclared disposition which is incorrect.\n"
    },
    {
      "commit": "36b6ec5c84b18b564ce12fafb0c85489b539b29e",
      "tree": "62b690f6e25a90e4338e87dd3baa00933064f728",
      "parents": [
        "dd1689a03b490eba5788c5b5d3bebb0924985373"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 06 18:57:48 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 06 18:57:48 2025 -0400"
      },
      "message": "PROTON-2890: [Python examples] Revert changes to example output\n\nThey were causing the example test runner to fail.\n"
    },
    {
      "commit": "dd1689a03b490eba5788c5b5d3bebb0924985373",
      "tree": "fab3e3dc06c26331c6f6f2d872bba4ed688e1f94",
      "parents": [
        "85b82208ac69385b01d3bde5fcbf47f19adf6877"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 06 10:48:24 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Jun 06 10:48:24 2025 -0400"
      },
      "message": "NO-JIRA: Change Python license specifier\n\nThe old way is now  deprecated.\n"
    },
    {
      "commit": "85b82208ac69385b01d3bde5fcbf47f19adf6877",
      "tree": "e5b2015eab2a67fe2cf025aa511988fcfd3eb0c3",
      "parents": [
        "8d2f8255f15a39f0e47f36a0c6c29b5f3c36457c"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 22 11:57:27 2025 +0100"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 22 12:33:43 2025 +0100"
      },
      "message": "NO-JIRA: Trivial changes for pedantic C++17 compliance\n"
    },
    {
      "commit": "8d2f8255f15a39f0e47f36a0c6c29b5f3c36457c",
      "tree": "1636f27209142a30d50f7f0fe407ca2323505c50",
      "parents": [
        "e6d9ceb329629334e90298e00ef1195c8b432a26"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 14 14:28:11 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 14 14:29:00 2025 -0400"
      },
      "message": "NO-JIRA: Some tiny lint fixes found by clang-tidy\n"
    },
    {
      "commit": "e6d9ceb329629334e90298e00ef1195c8b432a26",
      "tree": "bd6adff02af9e58f19356c1054794891418ca5c5",
      "parents": [
        "814bfed3e24cd217330c03cf67fc18c54a0a5249"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 08 17:15:32 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 08 17:25:16 2025 -0400"
      },
      "message": "PROTON-2896: [C++] Give the -cpp dynamic library $ORIGIN as its RPATH\n\nThis allows any executables using it to find the -core and -proactor\nshared libraries installed in the same directory where it itself is\ninstalled.\n"
    },
    {
      "commit": "814bfed3e24cd217330c03cf67fc18c54a0a5249",
      "tree": "7d89de435ae0444bfc598b1671257e64bd4ed760",
      "parents": [
        "a17f7d556fb2f71bb14037d126ba77260c7d5873"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 29 13:05:08 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 08 10:42:16 2025 -0400"
      },
      "message": "NO-JIRA: Stop spewing errors when cmake fails to find opentelemetry\n"
    },
    {
      "commit": "a17f7d556fb2f71bb14037d126ba77260c7d5873",
      "tree": "bbd2c2c8df219bba56146a670371237be4fcd1d3",
      "parents": [
        "3f423fa90aa73771387ebd203bd5d38a5811a0d8"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 02 15:37:27 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 05 14:21:17 2025 -0400"
      },
      "message": "PROTON-2895: [Python] Use __new__ when subclassing immutable types\n"
    },
    {
      "commit": "3f423fa90aa73771387ebd203bd5d38a5811a0d8",
      "tree": "db1091429b37ab001c691fb1cc1357d3fca54bd0",
      "parents": [
        "5193b337468228f579a35191b9e55e7c4f0146fb"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 02 15:29:17 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 05 14:21:17 2025 -0400"
      },
      "message": "PROTON-2891: [Python] More type annotation improvements\n"
    },
    {
      "commit": "5193b337468228f579a35191b9e55e7c4f0146fb",
      "tree": "c76afef97b49bddd99452210ba5a096c694b79c8",
      "parents": [
        "d1ce340cb257354a716472a95d173a0cb182f149"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 02 15:20:06 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon May 05 14:19:54 2025 -0400"
      },
      "message": "PROTON-2881: [Python] More idiomatic python 3 code.\n\n* Don\u0027t need to explicitly inherit from object\n* Can use just super()\n"
    },
    {
      "commit": "d1ce340cb257354a716472a95d173a0cb182f149",
      "tree": "dcefd34d8220f8d39238b2c96352419c5891c8ae",
      "parents": [
        "53cc3940c547ff8224c81cdbf9f1035258100ff5"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 01 21:02:54 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri May 02 02:21:36 2025 -0400"
      },
      "message": "PROTON-2890: [Python examples] Broker: Improve transactional link handling\n\n* Use new link iterator API\n* Abort any active transactions when coordinator link closed\n"
    },
    {
      "commit": "53cc3940c547ff8224c81cdbf9f1035258100ff5",
      "tree": "c3235551daad12251ea134f9d1a3b5bd929c2bb8",
      "parents": [
        "96e5b8d039a000dcc460a296c2e8892a0d8b91b3"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Apr 30 22:16:17 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu May 01 20:35:59 2025 -0400"
      },
      "message": "PROTON-2879: [Python] Convenience iterators for sessions and links\n"
    },
    {
      "commit": "96e5b8d039a000dcc460a296c2e8892a0d8b91b3",
      "tree": "21eaf6e525088b273289904625a10098edc9da7a",
      "parents": [
        "3191f95d88b3dbf78ac46474b4ce89d7627fce32"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 22 18:02:36 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Apr 30 14:19:25 2025 -0400"
      },
      "message": "PROTON-2890: [Python examples] Broker work for simple transaction support\n\n* Modified the Python example broker so that it understands transaction\n  requests.\n\n  Implemented a simple minded transaction implementation that delays\n  queueing transactioned messages until commit, and delays processing\n  transactioned delivery updates also until commit.\n\n  In the case of abort queued messages are simply released and settled,\n  and delivery updates turn to release which requeues the messages at\n  the back of the queue (this is perhaps not a very good real world\n  plan!)\n\n* Made delayed acknowledgement etc. work by implemented handling for\n  message release and modification. There is now a configurable\n  redelivery limit that can be set on the broker command line.\n\n* There is extensive optional output about the operations of the broker\n  turned on by a command line option.\n"
    },
    {
      "commit": "3191f95d88b3dbf78ac46474b4ce89d7627fce32",
      "tree": "e1fcac27db92caef7175be7dca46ea98640024cd",
      "parents": [
        "d8ff8f7314f4a046c4033886b92edfc20cd09e72"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed May 22 18:02:36 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Apr 28 15:40:21 2025 -0400"
      },
      "message": "PROTON-2893: [Python] Add callback for all delivery updates\n\nThis is useful for responding to delivery updates besides the common\nAMQP updates. Specifically for better transaction support.\n"
    },
    {
      "commit": "d8ff8f7314f4a046c4033886b92edfc20cd09e72",
      "tree": "85d27e487f0ecd680d091ffbc6bf24657caab9e3",
      "parents": [
        "1fafacd74a7e0df37c86d65316b09d2a038580eb"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 22 12:11:21 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Apr 28 15:40:21 2025 -0400"
      },
      "message": "PROTON-2892: [Python] Use python library IntFlag for Endpoint state\n"
    },
    {
      "commit": "1fafacd74a7e0df37c86d65316b09d2a038580eb",
      "tree": "43056b6605f9551faf83be65d7229c387af58479",
      "parents": [
        "5de2b8e93300b366c1952d942897d1aa92206acb"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 18 18:25:13 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Apr 28 15:40:21 2025 -0400"
      },
      "message": "PROTON-2868: [Python] More work simplifying wrapped classes\n"
    },
    {
      "commit": "5de2b8e93300b366c1952d942897d1aa92206acb",
      "tree": "d135b9c207a1b511194301168116410e858bc589",
      "parents": [
        "e1d147e221d8192a9c3aacadeeda74105de5ba7b"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 18 18:37:57 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Apr 28 15:34:28 2025 -0400"
      },
      "message": "PROTON-2891: [Python] Improve typing annotations especially for Events\n"
    },
    {
      "commit": "e1d147e221d8192a9c3aacadeeda74105de5ba7b",
      "tree": "15c26b7409f07aa024589e6f3840351698db1e9f",
      "parents": [
        "e4739200e1117b0bcf1440830dd22286b91745f1"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 18 17:22:05 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 25 18:35:18 2025 -0400"
      },
      "message": "PROTON-2890: [Python examples] Simple recv now deduplicates more accurately\n\nThis does use an ever expanding set, so this is not suitable for\nproduction use! For production use maybe the ids in the deduplication\ncache could be removed after a certain number of new messages have been\nreceived.\n"
    },
    {
      "commit": "e4739200e1117b0bcf1440830dd22286b91745f1",
      "tree": "57ce06a8e4793577860a9aa2ff9ae6c03f0d6bd4",
      "parents": [
        "1f3c73eb4c59718e27391c8a92d7cf6863d916b0"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 08 22:02:38 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 25 18:26:19 2025 -0400"
      },
      "message": "PROTON-2890: [Python] Make client example more robust\n\nMake the client robust against incoming replies with unknown correlation\nids. Which would propably correspond to resent server replies.\n"
    },
    {
      "commit": "1f3c73eb4c59718e27391c8a92d7cf6863d916b0",
      "tree": "b32a44f29b20193a8c4a72f174af8f976a9aeff6",
      "parents": [
        "86281a4a7c91bccde616e0d3524194f79a509a56"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 08 21:58:37 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 25 17:53:51 2025 -0400"
      },
      "message": "PROTON-2889: [C++ examples] Broker improvements\n\nDeal with released messages - requeue up until a limit\nMore use of C++17 features\n"
    },
    {
      "commit": "86281a4a7c91bccde616e0d3524194f79a509a56",
      "tree": "f101a9a90d4b1b31bdc2784e154be2fe541bb788",
      "parents": [
        "581a433fe3edffef0a724cec424bdffbf7072738"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 08 21:43:16 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 25 17:24:23 2025 -0400"
      },
      "message": "PROTON-2888: [C++] Added std:hash specializations\n\nThis allows proton::uuid, proton::binary and proton::message_id to be\nused as keys in unordered std datastructures.\n\nNow we can use proton::binary as the key for std::unordered_map etc.\n"
    },
    {
      "commit": "581a433fe3edffef0a724cec424bdffbf7072738",
      "tree": "36f8b1e8d9afa6a7983cd9e090b00b86b9910021",
      "parents": [
        "d3230829115e34d3aeb43049f6c75c8176da6f78"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 08 22:06:04 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Apr 23 16:33:21 2025 -0400"
      },
      "message": "PROTON-2883/PROTON-2884: Modified dispositions should default to failed \u003d true\n"
    },
    {
      "commit": "d3230829115e34d3aeb43049f6c75c8176da6f78",
      "tree": "5913d79b37a6e027c387dbc1ac17cea17f8bbad3",
      "parents": [
        "0464a4ffaead169de464263e25907b0f09eb9a13"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 04 18:46:43 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Apr 04 18:48:45 2025 -0400"
      },
      "message": "PROTON-2873: [Python] Fix transaction code for new disposition API\n"
    },
    {
      "commit": "0464a4ffaead169de464263e25907b0f09eb9a13",
      "tree": "feefc4773a9c2313514bae688e1c13436ecd5d3a",
      "parents": [
        "0eb628bfb905b95c0008c578aeca07c1c4eaac6d"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 22:18:56 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 22:18:56 2025 -0400"
      },
      "message": "NO-JIRA: Update the version of opentelemetry used in the build github action\n"
    },
    {
      "commit": "0eb628bfb905b95c0008c578aeca07c1c4eaac6d",
      "tree": "20a232099b99aafc636bc283a2c13144eb16fcc9",
      "parents": [
        "2be26ea75eb197c74851a70acf364518526afee7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 15:55:43 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 15:55:43 2025 -0400"
      },
      "message": "NO_JIRA: Remove unneeded python \u0027global\u0027 tripping up flake8 linter\n"
    },
    {
      "commit": "2be26ea75eb197c74851a70acf364518526afee7",
      "tree": "1165a9b50b0ce34b2783db813b95a68876c0d9f5",
      "parents": [
        "4aa2381749a52b761fc984a0f21eeb41074cec9b"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 13:08:20 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Apr 01 13:16:38 2025 -0400"
      },
      "message": "PROTON-2882: Improve the coverage report\n\nMake the fuzz testers use files from the source tree not the build tree.\nInclude the python coverage into the report.\nMove the ruby coverage results into the coverage_reports directory.\nRestructure the build so that profiling with other compilers (than gcc)\nwith different flags is possible.\n"
    },
    {
      "commit": "4aa2381749a52b761fc984a0f21eeb41074cec9b",
      "tree": "12374a35ab98c2f5e37f41e1801ef66fadae95ad",
      "parents": [
        "34bfd691f4c535f046adf71c9b9aa60d5b83e0aa"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 28 17:38:06 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 28 17:38:06 2025 -0400"
      },
      "message": "PROTON-2882: Fix the Coverage build to work with the current tree/tools\n"
    },
    {
      "commit": "34bfd691f4c535f046adf71c9b9aa60d5b83e0aa",
      "tree": "ff3d5cc98513cc436d625da68d425414fe67791d",
      "parents": [
        "ae53170af7183dfa3e9e057508ba8af4f10ed0fe"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 27 21:23:11 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 27 21:23:11 2025 -0400"
      },
      "message": "PROTON-2881: [Python] More idiomatic use of post 3.9 typing\n"
    },
    {
      "commit": "ae53170af7183dfa3e9e057508ba8af4f10ed0fe",
      "tree": "e4da8f1550fc48d5f46c9df9145a0940a0cc94fa",
      "parents": [
        "a72bb9af04de85babf7d52b7f92feec9fd8378b4"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 27 15:12:42 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 27 15:12:42 2025 -0400"
      },
      "message": "PROTON-2879: Use correct type annotation for unsettled_deliveries\n"
    },
    {
      "commit": "a72bb9af04de85babf7d52b7f92feec9fd8378b4",
      "tree": "69bab724cc25474f8c22707eedbfc106bad07ba2",
      "parents": [
        "ff330a695a9681e466965456ed34b9b97962aa2b"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 21 18:03:00 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Fri Mar 21 18:03:00 2025 -0400"
      },
      "message": "PROTON-2879: [Python] Added accessors to unsettled deliveries\n\nAdded unsettled delivery accessors to high level python binding.\nIncluding a generator which should make iterating over all unsettled\ndeliveries of a link straightforward.\n"
    },
    {
      "commit": "ff330a695a9681e466965456ed34b9b97962aa2b",
      "tree": "61d78849fbdc1068f3a367c62556a47f9b921c1c",
      "parents": [
        "c80482bf61bbddabe4064a70c67a691e34179237"
      ],
      "author": {
        "name": "Pete Fawcett",
        "email": "pete@fawcett.co.uk",
        "time": "Tue Mar 18 16:36:11 2025 +0000"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 20 17:06:15 2025 -0400"
      },
      "message": "Make pn_unsettled_head/_next available in Python binding\n"
    },
    {
      "commit": "c80482bf61bbddabe4064a70c67a691e34179237",
      "tree": "d795699b56d00a1e7da59572ce14ee51382a847d",
      "parents": [
        "cfa3fb5c9daa8a652e71b14a8ed71e31eaa9d645"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 18 17:18:56 2025 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 18 17:18:56 2025 -0400"
      },
      "message": "PROTON-2873: Fix decoding of dispositions in transfer frames\n\nThere was a bug that decoded dispositions in transfer frames and\ndisposition frames differently.\n"
    },
    {
      "commit": "cfa3fb5c9daa8a652e71b14a8ed71e31eaa9d645",
      "tree": "36d8464bf46e1c0a8979ac41f645b6cb2513e52f",
      "parents": [
        "286ce3c005bcdd0dd33de177497099783ce2a9f7"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 06 17:29:11 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Mar 06 17:34:26 2025 -0500"
      },
      "message": "PROTON-2873: Correctly switch disposition type for existing deliveries\n\nThis bug was found by the OSS Fuzz project.\n"
    },
    {
      "commit": "286ce3c005bcdd0dd33de177497099783ce2a9f7",
      "tree": "a8ee600e4d2a5aad40e5d21e65b3e1c160ea256e",
      "parents": [
        "3d4a8c00fc9482ea3188194ec8c2b1cf50d5ce5c"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Mar 05 18:16:24 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Mar 05 20:38:24 2025 -0500"
      },
      "message": "PROTON-2875: C++ code can now compile with GCC 15\n\nThis is a little bit of a hack in that it will use the C++20 header\n\u003cversion\u003e if it is available even compiling in C++17 mode. But testing\nwith a bunch of different C++17 compilers shows that this approach\nworks.\n"
    },
    {
      "commit": "3d4a8c00fc9482ea3188194ec8c2b1cf50d5ce5c",
      "tree": "180da714f32bb8479fa735e5c56beae4b1d0abea",
      "parents": [
        "547588739d8b81f8bd7bf76cdfa425254b1a7ffd"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Feb 20 17:19:39 2025 -0500"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:48:56 2025 -0500"
      },
      "message": "PROTON-2873: Used transaction disposition in python\n"
    },
    {
      "commit": "547588739d8b81f8bd7bf76cdfa425254b1a7ffd",
      "tree": "27b78cf4ef0e1edab9fdf0c208ca33ac9fbea08a",
      "parents": [
        "3670d8eba63123c7dfa9e942312e19094f746a88"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Oct 29 16:44:18 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:45:39 2025 -0500"
      },
      "message": "PROTON-2873: Add transaction disposition\n\nTo support work on transaction support add a specific transactional\ndisposition type. So that you can avoid making custom dispositions\nin this case.\n"
    },
    {
      "commit": "3670d8eba63123c7dfa9e942312e19094f746a88",
      "tree": "3d64458babc41e3b90b3c62af686fd36fdf8ce43",
      "parents": [
        "2f6350993289699b86f31316b344eb84959fd736"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Mon Aug 19 14:40:15 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:45:39 2025 -0500"
      },
      "message": "PROTON-2873: Use the new disposition API in python\n\nThis is a substantial change to the Python disposition API:\n\n* Split functionality into local and remote disposition as each\n  have different purposes and access to attributes.\n\n* Allow assigning remote dispositions to local delivery\n\n* Add python tests\n"
    },
    {
      "commit": "2f6350993289699b86f31316b344eb84959fd736",
      "tree": "3b26128355eb0bc7176ff9e26a6bd7faf7a4faef",
      "parents": [
        "99923055e8cd991b74a58b35c195e11a5051497a"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Aug 13 14:05:03 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:45:39 2025 -0500"
      },
      "message": "PROTON-2873: Add new C APIs for different disposition types\n\nChange the disposition representation to be a union and add APIs to\naccess the various disposition types and their properties.\n"
    },
    {
      "commit": "99923055e8cd991b74a58b35c195e11a5051497a",
      "tree": "ca7a191858b908b30a841944d89a29f1e8b7811b",
      "parents": [
        "a2b6070f71aec21e3be491d058aa507d62f2a37a"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Wed Aug 07 11:27:52 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:45:39 2025 -0500"
      },
      "message": "PROTON-2873: Reorganize dispositions representation\n\nThe natural representation for dispositions is a union because different\ntypes of disposition can only have quite different pieces of data.\n"
    },
    {
      "commit": "a2b6070f71aec21e3be491d058aa507d62f2a37a",
      "tree": "10f3827ea38e616c9aeac3969e18a1869e4f89ac",
      "parents": [
        "c56cb25b00554829f2229838b431d0eed496e8d8"
      ],
      "author": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Thu Sep 12 11:05:06 2024 -0400"
      },
      "committer": {
        "name": "Andrew Stitcher",
        "email": "astitcher@apache.org",
        "time": "Tue Mar 04 15:45:36 2025 -0500"
      },
      "message": "PROTON-2873: Reorganize python disposition tests\n\nNeed to reorganise the disposition tests in preparation for the new\ndisposition APIs as there will no longer be every property for every\ndifferent disposition type; only the properties that actually exist for\na specific disposition type will be available for that type.\n"
    }
  ],
  "next": "c56cb25b00554829f2229838b431d0eed496e8d8"
}
