)]}'
{
  "log": [
    {
      "commit": "1ceb1537a49d516cf6cef9a79bea6926002082f8",
      "tree": "3987965f18245e8aa61de295479b6f2b9427d04a",
      "parents": [
        "6710ff3b6ff48cd32ba454338193503ea62d71f9"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 22 14:15:20 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 22 17:15:20 2026 -0400"
      },
      "message": "Build multi-platform Docker images (amd64 + arm64) (#149)\n\n* Build multi-platform Docker images (amd64 + arm64)\n\nThe docker buildx build command had no --platform flag, so images were\nbuilt only for the host architecture. This caused examples to fail on\namd64 when the published image was arm64-only.\n\n- Add --platform linux/amd64,linux/arm64 to buildx commands in tox.ini\n- Add QEMU and Buildx setup steps to CI workflow\n- Simplify tox docker-push to push directly to Dockerhub\n- Update RELEASE.md to use tox -e docker-push\n-  Bump numpy version for 3.14 to avoid building numpy within amd64 container."
    },
    {
      "commit": "6710ff3b6ff48cd32ba454338193503ea62d71f9",
      "tree": "67d8b7e377c9b84e136d776233fc0a3fc2d3e2fa",
      "parents": [
        "27c9b08be77b12c2716b3dfd154f2054d5a7aa2d",
        "44db331a99036ab31560857f62b81619cd530e45"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Tue Apr 14 19:01:14 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 19:01:14 2026 +0300"
      },
      "message": "Merge pull request #148 from apache/dependabot/uv/pytest-9.0.3\n\nBump pytest from 9.0.2 to 9.0.3"
    },
    {
      "commit": "44db331a99036ab31560857f62b81619cd530e45",
      "tree": "67d8b7e377c9b84e136d776233fc0a3fc2d3e2fa",
      "parents": [
        "27c9b08be77b12c2716b3dfd154f2054d5a7aa2d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Apr 14 02:37:53 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 02:37:53 2026 +0000"
      },
      "message": "Bump pytest from 9.0.2 to 9.0.3\n\nBumps [pytest](https://github.com/pytest-dev/pytest) from 9.0.2 to 9.0.3.\n- [Release notes](https://github.com/pytest-dev/pytest/releases)\n- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)\n- [Commits](https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3)\n\n---\nupdated-dependencies:\n- dependency-name: pytest\n  dependency-version: 9.0.3\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "27c9b08be77b12c2716b3dfd154f2054d5a7aa2d",
      "tree": "0b9e31dc182cab218af28fb8a7c3aeb3e4542ffc",
      "parents": [
        "dfae00d0a8de530b340a2c0343da8b21defa9070"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 31 23:47:32 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 23:47:32 2026 -0700"
      },
      "message": "Bump pygments from 2.19.2 to 2.20.0 (#144)\n\nBumps [pygments](https://github.com/pygments/pygments) from 2.19.2 to 2.20.0.\n- [Release notes](https://github.com/pygments/pygments/releases)\n- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)\n- [Commits](https://github.com/pygments/pygments/compare/2.19.2...2.20.0)\n\n---\nupdated-dependencies:\n- dependency-name: pygments\n  dependency-version: 2.20.0\n  dependency-type: indirect\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": "dfae00d0a8de530b340a2c0343da8b21defa9070",
      "tree": "f7d95ed97e65bcc1a2096769f8527acd404d0be0",
      "parents": [
        "8a99d7507176d2418729115caba2bac3fbc15384"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 31 23:46:51 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 23:46:51 2026 -0700"
      },
      "message": "Bump requests from 2.32.5 to 2.33.0 (#142)\n\nBumps [requests](https://github.com/psf/requests) from 2.32.5 to 2.33.0.\n- [Release notes](https://github.com/psf/requests/releases)\n- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)\n- [Commits](https://github.com/psf/requests/compare/v2.32.5...v2.33.0)\n\n---\nupdated-dependencies:\n- dependency-name: requests\n  dependency-version: 2.33.0\n  dependency-type: direct:production\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": "8a99d7507176d2418729115caba2bac3fbc15384",
      "tree": "77066b1ed9395db46a43afc1cefe2bdec3b9b1b9",
      "parents": [
        "3ed9c32bda5651d561fe5d230a3625fad9c359e6"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 31 23:08:33 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 23:08:33 2026 -0700"
      },
      "message": "Bump pyasn1 from 0.6.2 to 0.6.3 (#140)\n\nBumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.6.2 to 0.6.3.\n- [Release notes](https://github.com/pyasn1/pyasn1/releases)\n- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)\n- [Commits](https://github.com/pyasn1/pyasn1/compare/v0.6.2...v0.6.3)\n\n---\nupdated-dependencies:\n- dependency-name: pyasn1\n  dependency-version: 0.6.3\n  dependency-type: indirect\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": "3ed9c32bda5651d561fe5d230a3625fad9c359e6",
      "tree": "c55b134bad92e8877cf2da0d4d480507a9e6492e",
      "parents": [
        "c90837bfcf7da75c42a2c213974a9259f52c0cb9"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 31 22:18:36 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 22:18:36 2026 -0700"
      },
      "message": "Bump protobuf from 6.33.0 to 6.33.5 (#133)\n\nBumps [protobuf](https://github.com/protocolbuffers/protobuf) from 6.33.0 to 6.33.5.\n- [Release notes](https://github.com/protocolbuffers/protobuf/releases)\n- [Commits](https://github.com/protocolbuffers/protobuf/commits)\n\n---\nupdated-dependencies:\n- dependency-name: protobuf\n  dependency-version: 6.33.5\n  dependency-type: indirect\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": "c90837bfcf7da75c42a2c213974a9259f52c0cb9",
      "tree": "6ccb8e021d71e1285f75f6fa3c46871669a25124",
      "parents": [
        "d11bdeaadcff7618f8547a9742005542535ebb88"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Mar 31 21:52:27 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 21:52:27 2026 -0700"
      },
      "message": "INFRA-27784 Update setup-up version in CI (#147)\n\n* INFRA-27784 Update setup-up version in CI\n\n* Fixup postgres tests"
    },
    {
      "commit": "d11bdeaadcff7618f8547a9742005542535ebb88",
      "tree": "ee6c1fe47004d00293b5a6a0127bfd8f9bcb07c2",
      "parents": [
        "34ad6b033c2d0a39b4a0af5d55819f6dca4a8b76",
        "54317df20d11f9e861b5dbc86f2effb056a19bed"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Mar 29 23:31:46 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 29 23:31:46 2026 +0300"
      },
      "message": "Merge pull request #138 from apache/fix-config-file\n\nFix --config-file parser broken by configargparse 1.7.3"
    },
    {
      "commit": "34ad6b033c2d0a39b4a0af5d55819f6dca4a8b76",
      "tree": "d7a244af60a15cb559363dfbcfbbb41bb60bc384",
      "parents": [
        "394e23553a44da7b5f29c114fc5d99a34f33ff54",
        "0dd231545aaec7f89dd6a3302513318d012ebb2c"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Thu Mar 12 20:26:53 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 12 20:26:53 2026 +0200"
      },
      "message": "Merge pull request #139 from apache/next-version-0.8.0\n\nSet release version to 0.8.0"
    },
    {
      "commit": "0dd231545aaec7f89dd6a3302513318d012ebb2c",
      "tree": "d7a244af60a15cb559363dfbcfbbb41bb60bc384",
      "parents": [
        "394e23553a44da7b5f29c114fc5d99a34f33ff54"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Mar 11 00:38:00 2026 -0700"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Mar 11 00:38:00 2026 -0700"
      },
      "message": "Set release version to 0.8.0\n\nAs discussed on the mailing list, we want the next version to\nbe 0.8.0 instead of 1.0.0.\n"
    },
    {
      "commit": "54317df20d11f9e861b5dbc86f2effb056a19bed",
      "tree": "3f31f4a78392f8a034afa8ccc501a7ced481ab9c",
      "parents": [
        "394e23553a44da7b5f29c114fc5d99a34f33ff54"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Tue Mar 10 20:09:36 2026 -0700"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Mar 11 00:34:40 2026 -0700"
      },
      "message": "Fix --config-file parser broken by configargparse 1.7.3\n\nconfigargparse 1.7.3 changed how env var args are inserted into the arg\nlist, causing `OTAVA_CONFIG` env var expansion to land after the\nsubcommand positional arg. The subparser then rejects `--config-file`\nas unrecognized.\n\nThe fix is to add `--config-file` to the parent subparser.\n"
    },
    {
      "commit": "394e23553a44da7b5f29c114fc5d99a34f33ff54",
      "tree": "76ce76f8bc5d8d371fe69563a0fb2577c439e6f2",
      "parents": [
        "59e7f9bebc8186912e7429be162a812e742b7773"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 10 19:14:36 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 19:14:36 2026 -0700"
      },
      "message": "Bump urllib3 from 2.5.0 to 2.6.3 (#135)\n\nBumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.3.\n- [Release notes](https://github.com/urllib3/urllib3/releases)\n- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)\n- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.3)\n\n---\nupdated-dependencies:\n- dependency-name: urllib3\n  dependency-version: 2.6.3\n  dependency-type: indirect\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": "59e7f9bebc8186912e7429be162a812e742b7773",
      "tree": "0111bfd4159fe3eded313d46b6d64364a699fccf",
      "parents": [
        "35eab767a3c7e1849a8b9582171c17e9e02fb1ad"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 10 19:13:05 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 19:13:05 2026 -0700"
      },
      "message": "Bump virtualenv from 20.35.4 to 20.36.1 (#136)\n\nBumps [virtualenv](https://github.com/pypa/virtualenv) from 20.35.4 to 20.36.1.\n- [Release notes](https://github.com/pypa/virtualenv/releases)\n- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)\n- [Commits](https://github.com/pypa/virtualenv/compare/20.35.4...20.36.1)\n\n---\nupdated-dependencies:\n- dependency-name: virtualenv\n  dependency-version: 20.36.1\n  dependency-type: indirect\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": "35eab767a3c7e1849a8b9582171c17e9e02fb1ad",
      "tree": "149affd379e132f4a4ea53c42963e1223a2a8cde",
      "parents": [
        "07bc7c06b7746f64c2b0ae2524f6f03df331493e"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 10 19:11:23 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 19:11:23 2026 -0700"
      },
      "message": "Bump pyasn1 from 0.6.1 to 0.6.2 (#132)\n\nBumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.6.1 to 0.6.2.\n- [Release notes](https://github.com/pyasn1/pyasn1/releases)\n- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)\n- [Commits](https://github.com/pyasn1/pyasn1/compare/v0.6.1...v0.6.2)\n\n---\nupdated-dependencies:\n- dependency-name: pyasn1\n  dependency-version: 0.6.2\n  dependency-type: indirect\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": "07bc7c06b7746f64c2b0ae2524f6f03df331493e",
      "tree": "7bff523b681d30ffb32c76556cc655c85694c36d",
      "parents": [
        "f78bfee26f17f6df36f3f822ee70d67968cab9b1"
      ],
      "author": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Thu Feb 26 15:09:26 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 26 15:09:26 2026 -0800"
      },
      "message": "Change point detection doc (#126)\n\n* Change Point Detection algorithm documentation\n\n* Added more details to the example\n\n* Implemented suggestions\n\n* Added new line before figure captions.\n\n* Fixed several rendering issues."
    },
    {
      "commit": "f78bfee26f17f6df36f3f822ee70d67968cab9b1",
      "tree": "9e64cc4404d9d3ff84ed3f9f7126dd2e347b1f41",
      "parents": [
        "2bb687f76ddbe36191263524d0f179d8838404ed"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Feb 23 21:50:14 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 23 21:50:14 2026 -0800"
      },
      "message": "Feat/118 (#124)\n\n* Remove `regressions` command\n\n* Make --branch works across all importers\n\n* fixup help e2e test"
    },
    {
      "commit": "2bb687f76ddbe36191263524d0f179d8838404ed",
      "tree": "c00ed8e83628e5b40c16218f5b1ab48782ea9874",
      "parents": [
        "c600ac67f10e42442f2da9e103dd9bd8f6105c46",
        "ed069cb0b6a757438d002f36e0c6847c2a3430f4"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Feb 13 03:01:35 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Feb 13 03:01:35 2026 +0200"
      },
      "message": "Merge pull request #125 from apache/Gerrrr-patch-4\n\nAdd update instructions for website download page"
    },
    {
      "commit": "ed069cb0b6a757438d002f36e0c6847c2a3430f4",
      "tree": "c00ed8e83628e5b40c16218f5b1ab48782ea9874",
      "parents": [
        "c600ac67f10e42442f2da9e103dd9bd8f6105c46"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Feb 06 19:04:24 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Feb 06 19:04:24 2026 -0800"
      },
      "message": "Add update instructions for website download page\n\nI\u0027ve recently added a Download page to the website. Hence, adding instructions here to update the website download page with the new release information."
    },
    {
      "commit": "c600ac67f10e42442f2da9e103dd9bd8f6105c46",
      "tree": "c71eb1c0a2f224dd9326c9ccac03e78643d0c9bd",
      "parents": [
        "3b3d59a787ea03749e972c3509241114b861c99e",
        "33052b74ae13d96193c3f839eb6662cf93990a1a"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Jan 28 16:11:53 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 28 16:11:53 2026 +0200"
      },
      "message": "Merge pull request #123 from apache/docs/121\n\nUpdate install docs and examples to use PyPI and Dockerhub"
    },
    {
      "commit": "33052b74ae13d96193c3f839eb6662cf93990a1a",
      "tree": "c71eb1c0a2f224dd9326c9ccac03e78643d0c9bd",
      "parents": [
        "f99c7a2fff5ac54d0a49a1c909c526a1abe89d28"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Mon Jan 26 18:31:58 2026 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Tue Jan 27 23:00:29 2026 -0800"
      },
      "message": "Make examples use published Docker image\n"
    },
    {
      "commit": "f99c7a2fff5ac54d0a49a1c909c526a1abe89d28",
      "tree": "f19b25a43aa104f5ba92dfca4cd0545e7ce93848",
      "parents": [
        "3b3d59a787ea03749e972c3509241114b861c99e"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Mon Jan 26 18:19:10 2026 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Tue Jan 27 23:00:23 2026 -0800"
      },
      "message": "Update install guide\n"
    },
    {
      "commit": "3b3d59a787ea03749e972c3509241114b861c99e",
      "tree": "4998f1fc97635a73a7156eceb35b9570b8cd3b98",
      "parents": [
        "2e3463423dd29f4bc3eb44d1ccd72edd89553781"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Dec 22 14:42:25 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 22 14:42:25 2025 -0800"
      },
      "message": "Describe release process (#114)\n\n* Describe release process\n\n* Apply suggestions"
    },
    {
      "commit": "2e3463423dd29f4bc3eb44d1ccd72edd89553781",
      "tree": "db06f46fba13952d70a952ca55b4f8a3810c5947",
      "parents": [
        "3209e2fabdcd1ad2919ab4b1f9b272cb13cdb2e4",
        "7c78e1bce3f5af846ddf6e20a30fa1dc19c89a9b"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Dec 21 14:25:58 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 21 14:25:58 2025 +0200"
      },
      "message": "Merge pull request #115 from apache/config-arg-parse-fixup\n\nFix 3 bugs in ConfigArgParse usage"
    },
    {
      "commit": "3209e2fabdcd1ad2919ab4b1f9b272cb13cdb2e4",
      "tree": "2b2b71123fb091e3979f74406cc978967a589058",
      "parents": [
        "7ba418604492dd15c2d458ad772e1d8cada55a49",
        "1d6711653e7af04b7f2096cebeccabdce09af814"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Dec 21 14:18:52 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 21 14:18:52 2025 +0200"
      },
      "message": "Merge pull request #116 from apache/fix-type-annotation\n\nFix type annotation in test_config.py"
    },
    {
      "commit": "7ba418604492dd15c2d458ad772e1d8cada55a49",
      "tree": "72f54e0198813ce76dab0de336b596ebe3a0346d",
      "parents": [
        "b8af75b0e3d875282d53543e75d0507206880c27",
        "08d98e536a46975c9ea60d8977d1fee06c0bc56e"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Dec 21 14:18:11 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 21 14:18:11 2025 +0200"
      },
      "message": "Merge pull request #117 from apache/fix-perf-test\n\nanalysis.split sorts change points before getting intervals"
    },
    {
      "commit": "08d98e536a46975c9ea60d8977d1fee06c0bc56e",
      "tree": "72f54e0198813ce76dab0de336b596ebe3a0346d",
      "parents": [
        "c5e1d399f488e8e25a9f7ad9e05179efca83dd52"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:24:12 2025 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:34:34 2025 -0800"
      },
      "message": "Add perf tests to CI suite\n"
    },
    {
      "commit": "c5e1d399f488e8e25a9f7ad9e05179efca83dd52",
      "tree": "98c3fd83e421cd63953c6ec8a6b91144772c9bc6",
      "parents": [
        "b8af75b0e3d875282d53543e75d0507206880c27"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:23:55 2025 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:34:26 2025 -0800"
      },
      "message": "analysis.split sorts change points before getting intervals\n\nPrior to this patch, change points discovered while scanning sliding\nwindows are added to the end of the list. At the same time,\nSignificanceTester.get_intervals expects change points to be sorted.\n\nAs a result, intervals contain 1 or more None that cause ValueError in\ntester.change_point.\n"
    },
    {
      "commit": "1d6711653e7af04b7f2096cebeccabdce09af814",
      "tree": "07759f153d1fbc5d5191eba6247d2324b19430ab",
      "parents": [
        "b8af75b0e3d875282d53543e75d0507206880c27"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 22:08:51 2025 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:33:17 2025 -0800"
      },
      "message": "Fix type annotation in test_config.py\n"
    },
    {
      "commit": "7c78e1bce3f5af846ddf6e20a30fa1dc19c89a9b",
      "tree": "778b85613a98f03b4bf896da70972d3a5de0d263",
      "parents": [
        "b8af75b0e3d875282d53543e75d0507206880c27"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Mon Dec 15 16:58:02 2025 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Wed Dec 17 23:32:35 2025 -0800"
      },
      "message": "Fixup 3 bugs in ConfigArgParse usage\n\n1. --help no longer throws exceptions\n2. ConfigArgParse is passed into the actual commands\n3. Throw when passed an unrecognized CLI arg\n"
    },
    {
      "commit": "b8af75b0e3d875282d53543e75d0507206880c27",
      "tree": "2b69a028cea5e964462239ed395e307026c01d4e",
      "parents": [
        "a68bc98cfafd32432b52f6125a4f1b311d2c6601"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sat Dec 13 13:05:08 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 13 13:05:08 2025 -0800"
      },
      "message": "PyPI Project description contains ASF incubating disclaimer (#112)\n\n"
    },
    {
      "commit": "a68bc98cfafd32432b52f6125a4f1b311d2c6601",
      "tree": "efd20dc7d982f608c1d684feddd07f45b0cfde85",
      "parents": [
        "766303664fde9c1872e8ff5a6a75da512af37e3b"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sat Dec 13 10:31:16 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 13 10:31:16 2025 -0800"
      },
      "message": "Add e2e Graphite test (#106)\n\n* Add e2e Graphite test\n\n* Extract common functions into e2e_test_utils.py"
    },
    {
      "commit": "766303664fde9c1872e8ff5a6a75da512af37e3b",
      "tree": "1b141866d83e5ed0a22572830b71953a5304575a",
      "parents": [
        "2d8bd02a5bd5f3e9f3c5b38b31532d508fe77722"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sat Dec 13 10:30:54 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 13 10:30:54 2025 -0800"
      },
      "message": "Optimize Docker image (#113)\n\n"
    },
    {
      "commit": "2d8bd02a5bd5f3e9f3c5b38b31532d508fe77722",
      "tree": "1272809565a4de5fb5cb313e691de09f5ec5277a",
      "parents": [
        "31545205d3f3c0029c06f229c06df525bdeb77b8"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Dec 09 14:25:07 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 09 14:25:07 2025 -0800"
      },
      "message": "Change supported Python versions to 3.10-3.14 (#108)\n\n"
    },
    {
      "commit": "31545205d3f3c0029c06f229c06df525bdeb77b8",
      "tree": "a9def47d6812dfa81cd06d9772ae5c8e51313501",
      "parents": [
        "5c5abc7bbb2c8fa31128357599bcf06da26ca64c",
        "e6dca232b4a560a36bf9af1ce141c25a5e913084"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Dec 05 17:26:29 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 05 17:26:29 2025 +0200"
      },
      "message": "Merge pull request #105 from apache/config-paths-fixup\n\nFixup config paths in docs"
    },
    {
      "commit": "5c5abc7bbb2c8fa31128357599bcf06da26ca64c",
      "tree": "a7ce215379074f2eed674c68ba66eb48512ec6de",
      "parents": [
        "4e176a5cb77fb0e05c4dfb36b3d9c39e6ff08c81",
        "6aad9db88ae8a8263b51959955e5df52c079ee0a"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Thu Dec 04 19:22:56 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 04 19:22:56 2025 +0200"
      },
      "message": "Merge pull request #96 from Sowiks/master\n\nReplacing signal_processing_algorithms with internal implementation"
    },
    {
      "commit": "e6dca232b4a560a36bf9af1ce141c25a5e913084",
      "tree": "cb8e031c6c790db223d7dced4f09bfbc273df845",
      "parents": [
        "4e176a5cb77fb0e05c4dfb36b3d9c39e6ff08c81"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Sun Nov 30 21:29:27 2025 -0800"
      },
      "committer": {
        "name": "Alex Sorokoumov",
        "email": "aleksandr.sorokoumov@gmail.com",
        "time": "Sun Nov 30 21:29:27 2025 -0800"
      },
      "message": "Fixup config paths in docs\n"
    },
    {
      "commit": "4e176a5cb77fb0e05c4dfb36b3d9c39e6ff08c81",
      "tree": "6f1809a06ae952fef049c1ad3a5eac68770e87ed",
      "parents": [
        "2f4d2ba0cfa5ebf2677a468253dcb6926f6af240"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Nov 28 11:10:20 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 28 11:10:20 2025 -0800"
      },
      "message": "Add e2e tests covering CSV and PostgreSQL usage (#103)\n\n"
    },
    {
      "commit": "2f4d2ba0cfa5ebf2677a468253dcb6926f6af240",
      "tree": "9fd25f66ecc6f8c5c60828c68088a3f74da37fc3",
      "parents": [
        "b70f2aa4f60709d2516a7f830ff13f72a7558b1c"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Nov 28 11:10:07 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 28 11:10:07 2025 -0800"
      },
      "message": "Fixup csv docs (#102)\n\n"
    },
    {
      "commit": "b70f2aa4f60709d2516a7f830ff13f72a7558b1c",
      "tree": "dc3768e403fea1f77b7c354daba2eb23268b4218",
      "parents": [
        "5276f24de6f0853f8304374dd1b3772501863c3c",
        "3ffbc188d0320311d358c421dba4194a3b138eb3"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Nov 28 15:38:24 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 28 15:38:24 2025 +0200"
      },
      "message": "Merge pull request #98 from apache/asf-verify\n\nAdd a bash script that contributors may use/adapt to validate releases"
    },
    {
      "commit": "3ffbc188d0320311d358c421dba4194a3b138eb3",
      "tree": "dc3768e403fea1f77b7c354daba2eb23268b4218",
      "parents": [
        "a31a60f3b5074eeed08146b14efde3250bb6326d"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Nov 23 18:48:40 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Nov 23 18:48:40 2025 +0200"
      },
      "message": "Add ASF license header to scripts in util/\n\nAlso change filename to end in .sh. This brings these files\ninto the view of .pre-commit-config.yaml\n"
    },
    {
      "commit": "a31a60f3b5074eeed08146b14efde3250bb6326d",
      "tree": "37268987c20a6659db183cadf0123047aa9a4620",
      "parents": [
        "ef64531e38d3e87d7165596958b6d31f9f076aef"
      ],
      "author": {
        "name": "Dave Fischer",
        "email": "wave@apache.org",
        "time": "Sun Nov 23 18:22:17 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Nov 23 18:22:17 2025 +0200"
      },
      "message": "Add another script to be used as helper to check release tar file.\n\nThis script was shared by Dave Fischer in the mailing list discussion.\n"
    },
    {
      "commit": "6aad9db88ae8a8263b51959955e5df52c079ee0a",
      "tree": "683f3cd545e7af72cfbb273b6c1b66320c1dce8a",
      "parents": [
        "f8f81d873c23e7e8d7326360d73cbe4452f88e4c"
      ],
      "author": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Sat Nov 22 20:55:08 2025 -0800"
      },
      "committer": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Sat Nov 22 20:55:08 2025 -0800"
      },
      "message": "Renamed variables, fixed typos, updated comments. Switched indexing to match slice object notations.\n"
    },
    {
      "commit": "ef64531e38d3e87d7165596958b6d31f9f076aef",
      "tree": "9925e5caeafdf2b42a843bf1a1b6f6f3513f8932",
      "parents": [
        "5276f24de6f0853f8304374dd1b3772501863c3c"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Nov 12 23:18:37 2025 -0800"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sun Nov 16 20:10:35 2025 +0200"
      },
      "message": "Add a bash script that contributors may use/adapt to validate releases\n"
    },
    {
      "commit": "5276f24de6f0853f8304374dd1b3772501863c3c",
      "tree": "c6acbc4829dbd1e2533004ee9af6059b7b454279",
      "parents": [
        "209ff38e31e1dffeb1e0989debcc09d902ebed57"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Nov 12 23:18:37 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 12 23:18:37 2025 -0800"
      },
      "message": "Fix multiple issues discovered via running examples (#95)\n\n* Fix docker run commands in examples\n\n* Bump year in the postgres example data\n\nBy default, Otava looks 1 year back. Example data is too old.\n\n* Expand all env variables and fix PostgreSQL example\n\nThis commit fixes behavior removed in #86 - expand all env variables,\nnot just ones matching CLI arguments. There are users relying on this\nbehavior so we should not break it without longer discussion and a\nmajor release."
    },
    {
      "commit": "f8f81d873c23e7e8d7326360d73cbe4452f88e4c",
      "tree": "e23b5815017a79e848d2d1dde2d14469d55c6c29",
      "parents": [
        "a59a3cfe984d016d0dab08c5c054fa78d66ec3eb"
      ],
      "author": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Wed Nov 12 00:24:08 2025 -0800"
      },
      "committer": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Wed Nov 12 00:24:08 2025 -0800"
      },
      "message": "Support for Python 3.8 and 3.9\n"
    },
    {
      "commit": "a59a3cfe984d016d0dab08c5c054fa78d66ec3eb",
      "tree": "27b6c4f7c1f5c1d1127532c7a0d5453c42869097",
      "parents": [
        "f75f356f2173a5fc08d839d46ab74697bde688b5"
      ],
      "author": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Tue Nov 11 10:10:35 2025 -0800"
      },
      "committer": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Tue Nov 11 10:10:35 2025 -0800"
      },
      "message": "Correct implementation of bisection method\n"
    },
    {
      "commit": "f75f356f2173a5fc08d839d46ab74697bde688b5",
      "tree": "ff29b4db44bec3b42741d192ae3c274447249f2a",
      "parents": [
        "209ff38e31e1dffeb1e0989debcc09d902ebed57"
      ],
      "author": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Tue Nov 11 00:00:49 2025 -0800"
      },
      "committer": {
        "name": "Denis Shchepakin",
        "email": "1842450+Sowiks@users.noreply.github.com",
        "time": "Tue Nov 11 00:00:49 2025 -0800"
      },
      "message": "Replacing signal_processing_algorithms with internal implementation\n"
    },
    {
      "commit": "209ff38e31e1dffeb1e0989debcc09d902ebed57",
      "tree": "5a023418e8536db7e00aca550870dcb4323e801a",
      "parents": [
        "8d623fcfd079db58b5dc009befbd446d0b924fb2"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Nov 04 21:24:52 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 04 21:24:52 2025 -0800"
      },
      "message": "Bump version to 0.7.0 (#94)\n\n"
    },
    {
      "commit": "8d623fcfd079db58b5dc009befbd446d0b924fb2",
      "tree": "a8f0005c068ee4575ed4da41d21da84ee329c8e7",
      "parents": [
        "36cd1cb9a0a4df3eb87069e30b4fe29dcc541a7f"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Sep 22 11:52:24 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 22 11:52:24 2025 -0700"
      },
      "message": "Add missing config files in examples (#92)\n\n"
    },
    {
      "commit": "36cd1cb9a0a4df3eb87069e30b4fe29dcc541a7f",
      "tree": "cadd19ea632ca0e18cf64251785e90e2c7ba54e6",
      "parents": [
        "cb118307d699600dd2913fa8cf7dca18d72f7f97"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Sep 09 16:47:49 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 09 16:47:49 2025 -0700"
      },
      "message": "Run Docker build in CI (#90)\n\n* Reduce Docker image size\n\n```\n$ uv run tox -e docker-build\n```\n\nWithout this PR:\n\n```\n$ docker image ls | grep apache/otava\napache/otava                    latest              2b43a1b28f21   5 seconds ago   1.8GB\n```\n\nWith this PR:\n\n```\n$ docker image ls | grep apache/otava\napache/otava                    latest              fe6ae40666a2   13 seconds ago       778MB\n```\n\n* Run Docker build in CI"
    },
    {
      "commit": "cb118307d699600dd2913fa8cf7dca18d72f7f97",
      "tree": "f0f0f0923670fbe3ce88d165a5e0a7c399d8ba0a",
      "parents": [
        "484aaef8493a076b42d1b0e92679d9edb87fb043"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Sep 09 16:46:02 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 09 16:46:02 2025 -0700"
      },
      "message": "Reduce Docker image size (#89)\n\n```\n$ uv run tox -e docker-build\n```\n\nWithout this PR:\n\n```\n$ docker image ls | grep apache/otava\napache/otava                    latest              2b43a1b28f21   5 seconds ago   1.8GB\n```\n\nWith this PR:\n\n```\n$ docker image ls | grep apache/otava\napache/otava                    latest              fe6ae40666a2   13 seconds ago       778MB\n```"
    },
    {
      "commit": "484aaef8493a076b42d1b0e92679d9edb87fb043",
      "tree": "8756c9f10a5a8e4e7b34e10aaf3fe4fa1cfb9bf7",
      "parents": [
        "69d2b97a6c38873b74755bf1104a69f099b922b9"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Tue Sep 09 16:45:51 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 09 16:45:51 2025 -0700"
      },
      "message": "Fix config parsing (#91)\n\nNow, the CLI parser ignores sections of the config that do not have\ntheir equivalents in the CLI."
    },
    {
      "commit": "69d2b97a6c38873b74755bf1104a69f099b922b9",
      "tree": "224c61107f63638d26f22b631071ca171b1bc11b",
      "parents": [
        "d337e48ff8f96707a93c47b604d2a791f7ba5e95"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Wed Aug 20 08:30:26 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 20 08:30:26 2025 -0400"
      },
      "message": "OTAVA-82: use ConfigArgParse to create Config (#86)\n\n"
    },
    {
      "commit": "d337e48ff8f96707a93c47b604d2a791f7ba5e95",
      "tree": "de2d4f5b1471da74ad81dc480da59ed578a58992",
      "parents": [
        "651c5d9cb424fe112cc5995918f9c0333347d133"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Aug 04 16:31:23 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 04 16:31:23 2025 -0700"
      },
      "message": "Replace Poetry with uv (#80)\n\n"
    },
    {
      "commit": "651c5d9cb424fe112cc5995918f9c0333347d133",
      "tree": "aaee43776cd76a8f819742969ff07ecd1395ee33",
      "parents": [
        "8bb5e8eaaf8d0880650ad382c557963912e9454d"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Aug 04 16:27:12 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 04 16:27:12 2025 -0700"
      },
      "message": "Fix data location in csv example (#81)\n\n"
    },
    {
      "commit": "8bb5e8eaaf8d0880650ad382c557963912e9454d",
      "tree": "aca3b5bd99be62ab57c22812f895c49c0f39f1dc",
      "parents": [
        "c50c1fb1c64e97b0bdbd9cb9ddd2f1d486303289"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 20 09:55:52 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 20 09:55:52 2025 -0700"
      },
      "message": "Update README.md (#71)\n\nPrefix project name with \"Apache\". This is consistent with READMEs of other Apache projects - [Cassandra](https://github.com/apache/cassandra?tab\u003dreadme-ov-file#apache-cassandra), [Arrow](https://github.com/apache/arrow?tab\u003dreadme-ov-file#apache-arrow), [Airflow](https://github.com/apache/arrow?tab\u003dreadme-ov-file#apache-arrow)"
    },
    {
      "commit": "c50c1fb1c64e97b0bdbd9cb9ddd2f1d486303289",
      "tree": "70aeb6e7d227b11bab01d7ef8ea94b8c0607210e",
      "parents": [
        "15dbb8281dcf769aa4fc188f8b0826b6fb06f336"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 20 09:55:42 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 20 09:55:42 2025 -0700"
      },
      "message": "Update NOTICE (#72)\n\n"
    },
    {
      "commit": "15dbb8281dcf769aa4fc188f8b0826b6fb06f336",
      "tree": "2c5ab61c45be847a8869b1abce699697dc02eb57",
      "parents": [
        "a56bd7642d289cd4344e0ece6622f2c49442d1be"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 20 09:55:31 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 20 09:55:31 2025 -0700"
      },
      "message": "Add license header to python-app.yml (#73)\n\n"
    },
    {
      "commit": "a56bd7642d289cd4344e0ece6622f2c49442d1be",
      "tree": "bd728def42784f94f366f96f69d319a49b55c878",
      "parents": [
        "1ea24319c231d2009458a0c4868eb0e22326e248"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 20 09:55:22 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 20 09:55:22 2025 -0700"
      },
      "message": "Update install instructions on Getting Started page (#75)\n\n"
    },
    {
      "commit": "1ea24319c231d2009458a0c4868eb0e22326e248",
      "tree": "dbf9d9852cbe480bcecc99e8f314cc74dce0e3ff",
      "parents": [
        "9bce358eb9e27d5b11e23b0667c452f3bf189dc8"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 20 09:55:07 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 20 09:55:07 2025 -0700"
      },
      "message": "Use base image 3.8-slim-bookworm (#76)\n\n"
    },
    {
      "commit": "9bce358eb9e27d5b11e23b0667c452f3bf189dc8",
      "tree": "270a41fa6d1c3d5f60c819091004d671a2426692",
      "parents": [
        "9fe98b7ff2e24f116bd0a03be3e4a4335aca5d9a"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Jul 06 17:35:51 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 06 17:35:51 2025 -0700"
      },
      "message": "Bump version to 0.6.1 (#70)\n\n"
    },
    {
      "commit": "9fe98b7ff2e24f116bd0a03be3e4a4335aca5d9a",
      "tree": "a980d11cbd9e8f9131f278d2def5dfc88a88cb5d",
      "parents": [
        "f1821de7463e54f3cc2555a49baac45d7b3a43ad"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Jul 04 16:43:33 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 04 16:43:33 2025 -0700"
      },
      "message": "PyPI Project Description (#69)\n\nFixes #66"
    },
    {
      "commit": "f1821de7463e54f3cc2555a49baac45d7b3a43ad",
      "tree": "2d96fde6a4cb0180caaeeb0ed13521be45077103",
      "parents": [
        "6d8f20893884db3468aa237640f03205492afdfe"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Jul 04 16:43:25 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 04 16:43:25 2025 -0700"
      },
      "message": "Add license and PyPI shields (#67)\n\n"
    },
    {
      "commit": "6d8f20893884db3468aa237640f03205492afdfe",
      "tree": "6e4276c7cadb4b90bb05a4614cb581537b169fd2",
      "parents": [
        "19c4dfd6c868090424d611ea50572a4cd522382e"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Jul 04 11:07:22 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 04 11:07:22 2025 -0700"
      },
      "message": "Install instructions use PyPI instead of GH (#68)\n\n"
    },
    {
      "commit": "19c4dfd6c868090424d611ea50572a4cd522382e",
      "tree": "2a62cc98c611cbb2b7ca96500b6428d4f7da5a64",
      "parents": [
        "f1d21a84b79a4bb411b404437b163250d30edecb"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Jun 04 20:56:25 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 04 20:56:25 2025 -0700"
      },
      "message": "Remove +incubating, add it to description and authors instead (#59)\n\n* Remove +incubating, add it to description and authors instead\n\n* Drop \u0027Developers\u0027"
    },
    {
      "commit": "f1d21a84b79a4bb411b404437b163250d30edecb",
      "tree": "40b23d3bf1ef159aba1b9d3c17fdca93ac9c4b3b",
      "parents": [
        "ee74e5f6d14a6805c8bee9aae1c2e68079586f3a"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri May 09 19:09:35 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 09 19:09:35 2025 -0700"
      },
      "message": "Rename project name to apache-otava (#58)\n\n* Rename project name to apache-otava\n\nThis change addresses RC feedback that project names typically contain\nprefix \"apache-\". For example, https://github.com/apache/airflow/blob/40789d677972a3d7d0827e5a12329879487f7926/pyproject.toml#L33\n\n* Fix discrepancy between project and module name"
    },
    {
      "commit": "ee74e5f6d14a6805c8bee9aae1c2e68079586f3a",
      "tree": "f53258c850e2b0b2c0ae65a5ef7321a0f128ccb1",
      "parents": [
        "5502d6b8af59cd1640b8639e22b939e24aa32d8f"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Thu May 08 22:59:00 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 08 22:59:00 2025 -0700"
      },
      "message": "Address ASF feedback for RC3 (#57)\n\n* Replace project authors with Apache Otava Developers\n\nThis change addresses ASF feedback about individual contributor\u0027s name\nand email in PKG-INFO and dist metadata.\n\nTurns out, poetry just takes the first author from pyproject and puts\nthem as the only author in those files. Instead, we\u0027ll do the same as\nPyArrow - https://github.com/apache/arrow/blob/2a88c5267d980851dc1dcdff54dbfe115ee1ef89/python/pyproject.toml#L49-L51.\n\n* Add (incubating) to the NOTICE.txt file\n\n* Remove .txt suffix from DISCLAIMER, LICENSE, NOTICE\n\n* Include DISCLAIMER into the build"
    },
    {
      "commit": "5502d6b8af59cd1640b8639e22b939e24aa32d8f",
      "tree": "b476cff161a410b7e12a107df89936d04adbba0a",
      "parents": [
        "73cf53e684ba72ea7ead869f54aae9eb8337a8ca"
      ],
      "author": {
        "name": "Sergey Bronnikov",
        "email": "estetus@gmail.com",
        "time": "Thu Apr 24 21:27:17 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 24 14:27:17 2025 -0400"
      },
      "message": "Fix markdown markup and a typo in documentation (#54)\n\n"
    },
    {
      "commit": "73cf53e684ba72ea7ead869f54aae9eb8337a8ca",
      "tree": "ba01fc088313ca4d8ba5cd7938d8c942114a5de6",
      "parents": [
        "2958c0313d53db86d36e72c0f72d9b57ca4360c7"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 16 22:32:44 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 16 22:32:44 2025 -0700"
      },
      "message": "Add ASF header to .gitignore (#53)\n\n"
    },
    {
      "commit": "2958c0313d53db86d36e72c0f72d9b57ca4360c7",
      "tree": "863572d9b1d79446767ad46193d458dee85919e3",
      "parents": [
        "404acd0dda6384f4654c0fab2c4a058e360927ba"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 16 09:44:18 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 16 09:44:18 2025 -0700"
      },
      "message": "CI runs against Python versions 3.8-3.10 (#52)\n\n* CI runs against Python versions 3.8-3.11\n\n* Remove 3.11 due to failing CI\n\n* Document supported Python versions\n\n* Update pyproject.toml\n\n* Update lockfile"
    },
    {
      "commit": "404acd0dda6384f4654c0fab2c4a058e360927ba",
      "tree": "2e6cd1ca0e797b3333a43d8d7c2ccd8fa2da75e3",
      "parents": [
        "8702c402f8d012743d906546f033b00bf2521860",
        "b924b1630dfa41ad1f75d5b632f4e6af8ea9a71c"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Apr 11 14:57:19 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 11 14:57:19 2025 +0300"
      },
      "message": "Merge pull request #48 from ligurio/ligurio/doc-fixes\n\nDocumentation fixes"
    },
    {
      "commit": "8702c402f8d012743d906546f033b00bf2521860",
      "tree": "2fd7a76b0d6e2eda9ec8e3b4280ff24a3e307f12",
      "parents": [
        "bc98c1e64c37b6c490bf326cbd705fdb3ef76dc1"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Sun Apr 06 22:51:14 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 06 22:51:14 2025 -0700"
      },
      "message": "Pyproject description (#50)\n\n* Add description to pyproject.toml\n\n* Set release version to 0.6.0-incubating\n\n* Add authors\n\n* 0.6.0-incubating -\u003e 0.6.0+incubating\n\nThe former fails poetry\u0027s validation with \"Invalid PEP 440\nversion: \u00270.6.0-incubating\u0027\"."
    },
    {
      "commit": "b924b1630dfa41ad1f75d5b632f4e6af8ea9a71c",
      "tree": "9d0fd3d6d4d77098b451033c3414f2b6c31a6be9",
      "parents": [
        "ce2af7fbfa515e4905a4d489ff938c06262a46ab"
      ],
      "author": {
        "name": "Sergey Bronnikov",
        "email": "estetus@gmail.com",
        "time": "Fri Apr 04 11:55:13 2025 +0300"
      },
      "committer": {
        "name": "Sergey Bronnikov",
        "email": "sergeyb@tarantool.org",
        "time": "Fri Apr 04 14:11:18 2025 +0300"
      },
      "message": "Describe BuildKit in installation guide\n\nFixes #47\n"
    },
    {
      "commit": "ce2af7fbfa515e4905a4d489ff938c06262a46ab",
      "tree": "f9528b1907c1090e16370f633035c813db307789",
      "parents": [
        "bc98c1e64c37b6c490bf326cbd705fdb3ef76dc1"
      ],
      "author": {
        "name": "Sergey Bronnikov",
        "email": "estetus@gmail.com",
        "time": "Fri Apr 04 11:47:25 2025 +0300"
      },
      "committer": {
        "name": "Sergey Bronnikov",
        "email": "sergeyb@tarantool.org",
        "time": "Fri Apr 04 14:11:18 2025 +0300"
      },
      "message": "Fix typos in documentation\n"
    },
    {
      "commit": "bc98c1e64c37b6c490bf326cbd705fdb3ef76dc1",
      "tree": "5e019e883f6a5c4cc1f044bb4f27de1a7bfb1c80",
      "parents": [
        "6b7c9e8520a22982106d952d81ad726ada4d6813"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Thu Apr 03 09:26:01 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 03 09:26:01 2025 -0700"
      },
      "message": "Add .asf.yaml (#44)\n\n* Add .asf.yaml\n\nThis change will hopefully let us manage the \"About\" section of the GH\npage as well as other configs - labels, allowed PR merge strategies,\netc.\n"
    },
    {
      "commit": "6b7c9e8520a22982106d952d81ad726ada4d6813",
      "tree": "78c448ccf8408b2d134535eabe9b7b96ccdf8da8",
      "parents": [
        "3b164fb10ca7083333827689c04ae9c5acd78351"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 02 18:11:50 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 02 18:11:50 2025 -0700"
      },
      "message": "Update Dockerfile license (+ fix pre-commit-config) (#45)\n\nI noticed that the the pre-commit-config did not not update Dockerfile\u0027s\nlicense. I don\u0027t know why, but multiline \"files\" value does not\npattern-match \"Dockerfile\", while same-line does."
    },
    {
      "commit": "3b164fb10ca7083333827689c04ae9c5acd78351",
      "tree": "d73584f35049be30b90f8ac679f6f2a3e540ef3c",
      "parents": [
        "0e9167d8ba4e20ffa069289ba53c30a36b70c883"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 02 18:11:21 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 02 18:11:21 2025 -0700"
      },
      "message": "Use Poetry 1.8.3 in Docker image (#41)\n\n"
    },
    {
      "commit": "0e9167d8ba4e20ffa069289ba53c30a36b70c883",
      "tree": "bd4eaa98db32c83f9e5d3c406df6e50d5be0c784",
      "parents": [
        "66085d22a0c4375241dff86333c8e078cf0b52b3"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Apr 02 18:11:09 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 02 18:11:09 2025 -0700"
      },
      "message": "Add incubation disclaimer (#43)\n\n"
    },
    {
      "commit": "66085d22a0c4375241dff86333c8e078cf0b52b3",
      "tree": "bc24c93fb1d4a81e429f44a90c0ffb20ef726927",
      "parents": [
        "64c4cf3dca84d895a0f27daaded30cd1e8c3838d"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Fri Mar 28 14:52:46 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 28 14:52:46 2025 -0700"
      },
      "message": "Add NOTICE file and update license headers (#42)\n\nSee the discussion in Slack - https://the-asf.slack.com/archives/C08GS61L40P/p1742747355910289.\n\nTL;DR we should use license header specified in https://www.apache.org/legal/src-headers.html#headers\nand also include the NOTICE.txt file."
    },
    {
      "commit": "64c4cf3dca84d895a0f27daaded30cd1e8c3838d",
      "tree": "de019250e7f52d0a9198d33798c4f49ceec0e9c3",
      "parents": [
        "3ddb78d1ef7372e3d57e4d8fc245149be6b8e4f9",
        "c7516c30a1199a4c03b010d7f3beae93f9bf9a53"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Thu Mar 20 12:06:23 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 20 12:06:23 2025 +0200"
      },
      "message": "Merge pull request #40 from apache/readme-hunter-cleansing\n\nReadme hunter cleansing"
    },
    {
      "commit": "c7516c30a1199a4c03b010d7f3beae93f9bf9a53",
      "tree": "de019250e7f52d0a9198d33798c4f49ceec0e9c3",
      "parents": [
        "8dc85db7118d219caca6b0ec14e6475585fcd5db"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 22:16:41 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 22:16:41 2025 +0200"
      },
      "message": "Review documentation, mainly to remove \"Hunter\" inspired language\n\nActually there was only one \"Hunts performance regressions\" reference.\nThe rest are just small editorial changes.\n\nFixes: #39\n"
    },
    {
      "commit": "8dc85db7118d219caca6b0ec14e6475585fcd5db",
      "tree": "73c8fac3717b24bbfb5e8106fc473148bb41b1e7",
      "parents": [
        "2e53d7ffc8907805135cc95c78e1e7e2fa6122e4"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 22:15:54 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 22:15:54 2025 +0200"
      },
      "message": "Change 2 straggler datastax-labs urls to apache/otava\n"
    },
    {
      "commit": "2e53d7ffc8907805135cc95c78e1e7e2fa6122e4",
      "tree": "041a28230b0ddd0c10a485813d81281cea73f3d1",
      "parents": [
        "3ddb78d1ef7372e3d57e4d8fc245149be6b8e4f9"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 21:31:03 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Wed Mar 19 21:52:53 2025 +0200"
      },
      "message": "Remove license header from /README.md\n\nIt is explicitly exempted in the ASF license header policy (FAQ.5).\nAnd the README.md incorporates the same at the end of the text.\n"
    },
    {
      "commit": "3ddb78d1ef7372e3d57e4d8fc245149be6b8e4f9",
      "tree": "fd93170433fa0cee1e5c9481eb9baaf424bb0a35",
      "parents": [
        "ec1a7e6628d3231e24825fe32253f6574aec1b30",
        "d22a671fb0c8d415f6a5461fa89feb1f4a27eb3e"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Mon Mar 17 09:37:04 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 17 09:37:04 2025 -0400"
      },
      "message": "Merge pull request #37 from smccarthy788/sm-ds-to-apache\n\nRename Hunter to Otava and add LICENSE headers"
    },
    {
      "commit": "d22a671fb0c8d415f6a5461fa89feb1f4a27eb3e",
      "tree": "fd93170433fa0cee1e5c9481eb9baaf424bb0a35",
      "parents": [
        "f00e4e6accd268c09aa2844e6dde4541b1289100"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:57:25 2025 -0400"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 18:00:30 2025 -0400"
      },
      "message": "apply Apache license header to source code files\n"
    },
    {
      "commit": "f00e4e6accd268c09aa2844e6dde4541b1289100",
      "tree": "367e431be7d05b8d0f16d1a90f8f1b39e4cc8c3a",
      "parents": [
        "2b77e7ab80f980e4f2efc63174f5ac91389c0758"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:51:21 2025 -0400"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 18:00:30 2025 -0400"
      },
      "message": "enforce license headers with pre-commit\n"
    },
    {
      "commit": "2b77e7ab80f980e4f2efc63174f5ac91389c0758",
      "tree": "64e2d5d31131be6216853ae967ebbbead497c553",
      "parents": [
        "39288aa6f059f2b528d62e0fd8440f54f04c03ae"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 12:18:38 2025 -0400"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:49:28 2025 -0400"
      },
      "message": "rename Hunter to Otava\n"
    },
    {
      "commit": "39288aa6f059f2b528d62e0fd8440f54f04c03ae",
      "tree": "7da62419e14d14e42e3f6e6eb309e3c88a280fe7",
      "parents": [
        "a5110f1ea3e3b939ed21edd9c28286bf39284668"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 09:54:49 2025 -0400"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:49:28 2025 -0400"
      },
      "message": "OTAVA-30: remove unsupported project comment from README\n"
    },
    {
      "commit": "a5110f1ea3e3b939ed21edd9c28286bf39284668",
      "tree": "a49acb113f68ef9a23a0d43e93c3bef78de0af9f",
      "parents": [
        "4d9a43d372e1157de22a52696c93139ac3f20bb8"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Wed Feb 26 10:31:32 2025 -0500"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:49:28 2025 -0400"
      },
      "message": "remove DataStax copyright from README\n"
    },
    {
      "commit": "4d9a43d372e1157de22a52696c93139ac3f20bb8",
      "tree": "a27dbe35217a94dcbf5c61b44f4bb3622d691dc8",
      "parents": [
        "ec1a7e6628d3231e24825fe32253f6574aec1b30"
      ],
      "author": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 12:40:15 2025 -0400"
      },
      "committer": {
        "name": "Sean McCarthy",
        "email": "sean.mccarthy.dev@gmail.com",
        "time": "Fri Mar 14 13:49:24 2025 -0400"
      },
      "message": "upgarde poetry to 1.8.3 and minor depdencies upgrades\n"
    },
    {
      "commit": "ec1a7e6628d3231e24825fe32253f6574aec1b30",
      "tree": "882115215b7050b2b69d1553e679337b6c4315e5",
      "parents": [
        "57d4acce410f30063109be6d050c065be1f6554e"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Wed Feb 05 08:58:07 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 05 08:58:07 2025 -0800"
      },
      "message": "Fix a broken link to Validating Performance of a Feature Branch (#32)\n\n"
    },
    {
      "commit": "57d4acce410f30063109be6d050c065be1f6554e",
      "tree": "56e07ed88be070b7eb2fd95a490e63c6d78fba57",
      "parents": [
        "251884d95b1121348eb8a38b494db37a4f5686ae"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Jan 27 20:14:58 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 27 20:14:58 2025 -0800"
      },
      "message": "Fix broken links (#29)\n\n"
    },
    {
      "commit": "251884d95b1121348eb8a38b494db37a4f5686ae",
      "tree": "c43617a2c011cf05ba8549fb21c5a273072e6d28",
      "parents": [
        "72c34f6e9be4dbbb24e4c772f1d7c55e4921c97a"
      ],
      "author": {
        "name": "Alex Sorokoumov",
        "email": "918393+Gerrrr@users.noreply.github.com",
        "time": "Mon Jan 27 11:39:29 2025 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 27 11:39:29 2025 -0800"
      },
      "message": "Introduce docs and reproducible examples (#28)\n\n* Add PostgreSQL example/docs\r\n\r\n1. Add a reproducible docker-compose.\r\n2. Move the docs from README to a separate docs page referencing the\r\nreproducible example.\r\n\r\n* Set content-type to application/json when creating an annotation in Grafana\r\n\r\nWithout this change, current Grafana version responds with 400 Bad Request\r\n\r\n* Move CONTRIBUTING.md to docs/\r\n\r\n* Move BigQuery to docs\r\n\r\n* Add example and docs for csv\r\n\r\n* Add examples and docs for Graphite/Grafana\r\n\r\n* Move installation instructions into a separate docs page\r\n\r\n* Split Usage into individual docs pages\r\n\r\n* Remove PostgreSQL instructions from README.md\r\n\r\n* Add Getting Started\r\n\r\n* Remove trailing spaces in README\r\n\r\n* Pin poetry version to the same version we use in ci-tools, 1.1.13\r\n\r\nThe newest version, 2.0.1, fails Docker build. Since the goal of this PR\r\nis to introduce docs with reproducible examples, I am not going to\r\nupgrade Poetry version _here_, despite it being really, really old.\r\n\r\n* Add table of contents"
    },
    {
      "commit": "72c34f6e9be4dbbb24e4c772f1d7c55e4921c97a",
      "tree": "d1a4217c2394b934a04e30c5675d85889bbbf30c",
      "parents": [
        "bc748fcec2a138885b146e18eee3d9fce0b1b5f5",
        "542767dba7c61511812855aa11f784c26d3fb9a1"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Sat Jan 11 00:52:36 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jan 11 00:52:36 2025 +0200"
      },
      "message": "Merge pull request #27 from nyrkio/to-asf-upstream2\n\nUpstreaming 2024 Nyrkiö patches"
    },
    {
      "commit": "542767dba7c61511812855aa11f784c26d3fb9a1",
      "tree": "d1a4217c2394b934a04e30c5675d85889bbbf30c",
      "parents": [
        "1ce8bb8b33c97b01fd33425df3bb8e3ca593cbd3"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 23:27:01 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 23:27:01 2025 +0200"
      },
      "message": "Disable asserts for orig_edivisive test.\n\nSince it is random by design, can\u0027t really unit testas usual.\n"
    },
    {
      "commit": "1ce8bb8b33c97b01fd33425df3bb8e3ca593cbd3",
      "tree": "ae5905e7993825e66317b38f98397d11e229f5e8",
      "parents": [
        "e616f641937177f7b8f2a6df36afe41988ec4184"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 23:19:46 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 23:19:46 2025 +0200"
      },
      "message": "flake8 format\n"
    },
    {
      "commit": "e616f641937177f7b8f2a6df36afe41988ec4184",
      "tree": "066f0ad07556f645c7db2d7b8fdcc3a1e325bc35",
      "parents": [
        "fa0508da1c2fa451d711c37fe6cc9c911dee708f"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 22:33:44 2025 +0200"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 22:37:46 2025 +0200"
      },
      "message": "One years worth of linting and formatting...\n"
    },
    {
      "commit": "fa0508da1c2fa451d711c37fe6cc9c911dee708f",
      "tree": "10e08f243621cca65a23f9c36962dbe84a46b784",
      "parents": [
        "28804cf6c167052b41225c0007935ac0f5c34530"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Oct 18 11:08:38 2024 +0300"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 22:37:46 2025 +0200"
      },
      "message": "Optimization: Incremental Hunter\n\nThe common case is to add new data points to the end of the series.\nIn this case we don\u0027t need to recompute all change points, we can\njust compute window_len points from the end. We do roughly\n2 * window_len for good measure.\n"
    },
    {
      "commit": "28804cf6c167052b41225c0007935ac0f5c34530",
      "tree": "3fcca4e268d439e615f75ac6997104dde901bff1",
      "parents": [
        "f136d78292a562ca3022e38f747ca62141125a2f"
      ],
      "author": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Thu Oct 17 02:04:51 2024 +0300"
      },
      "committer": {
        "name": "Henrik Ingo",
        "email": "henrik@nyrk.io",
        "time": "Fri Jan 10 22:37:46 2025 +0200"
      },
      "message": "compute_change_points(): Default min_magnitude to 0.0\n\nThis is the default in AnalysisOptions, which most users would\nuse, since it is required in the typical code path.\n"
    }
  ],
  "next": "f136d78292a562ca3022e38f747ca62141125a2f"
}
