)]}'
{
  "log": [
    {
      "commit": "a060dad5f8d2e89cfe6cfbc2d6e75473d29660ac",
      "tree": "f0be6ee0b874883e03b6c500da9389a51f7e77ce",
      "parents": [
        "cb27af3c5d9e53649fb7de7fbf4e30df2bd148c0"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Thu Apr 30 18:10:06 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 18:10:06 2026 -0400"
      },
      "message": "Revert \"Support a java-11 compile target (#123)\" (#125)\n\nThis reverts commit 70d29df19bc1101635821bf514b49207f00651bd."
    },
    {
      "commit": "cb27af3c5d9e53649fb7de7fbf4e30df2bd148c0",
      "tree": "aa9736a02a6ae68ae314eb43d3615cab8a199aa1",
      "parents": [
        "6b43bf1b5d7faa24df15c7cb1896c1ddce364408"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:54:22 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:54:22 2026 -0400"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "6b43bf1b5d7faa24df15c7cb1896c1ddce364408",
      "tree": "57cf0f2f57559ad011fa735da71d4f223f2e05af",
      "parents": [
        "38fea5a32d9c16f2c085887cbd9b33f279319e23"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:54:22 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:54:22 2026 -0400"
      },
      "message": "[maven-release-plugin] prepare release rel/accumulo-access-1.0.0-beta3\n"
    },
    {
      "commit": "38fea5a32d9c16f2c085887cbd9b33f279319e23",
      "tree": "d7afbce47b3285ada032b7b7c1f288828e3f43f7",
      "parents": [
        "1bb99a6848b854db5a1b420c3d2e5930423f5ebf"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:52:16 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:52:16 2026 -0400"
      },
      "message": "Change version to 1.0.0-beta3-SNAPSHOT\n"
    },
    {
      "commit": "1bb99a6848b854db5a1b420c3d2e5930423f5ebf",
      "tree": "3f41fd0ee104c6661744fc443839b3afabef6915",
      "parents": [
        "70d29df19bc1101635821bf514b49207f00651bd"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:43:52 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:43:52 2026 -0400"
      },
      "message": "Bump spotbugs and checkstyle versions\n"
    },
    {
      "commit": "70d29df19bc1101635821bf514b49207f00651bd",
      "tree": "13ac19cd228fe357762089d1d38b7e6428e5a711",
      "parents": [
        "ac7ae6eda681d716210aa1d6ae5cb8e6156c2b26"
      ],
      "author": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Tue Apr 21 17:38:03 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 17:38:03 2026 -0400"
      },
      "message": "Support a java-11 compile target (#123)\n\nSupport Java 11, for users who want to migrate away from ColumnVisibility\nin applications built for accumulo 2.1\n\n---------\n\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "ac7ae6eda681d716210aa1d6ae5cb8e6156c2b26",
      "tree": "2b16eb15e443a5b89fb737f5ecd6bde64740c4d4",
      "parents": [
        "7c821f100c4b2655fc311a641d669a812914cf46"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:07:31 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Apr 21 17:07:31 2026 -0400"
      },
      "message": "Fix trivial assertion in test\n"
    },
    {
      "commit": "7c821f100c4b2655fc311a641d669a812914cf46",
      "tree": "c83b61ade2b7ecc9d9074ef288f635a63b09413a",
      "parents": [
        "069b47a7f385a71cc534bce66e632a85998930de",
        "5f726bca6c250d3809a507f97070284a22732ceb"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 31 20:23:44 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 31 20:23:44 2026 -0400"
      },
      "message": "Merge branch \u00271.0.0-beta2-rc1-next\u0027\n"
    },
    {
      "commit": "069b47a7f385a71cc534bce66e632a85998930de",
      "tree": "89fe50876d1d92ed184bacded9c3663f7c950e74",
      "parents": [
        "89fdc847b2bbea56df26dae52718c691b3415cbc"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 31 19:16:27 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 31 19:16:27 2026 -0400"
      },
      "message": "Update copyright year\n"
    },
    {
      "commit": "5f726bca6c250d3809a507f97070284a22732ceb",
      "tree": "0b09155cc1e82d80c47667473e629b8ed7d32a4d",
      "parents": [
        "d49cdb27dcf5757af6da09c3cac7a9dc51a8b126"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:29:27 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:29:27 2026 -0400"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "d49cdb27dcf5757af6da09c3cac7a9dc51a8b126",
      "tree": "4d7f7b025d63b52a5eae315f5126a354d848c3bd",
      "parents": [
        "89fdc847b2bbea56df26dae52718c691b3415cbc"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:29:26 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:29:26 2026 -0400"
      },
      "message": "[maven-release-plugin] prepare release rel/accumulo-access-1.0.0-beta2\n"
    },
    {
      "commit": "89fdc847b2bbea56df26dae52718c691b3415cbc",
      "tree": "38456c962422338404456f576ecff77d7203fcbc",
      "parents": [
        "faac675436fbe78961dcb308d52c11d0fca20a38"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:19:57 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:19:57 2026 -0400"
      },
      "message": "Fix shellcheck\n"
    },
    {
      "commit": "faac675436fbe78961dcb308d52c11d0fca20a38",
      "tree": "a2801e5d20452bdc88deb61c8a273ead4dcf8faa",
      "parents": [
        "ee960d84e8af90e70684fee86fcb34ad0dcc48bf"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:02:49 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 18:02:49 2026 -0400"
      },
      "message": "Trivial build improvements for release candidate\n\n* Update create-release-candidate script and corresponding pom fields to\n  automatically determine values from the pom and minimize the\n  differences in this script to the same script in other Accumulo repos\n* Fix apilyzer plugin configuration to analyze all classes in the public\n  API package\n"
    },
    {
      "commit": "ee960d84e8af90e70684fee86fcb34ad0dcc48bf",
      "tree": "ae61a1a5e731c3fc9c7850bf479fa8721eea87bc",
      "parents": [
        "d272aa931e06d46878a340909017e530e8cae33d"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 24 17:01:02 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 24 17:01:02 2026 -0400"
      },
      "message": "Update rat and modernizer plugins (#120)"
    },
    {
      "commit": "d272aa931e06d46878a340909017e530e8cae33d",
      "tree": "07a73539059e63a1f2579feecbd9016b544f5034",
      "parents": [
        "68fe695f76d3af4d3d6b1007b8c16ceb8b2188b2"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Mar 16 21:37:23 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 16 21:37:23 2026 -0400"
      },
      "message": "Exception handling and build improvements (#119)\n\nException handling improvements:\n\n* Use InvalidAuthorizationException instead of raw\n  IllegalArgumentException where it makes sense, especially to follow\n  the javadoc that says that it will be thrown when parsing an invalid\n  authorization inside an access expression\n* Inline quote/unquote methods from AccessEvaluatorImpl to th eonly\n  place they are called in AccessImpl, so they can be simplified without\n  redundant checks for empty strings\n* Move (un)escape methods from AccessEvaluatorImpl to CharUtils, since\n  they are not used in AccessEvaluatorImpl after the quote/unquote\n  methods were inlined\n\nBuild improvements:\n\n* Add junit-jupiter-engine explicitly to the classpath for tests\n  (required to run tests in IDE; surefire on the command-line adds it\n  automatically, so it\u0027s only needed for running tests in the IDE)\n* Relocate tests and generated files into standard directories\n* Put common test loader code in separate module, removing unneeded\n  spotbugs suppressions and redundant test code\n* Add build test for benchmark execution (without running benchmarks)"
    },
    {
      "commit": "68fe695f76d3af4d3d6b1007b8c16ceb8b2188b2",
      "tree": "bf8a776725eb52be3672965841a59cec417a1eea",
      "parents": [
        "936571695b93c7e7488a5369ce90ad2cdc385835"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Mar 16 18:18:06 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Mar 16 18:18:06 2026 -0400"
      },
      "message": "Trivial: reduce visibility on CharsWrapper.set\n"
    },
    {
      "commit": "936571695b93c7e7488a5369ce90ad2cdc385835",
      "tree": "1b168e22996149d1d711edbddb7d648eedd838bc",
      "parents": [
        "80f5535d11cb2172945e9c638ca0603eb8ea2a00"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Mar 16 18:14:25 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 16 18:14:25 2026 -0400"
      },
      "message": "Remove Authorizations class (#115)\n\nRemove unneeded Authorizations class in favor of using a `Set\u003cString\u003e`\ndirectly, avoiding redundant set copies and validation."
    },
    {
      "commit": "80f5535d11cb2172945e9c638ca0603eb8ea2a00",
      "tree": "8458d8c066323fe5b6eb428c1a69d92a44590a3a",
      "parents": [
        "dd320d782a1ba9e7d2e9e87e887f3e1a94523df2",
        "5cbf740e67fd5e5b14670991dc1db61c13742a4f"
      ],
      "author": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Mon Mar 16 15:16:53 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 16 15:16:53 2026 -0400"
      },
      "message": "Merge pull request #118 from apache/bugfix/remove-old-log4j-version\n\nBugfix/remove old log4j version"
    },
    {
      "commit": "5cbf740e67fd5e5b14670991dc1db61c13742a4f",
      "tree": "8458d8c066323fe5b6eb428c1a69d92a44590a3a",
      "parents": [
        "81eb942647da5e0c69557fd20865eedd16b46a28"
      ],
      "author": {
        "name": "Daniel Roberts ddanielr",
        "email": "ddanielr@gmail.com",
        "time": "Mon Mar 16 17:34:08 2026 +0000"
      },
      "committer": {
        "name": "Daniel Roberts ddanielr",
        "email": "ddanielr@gmail.com",
        "time": "Mon Mar 16 17:34:08 2026 +0000"
      },
      "message": "Switch back to dep exclusion\n\nrat-plugin 0.18 release is not fully completed.\nUsing doxia version override for now\n"
    },
    {
      "commit": "81eb942647da5e0c69557fd20865eedd16b46a28",
      "tree": "039da0076c3e4af50298026531ffd8198da0387d",
      "parents": [
        "dd320d782a1ba9e7d2e9e87e887f3e1a94523df2"
      ],
      "author": {
        "name": "Daniel Roberts ddanielr",
        "email": "ddanielr@gmail.com",
        "time": "Mon Mar 16 17:21:10 2026 +0000"
      },
      "committer": {
        "name": "Daniel Roberts ddanielr",
        "email": "ddanielr@gmail.com",
        "time": "Mon Mar 16 17:24:14 2026 +0000"
      },
      "message": "Updates rat-plugin to 0.18\n\nThis new version uses doxia-site-renderer 2.0.0 which no longer uses\nlog4j 1.2.12\n"
    },
    {
      "commit": "dd320d782a1ba9e7d2e9e87e887f3e1a94523df2",
      "tree": "a46c5d94eb1adf7d98e1e08105aea9fa8a8a3af7",
      "parents": [
        "52350947b2729368e8cfc3e9101e3dda896970b6"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Fri Mar 13 20:20:11 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 13 20:20:11 2026 -0400"
      },
      "message": "Improve benchmark execution (#114)\n\n* Update README with more examples\n* Allow controlling the specific benchmark pattern that applies to both\n  benchmark executions\n* Do not fail the build when a benchmark pattern matches zero benchmarks\n* Trigger profile with same property used to select benchmarks to run\n  for more intuitive execution (ensure same behavior with `-Dbenchmark`\n  as with `-Pbenchmark` when pattern is not specified)\n* Print the benchmark options before execution, and include the JFR\n  output directory when JFR is enabled"
    },
    {
      "commit": "52350947b2729368e8cfc3e9101e3dda896970b6",
      "tree": "a5e286bd1d95d90b4403744503bd045c5016936f",
      "parents": [
        "a5fe89fe4644845ecddd2e10d980d0d7277195ff"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Fri Mar 13 16:05:40 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Fri Mar 13 16:05:40 2026 -0400"
      },
      "message": "Trivial AuthorizationsImpl.equals improvement\n\nShort-circuit check for sameness in equals with fewer return statements\n\nTrivial follow-up to #111\n"
    },
    {
      "commit": "a5fe89fe4644845ecddd2e10d980d0d7277195ff",
      "tree": "797c8712be55903fccb5be4c15d2085ddcebc469",
      "parents": [
        "aca6ca01e0a48e41efbb9692288d6da7b5128258"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Mar 11 16:46:02 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 11 16:46:02 2026 -0400"
      },
      "message": "Reverted AuthorizationsImpl back to class, made ctor pkg private (#111)\n\nReverted AuthorizationsImpl back to a class from a record type\nto allow for making the constructor package private. Removed\nSerializable from Authorizations interface to reduce copies in\nthe Impl."
    },
    {
      "commit": "aca6ca01e0a48e41efbb9692288d6da7b5128258",
      "tree": "a9a3524705f6d612e7e096c6966fab0bd25869f6",
      "parents": [
        "68a0b6910d5e2fd3e306521ab212e49437df8e80"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Mar 11 16:16:37 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 11 16:16:37 2026 -0400"
      },
      "message": "Modified the AccessExpressionBenchmark to enable JFR (#110)\n\nAdded properties to the core pom.xml that can be\noverridden on the command line to filter which\nbenchmark methods to run and to enable Java\nFlight Recorder during the benchmark run."
    },
    {
      "commit": "68a0b6910d5e2fd3e306521ab212e49437df8e80",
      "tree": "e58cf9e7f1aef01c77f1b1b0aadf39193146bf01",
      "parents": [
        "9fad2d62b4376eec82cbc69576872d907b0c0098"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Mar 11 14:15:29 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 11 14:15:29 2026 -0400"
      },
      "message": "Removed public modifier from constructors (#109)\n\nRemoved public modifier from AccessEvaluatorImpl\nand AccessExpressionImpl constructors to force\na single entry point through AccessImpl. Unable\nto remove public modifier from AuthorizationsImpl\nconstructor as it\u0027s a record type."
    },
    {
      "commit": "9fad2d62b4376eec82cbc69576872d907b0c0098",
      "tree": "e31076fa066fb74a462e96a6a9857406a630aa01",
      "parents": [
        "5d7a94492832121f507029d9d7e7627fd88e95ba"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 20:38:00 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 20:38:00 2026 -0400"
      },
      "message": "Replace Authorizer with `Predicate\u003cString\u003e` (#107)\n\n* Replace Authorizer with predicate so that users can construct more\n  complex Predicate objects, as needed, using Predicate\u0027s `and`, `or`,\n  and `negate` convenience methods.\n* Move javadoc explanation closer to the API where authorizer is used.\n* Minor AccessEvaluator improvements to replace redundant/verbose code\n\nThis supersedes #64 and fixes #57"
    },
    {
      "commit": "5d7a94492832121f507029d9d7e7627fd88e95ba",
      "tree": "3e967847852b84019b4b420738c9007ce172b527",
      "parents": [
        "884298c88c966aa6368db6f2398e63f7f666d064"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Tue Mar 10 16:06:38 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 16:06:38 2026 -0700"
      },
      "message": "improves validation in unquote() (#104)\n\n\n\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "884298c88c966aa6368db6f2398e63f7f666d064",
      "tree": "3c968f0b45716c807aa7add63f8581d41944d0d4",
      "parents": [
        "402d65d643561e61044230ed663b8b89b8326e07"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 17:28:34 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 17:28:34 2026 -0400"
      },
      "message": "Replace an additional call to term.length()\n"
    },
    {
      "commit": "402d65d643561e61044230ed663b8b89b8326e07",
      "tree": "0c98737fd7e572ee19313df0aa095f3081c5b1a6",
      "parents": [
        "ce911c308c1f3c23eee5436476b527b4cb5db040"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Mar 10 15:20:52 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 15:20:52 2026 -0400"
      },
      "message": "Reduce method calls (#106)\n\nReduce calls to term.length() and short-circuit when term\nis known to be length of 2 and contain \u0027\"\"\u0027."
    },
    {
      "commit": "ce911c308c1f3c23eee5436476b527b4cb5db040",
      "tree": "4b59bde6da02fe5ee735cd54cc4167c94f20428a",
      "parents": [
        "932c5e6610790c3f7dcc80436f32d8b6538919e4"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 14:39:30 2026 -0400"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 14:39:30 2026 -0400"
      },
      "message": "Check for same object in AccessExpression.equals\n\n* Add missed code review suggestion from\n  https://github.com/apache/accumulo-access/pull/102#discussion_r2911212085\n\n---------\n\nCo-authored-by: Dave Marion \u003cdlmarion@apache.org\u003e\n"
    },
    {
      "commit": "932c5e6610790c3f7dcc80436f32d8b6538919e4",
      "tree": "77673d9750c6bb5dc40c2c35398ee8d5008b125e",
      "parents": [
        "75860105144dde9ce7fd25aba70a4b6d519f7b5a"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Mar 10 14:16:13 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 14:16:13 2026 -0400"
      },
      "message": "Build update/cleanup (#102)\n\n* Fix execution of QA plugins, such as license-maven-plugin\n* Add generated code to the build in a simpler way without checking it\n  in, or subjecting it to QA checks\n* Place version management in parent pom\n* Organize child modules in modules/ directory\n* Use symlinks for test files instead of copying them with the resources\n  plugin\n* Configure annotation processor library explicitly instead of placing\n  on the classpath\n* Use fully-qualified module names (org.apache.*) to match the\n  convention established by the automatic module names in the main\n  Accumulo repo\n* Address spotbugs, Java 21+ compiler warnings, and errorprone issues\n* Update parent POM and plugins\n* Add GitHub issue templates and fixup workflows\n* Fix README to reflect correct version\n* Remove unneeded default switch cases\n* Avoid CharSequence.equals, which may not have a meaningful\n  implementation"
    },
    {
      "commit": "75860105144dde9ce7fd25aba70a4b6d519f7b5a",
      "tree": "db8a994b0e05d18d4faed74850353bc87f98b83f",
      "parents": [
        "be1b16019d80c0d5f243677fc2eaf0342b4cf5f6"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Tue Jan 27 11:43:04 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 27 11:43:04 2026 -0800"
      },
      "message": "Improved README introduction (#101)\n\nModifies the introduction to offer a straightforward self contained high\nlevel description of what accumulo-access offers. The current\nintroduction paragraph does not directly explain the purpose of\naccumulo-access."
    },
    {
      "commit": "be1b16019d80c0d5f243677fc2eaf0342b4cf5f6",
      "tree": "1d099ed4be5765ce1f4fb4abcad721942dbd8c05",
      "parents": [
        "c48e0283007e727a84d717c4ec40652639a32a0b"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Thu Jan 15 18:10:09 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 15 18:10:09 2026 -0500"
      },
      "message": "Remove duplicate method calls in AccessEvaluator methods (#99)\n\n"
    },
    {
      "commit": "c48e0283007e727a84d717c4ec40652639a32a0b",
      "tree": "62976d554f1174ff4469904d7b7f7830ec4a55fd",
      "parents": [
        "fc6b8a43ca5ccfd714370d0c3998ad2e3219e6c9"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Wed Jan 14 08:04:19 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 14 11:04:19 2026 -0500"
      },
      "message": "fixes code example in javadoc (#100)\n\n"
    },
    {
      "commit": "fc6b8a43ca5ccfd714370d0c3998ad2e3219e6c9",
      "tree": "38f78b65ae3c4535ea0c321dd98d1da533e72b3c",
      "parents": [
        "8cefd87d79eb4771c54e88ba3e91ef06c9024cb0"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jan 12 23:42:32 2026 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jan 12 23:42:32 2026 +0000"
      },
      "message": "adds new class to API list\n"
    },
    {
      "commit": "8cefd87d79eb4771c54e88ba3e91ef06c9024cb0",
      "tree": "b4aaa160e1e30c77e0ebb593e9e875bb6131bb41",
      "parents": [
        "7049bc73ebdd780998c2703964e7848e1d21f434"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jan 12 23:40:58 2026 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jan 12 23:40:58 2026 +0000"
      },
      "message": "adds new class to API list\n"
    },
    {
      "commit": "7049bc73ebdd780998c2703964e7848e1d21f434",
      "tree": "f28f7bfd7dd2643095236d862aa4b6116a2ca6aa",
      "parents": [
        "2a41f0ec9c5b5bdd62f2d35efda303d2574bd1bf"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jan 12 15:37:20 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 12 15:37:20 2026 -0800"
      },
      "message": "Modified accumulo access to only work with String and Unicode. (#96)\n\n"
    },
    {
      "commit": "2a41f0ec9c5b5bdd62f2d35efda303d2574bd1bf",
      "tree": "756fb88304556dce644f0696f5cc357127c71513",
      "parents": [
        "c70d418ef10c008344df860c787fe947d5ef8a3a"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Wed Jan 07 12:47:09 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 07 15:47:09 2026 -0500"
      },
      "message": "Adds benchmark for creating parse trees (#97)\n\nAlso updates comments in the benchmark that were incorrect.  The\ncomments were based on how the code used to work."
    },
    {
      "commit": "c70d418ef10c008344df860c787fe947d5ef8a3a",
      "tree": "31d1168a92fc858790e1ffd421c40296fb581403",
      "parents": [
        "587082171a7658c07c0ec1254941d0a4f8797a42"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Dec 22 08:46:56 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 22 08:46:56 2025 -0500"
      },
      "message": "Replace maven.multiModuleProjectDirectory with \"..\" (#94)\n\nThe poms were using maven.multiModuleProjectDirectory to get the\nparent directory in each module pom. This was working locally, but\nthe builds on ci-builds.apache.org didn\u0027t like it for some reason.\nRemoving the property and replacing with \"..\" to see if that will\nfix the issue."
    },
    {
      "commit": "587082171a7658c07c0ec1254941d0a4f8797a42",
      "tree": "e983882fc883f7efdb4f1b6f4349b560116504fc",
      "parents": [
        "35655cb7c8880a67c4b5ae0ad42dfcb9af7db707"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Fri Dec 19 12:41:37 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 19 12:41:37 2025 -0500"
      },
      "message": "Migrate to multi-module project to separate examples (#92)\n\n"
    },
    {
      "commit": "35655cb7c8880a67c4b5ae0ad42dfcb9af7db707",
      "tree": "31ce7a3264abe4b98f229608a29247573c32fe5a",
      "parents": [
        "e77f80d4d8d7cdebef6dad064638b84f7befebe4"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Thu Dec 18 08:16:21 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 18 08:16:21 2025 -0500"
      },
      "message": "Separate API and impl (#91)\n\nImplemented java module feature.\nMoved impl classes to their own package.\n\nCloses #81"
    },
    {
      "commit": "e77f80d4d8d7cdebef6dad064638b84f7befebe4",
      "tree": "8a7dc0fbe014a6d18361d2d594b94439977763eb",
      "parents": [
        "6112180245fb8e1aed41b8327e4d773ddc735aaf"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Nov 18 07:23:58 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 18 07:23:58 2025 -0500"
      },
      "message": "Remove unused constructor, fix warnings (#87)\n\n"
    },
    {
      "commit": "6112180245fb8e1aed41b8327e4d773ddc735aaf",
      "tree": "6ac5ca82ef9acc13e00a602fa008006d1cc32c65",
      "parents": [
        "a3387df84083139c49c39503df57f80818e78e5e"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Thu Feb 13 15:03:51 2025 -0500"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Thu Feb 13 15:03:51 2025 -0500"
      },
      "message": "Revert \"Changes exception prefix from Invalid to Illegal (#85)\"\n\nThis reverts commit a371ab104425505a88332008d00a40947911e640.\n"
    },
    {
      "commit": "a3387df84083139c49c39503df57f80818e78e5e",
      "tree": "c41d3deedd20f872a82916c6b9e58752f18be3cf",
      "parents": [
        "a371ab104425505a88332008d00a40947911e640"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Thu Feb 13 12:21:40 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 13 12:21:40 2025 -0500"
      },
      "message": "Removed double check locking in AccessExpressionImpl.parse (#86)\n\n"
    },
    {
      "commit": "a371ab104425505a88332008d00a40947911e640",
      "tree": "e1001bf78c03d22ddd12dc990a9fd703122cd39d",
      "parents": [
        "2f6828151bffada062ec82faacfa6164a1f4f473"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Wed Feb 12 17:46:48 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 12 17:46:48 2025 -0500"
      },
      "message": "Changes exception prefix from Invalid to Illegal (#85)\n\nRenamed InvalidAccessExpressionException to\r\nIllegalAccessExpressionException because it extends\r\nIllegalArgumentException.  So now it uses the same terminology as its\r\nparent class."
    },
    {
      "commit": "2f6828151bffada062ec82faacfa6164a1f4f473",
      "tree": "8df94da981c20e7904087a1a74fb9cf64a6c5ab4",
      "parents": [
        "2b96c531b94288589a442ebb39cad09b6f257540"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Tue Feb 11 18:32:22 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 11 18:32:22 2025 -0500"
      },
      "message": "memoizes creating a parse tree (#84)\n\nThis change offers a new parse() method on AccessExpression that creates\r\na parse tree if one does not exits.  This change allows decoupling how\r\naccess expression are created (w/ or w/o an initial parse tree) from\r\nusing parse trees.\r\n\r\nFor example code the like the following that wanted to use a parse tree\r\nto validate an access expression would have required the\r\nParsedAccessExpression type to be passed to it.  Now it can accept an\r\nAccessExpression and call parse() which will do the most efficient thing\r\ndepending on how the expression was created.\r\n\r\n```java\r\n\r\nvoid checkExpression(AccessExpression expression){\r\n    var parsed \u003d expression.parse();\r\n    // use parse tree to validate expression\r\n}\r\n\r\n```"
    },
    {
      "commit": "2b96c531b94288589a442ebb39cad09b6f257540",
      "tree": "55b651de333d9cbf946e6e3f27392c4311d974ea",
      "parents": [
        "9c3fa5469ac5eac1097b9af3d0bdb8a7463d8a70",
        "de115fbb27fa512ec0e7a022bb8d1c7e2b9930b1"
      ],
      "author": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Mon Feb 03 18:01:17 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 03 18:01:17 2025 -0500"
      },
      "message": "Merge pull request #83 from keith-turner/parse-tree\n\nAdds ability to create immutable parse trees"
    },
    {
      "commit": "de115fbb27fa512ec0e7a022bb8d1c7e2b9930b1",
      "tree": "55b651de333d9cbf946e6e3f27392c4311d974ea",
      "parents": [
        "4bf5ca807ac9d87dd02839edc871d810aa900891"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 22:17:03 2025 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 22:17:03 2025 +0000"
      },
      "message": "reuse code\n"
    },
    {
      "commit": "4bf5ca807ac9d87dd02839edc871d810aa900891",
      "tree": "dfced0ff7e87cb6807fda2544b7b72f08730cf9d",
      "parents": [
        "9c21e01c3c038615d4f7fd079fbf99c1ef5f7f09"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 19:33:10 2025 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 19:33:10 2025 +0000"
      },
      "message": "test null consumers\n"
    },
    {
      "commit": "9c21e01c3c038615d4f7fd079fbf99c1ef5f7f09",
      "tree": "c1410c455ffa7d7827da022cf03dbf80eb1766c3",
      "parents": [
        "e00434817d30d6fa3ea73516301e4b92a2d31ee7"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 19:30:10 2025 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Feb 03 19:30:10 2025 +0000"
      },
      "message": "code review update\n"
    },
    {
      "commit": "e00434817d30d6fa3ea73516301e4b92a2d31ee7",
      "tree": "4a128625988259c0200060a493688a93c4f38964",
      "parents": [
        "217ec53e2158a032ec54dd8db7cf5231be74e9d5"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Sat Feb 01 21:34:30 2025 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Sat Feb 01 21:34:30 2025 +0000"
      },
      "message": "fix build error\n"
    },
    {
      "commit": "217ec53e2158a032ec54dd8db7cf5231be74e9d5",
      "tree": "fc4ce4629bb3cc4094aeab5a69bd443e4499d2af",
      "parents": [
        "9c3fa5469ac5eac1097b9af3d0bdb8a7463d8a70"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Sat Feb 01 20:40:42 2025 +0000"
      },
      "committer": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Sat Feb 01 20:40:42 2025 +0000"
      },
      "message": "Adds ability to create immutable parse trees\n\nAdded the ability to create immutable parse trees from an access\nexpression.  These parse trees are similar to the deprecated mutable\nparse trees in ColumnVisibility.  One conceptual difference is they\nexpose the sub expression at each level of the tree instead of only\ndoing this at the leaves.  This allows each node in the tree to be\ntreated as an access expression which is why the type extends access\nexpression.\n\nThe normalization code that was baked into AccessExpression was removed\nand a new example was made that does the same thing.  This was done\nbecause in previous conversations on pull request it was pointed out\nthat normalization could be done in many different ways.  The\nnormalization algorithm in the example is much cleaner than the internal\nalgorithm that was removed which came from ColumnVisibility. The old\nalgorithm used to go down the parse tree and on the way back up it would\ncompare nodes and this comparison went back down the parse tree.  The\nnew example algorithm avoids going back down the parse tree when\ncomparing.\n\nWhen making the new ParsedAccessExpression type immutable realized that\nthe existing AccessExpression was not really immutable.  Converted it\nfrom an interface to abstract class in attempt to actually make the type\nimmutable.  These changes also supported the introduction of the new\ntype for the parse tree.\n\nWhile working on the examples realized that users would need the ability\nto unquote authorizations when working w/ parse trees.  Added a static\nmethod to support this.\n\nMoved the existing functionality to get authorizations for an access\nexpression from an instance method to a static method.  Also reworked\nto take a consumer instead of returning a set, making it possible to\navoid the set creation for uses cases that do not need it.  This change\nwas made to position this existing functionality in a more sensible way\nwith the new parse tree functionality. Did not do in a follow on because\nit would have required implementing functionality that would be removed.\n\nFollow on work that could be done is making expression evaluation use\nthe parse tree if its present.\n"
    },
    {
      "commit": "9c3fa5469ac5eac1097b9af3d0bdb8a7463d8a70",
      "tree": "60efe9f3def163b3d15a8e9248ff69d4ef6d5990",
      "parents": [
        "e1a63a1943ee8fa4d91d5e14c4edeca53d25fa36"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Tue Jan 07 15:40:22 2025 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 07 15:40:22 2025 -0500"
      },
      "message": "Copies some test cases from accumulo code base (#82)\n\n"
    },
    {
      "commit": "e1a63a1943ee8fa4d91d5e14c4edeca53d25fa36",
      "tree": "25cf05f86930f3a45d9bbcbe2fe699122ae64041",
      "parents": [
        "2c05dfcdf1b2eb5af30477258fc82c360ccf96a0"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Nov 25 15:13:28 2024 -0500"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Mon Nov 25 15:13:28 2024 -0500"
      },
      "message": "Update GitHub Actions\n\n* Use v4\n* Use setup-java cache instead of actions/cache\n"
    },
    {
      "commit": "2c05dfcdf1b2eb5af30477258fc82c360ccf96a0",
      "tree": "4d966fca0605e26ea9921d9712fb44afcd963498",
      "parents": [
        "ab05908f4069620575a626c911fae514da7a48ad"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Fri Jul 26 08:27:08 2024 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 26 11:27:08 2024 -0400"
      },
      "message": "use Objects bounds checking methods (#80)\n\n\r\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "ab05908f4069620575a626c911fae514da7a48ad",
      "tree": "074e92c21135715f6d13f8301bdce1c07e68ecef",
      "parents": [
        "715613d9e7601ae38f7f7033131a7b7bb70cbb89"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Jul 23 23:33:31 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 23 23:33:31 2024 -0400"
      },
      "message": "Put benchmark config inside its execution (#79)\n\n* Configuration outside of the execution will apply to all executions of\r\n  exec-maven-plugin when the profile is active, even executions that\r\n  have nothing to do with the benchmark, so the benchmark-specific\r\n  configuration should be contained inside the execution element\r\n* Remove extra character from README"
    },
    {
      "commit": "715613d9e7601ae38f7f7033131a7b7bb70cbb89",
      "tree": "f525c69ec52bd98b6c35013b74a7b24bb72587e3",
      "parents": [
        "46262914c52eee77b262cec87bf24e71205f6721"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jul 08 14:33:27 2024 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 17:33:27 2024 -0400"
      },
      "message": "Avoids looping when evaluating single set of authorizations (#71)\n\nSimplified the code to avoid looping when there is a single\r\nset of authorizations.  This change was made in an attempt to\r\nimprove performance and it did very slightly.\r\n\r\nBefore this change saw the following.\r\n\r\n```\r\nBenchmark                                     Mode  Cnt   Score   Error   Units\r\nAccessExpressionBenchmark.measureEvaluation  thrpt   12  13.609 ± 0.300  ops/us\r\n```\r\n\r\nAnd after this change saw the following.\r\n\r\n```\r\nBenchmark                                     Mode  Cnt   Score   Error   Units\r\nAccessExpressionBenchmark.measureEvaluation  thrpt   12  13.806 ± 0.254  ops/us\r\n```\r\n\r\nThe performance improvement is slight so maybe not worthwhile.  However\r\nthis change simplified the evaluator code a good bit, so that is\r\nworthwhile."
    },
    {
      "commit": "46262914c52eee77b262cec87bf24e71205f6721",
      "tree": "5df2e5376306695f238a8a1bdb7e0df4f09a09e9",
      "parents": [
        "4aa573a55ecd289a8522cfd17cb100061f1f1f9b"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jul 08 14:02:11 2024 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 17:02:11 2024 -0400"
      },
      "message": "optimize validiation of empty expression (#76)\n\n"
    },
    {
      "commit": "4aa573a55ecd289a8522cfd17cb100061f1f1f9b",
      "tree": "14fe02dc2a37ec4160bd1a91cbb83b3ad7fa1d2e",
      "parents": [
        "3dc1839a309834283c16ba13f4b01c0ea74dc281"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jul 08 17:01:20 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 17:01:20 2024 -0400"
      },
      "message": "Add javadoc about AccessExpression normalization (#77)\n\n\r\n\r\nCo-authored-by: Dom G. \u003cdomgarguilo@apache.org\u003e"
    },
    {
      "commit": "3dc1839a309834283c16ba13f4b01c0ea74dc281",
      "tree": "7203992831e2c6ff8524bb6b396ba3242b82c381",
      "parents": [
        "f5c5785184c1c8253e6f2df3ced490dc592fc42d"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jul 08 14:52:06 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 14:52:06 2024 -0400"
      },
      "message": "Added profile to run benchmark (#75)\n\nrelated to #54"
    },
    {
      "commit": "f5c5785184c1c8253e6f2df3ced490dc592fc42d",
      "tree": "dedd1eea7eaa95297ae650ac194ec9659d5a0040",
      "parents": [
        "dc4bed4f0e5416d57f77aef9a6bf2549e8ef78ca"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jul 08 13:49:23 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 13:49:23 2024 -0400"
      },
      "message": "Renamed IllegalAccessExpressionException to InvalidAccessExpressionException (#74)\n\nCloses #59"
    },
    {
      "commit": "dc4bed4f0e5416d57f77aef9a6bf2549e8ef78ca",
      "tree": "45c3379cad2b79ce31d68b93824777bfa44eabb0",
      "parents": [
        "bd5cc2d072e3f79f6190fd39416c43dfd8a4fd31"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jul 08 13:46:11 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 13:46:11 2024 -0400"
      },
      "message": "Implement Serializable and Iterable where appropriate (#73)\n\n"
    },
    {
      "commit": "bd5cc2d072e3f79f6190fd39416c43dfd8a4fd31",
      "tree": "61b5b13f5545e5dff07f9f0337afd512ec156a42",
      "parents": [
        "4c79bae6f5084d46e25f26b17925d09254fc11c0"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Jul 08 09:29:04 2024 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 12:29:04 2024 -0400"
      },
      "message": "adds optimization for empty authorizations (#70)\n\n"
    },
    {
      "commit": "4c79bae6f5084d46e25f26b17925d09254fc11c0",
      "tree": "56600e768d5676b3a0f2ef0b811a7fa43bbe0675",
      "parents": [
        "33be6595160d0f62041731a720cc2b80f898c243"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jul 08 08:10:39 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 08 08:10:39 2024 -0400"
      },
      "message": "Add Accumulo 3.0 ColViz \u0026 VisibilityEvaluator to benchmark (#69)\n\n"
    },
    {
      "commit": "33be6595160d0f62041731a720cc2b80f898c243",
      "tree": "091e97b5c140bd07ac33ae0722bedd8b8143b6d3",
      "parents": [
        "2da31d3643916c020b14c9e61fa632543dbc56b7"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Mar 12 13:47:23 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 12 13:47:23 2024 -0400"
      },
      "message": "Modified Authorizations.of to only accept a Set (#68)\n\nCloses #66\r\n\r\n---------\r\n\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e"
    },
    {
      "commit": "2da31d3643916c020b14c9e61fa632543dbc56b7",
      "tree": "c709b5d1715fff663a778e975ebbdbed71e06f4f",
      "parents": [
        "e0abc5d5a62f7847bf6c93886f6910daad18a0f3",
        "374a81e60ab89be87823f953fdd9e01d570c98ba"
      ],
      "author": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Sat Feb 17 13:00:15 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 17 13:00:15 2024 -0500"
      },
      "message": "Merge pull request #62 from ddanielr/Remove-contrib-ref\n\nUpdate README to remove `contrib` project ref"
    },
    {
      "commit": "e0abc5d5a62f7847bf6c93886f6910daad18a0f3",
      "tree": "b6987a9f984a207df06dfef35c99c910979857fa",
      "parents": [
        "202a51cc23fe3157d9e34dc0243634beac94ecb9",
        "afe80ddb43a7891f859257d71da38d499e11da6d"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Sat Feb 17 15:18:52 2024 +0000"
      },
      "committer": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Sat Feb 17 15:18:52 2024 +0000"
      },
      "message": "Merge branch \u00271.0.0-beta-rc4-next\u0027\n"
    },
    {
      "commit": "202a51cc23fe3157d9e34dc0243634beac94ecb9",
      "tree": "f0b2d80315bafe963ba8dd91ff4231c258e26060",
      "parents": [
        "d0b4423087faf78dd0e96e3042bbc12fa87d6f42"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Sat Feb 17 09:24:52 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 17 09:24:52 2024 -0500"
      },
      "message": "Added post-vote-checklist issue templates (#44)\n\n\r\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "374a81e60ab89be87823f953fdd9e01d570c98ba",
      "tree": "262620af71e593dc3fe05c87ac19c7f08cacac6e",
      "parents": [
        "d0b4423087faf78dd0e96e3042bbc12fa87d6f42"
      ],
      "author": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Sat Feb 17 01:24:57 2024 +0000"
      },
      "committer": {
        "name": "Daniel Roberts",
        "email": "ddanielr@gmail.com",
        "time": "Sat Feb 17 01:24:57 2024 +0000"
      },
      "message": "Update README to remove `contrib` project ref\n"
    },
    {
      "commit": "d0b4423087faf78dd0e96e3042bbc12fa87d6f42",
      "tree": "89a6308ce5c099680cdcffe1361a00cfd069a994",
      "parents": [
        "009246e93aaa91dc4ce0b2a35ae8f14ddf04e210"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Thu Feb 15 11:06:14 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 15 11:06:14 2024 -0500"
      },
      "message": "moves thread local access outside of loop (#61)\n\nA thread local was being accessed multiple times in a loop.  The result\r\nshould be the same each time, so the access was moved out of the loop to\r\navoid any cost related to accessing a thread local."
    },
    {
      "commit": "afe80ddb43a7891f859257d71da38d499e11da6d",
      "tree": "f8e7e6eed9156652b77243757606c702a42fed92",
      "parents": [
        "1c6051d4f450d620e3594659ed8f00c107348003"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Feb 14 14:21:53 2024 +0000"
      },
      "committer": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Feb 14 14:21:53 2024 +0000"
      },
      "message": "[maven-release-plugin] prepare for next development iteration\n"
    },
    {
      "commit": "1c6051d4f450d620e3594659ed8f00c107348003",
      "tree": "b66a9708368a5d528c44e48d946c4b18b59a1190",
      "parents": [
        "009246e93aaa91dc4ce0b2a35ae8f14ddf04e210"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Feb 14 14:21:53 2024 +0000"
      },
      "committer": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Feb 14 14:21:53 2024 +0000"
      },
      "message": "[maven-release-plugin] prepare release rel/1.0.0-beta\n"
    },
    {
      "commit": "009246e93aaa91dc4ce0b2a35ae8f14ddf04e210",
      "tree": "608b9b1d3f710f943c96af5d5177a21a8cf6066f",
      "parents": [
        "6451678c80bc26779aae539388fd8e2605d22d19"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Wed Feb 14 02:45:49 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 14 02:45:49 2024 -0500"
      },
      "message": "Convert antlr4-example into an integration test (#53)\n\n* Update README to point to the antlr-example integration test\u0027s README\r\n  for an ANTLR example.\r\n* Move the contrib/antlr4 project into an integration test invoked by\r\n  the maven-invoker-plugin, that depends on this project, so it doesn\u0027t\r\n  have to be kept up-to-date\r\n* Fix LICENSE to include mention that Abnf.g4 is under the BSD-3-Clause\r\n  license\r\n* Get a fresh unaltered copy of Abnf.g4 from upstream, use POM config to\r\n  specify package, rather than modify it\r\n* Remove unnecessary build stuff from example POM\r\n* Move the ABNF spec to src/main/resources and add a test to ensure it\r\n  matches the contents of the SPECIFICATION.md file\r\n* Clean up unused checks in checkstyle config for dependencies or code\r\n  that doesn\u0027t exist in this project\r\n* Fix link in README to getting started section\r\n\r\nThis fixes #43"
    },
    {
      "commit": "6451678c80bc26779aae539388fd8e2605d22d19",
      "tree": "22a9d19e331bea97cff290d5272760d5eb434b61",
      "parents": [
        "846904f0a714c2d90364dea320f0a182eba1184d"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 22:06:31 2024 -0500"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 22:06:31 2024 -0500"
      },
      "message": "Update release candidate script\n\nFix the projName capitalization and restore the elements of the script\npertaining to the source-tarball, rather than the zip and reduce the\ndifferences in the file from the version in the main Accumulo project\nrepo.\n\nThis fixes #42\n"
    },
    {
      "commit": "846904f0a714c2d90364dea320f0a182eba1184d",
      "tree": "18d1c0610cdf398d3d1860341ccc6cacde8a6964",
      "parents": [
        "e6e8e19619b342c7c9462afac1e29883087a99fe"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 19:37:32 2024 -0500"
      },
      "committer": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 19:37:32 2024 -0500"
      },
      "message": "Fix markdown syntax\n"
    },
    {
      "commit": "e6e8e19619b342c7c9462afac1e29883087a99fe",
      "tree": "82ada72ac775aad750583db1cdf909cb4d8001fd",
      "parents": [
        "96896b2ea5824ad0150b50c57483954f31b59191"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 19:35:00 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 13 19:35:00 2024 -0500"
      },
      "message": "Move and simplify the AccessExample (#51)\n\n* Put the example in the src/test/java directory\r\n* Remove contrib/getting-started\r\n* Simplify the instructions for running the example and add them to the\r\n  main README\r\n* Bake in some improvements into the example, so it\u0027s a bit more\r\n  self-descriptive, and simplify some of its internals\r\n* Clarify running example with specific auths\r\n* Add test from code review, but making it more testable\r\n* add missing POM stuffs like source-tarball-release for assembly and mavanagaiata plugin\r\n\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e\r\n"
    },
    {
      "commit": "96896b2ea5824ad0150b50c57483954f31b59191",
      "tree": "fadeed3ee469ed1f8dda5b4d74942297c0583ea5",
      "parents": [
        "beea96bc982dd1d475c7286faed5d3113be240ca"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Feb 13 18:23:51 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 13 18:23:51 2024 -0500"
      },
      "message": "Fix and simplify javadoc for AccessEvaluator (#52)\n\n* Put class description in first javadoc sentence, followed by example,\r\n  followed by note, eliminating unnecessary closing paragraph tags not\r\n  needed for HTML5-based javadocs\r\n* Update POM versions and remove multi-module POM stuff, and add\r\n  dependency analysis\r\n* Add missing plugin execution for mavanagaiata"
    },
    {
      "commit": "beea96bc982dd1d475c7286faed5d3113be240ca",
      "tree": "e3d13b1e135579dbce289dd2c5952def97defe3b",
      "parents": [
        "91423c6b07938b5ff0fc73081748001acdc6d8ce"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Feb 13 17:54:48 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 13 17:54:48 2024 -0500"
      },
      "message": "Change project version to 1.0.0-beta-SNAPSHOT (#49)\n\n"
    },
    {
      "commit": "91423c6b07938b5ff0fc73081748001acdc6d8ce",
      "tree": "8b882252eeec5c5cf01e1c99cd936582153b2402",
      "parents": [
        "936e3cc2bd3156170432033fe7193a3e16f7b01a"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Feb 13 13:28:52 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 13 13:28:52 2024 -0500"
      },
      "message": "Removed contrib .gitignore files, use top level .gitignore (#48)\n\n"
    },
    {
      "commit": "936e3cc2bd3156170432033fe7193a3e16f7b01a",
      "tree": "5456b6537cfca8d4765655d992cd7b544452bd37",
      "parents": [
        "a8bc6a12ee1bbb93bf927b722a5c5f270a6a5b1b"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Tue Feb 13 11:02:38 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 13 11:02:38 2024 -0500"
      },
      "message": "Removed non-applicable information from LICENSE file (#47)\n\n"
    },
    {
      "commit": "a8bc6a12ee1bbb93bf927b722a5c5f270a6a5b1b",
      "tree": "fc5101dc4444fe5994e47d9ee7a4f8c30b797f17",
      "parents": [
        "ec2f0efade3b084a04190449617d48ead8a2da15"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Feb 12 09:44:15 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 12 09:44:15 2024 -0500"
      },
      "message": "Changes to rc script because we don\u0027t build a tarball (#41)\n\n"
    },
    {
      "commit": "ec2f0efade3b084a04190449617d48ead8a2da15",
      "tree": "d4681d24d37abb83ee6f4c15a14af5f35bf1a894",
      "parents": [
        "f315807509b26a1e1f46cb428d56d285853f805a"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Feb 12 09:20:30 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 12 09:20:30 2024 -0500"
      },
      "message": "Changes based on testing release candidate creation (#40)\n\n"
    },
    {
      "commit": "f315807509b26a1e1f46cb428d56d285853f805a",
      "tree": "9a71a146891285db49346918524be10ba7ebdbc9",
      "parents": [
        "7926fac5283710592ad7ebe37d5753210f3d1b51"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Feb 12 08:49:49 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 12 08:49:49 2024 -0500"
      },
      "message": "Added description to pom, added initial release candidate script (#39)\n\n"
    },
    {
      "commit": "7926fac5283710592ad7ebe37d5753210f3d1b51",
      "tree": "3435ce79f058e042571b39179bd2625b77d20ced",
      "parents": [
        "ed9ff06d5dfc01bb1ef111e731ad8abe7c1addd0"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Jan 31 11:47:54 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 31 11:47:54 2024 -0500"
      },
      "message": "Update antlr contrib maven project with recent changes (#38)\n\n"
    },
    {
      "commit": "ed9ff06d5dfc01bb1ef111e731ad8abe7c1addd0",
      "tree": "e91c44b451f18122fd91ab44977f48f018e810a4",
      "parents": [
        "a8b2b8c482fc23982a879cb94c0c01963ec01741"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Jan 31 08:13:20 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 31 08:13:20 2024 -0500"
      },
      "message": "Minor changes to source and pom based on review (#36)\n\n"
    },
    {
      "commit": "a8b2b8c482fc23982a879cb94c0c01963ec01741",
      "tree": "22ea9d165a0f4e3af9379c5fda98a8a05de9ffd9",
      "parents": [
        "42f6f986d6144bd9e60acfcebd51943362797a34"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Fri Jan 26 07:38:14 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 26 07:38:14 2024 -0500"
      },
      "message": "Bumped SpotBugs and ErrorProne plugins, marked classes final (#35)\n\nBumping SpotBugs flagged a couple of classes with CT_CONSTRUCTOR_THROW.\r\nDecided to mark all classes final, it\u0027s one of the remedies listed at\r\nhttps://spotbugs.readthedocs.io/en/stable/bugDescriptions.html#ct-be-\r\nwary-of-letting-constructors-throw-exceptions-ct-constructor-throw.\r\n\r\nI also removed the sec-bugs profile and moved that plugin into the\r\nnormal spotbugs run."
    },
    {
      "commit": "42f6f986d6144bd9e60acfcebd51943362797a34",
      "tree": "dbd8d28a7ea201bc959d328b08aa85af3f60192a",
      "parents": [
        "cb6a2d4171ae7c1068b0cf89343edaa46726fbdf"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Thu Jan 25 14:08:33 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 25 14:08:33 2024 -0500"
      },
      "message": "Some touch-ups before release. (#34)\n\n1. Fixed some javadoc\r\n2. Removed unused code\r\n3. Removed use of streams\r\n4. Removed Builder from AccessEvaluator for consistency\r\n5. Added note in javadoc for API objects about UTF-8 expectations\r\n"
    },
    {
      "commit": "cb6a2d4171ae7c1068b0cf89343edaa46726fbdf",
      "tree": "12cf828bd1c7ef8a5e1acbfb54ed9953826d0574",
      "parents": [
        "4f34b6638484a3875bd5172273a0fb6c7c735944"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Wed Jan 24 14:40:00 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 24 14:40:00 2024 -0500"
      },
      "message": "Improves performance by avoiding parse tree creation (#31)\n\nImproves the performance by evaluating and parsing an expression at the \r\nsame time and avoiding creation of a parse tree. Also some other steps were\r\ntaken to avoid other object allocations.\r\n\r\nSeeing really good performance with these changes when running the benchmark.\r\n"
    },
    {
      "commit": "4f34b6638484a3875bd5172273a0fb6c7c735944",
      "tree": "3e9a6ed156e3e10e45657005e63ac8ceb7442815",
      "parents": [
        "46b5b877c3eaf433b122812701f47ae5c65ff0c4"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Jan 22 13:43:38 2024 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 22 13:43:38 2024 -0500"
      },
      "message": "Added additional build plugins in preparation for release (#33)\n\n"
    },
    {
      "commit": "46b5b877c3eaf433b122812701f47ae5c65ff0c4",
      "tree": "80f77f459b77b42508cac49e439045254d0112ad",
      "parents": [
        "3568c093eb0cc6c56b0302acb9864191f534ba5f"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Oct 30 11:39:21 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 30 11:39:21 2023 -0400"
      },
      "message": "Adds check for classes in public API (#32)\n\nAdds a script to check which top level classes are in the public API.\r\nThis is not something apilyzer can do, it can only check that the top\r\nlevel classes do not use non-public API types.  So this script along\r\nwith aplyizer should avoid unintended types from leaking into the public\r\nAPI."
    },
    {
      "commit": "3568c093eb0cc6c56b0302acb9864191f534ba5f",
      "tree": "750731dff9f1abae78c4423f6e450985a582ac86",
      "parents": [
        "f80088003bcb69101a99066f3aed3b9780a02033"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Oct 30 09:15:31 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 30 09:15:31 2023 -0400"
      },
      "message": "replaces stream with loop to increase performance (#30)\n\nThis commit removes a stream used during expression evaluation.\r\nRemoving it made a noticeable performance difference. Seeing the\r\nfollowing numbers in the performance test related to evaluation with\r\nthis change.\r\n\r\n```\r\nBenchmark                                               Mode  Cnt   Score   Error   Units\r\nAccessExpressionBenchmark.measureEvaluation            thrpt   12  20.230 ± 0.331  ops/us\r\nAccessExpressionBenchmark.measureEvaluationAndParsing  thrpt   12   8.415 ± 0.206  ops/us\r\n```\r\n\r\nRunning the same test without these changes seeing the following.\r\n\r\n```\r\nBenchmark                                               Mode  Cnt   Score   Error   Units\r\nAccessExpressionBenchmark.measureEvaluation            thrpt   12  14.664 ± 0.937  ops/us\r\nAccessExpressionBenchmark.measureEvaluationAndParsing  thrpt   12   6.988 ± 0.352  ops/us\r\n```"
    },
    {
      "commit": "f80088003bcb69101a99066f3aed3b9780a02033",
      "tree": "718973291700b7d60d49ebca108685fef845b5aa",
      "parents": [
        "261b5c303df3bae0d311689e14e1e029ae43d849"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Thu Oct 26 16:36:08 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 26 16:36:08 2023 -0400"
      },
      "message": "Replace backslash literal with variable (#29)\n\n"
    },
    {
      "commit": "261b5c303df3bae0d311689e14e1e029ae43d849",
      "tree": "184a99f0869f94f4c9867b5974cb79df2d6d44ef",
      "parents": [
        "c959026c8631da8691764b3f20a9148b84bafc99"
      ],
      "author": {
        "name": "Dom G",
        "email": "domgarguilo@apache.org",
        "time": "Thu Oct 26 15:17:41 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 26 15:17:41 2023 -0400"
      },
      "message": "Miscellaneous Improvements (#27)\n\n* Misc cleanup\r\n* Remove mentions of mutations and visibility\r\n* Add byte constant class and helper methods\r\n\r\n---------\r\n\r\nCo-authored-by: Dave Marion \u003cdlmarion@apache.org\u003e\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e"
    },
    {
      "commit": "c959026c8631da8691764b3f20a9148b84bafc99",
      "tree": "204a33514afb0df31332f870316e6b82724766f0",
      "parents": [
        "8036595571ccc2a3ee3854327d4d95ef00ab8161"
      ],
      "author": {
        "name": "Dom G",
        "email": "domgarguilo@apache.org",
        "time": "Mon Oct 16 11:08:57 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 16 11:08:57 2023 -0400"
      },
      "message": "Improve the Specification Documentation (#26)\n\n* Improve the Specification Documentation\r\n\r\n---------\r\n\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e"
    },
    {
      "commit": "8036595571ccc2a3ee3854327d4d95ef00ab8161",
      "tree": "547d62149e5c8d1d15b51bb80c97e185fe1353c5",
      "parents": [
        "681259800111e2656834d70e42b80757ab513677"
      ],
      "author": {
        "name": "Dom G",
        "email": "domgarguilo@apache.org",
        "time": "Fri Oct 13 14:04:16 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 13 14:04:16 2023 -0400"
      },
      "message": "Remove caching functionality (#25)\n\n* Remove caching functionality\r\n\r\n* Update javadoc to recommend external caching\r\n\r\n---------\r\n\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e"
    },
    {
      "commit": "681259800111e2656834d70e42b80757ab513677",
      "tree": "fd5f76d682a3e9fef77e1263b45af52a52f4e5b0",
      "parents": [
        "27e7bcb0900b46656d8abc6927ba15c6ed33173a"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Thu Oct 05 17:21:13 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 05 17:21:13 2023 -0400"
      },
      "message": "Bump spotbugs checks to rank 20 (#24)\n\nBump spotbugs aggressiveness to rank 20 and fix 3 new issues:\r\n* Add missing serialVersionUID field for anonymous subclass of\r\n  serializable class\r\n* Make use of description field from test data to avoid spotbugs error\r\n  about unused field (the alternative was to suppress it; I thought\r\n  printing it was better, since the description is there for our\r\n  convenience)\r\n* Internal mutable type leaking through benchmark class\u0027s API\r\n\r\nAlso include trivial fixes from code review in #22:\r\n* Simplified .equals to one line\r\n* Use character class for matching on literal dot to avoid escape\r\n  confusion with backslash\r\n\r\n* Avoid copy of internal mutable list by making benchmark class method non-public\r\n* Update src/test/java/org/apache/accumulo/access/AccessExpressionBenchmark.java\r\n\r\nCo-authored-by: Keith Turner \u003ckturner@apache.org\u003e\r\n"
    },
    {
      "commit": "27e7bcb0900b46656d8abc6927ba15c6ed33173a",
      "tree": "5a0a8c9e9bd7e26ff5519e934e62b86988fa33fc",
      "parents": [
        "0c65546f86ded3c9f25d5e90c61dde053b145382"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Wed Oct 04 09:22:19 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 04 09:22:19 2023 -0400"
      },
      "message": "Add compiler release to pom, Add build for JDK 21 (#23)\n\n"
    },
    {
      "commit": "0c65546f86ded3c9f25d5e90c61dde053b145382",
      "tree": "15a8a38a0e854c0ebc031b8ef8e1dbdcf5dca46f",
      "parents": [
        "15bd66e38d3030f7ebcd791ffab8f0eb794b041d"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Tue Oct 03 10:06:53 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 03 10:06:53 2023 -0400"
      },
      "message": "fixes build errors (#22)\n\n"
    },
    {
      "commit": "15bd66e38d3030f7ebcd791ffab8f0eb794b041d",
      "tree": "8bc5793b57536371d0b7f862cb68d39432c7c288",
      "parents": [
        "25332a1c05e7f359aa9dff9b75fa3c21e247b11d"
      ],
      "author": {
        "name": "Keith Turner",
        "email": "kturner@apache.org",
        "time": "Mon Oct 02 16:02:42 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 02 16:02:42 2023 -0400"
      },
      "message": "updates approved chars in build (#21)\n\n"
    },
    {
      "commit": "25332a1c05e7f359aa9dff9b75fa3c21e247b11d",
      "tree": "299b5015a4e37d6053ef40e44576eb3e0f47b867",
      "parents": [
        "3f9b439780f3d4002e32352c9ce27edc9de66cff"
      ],
      "author": {
        "name": "Dave Marion",
        "email": "dlmarion@apache.org",
        "time": "Mon Oct 02 11:47:56 2023 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 02 11:47:56 2023 -0400"
      },
      "message": "Bump SpotBugs plugin version and fix typo (#20)\n\n"
    }
  ],
  "next": "3f9b439780f3d4002e32352c9ce27edc9de66cff"
}
