)]}'
{
  "log": [
    {
      "commit": "71bd23bb9ec4d27d314ca80ad289821e42e41f72",
      "tree": "b142f48cee502551c28a6283d8659c9fb59537b3",
      "parents": [
        "127050d2b54bd6224bc53573228e8774dc7be28b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 09:32:15 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 09:32:15 2026 -0400"
      },
      "message": "NumberUtils.isCreatable(String) should match\nNumberUtils.createNumber(String), exactly #1626.\n"
    },
    {
      "commit": "127050d2b54bd6224bc53573228e8774dc7be28b",
      "tree": "26df6f5f018c19a83f613eb642575fc6c88bf328",
      "parents": [
        "f57155b008025e55b7e45b6b34cafa203b0729c4"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@users.noreply.github.com",
        "time": "Thu Apr 16 09:29:30 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 16 09:29:30 2026 -0400"
      },
      "message": "NumberUtils.isCreatable(String) should match NumberUtils.createNumber(String), exactly (#1626)\n\n* Add testLang1641()\n\n* Rename some test methods\n\n* NumberUtils.isCreatable(String) should match\nNumberUtils.createNumber(String), exactly\n\nAdd tests from PR #1623"
    },
    {
      "commit": "f57155b008025e55b7e45b6b34cafa203b0729c4",
      "tree": "ed7eea2ebe8ad3651c1a999b5f83702bf1569d44",
      "parents": [
        "2efeade6d6559aff999b295f0a7260b3da37d477"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 07:10:44 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 07:10:44 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.35.1 to 4.35.2\n"
    },
    {
      "commit": "2efeade6d6559aff999b295f0a7260b3da37d477",
      "tree": "d44c58306a8614b643fb0bdeced07d054c994f6b",
      "parents": [
        "3c784fcb71bfb5e93c50aca6073aea9a2921c8a7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 11:02:32 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 11:02:32 2026 -0400"
      },
      "message": "Add \"ppc64le\" to ArchUtils #1625.\n\nSee https://bugs.gentoo.org/972590\nBug 972590 - dev-java/commons-lang-3.20.0:\njava.lang.NullPointerException: Cannot invoke\n\"org.apache.commons.lang3.arch.Processor.toString()\" because\n\"\u0026lt;local1\u0026gt;\"\n"
    },
    {
      "commit": "3c784fcb71bfb5e93c50aca6073aea9a2921c8a7",
      "tree": "383a30bb1c5b6f547e5e5b17eb77d8fbeb9d5373",
      "parents": [
        "bb675e1127adb7f7c8d8687667bc11779d8e75eb"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 10:58:27 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 10:58:27 2026 -0400"
      },
      "message": "Fix and sort action types\n"
    },
    {
      "commit": "bb675e1127adb7f7c8d8687667bc11779d8e75eb",
      "tree": "4ed2af7b341adbdc8f316fdbe5cc129e2f014064",
      "parents": [
        "23a730b8ed392ba424cc275df793dcae88f4cebe"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@users.noreply.github.com",
        "time": "Wed Apr 15 10:55:52 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 15 10:55:52 2026 -0400"
      },
      "message": "Add \"ppc64le\" to ArchUtils (#1625)\n\n* Add testLang1641()\n\n* Rename some test methods\n\n* Add \"ppc64le\" to ArchUtils.\n\n- See https://bugs.gentoo.org/972590\n  Bug 972590 - dev-java/commons-lang-3.20.0:\njava.lang.NullPointerException: Cannot invoke\n\"org.apache.commons.lang3.arch.Processor.toString()\" because \"\u003clocal1\u003e\"\nis null\n- Like #1624 but with tests"
    },
    {
      "commit": "23a730b8ed392ba424cc275df793dcae88f4cebe",
      "tree": "1b5e0b6b0879e06e0a7bc5032f6e58c54c42be93",
      "parents": [
        "7138b8c001b9c60176598a21c0d15db43f8d8a1f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 08:16:13 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 15 08:16:13 2026 -0400"
      },
      "message": "No need to end exception messages with an exclamation!\n"
    },
    {
      "commit": "7138b8c001b9c60176598a21c0d15db43f8d8a1f",
      "tree": "0639aacb17a53a10e8b5ab099f5e0d5e74ed41db",
      "parents": [
        "a58a303f21e8fab195d94ec5c6fa7e388c616357"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:55:13 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:55:13 2026 -0400"
      },
      "message": "Bump actions/upload-artifact from 7.0.0 to 7.0.1\n"
    },
    {
      "commit": "a58a303f21e8fab195d94ec5c6fa7e388c616357",
      "tree": "7aaa7edbb7dbfca98e453d7727a28957edb5b77e",
      "parents": [
        "045d29e161cddaaa602db05dff23df6f20d2bd2c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:49:12 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:49:12 2026 -0400"
      },
      "message": "Bump actions/cache from 5.0.4 to 5.0.5\n"
    },
    {
      "commit": "045d29e161cddaaa602db05dff23df6f20d2bd2c",
      "tree": "04270aa13bba326d024ae3e2a6c45d66a800693e",
      "parents": [
        "0ba92dc402312a38252a3398931ffbfbb4a88f7d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 10 08:23:02 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 10 08:23:02 2026 -0400"
      },
      "message": "Reuse SystemProperties.\n"
    },
    {
      "commit": "0ba92dc402312a38252a3398931ffbfbb4a88f7d",
      "tree": "a4302facfdb5d8080bb233e8b6ec6709a0ef94f5",
      "parents": [
        "1da69ddc391bbafe8bb05aaf7e05ef2f46af804f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:55:26 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:55:26 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 97 to 98\n"
    },
    {
      "commit": "1da69ddc391bbafe8bb05aaf7e05ef2f46af804f",
      "tree": "132a0a243b51838c7f326cdb5d7b8b1eaab11b6f",
      "parents": [
        "2c3fb23f331c9b5c68bff45ef0cbee19c1a0db30"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:55:15 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:55:15 2026 -0400"
      },
      "message": "Fix broken Javadoc HTML tags\n"
    },
    {
      "commit": "2c3fb23f331c9b5c68bff45ef0cbee19c1a0db30",
      "tree": "0c85f3d740ea0a0377d0485c5e245eb30da1fe5a",
      "parents": [
        "348a6d9b4d6c916a5b5d712e4a4daf48508100cc"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 05 09:52:08 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 05 09:52:08 2026 -0400"
      },
      "message": "Use static imports only for JUnit\n"
    },
    {
      "commit": "348a6d9b4d6c916a5b5d712e4a4daf48508100cc",
      "tree": "22b0da40e4251ef0f0869c02f452b4f39d655df0",
      "parents": [
        "dd9b5efd703e07f7bb4f83977ac3772c85fc8b49"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 09:57:37 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 09:57:37 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "dd9b5efd703e07f7bb4f83977ac3772c85fc8b49",
      "tree": "4737f56c2af4647941509b9e5601d67418587a5b",
      "parents": [
        "acb1436cf509389d607799f903bc0d51cd45c202"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 06:53:11 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 06:53:11 2026 -0400"
      },
      "message": "Run builds only on push to master and pull requests\n"
    },
    {
      "commit": "acb1436cf509389d607799f903bc0d51cd45c202",
      "tree": "9cc62d05a88909086e2e96966a19df81026a9151",
      "parents": [
        "20a5464c818f0e134edbb4c02163f6d5525f0c84"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 06:20:34 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 06:20:34 2026 -0400"
      },
      "message": "Bump actions/checkout from 6.0.1 to 6.0.2\n"
    },
    {
      "commit": "20a5464c818f0e134edbb4c02163f6d5525f0c84",
      "tree": "695dd5579ca76b0aff6ae85c6bd8fdeb2a3e2944",
      "parents": [
        "fd12207b0bf02b39098b413ee618a748fb3dd450"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 21:44:39 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 21:44:39 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.34.1 to 4.35.1\n"
    },
    {
      "commit": "fd12207b0bf02b39098b413ee618a748fb3dd450",
      "tree": "9c034c811e0712e2ea28fcc9acf8763adcb3a9ce",
      "parents": [
        "4d52dd2e873bf9152d5132256d7a8c2b4e975bd9"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 20:41:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 20:41:28 2026 -0400"
      },
      "message": "Bump actions/dependency-review-action from 4.8.2 to 4.9.0\n"
    },
    {
      "commit": "4d52dd2e873bf9152d5132256d7a8c2b4e975bd9",
      "tree": "24a66aebc98539597107d9a25fe53ae3c731b3e8",
      "parents": [
        "17d5b97222e0bebb6c04c3c3418ddedff26993da"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:16:54 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:16:54 2026 -0400"
      },
      "message": "Bump Bump actions/cache from 5.0.3 to 5.0.4\n"
    },
    {
      "commit": "17d5b97222e0bebb6c04c3c3418ddedff26993da",
      "tree": "328049306f129643a40d47fc7c407e6ef22249b9",
      "parents": [
        "1d25499cbce483544092bd69521ab62fcfdf775f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Mar 28 16:13:59 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Mar 28 16:13:59 2026 -0400"
      },
      "message": "[LANG-1820][javadoc] Fix ObjectUtils.anyNull(Object) for empty arrays\n"
    },
    {
      "commit": "1d25499cbce483544092bd69521ab62fcfdf775f",
      "tree": "5958aa908416a0d8783d64c554882ea96b86cdac",
      "parents": [
        "ae89768b9b58be04332ce4cba4d2c27ad2ad3783"
      ],
      "author": {
        "name": "Partha Protim Paul",
        "email": "ppartha101@gmail.com",
        "time": "Sat Mar 28 13:13:49 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 28 16:13:49 2026 -0400"
      },
      "message": "[LANG-1820][javadoc] Fix ObjectUtils.anyNull(Object) for empty arrays"
    },
    {
      "commit": "ae89768b9b58be04332ce4cba4d2c27ad2ad3783",
      "tree": "9b7f62c7d82217ed5ddd68c4b57c5b2bf2b75dae",
      "parents": [
        "088be66cc47df65f628ad044a2685e9046e37b7a"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 27 14:49:24 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 27 14:49:24 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.34.0 to 4.34.1\n"
    },
    {
      "commit": "088be66cc47df65f628ad044a2685e9046e37b7a",
      "tree": "a9d032b785f8b456a7b5bfaa713a83df0535595a",
      "parents": [
        "422ab637736e06076c04a768ce03ecc2e5344937"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 24 08:05:51 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 24 08:05:51 2026 -0700"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "422ab637736e06076c04a768ce03ecc2e5344937",
      "tree": "2404b9fbf1c81129a8ab4ea69197242ab3f79d5f",
      "parents": [
        "e9d7d3508bd825fdce00d673f06968a75bb50b23"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Mar 22 22:15:59 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Mar 22 22:15:59 2026 -0700"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "e9d7d3508bd825fdce00d673f06968a75bb50b23",
      "tree": "8b5598691ce76aea28ad09c9570621ff3b836374",
      "parents": [
        "ab34e331bb6b0ab3f83b795e12e30a3ff012c3b2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:39:53 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:39:53 2026 -0700"
      },
      "message": "Deprecate Validate.Validate().\n"
    },
    {
      "commit": "ab34e331bb6b0ab3f83b795e12e30a3ff012c3b2",
      "tree": "186ce746bb911b2a18cb2ee625af1a6662075c72",
      "parents": [
        "42869864586c8f420dcb0e54b449af39ca62f161"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:32:34 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:32:34 2026 -0700"
      },
      "message": "Bump github/codeql-action from 4.32.6 to 4.34.0\n"
    },
    {
      "commit": "42869864586c8f420dcb0e54b449af39ca62f161",
      "tree": "0ac6c53e25cc854f925bda3beec69b3f1099390d",
      "parents": [
        "1fa1193bd84840c04f173d14d068a55caf1e4dd3"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 10:35:57 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 10:35:57 2026 -0700"
      },
      "message": "[LANG-1813] ArrayUtils#hashCode() Javadoc incorrectly states “null\nreturns zero” (actual result is 629)"
    },
    {
      "commit": "1fa1193bd84840c04f173d14d068a55caf1e4dd3",
      "tree": "4c68c6647a588c83fae091774aa3ec75721f6a50",
      "parents": [
        "bd247e45f3edf3d9670398aae63588f2057107ca"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 19 23:46:47 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 19 23:46:47 2026 +0000"
      },
      "message": "Add a reference to safe deserlialization\n"
    },
    {
      "commit": "bd247e45f3edf3d9670398aae63588f2057107ca",
      "tree": "9a3341ff7fee2bbe87d50cc9693e269ee0d492ea",
      "parents": [
        "487ba4d9a60e678be874ceb9274384268bb32a13"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 17 09:32:07 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 17 09:32:07 2026 -0400"
      },
      "message": "Use String.format()\n"
    },
    {
      "commit": "487ba4d9a60e678be874ceb9274384268bb32a13",
      "tree": "132a88f7fd254cdf2ba82906a5c838532599ee07",
      "parents": [
        "aaf9b51a79273c3bcbf066894ed471ee5037a8fa"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 11 21:54:54 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 11 21:54:54 2026 -0400"
      },
      "message": "Remove link to now malicious site."
    },
    {
      "commit": "aaf9b51a79273c3bcbf066894ed471ee5037a8fa",
      "tree": "568d9d58bdd2ea219bd144a7899a047297632f9d",
      "parents": [
        "25918c08edf64b02eef7dd3734b91d770c8344aa"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 09 08:44:02 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 09 08:44:02 2026 -0400"
      },
      "message": "Bump actions/upload-artifact from 6.0.0 to 7.0.0\n"
    },
    {
      "commit": "25918c08edf64b02eef7dd3734b91d770c8344aa",
      "tree": "1258bf5c4eaae73b296c6ba6f5a2613e4d8bb1f2",
      "parents": [
        "a8bc9f3dcf4939075ff9bc13c0dc263e61d8d98e"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Mar 07 14:03:18 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Mar 07 14:03:18 2026 -0500"
      },
      "message": "Tests a custom collection and map with EqualsBuilder.reflectionEquals\n"
    },
    {
      "commit": "a8bc9f3dcf4939075ff9bc13c0dc263e61d8d98e",
      "tree": "4890aaada6160006e5ef6128aedc03be27a3a2b1",
      "parents": [
        "16f30b4c0fa04c49ab54a02224b47ed7aed2d467"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 15:11:37 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 15:11:37 2026 -0500"
      },
      "message": "Better text\n"
    },
    {
      "commit": "16f30b4c0fa04c49ab54a02224b47ed7aed2d467",
      "tree": "419a3baf5dd86b13f240fb39f72a27521f9b1e68",
      "parents": [
        "c28cc55f0db71abcd82b6a8606dfa29d6ed73f92"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 15:10:34 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 15:10:34 2026 -0500"
      },
      "message": "[LANG-1819] Javadoc ArrayUtils.removeAll() null input behavior\n"
    },
    {
      "commit": "c28cc55f0db71abcd82b6a8606dfa29d6ed73f92",
      "tree": "338c7af823c26290da9f770cba1aae319be1e1c3",
      "parents": [
        "7f07c8273b517c0a0bbdb1eda8156a87b51086b9"
      ],
      "author": {
        "name": "Partha Protim Paul",
        "email": "ppartha101@gmail.com",
        "time": "Fri Mar 06 12:08:25 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 06 15:08:25 2026 -0500"
      },
      "message": "LANG-1819: Fix ArrayUtils.removeAll() Javadoc for null array input (#1614)\n\n* updated the javadoc for Arrayutils.removeAll to match the implementation which returns null in case of null input\n\n* fixed the grammar\n\n* fixed the grammar"
    },
    {
      "commit": "7f07c8273b517c0a0bbdb1eda8156a87b51086b9",
      "tree": "58f81ba3f50617ec1ac20a94429f4cbf209417fd",
      "parents": [
        "ca21966b93b6cc43ce2ec3a37018921d66251ac2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 07:36:19 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 06 07:36:19 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.32.5 to 4.32.6\n"
    },
    {
      "commit": "ca21966b93b6cc43ce2ec3a37018921d66251ac2",
      "tree": "77af3547c72cf503f6a3c6db7dccc83304e13aaf",
      "parents": [
        "ede2d7ea65fa115e0a2c943b5ab4e2114a3a71be"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 16:08:05 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 16:08:05 2026 -0500"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "ede2d7ea65fa115e0a2c943b5ab4e2114a3a71be",
      "tree": "2a03b8d1a2edd41d1ad860cac1aed9b2d024d76e",
      "parents": [
        "677e57f56bfae93af520637d47a615013c930266"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:29:29 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:29:29 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "677e57f56bfae93af520637d47a615013c930266",
      "tree": "7c8663ecef5147834d069c30332050bd6f686e5b",
      "parents": [
        "db1352609787ccdbb2e34be9e7d2e647eacc91cc"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:29:18 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:29:18 2026 -0500"
      },
      "message": "Fix NullPointerException in StopWatch.getStopTime()\n"
    },
    {
      "commit": "db1352609787ccdbb2e34be9e7d2e647eacc91cc",
      "tree": "0bfd1b7ceb708dcfe2d805e8534ff24632475a3e",
      "parents": [
        "aa47951bd0223d674d2b85d06ccc6f7f1749a682"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:24:27 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Mar 04 14:24:27 2026 -0500"
      },
      "message": "Fix StopWatch\u0027s stopInstant match stopTimeNanos when split is\ncalled #1610\n"
    },
    {
      "commit": "aa47951bd0223d674d2b85d06ccc6f7f1749a682",
      "tree": "46291e6d6505fe62af801773cd9981aebd6b497c",
      "parents": [
        "185edc4b8594e20d81baad65a199a211e2137616"
      ],
      "author": {
        "name": "Lars Helge Øverland",
        "email": "lars@dhis2.org",
        "time": "Wed Mar 04 20:22:06 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 04 14:22:06 2026 -0500"
      },
      "message": "fix: Make stopInstant be in sync with stopTimeNanos for split (#1610)\n\n* fix: Make stopInstant in sync with stopTimeNanos\n\n* Fix trailing whitespace\n\n---------\n\nCo-authored-by: Gary Gregory \u003cgarydgregory@users.noreply.github.com\u003e"
    },
    {
      "commit": "185edc4b8594e20d81baad65a199a211e2137616",
      "tree": "aca7c4a468559894bc4b57e72eed0705e6097a85",
      "parents": [
        "78dc56503a5d430a761ad29974571b90bbf3df84"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 02 08:34:21 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 02 08:34:21 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.32.4 to 4.32.5\n"
    },
    {
      "commit": "78dc56503a5d430a761ad29974571b90bbf3df84",
      "tree": "7ce525a170948b78abaa244e8a11fbd9da04ea9f",
      "parents": [
        "a4dd12fb8f1d22077a20f4d63046572ebb92bf7b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 28 07:09:52 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 28 07:09:52 2026 -0500"
      },
      "message": "Bump org.apache.commons:commons-parent from 96 to 97.\n"
    },
    {
      "commit": "a4dd12fb8f1d22077a20f4d63046572ebb92bf7b",
      "tree": "9bed6d06d14a2685dac2e9e810c6ffca2ba209c4",
      "parents": [
        "31844842416cf04d8fe3a0c4bf266778faec6842"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Feb 23 10:58:58 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Feb 23 10:58:58 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.32.0 to 4.32.4\n"
    },
    {
      "commit": "31844842416cf04d8fe3a0c4bf266778faec6842",
      "tree": "1c8b395b0a5b07590ea74af9a02dd222246a700e",
      "parents": [
        "36e941d186e2b9d90b116022cee862ced6258225"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 16:11:29 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 16:11:29 2026 -0500"
      },
      "message": "Reuse constants\n\nFormat tweaks\n"
    },
    {
      "commit": "36e941d186e2b9d90b116022cee862ced6258225",
      "tree": "5c83561f1e9c81addb1ff13d5bcccb9a2b12c612",
      "parents": [
        "a9a0dd8a72c51b14f0e5ea4bddfbf228685ff977"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 16:10:03 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 16:10:03 2026 -0500"
      },
      "message": "[LANG-771] DateUtils.ceiling does not behave correctly for dates on the\nboundaries\n"
    },
    {
      "commit": "a9a0dd8a72c51b14f0e5ea4bddfbf228685ff977",
      "tree": "20abe8f852bb21603f691032f6bbb4856d7331d2",
      "parents": [
        "b56c6882fb2d1bb3eb21adea3ae95c3856ea4b5c"
      ],
      "author": {
        "name": "Indy",
        "email": "109909013+makarandhinge@users.noreply.github.com",
        "time": "Mon Feb 23 02:37:04 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 22 16:07:04 2026 -0500"
      },
      "message": "LANG-771 Fix DateUtils.ceiling increment on exact boundary (#1609)\n\n* LANG-771 Fix DateUtils.ceiling increment on exact boundary\n\n* Fix Checkstyle violations for LANG-771\n\n* LANG-771 Add edge case tests for DateUtils.ceiling()\n\nAdd tests for:\n- Epoch (0)\n- Negative date (-1)\n- Long.MIN_VALUE and Long.MAX_VALUE handling\n- Minute boundary case"
    },
    {
      "commit": "b56c6882fb2d1bb3eb21adea3ae95c3856ea4b5c",
      "tree": "2e9c385cef1f57c6ca2993343339c05b27a3046c",
      "parents": [
        "f00b0b23f653e6641a284eae302c31337944806c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:44:00 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:44:00 2026 -0500"
      },
      "message": "Add test assertions for the max date.\n"
    },
    {
      "commit": "f00b0b23f653e6641a284eae302c31337944806c",
      "tree": "83abd7355ef3f4af8ba1dd465065df7e8a0662f5",
      "parents": [
        "d4d25fd8165ef0e701e95ae032449d0b2962c3d6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:19:23 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:19:23 2026 -0500"
      },
      "message": "Add assertions for the max Date\n"
    },
    {
      "commit": "d4d25fd8165ef0e701e95ae032449d0b2962c3d6",
      "tree": "dcd94e3cc1b6674814a5654aaaf6da8322656222",
      "parents": [
        "a6fd5ccd77b145ca45fdb9b7637cfdfa3fa0b7a6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:14:45 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 10:14:45 2026 -0500"
      },
      "message": "Add assertions for the max Date\n"
    },
    {
      "commit": "a6fd5ccd77b145ca45fdb9b7637cfdfa3fa0b7a6",
      "tree": "35292e2434d6c36fc685f8e8fb9500818cbf2662",
      "parents": [
        "c62d9f73c6ea5dcbc716f34e798ae88f91889ca6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 09:58:49 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 09:58:49 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "c62d9f73c6ea5dcbc716f34e798ae88f91889ca6",
      "tree": "8ba6ce795df7bc3147f1702ba3b6ff9d09a83f74",
      "parents": [
        "41ff88094519308750fdcca6b1f7525550bde55f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 09:58:44 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 22 09:58:44 2026 -0500"
      },
      "message": "Reduce visibility of test classes and methods per JUnit 5 conventions\n"
    },
    {
      "commit": "41ff88094519308750fdcca6b1f7525550bde55f",
      "tree": "901154144af31d05f0c35b2106c42c6ffdde20c9",
      "parents": [
        "32b2d92ca330dca1d3ac3951bc870a21bceb2334"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 08:12:28 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 08:12:28 2026 -0500"
      },
      "message": "Adjust Javadoc since tags\n"
    },
    {
      "commit": "32b2d92ca330dca1d3ac3951bc870a21bceb2334",
      "tree": "33f660e062e07d468937db4ccc55e76f16b231bb",
      "parents": [
        "7489d6e21334673dc56399de7decaaa00f11ebcf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:45:31 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:45:31 2026 -0500"
      },
      "message": "Javadoc"
    },
    {
      "commit": "7489d6e21334673dc56399de7decaaa00f11ebcf",
      "tree": "f70515d58e48cdc112799a491a514c91996bf320",
      "parents": [
        "b3cd50b19e89792fa587bea3fa7d79709ab46c48"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:36:34 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:36:34 2026 -0500"
      },
      "message": "CharSet now maintains iteration order\n\nJavadoc\n"
    },
    {
      "commit": "b3cd50b19e89792fa587bea3fa7d79709ab46c48",
      "tree": "2a451eb6e5edbc2b487b968654feebf99de94484",
      "parents": [
        "2eca27e38219fadb4b685024d6065680e1f71000"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:17:52 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:17:52 2026 -0500"
      },
      "message": "[Javadoc] Add usage examples to CharSet.contains(char) #1605\n"
    },
    {
      "commit": "2eca27e38219fadb4b685024d6065680e1f71000",
      "tree": "989a6b7ea0efb587b9eb85431ef99119ad0c828c",
      "parents": [
        "7ebab00f402277ef061410a7a51deb9c3e5aa93b"
      ],
      "author": {
        "name": "Mohammad Bireybi",
        "email": "37206707+Milanx22@users.noreply.github.com",
        "time": "Sat Feb 21 13:15:50 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 21 07:15:50 2026 -0500"
      },
      "message": "[Javadoc]: Add usage examples to `CharSet.contains` Javadoc (#1605)\n\n* [Javadoc]: Add usage examples to `CharSet.contains` Javadoc\n\n* [Javadoc]: Fix minor punctuation in `CharSet.contains` Javadoc\n\n* [Javadoc]: Standardize parameter description in `CharSet.contains` Javadoc - revert to original form\n\n* [Javadoc]: Expand and copy examples in `CharSet.contains` Javadoc for clarification from class level.\n\n* Clarify examples for negation character in CharSet\n\nUpdated example description to clarify usage of negation character.\n\n---------\n\nCo-authored-by: Gary Gregory \u003cgarydgregory@users.noreply.github.com\u003e"
    },
    {
      "commit": "7ebab00f402277ef061410a7a51deb9c3e5aa93b",
      "tree": "4790191dc06c6709176eed686ed9ecc90b78aaf4",
      "parents": [
        "0a40edb3adaa61ba77523da04ba4595946c836ff"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:14:45 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 21 07:14:45 2026 -0500"
      },
      "message": "Disable debug output in org.apache.commons.lang3.math.NumberUtilsTest\n\nAdd a debug toggle for this test\n"
    },
    {
      "commit": "0a40edb3adaa61ba77523da04ba4595946c836ff",
      "tree": "b5b5f601728d83021a7e7015fe8fcc4284e1898d",
      "parents": [
        "25adf415c4acb943310def123b5d6c0e61c8c0e5"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 20 07:42:24 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 20 07:42:24 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.32.2 to 4.32.3\n"
    },
    {
      "commit": "25adf415c4acb943310def123b5d6c0e61c8c0e5",
      "tree": "8db213fd2e30c016a5cc5355b3310932fbd7948d",
      "parents": [
        "595705d9a97cec393c2161e3f6ca21c1358bfeb8"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 15 10:10:32 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 15 10:10:32 2026 -0500"
      },
      "message": "Normalize Javadoc spelling\n"
    },
    {
      "commit": "595705d9a97cec393c2161e3f6ca21c1358bfeb8",
      "tree": "703f705e8915b315d0430eac9363e3c5679df3ce",
      "parents": [
        "ef871ec905b71b0e01371fd16f0007a967c6c98d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 16:46:12 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 16:46:12 2026 -0500"
      },
      "message": "Remove unnecessary lambda block\n"
    },
    {
      "commit": "ef871ec905b71b0e01371fd16f0007a967c6c98d",
      "tree": "7e95b2af9403b81feab84a009a2b2489cde45f58",
      "parents": [
        "1875db4f71db52f5a741368cc6a6a6a89883427b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 16:43:18 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 16:43:18 2026 -0500"
      },
      "message": "Remove empty lines\n"
    },
    {
      "commit": "1875db4f71db52f5a741368cc6a6a6a89883427b",
      "tree": "68c3f74cf36baeaf4b0a945466ebf1034dbfd607",
      "parents": [
        "da6d3371c053be80e6d57c969105fcca9999b0af"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 08:13:12 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 13 08:13:12 2026 -0500"
      },
      "message": "Add test coverage for negative-day adjustment in\nDurationFormatUtils #1596\n\n- Sort new methods\n- Remove empty lines, use longer lines\n"
    },
    {
      "commit": "da6d3371c053be80e6d57c969105fcca9999b0af",
      "tree": "c1ee965e292a2433706875a4f45a757798e5746f",
      "parents": [
        "cfaaa2377e4b67981f17f7dd4336f89643ae893e"
      ],
      "author": {
        "name": "TK_ENDO",
        "email": "67488730+nine0703@users.noreply.github.com",
        "time": "Fri Feb 13 21:09:20 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Feb 13 08:09:20 2026 -0500"
      },
      "message": "Add test coverage for negative-day adjustment in DurationFormatUtils (#1596)\n\nAdds unit tests covering month-boundary and leap-year cases that\ntrigger the internal negative-days borrowing logic in\nDurationFormatUtils.formatPeriod.\n\nRemoves obsolete TODO about missing JaCoCo coverage."
    },
    {
      "commit": "cfaaa2377e4b67981f17f7dd4336f89643ae893e",
      "tree": "676cb8c6028d5f792374a5b384e1bba004350e77",
      "parents": [
        "4a6a98432f57e6286ba48777268a26b68dfd9547"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Feb 11 19:02:48 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Feb 11 19:02:48 2026 -0500"
      },
      "message": "ix StringUtils.abbreviate(String, String, int) contract\nviolations #1572.\n"
    },
    {
      "commit": "4a6a98432f57e6286ba48777268a26b68dfd9547",
      "tree": "5623a8ff992d5c51caac254c673b9574fdc482cd",
      "parents": [
        "e23f95374d89c828562c788b8373609d46dd5b07"
      ],
      "author": {
        "name": "ThrawnCA",
        "email": "carl.antuar@smartservice.qld.gov.au",
        "time": "Thu Feb 12 10:01:22 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 11 19:01:22 2026 -0500"
      },
      "message": "StringUtils.abbreviate(String, String, int) contract violations (#1572)\n\n* add unit tests showing mishandling of null abbrevMarker\n\n* fix handling of null abbrevMarker\n\n- treat null marker as empty string\n- ensure offset and maxWidth are applied as usual (simple \u0027substring\u0027 won\u0027t cut it)\n\n* add unit tests showing \u0027abbreviate\u0027 contract violations\n\n- Abbreviated strings should always retain the \u0027offset\u0027 character\n\n* remove surplus blank lines from tests\n\n* fix StringUtils.abbreviate for short strings\n\nAdjust logic so it doesn\u0027t overwrite the offset value and get confused about which character to preserve. \r\nInstead, just return immediately if the offset is so close to the end that no ending abbrevMarker is possible."
    },
    {
      "commit": "e23f95374d89c828562c788b8373609d46dd5b07",
      "tree": "46fa720d2ddf7a6736be8ec4439f2786d8dd5724",
      "parents": [
        "21b1c297d4da30b4b973d92077244959387dafc7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Feb 09 13:12:02 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Feb 09 13:12:02 2026 +0000"
      },
      "message": "Bump actions/cache from 5.0.2 to 5.0.3\n"
    },
    {
      "commit": "21b1c297d4da30b4b973d92077244959387dafc7",
      "tree": "f054fc4c190b4d428ca1754d78dbf8ce5e17bb22",
      "parents": [
        "fa392404994e3e505317f2babf78560363da2330"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 07 15:01:43 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 07 15:01:43 2026 -0500"
      },
      "message": "[LANG-1817] UncheckedFutureImpl clears thread interrupt status when\nwrapping InterruptedException.\n\nSort members\n"
    },
    {
      "commit": "fa392404994e3e505317f2babf78560363da2330",
      "tree": "e4235938b01197b5e666c169cd1a24e83fd4d487",
      "parents": [
        "3a055bac2363392bb2f3323b13d2716010d0b989"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 07 14:56:12 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Feb 07 14:56:12 2026 -0500"
      },
      "message": "[LANG-1817] UncheckedFutureImpl clears thread interrupt status when\nwrapping InterruptedException.\n\nPartial application of patch #1590.\n"
    },
    {
      "commit": "3a055bac2363392bb2f3323b13d2716010d0b989",
      "tree": "d0bc7655ea34be19ec411b84c2001dcc0afac550",
      "parents": [
        "ea6efc596834861ec2238422e08cd440f83c5f71"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 06 09:35:52 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 06 09:35:52 2026 -0500"
      },
      "message": "Use \tmax-parallel: 20 as asked by Apache Infra\n"
    },
    {
      "commit": "ea6efc596834861ec2238422e08cd440f83c5f71",
      "tree": "f7a11662d53ae1c19a90b8de07ad9fca446d32a6",
      "parents": [
        "4eb7bdfb8b6f54219342fbaf8a36f6af94e3e481"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 06 12:35:17 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Feb 06 12:35:17 2026 +0000"
      },
      "message": "Bump github/codeql-action from 4.32.0 to 4.32.2\n"
    },
    {
      "commit": "4eb7bdfb8b6f54219342fbaf8a36f6af94e3e481",
      "tree": "05b6be888522ea5fdb416d017599edb993a8720d",
      "parents": [
        "e1ffb6ea0b9e21ea71c4540b0fca4db8e4c1dd93"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 01 07:58:31 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Feb 01 07:58:31 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "e1ffb6ea0b9e21ea71c4540b0fca4db8e4c1dd93",
      "tree": "904e4ae57a3386ff74361b2bccb6d0cdee241e16",
      "parents": [
        "2cdac973e3d2fa0b9590b4ffb1b02bb4c99c73d7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 19:56:28 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 19:56:28 2026 -0500"
      },
      "message": "ThreadUtils.sleepQuietly(Duration) now restores the current thread\u0027s\ninterrupt flag when catching InterruptedException.\n"
    },
    {
      "commit": "2cdac973e3d2fa0b9590b4ffb1b02bb4c99c73d7",
      "tree": "cec8b7e8139f563a56f843484ff0c74cbc9e3cfe",
      "parents": [
        "d40798da5984e49b56efff6b86700edadd1136bf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 15:45:39 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 15:45:39 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.31.11 to 4.32.0\n"
    },
    {
      "commit": "d40798da5984e49b56efff6b86700edadd1136bf",
      "tree": "d2d7dde67f570f0de20afda946bd0e0b06da20a5",
      "parents": [
        "4052e9862bf540f0b294bcf58aad5b5e85eae4ad"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 15:36:52 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Jan 28 15:36:52 2026 -0500"
      },
      "message": "[LANG-1818] Fix ClassUtils.getShortClassName(Class) to correctly handle\n$ in valid class names #1591\n\n- Javadoc\n- Sort class name\n- Sort new members\n"
    },
    {
      "commit": "4052e9862bf540f0b294bcf58aad5b5e85eae4ad",
      "tree": "4dd2acd169b61983785b31d47e190a6ab7235785",
      "parents": [
        "7bcb03a49923bc12f7e3f2c04912d0925f178978"
      ],
      "author": {
        "name": "Ivan Ponomarev",
        "email": "iponomarev@mail.ru",
        "time": "Wed Jan 28 20:29:46 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 28 15:29:46 2026 -0500"
      },
      "message": "LANG-1818: Fix ClassUtils.getShortClassName(Class) to correctly handle $ in valid class names (#1591)\n\n* fix lang-1818\n\n* fix review comments\n\n* Checkstyle\n\n---------\n\nCo-authored-by: Gary Gregory \u003cgarydgregory@users.noreply.github.com\u003e"
    },
    {
      "commit": "7bcb03a49923bc12f7e3f2c04912d0925f178978",
      "tree": "c975040955c7534194ce64f6b03b75e68d1d5a3a",
      "parents": [
        "c477140acaa10ad56c203dfc8209f657091f3a3d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 21:47:36 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 21:47:36 2026 -0500"
      },
      "message": "Fix StringIndexOutOfBoundsException message in StrBuilder.append(char[],\nint, int)\n"
    },
    {
      "commit": "c477140acaa10ad56c203dfc8209f657091f3a3d",
      "tree": "83a48a7e3e6e4fbfb8412f0882a70096b6b19885",
      "parents": [
        "24e0b283d1f5887457c30e239f0f1ddb79d9f7bd"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 20:26:56 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 20:26:56 2026 -0500"
      },
      "message": "LANG-1816: ArrayUtils contains/indexOf/indexesOf with tolerance fail to\nmatch NaN values #1589\n"
    },
    {
      "commit": "24e0b283d1f5887457c30e239f0f1ddb79d9f7bd",
      "tree": "d6662f55c3179f6663f8f86b7594c17a35add29f",
      "parents": [
        "52c06bea2f2b6c277c517dc9f5bb0d62d17e073c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 20:25:41 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Jan 27 20:25:41 2026 -0500"
      },
      "message": "Sort members\n"
    },
    {
      "commit": "52c06bea2f2b6c277c517dc9f5bb0d62d17e073c",
      "tree": "2b05e8671a71c9bbb6a52124803fdceaabc0c089",
      "parents": [
        "9bca5d09c6d16a5524a3cd1d38305687ad7fdca4"
      ],
      "author": {
        "name": "Ivan Ponomarev",
        "email": "iponomarev@mail.ru",
        "time": "Wed Jan 28 01:25:02 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 27 20:25:02 2026 -0500"
      },
      "message": "fix LANG-1816 (#1589)\n\n"
    },
    {
      "commit": "9bca5d09c6d16a5524a3cd1d38305687ad7fdca4",
      "tree": "720946d836bcbd7b27096f9ada7e119bd62a64c6",
      "parents": [
        "3617bc18f162f7e02103ff7f94bec1facec65bdd"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 17:03:02 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 17:03:02 2026 -0500"
      },
      "message": "Refactor magic numbers\n\nJavadoc\n"
    },
    {
      "commit": "3617bc18f162f7e02103ff7f94bec1facec65bdd",
      "tree": "453931a51652522c8f58cbec0c0fbbe02fdd6f89",
      "parents": [
        "cebde0312d37eb5b9f8efb1974ef322bdb25142c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 16:58:48 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 16:58:48 2026 -0500"
      },
      "message": "Better internal names\n"
    },
    {
      "commit": "cebde0312d37eb5b9f8efb1974ef322bdb25142c",
      "tree": "212f7c92f8da62c974dc526aff593f50cff8468b",
      "parents": [
        "dfaa2382a9c8c93b13131ad25b0b4b7df6899038"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 16:35:43 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 16:35:43 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "dfaa2382a9c8c93b13131ad25b0b4b7df6899038",
      "tree": "2d0879156db15039c5d5716ede1f85ba138c92e3",
      "parents": [
        "26ead6134ad55bf1350e41f05f4d0cbe6d0be4be"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 14:02:49 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 14:02:49 2026 -0500"
      },
      "message": "[LANG-1814] ArrayUtils.subarray(..) may overflow index arithmetic and\nviolate contract for extreme index values\n"
    },
    {
      "commit": "26ead6134ad55bf1350e41f05f4d0cbe6d0be4be",
      "tree": "2f1d66ae386252e63f865a30edd0d53ecb03382b",
      "parents": [
        "87538ebd4de1d3f81aa8cec8af0ace1da1b23f60"
      ],
      "author": {
        "name": "Ivan Ponomarev",
        "email": "iponomarev@mail.ru",
        "time": "Mon Jan 26 18:58:22 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 26 13:58:22 2026 -0500"
      },
      "message": "[LANG-1814] ArrayUtils.subarray(..) may overflow index arithmetic and violate contract for extreme index values #1585\n\n"
    },
    {
      "commit": "87538ebd4de1d3f81aa8cec8af0ace1da1b23f60",
      "tree": "bf1f51d027ccc93399f1fb6ba543d0201818cee1",
      "parents": [
        "e7cdeac0f7c06e20645a491f7531b9618835fb56"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 10:31:28 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 10:31:28 2026 -0500"
      },
      "message": "Javadoc typo\n"
    },
    {
      "commit": "e7cdeac0f7c06e20645a491f7531b9618835fb56",
      "tree": "f2bd4b6f257b62a25ae012e7d3e4b773cf41dc3c",
      "parents": [
        "c5b1a87621fe341f343e7bc93249b4fd49a09ff4"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 09:37:24 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Jan 26 09:37:24 2026 -0500"
      },
      "message": "Bump github/codeql-action from 4.31.10 to 4.31.11\n"
    },
    {
      "commit": "c5b1a87621fe341f343e7bc93249b4fd49a09ff4",
      "tree": "749848c99f95a3400cba9b6f53cdb4eb131033cc",
      "parents": [
        "eefe5c88bc54a164380652f8c48c375c0ed2fa31"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 09:13:05 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 09:13:05 2026 -0500"
      },
      "message": "[LANG-1707\"] Add ArrayUtils.concat() methods for concatenating multiple\narrays #1519\n\nSort new members"
    },
    {
      "commit": "eefe5c88bc54a164380652f8c48c375c0ed2fa31",
      "tree": "53d44db6dcb8763f2154dffab504c6043750f827",
      "parents": [
        "d4cb5926ad85e592c22834f219710d31415e9f87"
      ],
      "author": {
        "name": "Ivan Malutin",
        "email": "ivamly.dev@gmail.com",
        "time": "Sun Jan 25 17:12:26 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 25 09:12:26 2026 -0500"
      },
      "message": "[LANG-1707] Add ArrayUtils.concat methods for concatenating multiple arrays (#1519)\n\n* LANG-1707 add concat methods to ArrayUtils\n\n* Add missing test assertions for null inputs\n\n- Javadoc\r\n- Use longer lines\n\n* Add Javadoc @throws\n\n---------\n\nCo-authored-by: Gary Gregory \u003cgarydgregory@users.noreply.github.com\u003e"
    },
    {
      "commit": "d4cb5926ad85e592c22834f219710d31415e9f87",
      "tree": "36de622b2d3aa4454dd6214a378ece854d53759e",
      "parents": [
        "1418a770ba436d15693c3bb29a67e501c2008274"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 08:44:19 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 08:44:19 2026 -0500"
      },
      "message": "[LANG-1452] RecursiveToStringStyle and MultilineRecursiveToStringStyle\nshouldn\u0027t recurse into a java.math.BigDecimal (#1584)\n"
    },
    {
      "commit": "1418a770ba436d15693c3bb29a67e501c2008274",
      "tree": "2a90ccabe8965ecd89fb0441fdd4c02438a9b273",
      "parents": [
        "3f803b8bf78602c9464b2d01023634e32df1c388"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@users.noreply.github.com",
        "time": "Sun Jan 25 08:41:44 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 25 08:41:44 2026 -0500"
      },
      "message": "[LANG-1452] RecursiveToStringStyle and MultilineRecursiveToStringStyle shouldn\u0027t recurse into a java.math.BigDecimal (#1584)\n\n* Add testLang1641()\n\n* Rename some test methods\n\n* [LANG-1452] RecursiveToStringStyle and MultilineRecursiveToStringStyle\nshouldn\u0027t recurse into a java.math.BigDecimal\n\n- We already don\u0027t recurse into a Decimal and other boxed primitive.\n- Don\u0027t recurse into Number subclasses.\n- Don\u0027t recurse into AtomicBoolean."
    },
    {
      "commit": "3f803b8bf78602c9464b2d01023634e32df1c388",
      "tree": "1346959136c3bc1059aa62c0075651f67e79f6e5",
      "parents": [
        "c9a185d6ef08beb5cc5c35aa9369a9a46f3199a2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 07:31:16 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 07:31:16 2026 -0500"
      },
      "message": "Call Object.getClass() once"
    },
    {
      "commit": "c9a185d6ef08beb5cc5c35aa9369a9a46f3199a2",
      "tree": "1492d1f5527d5e99a3f121ca2e34bf47c0014dac",
      "parents": [
        "91b536e4f502f940c6c64399737a1f129c2e0374"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 07:27:25 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jan 25 07:27:25 2026 -0500"
      },
      "message": "Add RecursiveToStringStyleTest.testPrimitiveWrapperArray()"
    },
    {
      "commit": "91b536e4f502f940c6c64399737a1f129c2e0374",
      "tree": "e954c344bfa27f182ebabea514f26e5c3df0b2c7",
      "parents": [
        "b98942fba3b2b4ba90c43bfa4effb48a170fe1a6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 08:28:30 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 08:28:30 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "b98942fba3b2b4ba90c43bfa4effb48a170fe1a6",
      "tree": "c1e422b34e1f99c1f7492eb757da778759c5bc90",
      "parents": [
        "934e6d85e62af738be6adcdb6abdd0f243445633"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 08:25:54 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 08:25:54 2026 -0500"
      },
      "message": "Add ArrayUtils.getDimensions(Object)\n"
    },
    {
      "commit": "934e6d85e62af738be6adcdb6abdd0f243445633",
      "tree": "c1a46d4bddd6219d98126a1875070e6a1d3c9e63",
      "parents": [
        "93be4f0a656220d58a6e16cae2ab2b66b5ea66bf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:42:37 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:42:37 2026 -0500"
      },
      "message": "Test JRE edge cases for Arrays versus ArrayUtils.hashCode()\n"
    },
    {
      "commit": "93be4f0a656220d58a6e16cae2ab2b66b5ea66bf",
      "tree": "3222bff19f3ac51e718de74f9fb79e293eb85949",
      "parents": [
        "351510bf02ee0e8d5583aa68f840a869af816bdf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:41:11 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:41:11 2026 -0500"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "351510bf02ee0e8d5583aa68f840a869af816bdf",
      "tree": "e180aa27c63c16a19f22e579c2ec5d7811f706d2",
      "parents": [
        "4bb9e2640d008a9cdf5db340ade4dc94b9f41497"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:20:43 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:20:43 2026 -0500"
      },
      "message": "Remove extra vertical whitespace"
    },
    {
      "commit": "4bb9e2640d008a9cdf5db340ade4dc94b9f41497",
      "tree": "cfb7daa9ec6d193810441d6a83bb633e376b9044",
      "parents": [
        "ae6b3eb219db75bb603ce1d99cd2a03698f94a6f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:16:05 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:16:05 2026 -0500"
      },
      "message": "Test JRE edge cases for Arrays versus ArrayUtils.hashCode()\n"
    },
    {
      "commit": "ae6b3eb219db75bb603ce1d99cd2a03698f94a6f",
      "tree": "da48918a7dc206cae0384c11d29287192fd3cb23",
      "parents": [
        "6f2a1062a9f81ece8b039400b34ad1482a35167a"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:02:40 2026 -0500"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Jan 24 07:02:40 2026 -0500"
      },
      "message": "Fix Javadoc in DoubleRange.of(Double, Double) to reflect actual\nexception type thrown #1581.\n"
    }
  ],
  "next": "6f2a1062a9f81ece8b039400b34ad1482a35167a"
}
