)]}'
{
  "log": [
    {
      "commit": "645e401978e35b7ee09f9d54c7fe9da34cf0761c",
      "tree": "634054edf1cfe5c2ffaf4fe7eefcbe157c29e3d9",
      "parents": [
        "a4d2933d9dfe4bcb2953c0568536a25a6c480f7a"
      ],
      "author": {
        "name": "Sharang Gupta",
        "email": "sharang@sharanggupta.dev",
        "time": "Thu Oct 22 01:39:53 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 22 00:39:53 2026 +0000"
      },
      "message": "Run RollingAppenderCountTest on 2.x again (#4413)\n\n* Add changelog entry for #4412\n\nSigned-off-by: Sharang Gupta \u003csharang@sharanggupta.dev\u003e\n\n* Run RollingAppenderCountTest on 2.x again\n\nThe test was ignored for LOG4J2-3522 because it was flaky. Port the\napproach of the fix on main (4387a2f3ce): wait for the rollovers with a\nRolloverListener and a CountDownLatch instead of sleeping between log\nevents, and check the number of files in the test method.\n\n* Revert \"Add changelog entry for #4412\"\n\nThis reverts commit ae1d323f7dcb9411967ee1aef5a3c9a2b6816fbd.\n\n* Count the rolled files after the logger context is stopped\n\nKeep the check of the 17 files in @AfterClass, which runs after the rule\nhas stopped the logger context, so it does not depend on the rollovers\nhaving completed on the logging thread.\n\n---------\n\nSigned-off-by: Sharang Gupta \u003csharang@sharanggupta.dev\u003e\nCo-authored-by: Ramanathan Muthu \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "a4d2933d9dfe4bcb2953c0568536a25a6c480f7a",
      "tree": "8948c31e7c847f0026ebd875c64eae4b2f913c45",
      "parents": [
        "3c7ed53f0f576645a9320069c7fed81073db286b"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Oct 22 04:34:30 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 22 04:34:30 2026 +0530"
      },
      "message": "Bump the maven-minor-2-x group across 1 directory with 18 updates (#4416)\n\nBumps the maven-minor-2-x group with 18 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.2` | `2.22.3` |\n| org.slf4j:slf4j-api | `2.0.18` | `2.0.20` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.1` | `1.23.0` |\n| org.apache.commons:commons-lang3 | `3.20.0` | `3.21.0` |\n| [com.google.guava:guava-testlib](https://github.com/google/guava) | `33.7.1-jre` | `33.7.2-jre` |\n| [org.jmdns:jmdns](https://github.com/jmdns/jmdns) | `3.6.3` | `3.6.4` |\n| [org.eclipse.platform:org.eclipse.osgi](https://github.com/eclipse-equinox/equinox) | `3.24.200` | `3.24.300` |\n| [org.codehaus.woodstox:stax2-api](https://github.com/FasterXML/stax2-api) | `4.3.0` | `4.3.2` |\n| [org.xmlunit:xmlunit-core](https://github.com/xmlunit/xmlunit) | `2.13.0` | `2.14.0` |\n| [org.xmlunit:xmlunit-matchers](https://github.com/xmlunit/xmlunit) | `2.13.0` | `2.14.0` |\n| [org.xmlunit:xmlunit-matchers](https://github.com/xmlunit/xmlunit) | `2.13.0` | `2.14.0` |\n| [org.bouncycastle:bcpkix-jdk18on](https://github.com/bcgit/bc-java) | `1.85` | `1.86` |\n| [co.elastic.clients:elasticsearch-java](https://github.com/elastic/elasticsearch-java) | `9.5.3` | `9.5.5` |\n| [org.elasticsearch.client:elasticsearch-rest-client](https://github.com/elastic/elasticsearch) | `9.5.3` | `9.5.5` |\n| [org.elasticsearch.client:elasticsearch-rest-client](https://github.com/elastic/elasticsearch) | `9.5.3` | `9.5.5` |\n| [org.mongodb:bson](https://github.com/mongodb/mongo-java-driver) | `5.11.0` | `5.13.0` |\n| [org.mongodb:mongodb-driver-core](https://github.com/mongodb/mongo-java-driver) | `5.11.0` | `5.13.0` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `5.11.0` | `5.13.0` |\n| [org.mongodb:mongodb-driver-core](https://github.com/mongodb/mongo-java-driver) | `5.11.0` | `5.13.0` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `5.11.0` | `5.13.0` |\n| org.slf4j:slf4j-nop | `2.0.18` | `2.0.20` |\n| [org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle](https://github.com/apache/aries) | `1.3.7` | `1.3.8` |\n\n\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.2 to 2.22.3\n- [Commits](https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.2...jackson-bom-2.22.3)\n\nUpdates `org.slf4j:slf4j-api` from 2.0.18 to 2.0.20\n\nUpdates `commons-codec:commons-codec` from 1.22.1 to 1.23.0\n- [Changelog](https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.1...rel/commons-codec-1.23.0)\n\nUpdates `org.apache.commons:commons-lang3` from 3.20.0 to 3.21.0\n\nUpdates `com.google.guava:guava-testlib` from 33.7.1-jre to 33.7.2-jre\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\nUpdates `org.jmdns:jmdns` from 3.6.3 to 3.6.4\n- [Release notes](https://github.com/jmdns/jmdns/releases)\n- [Changelog](https://github.com/jmdns/jmdns/blob/main/CHANGELOG.txt)\n- [Commits](https://github.com/jmdns/jmdns/compare/v3.6.3...v3.6.4)\n\nUpdates `org.eclipse.platform:org.eclipse.osgi` from 3.24.200 to 3.24.300\n- [Commits](https://github.com/eclipse-equinox/equinox/commits)\n\nUpdates `org.codehaus.woodstox:stax2-api` from 4.3.0 to 4.3.2\n- [Commits](https://github.com/FasterXML/stax2-api/compare/stax2-api-4.3.0...stax2-api-4.3.2)\n\nUpdates `org.xmlunit:xmlunit-core` from 2.13.0 to 2.14.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.13.0...v2.14.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.13.0 to 2.14.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.13.0...v2.14.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.13.0 to 2.14.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.13.0...v2.14.0)\n\nUpdates `org.bouncycastle:bcpkix-jdk18on` from 1.85 to 1.86\n- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.md)\n- [Commits](https://github.com/bcgit/bc-java/commits)\n\nUpdates `co.elastic.clients:elasticsearch-java` from 9.5.3 to 9.5.5\n- [Release notes](https://github.com/elastic/elasticsearch-java/releases)\n- [Changelog](https://github.com/elastic/elasticsearch-java/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/elastic/elasticsearch-java/compare/v9.5.3...v9.5.5)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.5.3 to 9.5.5\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.5.3...v9.5.5)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.5.3 to 9.5.5\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.5.3...v9.5.5)\n\nUpdates `org.mongodb:bson` from 5.11.0 to 5.13.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.11.0...r5.13.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.11.0 to 5.13.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.11.0...r5.13.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.11.0 to 5.13.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.11.0...r5.13.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.11.0 to 5.13.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.11.0...r5.13.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.11.0 to 5.13.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.11.0...r5.13.0)\n\nUpdates `org.slf4j:slf4j-nop` from 2.0.18 to 2.0.20\n\nUpdates `org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle` from 1.3.7 to 1.3.8\n- [Release notes](https://github.com/apache/aries/releases)\n- [Commits](https://github.com/apache/aries/compare/spifly-1.3.7...spifly-1.3.8)\n\n---\nupdated-dependencies:\n- dependency-name: com.fasterxml.jackson:jackson-bom\n  dependency-version: 2.22.3\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.slf4j:slf4j-api\n  dependency-version: 2.0.20\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: commons-codec:commons-codec\n  dependency-version: 1.23.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.apache.commons:commons-lang3\n  dependency-version: 3.21.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: com.google.guava:guava-testlib\n  dependency-version: 33.7.2-jre\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.jmdns:jmdns\n  dependency-version: 3.6.4\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.eclipse.platform:org.eclipse.osgi\n  dependency-version: 3.24.300\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.codehaus.woodstox:stax2-api\n  dependency-version: 4.3.2\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-core\n  dependency-version: 2.14.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.14.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.14.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.bouncycastle:bcpkix-jdk18on\n  dependency-version: \u00271.86\u0027\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: co.elastic.clients:elasticsearch-java\n  dependency-version: 9.5.5\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.5\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.5\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:bson\n  dependency-version: 5.13.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.13.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.13.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.13.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.13.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.slf4j:slf4j-nop\n  dependency-version: 2.0.20\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle\n  dependency-version: 1.3.8\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "3c7ed53f0f576645a9320069c7fed81073db286b",
      "tree": "9ec1ae6e32525ba67d817d769f08f790ccc41659",
      "parents": [
        "a38a2f5d0c9f25031f206ba08442a3c545e00eb6"
      ],
      "author": {
        "name": "Sharang Gupta",
        "email": "sharang@sharanggupta.dev",
        "time": "Wed Oct 21 23:57:36 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 21 22:57:36 2026 +0000"
      },
      "message": "Respect logger-name hierarchy boundary in LoggerNameLevelRewritePolicy (#4414)\n\n`LoggerNameLevelRewritePolicy` matched `logger` as a plain string prefix, so `com.foo` also rewrote `com.foobar.*`.\nIt now matches the exact name or a `.`-separated descendant; an empty name or one ending in `.` still matches as a prefix.\nThe `createPolicy` javadoc and `delegating.adoc` are updated to match.\n\nSigned-off-by: Sharang Gupta \u003csharang@sharanggupta.dev\u003e"
    },
    {
      "commit": "a38a2f5d0c9f25031f206ba08442a3c545e00eb6",
      "tree": "3a19f76045c072218a1577d492819dabbc340d7a",
      "parents": [
        "a8ba265d9df2ade5389a8e550153e55e17934ec1"
      ],
      "author": {
        "name": "Sharang Gupta",
        "email": "sharang@sharanggupta.dev",
        "time": "Wed Oct 21 18:22:01 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 21 17:22:01 2026 +0000"
      },
      "message": "Fix the formatting of instants before the epoch (#4399) (#4400)\n\nFix the formatting of instants before the epoch (#4400)\n\nFor instants before 1970, `MutableInstant.initFromEpochMilli` produced a negative nano of second and `%d` printed wrong seconds from a wrong cached minute.\nBoth now use `Math.floorDiv` and `Math.floorMod`, so the output matches `java.time`.\nAdds tests to `MutableInstantTest` and `InstantPatternDynamicFormatterTest`.\n\n---------\n\nCo-authored-by: Ramanathan Muthu \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "a8ba265d9df2ade5389a8e550153e55e17934ec1",
      "tree": "f9697546676c9ccc4ebdfcd0904391b71ed5dfaa",
      "parents": [
        "f580896855de5c8adc645ca88fcd127d17b5c542"
      ],
      "author": {
        "name": "Efe",
        "email": "efe@rexcode.co.uk",
        "time": "Wed Oct 21 02:52:30 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 20 23:52:30 2026 +0000"
      },
      "message": "fix: handle SSL stores without an explicit type (#4359)\n\n* fix: handle SSL stores without an explicit type\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* fix: handle default SSL store types consistently\n\nAssisted-by: Codex (GPT-5)\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* style: apply Spotless formatting\n\n* Test empty-password PKCS12 keystore loading\n\n* Update src/changelog/.2.x.x/4346_default_keystore_type.xml\n\n---------\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\nCo-authored-by: Ramanathan Muthu \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "f580896855de5c8adc645ca88fcd127d17b5c542",
      "tree": "bdd25e8982c0cd2c1ecec84472187482288c41e0",
      "parents": [
        "46cc090c4af531fda9d17bf6fdbceb918db2d149"
      ],
      "author": {
        "name": "Aryan Singh",
        "email": "aryansinghthree@gmail.com",
        "time": "Wed Oct 21 01:27:30 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 20 19:57:30 2026 +0000"
      },
      "message": "Document JNDI provider configuration for JMS (#4361)\n\n* Document JNDI provider configuration for JMS\n\n---------\n\nCo-authored-by: Ramanathan Muthu \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "46cc090c4af531fda9d17bf6fdbceb918db2d149",
      "tree": "b0af4feb5a51685d8aa7d9fc71b1f2a68b4d42df",
      "parents": [
        "96d48ec710680f387ea9049f514b98b03b3f92ff"
      ],
      "author": {
        "name": "zsewasdsdsd",
        "email": "zsewasdsdsd@gmail.com",
        "time": "Wed Oct 21 00:41:26 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 20 22:11:26 2026 +0530"
      },
      "message": "Create a fresh InitialContext for each JndiManager (#4363)\n\n* Create a fresh InitialContext for each JndiManager\n\nAvoid sharing JNDI contexts through the AbstractManager registry. Each factory invocation now creates and closes its own InitialContext, while retaining the AbstractManager superclass on the 2.x branch for binary compatibility.\n\nFixes #4339\n\n* Add JndiManager failure and close regression tests"
    },
    {
      "commit": "96d48ec710680f387ea9049f514b98b03b3f92ff",
      "tree": "d96d90f9bf7656ce582f12bac8056be70cc8de1d",
      "parents": [
        "fcaa90b5bc40c49edd1854c604787521f52bd9cf"
      ],
      "author": {
        "name": "Efe",
        "email": "gokdemirefe1903@gmail.com",
        "time": "Tue Oct 20 15:27:18 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 20 12:27:18 2026 +0000"
      },
      "message": "Fix HTTP appender handling of invalid evaluated headers (#4360)\n\n* Fix HTTP appender handling of invalid headers\n\n* test: verify invalid HTTP header warnings\n\nAssisted-by: Codex (GPT-5)\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* style: apply Spotless formatting\n\n* Fix handling of invalid HTTP appender header values\n\n---------\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\nCo-authored-by: Ramanathan Muthu \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "fcaa90b5bc40c49edd1854c604787521f52bd9cf",
      "tree": "9ed4c309dabf05fb16f93d97bceebe581854a389",
      "parents": [
        "c0de1b86282065b597cc6e4b911389c8d9ea03fd"
      ],
      "author": {
        "name": "Ralph Goers",
        "email": "rgoers@apache.org",
        "time": "Sun Oct 18 07:44:29 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 18 20:14:29 2026 +0530"
      },
      "message": "Fix intermittent failsures in CronExpressionTest (#4405)"
    },
    {
      "commit": "c0de1b86282065b597cc6e4b911389c8d9ea03fd",
      "tree": "ede4200b6d6cd41c196b5ef1a47fa526d5f678d4",
      "parents": [
        "c4b80d72a793e4c2e9f54289186c9ea169ef9afd"
      ],
      "author": {
        "name": "Efe",
        "email": "gokdemirefe1903@gmail.com",
        "time": "Wed Oct 07 10:59:14 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 07 07:59:14 2026 +0000"
      },
      "message": "Honor legacy basic authentication encoding property (#4358)\n\n* fix: honor legacy basic auth encoding\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* test: verify basic auth UTF-8 default\n\nAssisted-by: Codex (GPT-5)\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* style: apply Spotless formatting\n\n* Update src/changelog/.2.x.x/4347_auth_encoding.xml\n\n* Apply suggestion from @ramanathan1504\n\n---------\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "c4b80d72a793e4c2e9f54289186c9ea169ef9afd",
      "tree": "4a5d9de93ebda6d193c3e8c117cd8520bf02d483",
      "parents": [
        "ed1c451fdbfe89df3b95ec3232c40cd20d9b74de"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Tue Oct 06 22:55:44 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 07 01:25:44 2026 +0530"
      },
      "message": "Preserve Log4j 1 lookups when converting a properties configuration (#4353)\n\n* Keep Log4j 1 variable indirection in the properties converter\n\nThe converter shared the runtime parser, so ${...} was resolved against\nthe current JVM and the output captured host system properties. Rewrite\nfile-defined names to configuration properties and other names to\n${sys:name}. The runtime factory still resolves variables.\n\nFixes #4348\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\n\n* Cite PR 4353 in the changelog\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\n\n* Map every Log4j 1 ${name} to ${sys:name} in the converter\n\nLog4j 1 reads system properties before the file, and ${sys:name} falls\nback to a configuration property when the system property is unset.\nDrop isDefinedProperty and cover the threshold lookup.\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\n\n---------\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "ed1c451fdbfe89df3b95ec3232c40cd20d9b74de",
      "tree": "989490fba3cfef2f0b6342247e5f26e0c2613b28",
      "parents": [
        "77d892c4453ab19d85beaff2c74b8edb04b22ff1"
      ],
      "author": {
        "name": "Abhinav",
        "email": "alpha9coder@gmail.com",
        "time": "Tue Oct 06 23:53:23 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 06 18:23:23 2026 +0000"
      },
      "message": "Honor bufferSize and bufferedIo in ConsoleAppender (#4341)\n\n* Honor bufferSize and bufferedIo in ConsoleAppender (#4338)\n\n* Address review feedback on ConsoleAppender bufferSize handling\n\n- Cover the flush derivation with testUnbufferedIoForcesImmediateFlush,\n  which fails if !bufferedIo || isImmediateFlush() reverts to\n  isImmediateFlush().\n- Drop the bufferSize/bufferedIo warning. \bufferSize defaults to 8192,\n  so it fired for every \bufferedIo\u003dfalse console that never set\n  \bufferSize, and the message was untrue because the manager still\n  uses \bufferSize in that case.\n- Remove \bufferedIo from the manager name. The manager is not built\n  from it, so including it split otherwise identical managers.\n\n* Update src/changelog/.2.x.x/4338_console_buffer_size.xml\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "77d892c4453ab19d85beaff2c74b8edb04b22ff1",
      "tree": "8a14a3082506c548e4a4afe2a4937c36ba6ee400",
      "parents": [
        "c23805af3a14c5cadd95f71353c6b2c074260261"
      ],
      "author": {
        "name": "Wu Shuwen",
        "email": "mikewushuwen@outlook.com",
        "time": "Wed Oct 07 02:00:59 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 06 18:00:59 2026 +0000"
      },
      "message": "Clear the database appender buffer when committing fails (#4319)\n\n* Discard buffered events when a database commit fails\n\n`AbstractDatabaseManager#flush` cleared the buffer in a `finally` block\nthat also contained `commitAndClose`. If committing or closing the\ntransaction threw, the `clear()` was skipped, so the events stayed in the\nbuffer and were sent to the database a second time by the next flush.\nSince `flush()` is also called from `shutdown()`, and the buffer only\ngrows while the failure persists, this leaked log events and produced\nduplicate rows.\n\nMove `buffer.clear()` into an inner `finally` block so that events are\ndiscarded regardless of the outcome of `commitAndClose`.\n\n* Warn when database appender buffer is discarded after flush failure\n\n* Test the empty-buffer guard and the discard warning after restart\n\n* Update src/changelog/.2.x.x/4318_fix_database_appender_buffer_on_failed_commit.xml\n\n---------\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "c23805af3a14c5cadd95f71353c6b2c074260261",
      "tree": "a4323e161bb3ca65e7181e36b700ca7d03602ca9",
      "parents": [
        "d1f6587018dbd8af2fd257af25aafdd98005cbf2"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Tue Oct 06 18:26:26 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 06 21:56:26 2026 +0530"
      },
      "message": "Merge `log4j-*-java9` modules into `log4j-api` and `log4j-core` (#4260)\n\nThe `log4j-api-java9` and `log4j-core-java9` modules are a relict from\nan era where multi-release JAR content could not be produced by the\nconsuming Maven module itself.  Each compiled a handful of Java 9\nsources (padded with stub classes to satisfy the compiler), zipped them\nin a `classes/META-INF/versions/9` layout and had the consumer unpack\nthe zip into `target` at `prepare-package`.\n\nCompile the Java 9 sources directly in `log4j-api` and `log4j-core`\ninstead, using a second `maven-compiler-plugin` execution over\n`src/main/java9` with `\u003crelease\u003e9\u003c/release\u003e` and\n`\u003cmultiReleaseOutput\u003etrue\u003c/multiReleaseOutput\u003e`.  The execution stays\nbound to `prepare-package` so that `bnd-maven-plugin` (at\n`process-classes`) never sees the versioned classes, as before; the\n`Multi-Release: true` manifest entry keeps coming from the\n`bnd-multi-release` property.  The published artifacts are unchanged:\nthe versioned class list and bytecode are identical, and the stubs\nare no longer needed since the real classes are on the compile\nclasspath.\n\nThe Java 9 `StackLocator` tests move to `log4j-api-test` as a\n`maven-failsafe-plugin` integration test running against the packaged\nmulti-release JAR, with a guard assertion that the\n`META-INF/versions/9` variant is actually loaded.  The two\n`getCurrentStackTrace` tests only passed against the old module\u0027s\nstubbed `PrivateSecurityManagerStackTraceUtil` and are dropped: against\nthe real classes they exercise the `SecurityManager` path, which\n`StackLocatorUtilTest` already covers.  The Java 9 `ProcessIdUtilTest`\nwas assertion-identical to the existing one in `log4j-api-test`.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "d1f6587018dbd8af2fd257af25aafdd98005cbf2",
      "tree": "744d5ceffdb7ed0f438533f47864d27329cadae9",
      "parents": [
        "fe07fd34775e1229d750a3b1641b1dd42b8b4d6c"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Oct 03 13:13:33 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 13:13:33 2026 +0530"
      },
      "message": "Bump com.github.luben:zstd-jni from 1.5.7-16 to 1.5.7-19 (#4382)\n\n* Bump com.github.luben:zstd-jni from 1.5.7-16 to 1.5.7-19\n\nBumps [com.github.luben:zstd-jni](https://github.com/luben/zstd-jni) from 1.5.7-16 to 1.5.7-19.\n- [Commits](https://github.com/luben/zstd-jni/compare/v1.5.7-16...v1.5.7-19)\n\n---\nupdated-dependencies:\n- dependency-name: com.github.luben:zstd-jni\n  dependency-version: 1.5.7-19\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4382\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "fe07fd34775e1229d750a3b1641b1dd42b8b4d6c",
      "tree": "df3fca8005ad246465b5b57b9452b935fc3f99a0",
      "parents": [
        "30e117e54bc91da42e90a2c0a6f8cd5c3fefe023"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Oct 03 13:10:55 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 13:10:55 2026 +0530"
      },
      "message": "Bump org.slf4j:slf4j-nop from 2.0.18 to 2.0.20 in /log4j-mongodb4 in the maven-minor-2-x group across 1 directory (#4377)\n\n* Bump org.slf4j:slf4j-nop\n\nBumps the maven-minor-2-x group with 1 update in the /log4j-mongodb4 directory: org.slf4j:slf4j-nop.\n\n\nUpdates `org.slf4j:slf4j-nop` from 2.0.18 to 2.0.20\n\n---\nupdated-dependencies:\n- dependency-name: org.slf4j:slf4j-nop\n  dependency-version: 2.0.20\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4377\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "30e117e54bc91da42e90a2c0a6f8cd5c3fefe023",
      "tree": "712929c650b6fa933bcbb9d63fad6f7a0f18fecf",
      "parents": [
        "e076aa5f230c77f0a873655c4308913dbdc35b28"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Fri Oct 02 07:17:27 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 02 10:47:27 2026 +0530"
      },
      "message": "Do not output partially serialized events in `SerializedLayout` (#4368)\n\n* Do not output partially serialized events in `SerializedLayout`\n\nIf the serialization of a log event failed, `SerializedLayout.toByteArray`\nlogged the error, but still returned the bytes written so far, which\nproduced a truncated record in the output. It now returns an empty\narray.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Add PR number to changelog entry\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "e076aa5f230c77f0a873655c4308913dbdc35b28",
      "tree": "1852126764664615bf6ce430ff085cc0295b20f8",
      "parents": [
        "6a4d9c2ab01195848d401b0486eb933012d7515f"
      ],
      "author": {
        "name": "Andrew",
        "email": "andrew.bystrik@gmail.com",
        "time": "Thu Oct 01 18:21:47 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 01 15:21:47 2026 +0000"
      },
      "message": "Restore UNCACHED thread name updates in AsyncLogger (#4280)\n\nFix stale thread names in fully asynchronous loggers using the `UNCACHED` strategy. \n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "6a4d9c2ab01195848d401b0486eb933012d7515f",
      "tree": "aa92489991ec12000e4b6c86b58221f393ae5f6e",
      "parents": [
        "6bba23c58ebf93cd4408e3e12021fb733bfb3ced"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 23:07:06 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 23:07:06 2026 +0200"
      },
      "message": "Simplify the serialization of `ObjectArrayMessage` and `ParameterizedMessage` (#4274)\n\n* Serialize message arguments with the array helpers\n\n`ObjectArrayMessage` and `ParameterizedMessage` now write their\narguments as a single `byte[][]` array, built with\n`SerializationUtil.wrapObjects`, instead of a length followed by the\nwrapped arguments. Each argument is serialized separately, so that\narguments that cannot be serialized are replaced with their string\nrepresentation, and the arrays are allocated by the JDK.\n\nThis also fixes the serialization of a `ParameterizedMessage` with\n`null` arguments, which threw a `NullPointerException`.\n\nThe serialized forms are incompatible with previous versions, so the\n`serialVersionUID`s are changed.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Update src/changelog/.2.x.x/4274_wrap_object_array_message_serialization.xml\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "6bba23c58ebf93cd4408e3e12021fb733bfb3ced",
      "tree": "7efc577189551a143450032f7c36ffc954e9b475",
      "parents": [
        "9cb17cf7b77e85760dba50aa4ee094dd526f8856"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 23:07:05 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 23:07:05 2026 +0200"
      },
      "message": "Simplify the serialization of `SortedArrayStringMap` (#4272)\n\nUse the default Java serialization for all the fields of\n`SortedArrayStringMap`, except `values`, which is written as a\n`byte[][]` array. Each value is serialized separately, so that values\nthat cannot be serialized are replaced with their string representation.\n\n`SerializationUtil` gets the `wrapObject` and `unwrapObject` helpers,\nwhich serialize and deserialize a single object to and from a byte\narray, and the `wrapObjects` and `unwrapObjects` helpers, which do the\nsame for each element of an array.\n\nThe serialized form is incompatible with previous versions, so the\n`serialVersionUID` is changed.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "9cb17cf7b77e85760dba50aa4ee094dd526f8856",
      "tree": "b6b97d9435c34acc6a289a55e2699bf610a94782",
      "parents": [
        "5b89c4dcbeabdbfa3b64a5f9a5f6bef71bda1a35"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 23:07:05 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 23:07:05 2026 +0200"
      },
      "message": "Serialize the `LogEvent` message without `MarshalledObject` (#4271)\n\n* Serialize the LogEvent message delegate through the filtered wrapper\n\n`Log4jLogEvent.LogEventProxy` used `java.rmi.MarshalledObject` to\ntransport its `Message` delegate. `MarshalledObject.get()` deserializes\nits embedded bytes on a private, unfiltered `ObjectInputStream`, so the\ndelegate escaped the deserialization allow-list entirely.\n\nThe message is now written with the same\n`SerializationUtil.writeWrappedObject`/`readWrappedObject` mechanism\nused by `ObjectMessage`, which re-applies the allow-list to the nested\nstream, and `java.rmi.MarshalledObject` is removed from the allow-list.\n\nCompatibility: log events serialized by Log4j 2.8.2-2.25.x are rejected\nby newer readers, since `MarshalledObject` no longer passes the filter.\nEvents serialized by this version remain readable by older versions,\nwith the message downgraded to a `SimpleMessage`. The serialized-event\nfixture in `Log4jLogEventTest` is regenerated accordingly, and the\nstale, unused `serializedEvent.dat` resource is removed\n(`SerializedLayoutTest` always rewrites it before reading).\n\nPart of the hardening series from #4168.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n\n* Remove `MarshalledObject` from the documented allowlist and test filter\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Fall back to a serializable value for unserializable objects\n\n`SerializationUtil.writeWrappedObject` now takes a fallback, which is\nwritten instead of the object if it is not `Serializable` or its\nserialization fails. Failed serializations are logged as warnings.\n\n- `LogEventProxy` writes a `SimpleMessage` with the formatted message,\n  as it did when the message was wrapped in a `MarshalledObject`.\n- `ObjectMessage` writes its formatted message.\n- `ParameterizedMessage` and `SortedArrayStringMap` write the string\n  representation of the value. For `SortedArrayStringMap`, this replaces\n  the `null` previously written for non-serializable values.\n\n`UnserializableMessage` in `log4j-api-test` provides a reusable example\nof a `Serializable` object that cannot be serialized.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Note the serialization format change in the changelog\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Throw on nested objects rejected during deserialization\n\n`readWrappedObject` returned `null` for any nested object that could\nnot be read, including classes rejected by the filter of the stream.\nThe nested stream now behaves like the outer one: `IOException`s,\nincluding filter rejections, are thrown. Only classes that are not\navailable on the reader, `ClassNotFoundException` and `LinkageError`,\nare still replaced with `null`.\n\nAdds tests with a nested `java.net.URI`, which is not on the allowlist,\nin `ObjectMessage` and in a `Log4jLogEvent`.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Test deserialization of a message with an unknown class\n\nA message whose class is allowed by the deserialization filter, but not\navailable to the reader, degrades to a `SimpleMessage` with the\nformatted message.\n\nThe Base64 fixtures in `Log4jLogEventTest` are folded into multiple\nlines.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "5b89c4dcbeabdbfa3b64a5f9a5f6bef71bda1a35",
      "tree": "a39cbf5cac9bf2ade529b25581c0468b39683e78",
      "parents": [
        "a8578d1782327d23f8639311cfab81148307c500"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 12:45:51 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 16:15:51 2026 +0530"
      },
      "message": "Apply the deserialization filter in test helpers on Java 9+ (#4270)\n\n* Apply the deserialization filter in test helpers on Java 9+\n\nThe `SerialUtil` test helper returned a plain, unfiltered\n`ObjectInputStream` on Java 9 and later, so the deserialization\nallowlist was only ever exercised by tests running on a Java 8\ntoolchain. It now installs `DefaultObjectInputFilter` (reflectively,\nsince the class must still compile and run on Java 8), combined with an\n`ObjectInputFilter.Config.createFilter` delegate built from the\ncaller-supplied extra allowed classes, reproducing the\n`FilteredObjectInputStream` semantics on modern JDKs. When\n`DefaultObjectInputFilter` is absent (it only exists in the packaged\nmulti-release JAR), the helper falls back to\n`FilteredObjectInputStream` on any Java version.\n\n`SerializationTestHelper` in `log4j-1.2-api` now delegates to\n`SerialUtil`, so its `org.apache.log4j.*` extras are honored on all\nJava versions as well.\n\nPart of the hardening series from #4168.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n\n* Always use `FilteredObjectInputStream` in `SerialUtil`\n\n`DefaultObjectInputFilter` is being removed (#4365). Using\n`FilteredObjectInputStream` on every Java version checks that the\nserialized forms of Log4j stay within its documented allowlist.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Test log event deserialization with `jdk.serialFilter`\n\nAdds a Surefire execution to `log4j-core-test` that runs the log event\nserialization tests with the process-wide `jdk.serialFilter` recommended\nby OpenJDK, and notes in `SerialUtil` that using\n`FilteredObjectInputStream` in tests is not a recommendation.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Select serialization tests by tag\n\n- tag the tests that deserialize Log4j classes with `serialization` and\n  select them by tag in the `test-serial-filter` execution\n- migrate `SerializedLayoutTest` to JUnit 5\n- make `SerialUtil` return a plain `ObjectInputStream` if\n  `jdk.serialFilter` is set, and document the two kinds of tests it is\n  used for\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "a8578d1782327d23f8639311cfab81148307c500",
      "tree": "cef97a3f1fe5874856a4848d62f7ccb5da0985ab",
      "parents": [
        "d2a8a11129c109bbabef6135a9a836f6a3c3e9fe"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 12:19:31 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 15:49:31 2026 +0530"
      },
      "message": "Reject dynamic proxies in `FilteredObjectInputStream` (#4269)\n\n* Reject dynamic proxies in FilteredObjectInputStream\n\nDynamic proxy class descriptors are resolved through\n`resolveProxyClass`, not `resolveClass`, so they bypassed the\ndeserialization allowlist on Java 8. The JEP 290 filter used on\nJava 9 and later already rejects proxies, since their synthetic class\nnames never match the allowlist; this aligns the Java 8 path by\nrejecting proxies outright.\n\nPart of the hardening series from #4168.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n\n* Shorten `resolveProxyClass` Javadoc\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "d2a8a11129c109bbabef6135a9a836f6a3c3e9fe",
      "tree": "74c44a665e6b89a71347b847322fa537494ed808",
      "parents": [
        "d9a2c4ea9193a1122596e7df150711d5cd298e0c"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 30 06:58:05 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 30 10:28:05 2026 +0530"
      },
      "message": "Apply the outer `ObjectInputFilter` to nested streams (#4365)\n\n* Apply the outer ObjectInputFilter to nested streams\n\nLog4j\u0027s own deserialization code now takes a neutral stance: the nested\nstreams created by `SerializationUtil.readWrappedObject` get exactly the\n`ObjectInputFilter` of the outer stream, nothing less and nothing more.\n\n- copy the outer filter also when the outer stream is a\n  `FilteredObjectInputStream`\n- remove `DefaultObjectInputFilter`: plain `ObjectInputStream`s no\n  longer get the Log4j allowlist added to their filter\n- remove `SerializationUtil.assertFiltered` and all its call sites\n- deprecate `FilteredObjectInputStream` and document its allowlist,\n  its limits and the alternatives (`ObjectInputFilter`,\n  `jdk.serialFilter`)\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Add PR number to changelog entries\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Import `FilteredObjectInputStream` in `SerializationUtil`\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Remove the changelog entry of #4098\n\nThe `assertFiltered` checks added by #4098 were never released and are\nremoved by this PR.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Only export `util.internal` to `log4j-core`\n\nSince `assertFiltered` is removed, `log4j-1.2-api` and the SLF4J\nbindings no longer use `SerializationUtil`.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n\n* Improve `readWrappedObject` tests\n\nThe previous test also passed before the change. The new tests check\nthat `readWrappedObject` does not add an allowlist of its own, and that\nthe filter of the outer stream is also applied if the outer stream is a\n`FilteredObjectInputStream`.\n\nSuggested by @FreeAndNil.\n\nAssisted-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "d9a2c4ea9193a1122596e7df150711d5cd298e0c",
      "tree": "d2e7d185c937acc946ab1bded44d9d2310f197b3",
      "parents": [
        "7f32b340080bbee30d6b549503536cc3f43c2668"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Mon Sep 28 21:41:33 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 28 19:41:33 2026 +0000"
      },
      "message": "Use the NPM dependencies from the `gha/v0` branch of `logging-parent` (#4330)\n\n* Use the NPM dependencies from the `gha/v0` branch of `logging-parent`\n\nCompanion of apache/logging-parent#506 and apache/logging-parent#507,\nwhich centralize the NPM dependencies of all Apache Logging websites on\nthe `gha/v0` branch of `logging-parent`.\n\n- The committed `package.json` shrinks to a single Git dependency on\n  `gha/v0`. It is still used by local builds and release website\n  staging.\n- Staging and production website deployments pass\n  `npm-dependencies-ref: gha/v0` to `deploy-site-reusable`, so they\n  build with the exact dependency tree from that branch.\n\nAssisted-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n\n* Update package.json\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "7f32b340080bbee30d6b549503536cc3f43c2668",
      "tree": "e9dd417bc9d208878e1c1ecf81fe2b1e6135fd9d",
      "parents": [
        "a9761b0de18ba5d39bc22a61b5ef5236da6f98cf"
      ],
      "author": {
        "name": "Volkan Yazıcı",
        "email": "volkan@yazi.ci",
        "time": "Sat Sep 26 12:27:25 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 26 10:27:25 2026 +0000"
      },
      "message": "Switch the default minimum allowed plugin processor message severity from NOTE to ERROR (#4256)\n\n* Switch the default minimum allowed plugin processor message severity from NOTE to ERROR\n\n* Add changelog\n\n* Store the default in a constant\n\n* Fix documentation\n\n* Fix Spotless failures\n\n* Avoid using custom `printMessage` when inapplicable\n\n* Update src/site/antora/modules/ROOT/pages/manual/plugins.adoc\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "a9761b0de18ba5d39bc22a61b5ef5236da6f98cf",
      "tree": "4e262abc0347ce68fc9f56d40f934db528f7ec54",
      "parents": [
        "d631e827ff0a14ec6c9db49c5e61d00709334dc4"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@users.noreply.github.com",
        "time": "Fri Sep 25 09:11:31 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 25 09:11:31 2026 -0400"
      },
      "message": "org.apache.logging.log4j.core.util.FileUtils.mkdir(File, boolean) looses (#4355)\n\nexception causes."
    },
    {
      "commit": "d631e827ff0a14ec6c9db49c5e61d00709334dc4",
      "tree": "0a997a3a2e2ed96575ec9da8b3db067a30340306",
      "parents": [
        "bc90b767d1251828db3b08c72df1319faeb4bd74"
      ],
      "author": {
        "name": "Abhinav",
        "email": "alpha9coder@gmail.com",
        "time": "Thu Sep 24 15:06:38 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 24 15:06:38 2026 +0530"
      },
      "message": "Honor immediateFlush in ConsoleAppender (#4325)\n\n* Honor immediateFlush in ConsoleAppender\n\nThe ConsoleAppender.Builder collects immediateFlush from configuration\nbut the private constructor always passed true to\nAbstractOutputStreamAppender, so the setting was silently dropped.\n\n- pass the builder\u0027s isImmediateFlush() through the constructor\n- keep createDefaultAppenderForLayout flushing after every event\n- drop the Console bufferSize docs row: bufferSize is not honored either\n  and OutputStreamManager sharing makes it a design decision, tracked in\n  the issue\n- add red-green coverage in ConsoleAppenderTest for configured false\n  and default true, including the default appender factory\n- changelog entry under src/changelog/.2.x.x\n\n* Format ConsoleAppenderTest\n\n* Update src/changelog/.2.x.x/4262_console_immediate_flush.xml\n\n---------\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "bc90b767d1251828db3b08c72df1319faeb4bd74",
      "tree": "f141bcee1811f5f9e382738432dca06eee418d66",
      "parents": [
        "5a29054cbd144632e84b1b442b6b9e7b14ace151"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Thu Sep 24 09:16:44 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 24 07:16:44 2026 +0000"
      },
      "message": "Preserve custom Configuration elements under CompositeConfiguration (#4329)\n\n* Preserve custom Configuration elements under CompositeConfiguration\n\nA CompositeConfiguration never runs its child configurations\u0027\ndoConfigure(); it configures only the merged node tree via its own\ninherited doConfigure(). Any element a custom Configuration adds\nprogrammatically in a doConfigure() override is therefore dropped\nunder a composite configuration, on both the initial build and every\nreconfiguration.\n\nAdd a no-op Configuration#postConfigure(Configuration) hook that\nCompositeConfiguration.doConfigure() invokes on each child after\nconfiguring the merged tree, so a custom Configuration can re-apply\nits programmatic elements. Because reconfigure() rebuilds a\nCompositeConfiguration, the hook runs on every reconfiguration as\nwell.\n\nCloses #4328\n\n* Address composite postConfigure review comments\n\nUse JUnit 5 APIs in the new composite configuration test, with\nassertion messages in the JUnit 5 argument order.\n\nRemove implementation comments that only repeat the Javadoc.\n\n* Add composite postConfigure release metadata\n\nBump the composite configuration package version to 2.27.0.\n\nAdd the changelog entry for issue 4328, documenting the new hook.\n\n* Bump configuration package versions\n\nBump the json, properties, xml, and yaml configuration packages to\n2.27.0.\n\nThese concrete configuration classes inherit the new postConfigure hook\nfrom AbstractConfiguration, so their exported package versions must\nadvance for BND baseline.\n\nAlso apply the Spotless formatting for the empty default postConfigure\nimplementation.\n\n* Update log4j-core-test/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationPostConfigureTest.java\n\nremoving javadoc lines\n\n* Update log4j-core-test/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationPostConfigureTest.java\n\nclearing inline comments\n\n* Update log4j-core-test/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationPostConfigureTest.java\n\n* Update src/changelog/.2.x.x/4328_composite_configuration_post_configure.xml\n\n* Update src/changelog/.2.x.x/4328_composite_configuration_post_configure.xml\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "5a29054cbd144632e84b1b442b6b9e7b14ace151",
      "tree": "fdcce6f06f8954cc83effb2ba2db224c59bec7e4",
      "parents": [
        "f07ea190ca1ed2a4773aa0ae61f86c84dbe49615"
      ],
      "author": {
        "name": "jmestwa-coder",
        "email": "jmestwa@gmail.com",
        "time": "Thu Sep 24 09:11:21 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 24 03:41:21 2026 +0000"
      },
      "message": "escape scope attribute names and values in DumpTag (#4316)\n\n* escape scope attribute names and values in DumpTag\n\nSigned-off-by: Syed Mohammed Nayyar \u003cjmestwa@gmail.com\u003e\n\n* handle null toString in DumpTag.escapeHtml\n\nSigned-off-by: Syed Mohammed Nayyar \u003cjmestwa@gmail.com\u003e\n\n* Add test for handling null toString in DumpTag\u0027s doEndTag method\n\n* Update src/changelog/.2.x.x/fix_taglib_dump_tag_xss.xml\n\n---------\n\nSigned-off-by: Syed Mohammed Nayyar \u003cjmestwa@gmail.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "f07ea190ca1ed2a4773aa0ae61f86c84dbe49615",
      "tree": "2d12438ffcfe6f708529ea3f6f302d965adb831c",
      "parents": [
        "4d49b758e7fe30cbe0f13011b5750b3d4dc0c2e0"
      ],
      "author": {
        "name": "akashchamp",
        "email": "116457960+akashchamp@users.noreply.github.com",
        "time": "Thu Sep 24 08:50:48 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 24 03:20:48 2026 +0000"
      },
      "message": "Improve missing logging provider diagnostic (#4321)\n\n* Improve missing logging provider diagnostic\n\n* Point the missing-provider diagnostic at the #impl anchor\n\nThe installation guide\u0027s root opens several screens above the\nprovider-implementation section; #3415 names the #impl anchor\nspecifically. Applies to the runtime message, its test assertion, and\nthe identical sample output in the installation guide.\n\nAlso credits this PR in the changelog entry.\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "4d49b758e7fe30cbe0f13011b5750b3d4dc0c2e0",
      "tree": "622e4ba481b35b78e05f573c04242a0f951b274d",
      "parents": [
        "c9bcfa969f6b3a7ff309373b87ea0b5fc38aa259"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Wed Sep 23 16:44:53 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 23 13:44:53 2026 +0000"
      },
      "message": "Compute AsyncLogger location when the caller passes null (#4340)\n\n* Compute AsyncLogger location when the caller passes null\n\nAsyncLogger.log stored a null StackTraceElement even when includeLocation\nwas enabled. The fqcn logMessage path already calls calcLocationIfRequested.\nUse that same fallback so a null location is filled in, and keep an explicit\nlocation unchanged.\n\nFixes #1458\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\n\n* Address review on the null-location test\n\nLog the first event through atInfo().log, cite PR 4340 in the changelog,\nand drop the non-exceptional inline comment.\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\n\n---------\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "c9bcfa969f6b3a7ff309373b87ea0b5fc38aa259",
      "tree": "63f40558f119db23b7c8008016a82a46cc6699e1",
      "parents": [
        "c2d3d84d3e331e6b56af21ba3e5e96469e283759"
      ],
      "author": {
        "name": "Max Freedom Pollard",
        "email": "272618364+MaxFreedomPollard@users.noreply.github.com",
        "time": "Wed Sep 23 09:38:31 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 23 13:38:31 2026 +0000"
      },
      "message": "Forward mail attributes in deprecated `SmtpAppender.createAppender` (#4304)\n\n* Fix `NullPointerException` in the deprecated SmtpAppender.createAppender() factory method.\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "c2d3d84d3e331e6b56af21ba3e5e96469e283759",
      "tree": "a8ba4994003ed0045389a9d8f5d2448530749aae",
      "parents": [
        "51f47051d6664d225a1c4e2a814d9caebaac2593"
      ],
      "author": {
        "name": "Wu Shuwen",
        "email": "mikewushuwen@outlook.com",
        "time": "Wed Sep 23 16:45:31 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 23 08:45:31 2026 +0000"
      },
      "message": "Document the JdbcAppender truncateStrings attribute (#4320)\n\n* Document the JdbcAppender truncateStrings attribute\n\n`JdbcAppender.Builder#truncateStrings` is a `@PluginBuilderAttribute` with a\ndefault of `true`, so it can be set on the `\u003cJdbc\u003e` element, but it was the\nonly optional attribute of the appender missing from the attribute table in\nthe manual. Add the missing row.\n\n* Clarify truncation behavior for string type columns in database documentation\n\n---------\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "51f47051d6664d225a1c4e2a814d9caebaac2593",
      "tree": "82ac7296abc2863bec514fb4ed4936de7ebd6a6c",
      "parents": [
        "7326bebf87d4ce0b431912c9452bdda175f8db86"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Mon Sep 21 21:04:08 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 21 18:04:08 2026 +0000"
      },
      "message": "Grow DatagramOutputStream buffer and drop oversized UDP payloads (#4336)\n\n* Grow DatagramOutputStream buffer and drop oversized UDP payloads\n\nDatagramOutputStream.copy allocated a new exact-size array on every\nwrite. Back the accumulator with ByteArrayOutputStream, stop appending\nonce the datagram exceeds 65507 bytes, and skip DatagramSocket.send.\n\nFixes #4333\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e"
    },
    {
      "commit": "7326bebf87d4ce0b431912c9452bdda175f8db86",
      "tree": "5af1e36b31e01316ad8a1311372678cce551d29d",
      "parents": [
        "e0c4d32ee3325a023d617f1b07934c7d2544bc79"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Sat Sep 19 11:54:26 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 19 10:54:26 2026 +0200"
      },
      "message": "Guard %rEx{short.*} against an empty root-cause stack trace (#4335)\n\nThrowableInvertedPropertyRendererFactory.extractThrowingMethod\nindexed stackTrace[0] without checking length. Mirror the guard\nalready used by ThrowablePropertyRendererFactory.\n\nFixes #4334\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e"
    },
    {
      "commit": "e0c4d32ee3325a023d617f1b07934c7d2544bc79",
      "tree": "7123ee1ed5fcb8bd76ec31b27e7c9da583db79c4",
      "parents": [
        "6bcc6811e941ce7c8252e6f1260a436b634ca7a4"
      ],
      "author": {
        "name": "DragonFSKY",
        "email": "38503900+DragonFSKY@users.noreply.github.com",
        "time": "Fri Sep 18 01:13:30 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 08:13:30 2026 +0000"
      },
      "message": "Default Log4j 1 SyslogAppender protocol to UDP (#4247)"
    },
    {
      "commit": "6bcc6811e941ce7c8252e6f1260a436b634ca7a4",
      "tree": "14523874afbef8776f1d266e53007a27ebee015c",
      "parents": [
        "2452ea57557beed9467749a06e404d3ddef7a733"
      ],
      "author": {
        "name": "Abdullah",
        "email": "89297042+AzazelSensei@users.noreply.github.com",
        "time": "Thu Sep 17 16:13:52 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 13:13:52 2026 +0000"
      },
      "message": "Honor spring.cloud.config.watch.enabled on Log4j2EventListener (#4252)\n\n* Honor spring.cloud.config.watch.enabled on Log4j2EventListener\n\nspring.factories constructs the listener outside the bean factory, so\n@ConditionalOnProperty never applies. Check the property in\nonApplicationEvent as well.\n\nFixes #4244\n\n* Drop EnvironmentAware and compare watch.enabled as a string\n\nspring.factories never calls setEnvironment. Match\n@ConditionalOnProperty so a non-boolean value does not fail\n/actuator/refresh. Point the changelog at this PR.\n\n* Refactor Log4j2EventListenerTest to improve code readability\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "2452ea57557beed9467749a06e404d3ddef7a733",
      "tree": "aae23198d901c1184ddbab0ef1afb481604b81b8",
      "parents": [
        "89db25a2b7a231795da6209667ab5a162d987bb5"
      ],
      "author": {
        "name": "jmestwa-coder",
        "email": "jmestwa@gmail.com",
        "time": "Thu Sep 17 18:24:19 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 18:24:19 2026 +0530"
      },
      "message": "do not apply POSIX file attributes through symbolic links (#4229)\n\n* do not apply POSIX file attributes through symbolic links\n\n* address review: keep FileUtils following links, gate visitor skip on followLinks\n\n* restore plain symlink guard and cover dangling links\n\n* fix: skip symbolic links in PosixViewAttribute unless followLinks is true\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "89db25a2b7a231795da6209667ab5a162d987bb5",
      "tree": "77fdcec3b9c5378e63579cf8b5b1fcb5fe82097e",
      "parents": [
        "9bcbf7e1603e9e1b50a0fcc489f065f001d7c1c7"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Thu Sep 17 12:37:01 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 09:37:01 2026 +0000"
      },
      "message": "Fix predefined ANSI styles in JAnsiTextRenderer (#4259)\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e"
    },
    {
      "commit": "9bcbf7e1603e9e1b50a0fcc489f065f001d7c1c7",
      "tree": "916136eaad6171a0cf84d164d080efac705adbf9",
      "parents": [
        "858d7ebf5e1365e7adff76f13944e11363291c32"
      ],
      "author": {
        "name": "Usman Ejaz",
        "email": "121238357+UsmanEjaz10@users.noreply.github.com",
        "time": "Thu Sep 17 12:48:47 2026 +0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 07:48:47 2026 +0000"
      },
      "message": "Fix Pattern Layout\u0027s stack trace rendering for non-idempotent `Throwable::getCause` (#4303)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "858d7ebf5e1365e7adff76f13944e11363291c32",
      "tree": "650480b9181db4176c5ad4681511e96dd88b9978",
      "parents": [
        "8a776133eabac0cbdbb5b497eac318e32f0160de"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Thu Sep 17 09:29:33 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 12:59:33 2026 +0530"
      },
      "message": "Document location restrictions on Log4j 1 external entities (#4265)\n\n* docs: document location restrictions on Log4j 1 external entities\n\nSince version 2.27.0 (#4198), the external subset and other external\nentities in Log4j 1 XML configuration files are resolved through\n`ConfigurationSource`, so they can only be retrieved from locations\nallowed by the `log4j2.configurationAllowedProtocols` property.\nDocument this in the migration guide and in the Javadoc of the bridge\n`XmlConfiguration`.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01LNsw2hhNuJ6tjsEU2tChnn\n\n* Apply batched suggestions from code review\n\nCo-authored-by: Ramanathan \u003cramanathanbscmca@gmail.com\u003e\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathanbscmca@gmail.com\u003e"
    },
    {
      "commit": "8a776133eabac0cbdbb5b497eac318e32f0160de",
      "tree": "1b83c33f2869a2eb5a21a33551fc9ce3b36888b8",
      "parents": [
        "ab845bc1a8e8aca1abe89a1aa0a9bed7f1a1e692"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Thu Sep 17 09:11:02 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 12:41:02 2026 +0530"
      },
      "message": "Document XML parser features and clarify Log4j 1 bridge properties (#4264)\n\n* docs: document XML parser features and clarify Log4j 1 bridge properties\n\n- Explain that external XML entities are enabled when parsing Log4j 1\n  configuration files, but not Log4j 2 ones, and how to migrate\n  configurations that rely on them (inline the entities or use XInclude).\n- Document the validation difference between the formats (DTD vs\n  XML Schema) and link the threat model next to each capability\n  statement.\n- State the Log4j 2 XML parser features (no external DTD/entity\n  retrieval, XInclude enabled when available) at the top of the XML\n  format page.\n- Make the `log4j.configuration` and `log4j1.compatibility` property\n  entries self-contained, so neither can be misread as depending on the\n  other when deep-linked.\n- Improve the class Javadoc of both `XmlConfiguration` classes and\n  correct their `XXE_DOCUMENT` suppression justifications.\n- User-visible: the `DOMConfigurator`/`PropertyConfigurator` warning\n  messages now link to `logging.apache.org` instead of\n  `logging.staged.apache.org`.\n\nCloses #4263\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01LNsw2hhNuJ6tjsEU2tChnn\n\n* Improve `XXE_DOCUMENT` justification\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e\n\n* fix: formatting\n\n* Missing `justification` property\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "ab845bc1a8e8aca1abe89a1aa0a9bed7f1a1e692",
      "tree": "69d0f849747d329ccf75f6ed3580a71b5f8b36bf",
      "parents": [
        "6ad11e40037c033e2eeece72817b4e7441026aa5"
      ],
      "author": {
        "name": "DragonFSKY",
        "email": "38503900+DragonFSKY@users.noreply.github.com",
        "time": "Wed Sep 16 09:37:17 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 16 16:37:17 2026 +0000"
      },
      "message": "Honor ConfigurationFactory active state (#4199)\n\n* Honor ConfigurationFactory active state\n\n* Address ConfigurationFactory review feedback\n\n* Test inactive factory fallback\n\n* Remove obsolete test harness for `log4j-spring-cloud-config-client`\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "6ad11e40037c033e2eeece72817b4e7441026aa5",
      "tree": "0b430e5725526041b6690bc823a12e9165a4c817",
      "parents": [
        "8df5a0c7f5c000fb57b8d78f5035b9eb90dbdb54"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Sep 16 12:36:16 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 16 07:06:16 2026 +0000"
      },
      "message": "Fix the log4j-spring-cloud-config-client test harness  (#4317)\n\n* Fix the `log4j-spring-cloud-config-client` test harness\n\n* Fix `log4j-spring-cloud-config-client` test harness and update `junit-vintage-engine` dependency"
    },
    {
      "commit": "8df5a0c7f5c000fb57b8d78f5035b9eb90dbdb54",
      "tree": "d02de9c6c8d8bbd6660501864070f61682ad6a06",
      "parents": [
        "96b540e5bc52c111949f18449d4529c78966c469"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Sep 16 12:16:41 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 16 06:46:41 2026 +0000"
      },
      "message": "Migrate log4j-iostreams to use JUnit 5 APIs and compatible helper classes (#4261)\n\n* Migrate log4j-iostreams to use JUnit 5 APIs and compatible helper classes\n\n* Remove unused org.junit.vintage dependency\n\n---------\n\nCo-authored-by: James Coglan \u003cjames@neighbourhood.ie\u003e\nCo-authored-by: Alba Herrerías \u003calbaherreriasdev@gmail.com\u003e"
    },
    {
      "commit": "96b540e5bc52c111949f18449d4529c78966c469",
      "tree": "fd7581aeada3395510368d36af5b783b348502d9",
      "parents": [
        "e32663a474dc7c1b907c2d8552cc7cc93da4c7f9"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Tue Sep 15 08:39:01 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 15 06:39:01 2026 +0000"
      },
      "message": "Require a `port-to-*` or `port-done` label on every PR (#4323)\n\n* Require a `port-to-*` or `port-done` label on every PR\n\nAdds a `Check port label` workflow that fails unless the PR carries a\n`port-to-\u003cbranch\u003e` or `port-done` label, registers it as a required\nstatus check on `2.x` through a dedicated ruleset in `.asf.yaml`, and\nlabels Dependabot PRs with `port-done` automatically, since dependency\nupdates never need to be ported.\n\nThe ruleset is limited to `2.x` on purpose: a required check that never\nreports would block merges on the other protected branches until the\nworkflow is ported there.\n\nSee https://github.com/apache/logging-log4j2/issues/3161\n\nAssisted-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_013pu6pykS9KYuoXAYLvJyBg\n\n* Exempt Dependabot PRs from the port label check\n\nA label added with `github.token` does not trigger a new workflow run,\nso labeling Dependabot PRs from a workflow would leave the required\ncheck red. Skip the check for Dependabot PRs instead.\n\nAssisted-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_013pu6pykS9KYuoXAYLvJyBg\n\n* fix: add concurrency check"
    },
    {
      "commit": "e32663a474dc7c1b907c2d8552cc7cc93da4c7f9",
      "tree": "ed7e67e5040e59c941a6b6429a9a580c77914dee",
      "parents": [
        "e8f7ec059a49c19b67b404e18c561128d7af110d"
      ],
      "author": {
        "name": "dev_Hakaze",
        "email": "af.nawfal@gmail.com",
        "time": "Mon Sep 14 09:44:39 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 02:44:39 2026 +0000"
      },
      "message": "fix: skip writes and still shut down after failed DB manager startup (#4246)\n\n* fix: skip writes and still shut down after failed DB manager startup\n\nWhen startupInternal() fails, AbstractDatabaseManager left running\u003dfalse\nbut write() still accepted events (often NPEing on unassigned state) and\nshutdown() skipped shutdownInternal(), leaking resources acquired during\nstartup. Guard write() with isRunning() (log once) and always invoke\nshutdownInternal() once. Make CassandraManager.shutdownInternal null-safe\nfor a missing session after failed connect.\n\nFixes #4241\n\nSigned-off-by: arimu1 \u003c19286898+arimu1@users.noreply.github.com\u003e\n\n* Add PR to the changelog\n\n* Mention #4242 too\n\n* test: run AbstractDatabaseAppenderTest with a started manager\n\ntestAppend used a Mockito mock whose final isRunning() stayed false after\nthe write() guard change. Use a spy of a stub manager and call startup()\nso the happy path still exercises writeThrough; failed-startup coverage\nremains in AbstractDatabaseManagerTest.\n\nSigned-off-by: arimu1 \u003c19286898+arimu1@users.noreply.github.com\u003e\n\n---------\n\nSigned-off-by: arimu1 \u003c19286898+arimu1@users.noreply.github.com\u003e\nCo-authored-by: arimu1 \u003c19286898+arimu1@users.noreply.github.com\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan.yazici@oracle.com\u003e"
    },
    {
      "commit": "e8f7ec059a49c19b67b404e18c561128d7af110d",
      "tree": "1521320a53157fd1fb6d02241420849bc7e3537b",
      "parents": [
        "e560064d1af8883374dd2f36f92ab62d6cd512eb"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Fri Sep 11 18:51:47 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 11 18:51:47 2026 +0530"
      },
      "message": "Add literal Context Data (MDC) filtering to JSON Template Layout (#4186)\n\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "e560064d1af8883374dd2f36f92ab62d6cd512eb",
      "tree": "cd1cfc2f3d2b6296de62e69a82ce9dd04d1fb66e",
      "parents": [
        "8c502110b4f74dd485015fa3fa8979e1e1359913"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Sep 10 11:58:48 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 11:58:48 2026 +0530"
      },
      "message": "Bump org.json:json from 20250517 to 20260814 (#4312)\n\n* Bump org.json:json from 20250517 to 20260814\n\nBumps [org.json:json](https://github.com/douglascrockford/JSON-java) from 20250517 to 20260814.\n- [Release notes](https://github.com/douglascrockford/JSON-java/releases)\n- [Changelog](https://github.com/stleary/JSON-java/blob/master/docs/RELEASES.md)\n- [Commits](https://github.com/douglascrockford/JSON-java/compare/20250517...20260814)\n\n---\nupdated-dependencies:\n- dependency-name: org.json:json\n  dependency-version: \u002720260814\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4312\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "8c502110b4f74dd485015fa3fa8979e1e1359913",
      "tree": "c5d20a9ec541885b8a8f360ef489d7d126cf24f9",
      "parents": [
        "7c4e7db2a2d2be305a62f5d302fce97a6e68e967"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Sep 10 01:28:30 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 01:28:30 2026 +0000"
      },
      "message": "Bump the maven-minor-2-x group with 10 updates (#4311)\n\n* Bump the maven-minor-2-x group with 10 updates\n\nBumps the maven-minor-2-x group with 10 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.3.15` | `1.3.16` |\n| [org.apache.groovy:groovy-bom](https://github.com/apache/groovy) | `4.0.27` | `4.0.33` |\n| [org.apache.activemq:activemq-broker](https://github.com/apache/activemq) | `6.3.1` | `6.3.2` |\n| [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) | `1.3.15` | `1.3.16` |\n| [co.elastic.clients:elasticsearch-java](https://github.com/elastic/elasticsearch-java) | `9.5.2` | `9.5.3` |\n| [org.elasticsearch.client:elasticsearch-rest-client](https://github.com/elastic/elasticsearch) | `9.5.2` | `9.5.3` |\n| [org.mongodb:bson](https://github.com/mongodb/mongo-java-driver) | `5.10.0` | `5.11.0` |\n| [org.mongodb:mongodb-driver-core](https://github.com/mongodb/mongo-java-driver) | `5.10.0` | `5.11.0` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `5.10.0` | `5.11.0` |\n| [org.springframework.cloud:spring-cloud-context](https://github.com/spring-cloud/spring-cloud-commons) | `4.3.0` | `4.3.3` |\n\n\nUpdates `ch.qos.logback:logback-core` from 1.3.15 to 1.3.16\n- [Release notes](https://github.com/qos-ch/logback/releases)\n- [Commits](https://github.com/qos-ch/logback/compare/v_1.3.15...v_1.3.16)\n\nUpdates `org.apache.groovy:groovy-bom` from 4.0.27 to 4.0.33\n- [Commits](https://github.com/apache/groovy/commits)\n\nUpdates `org.apache.activemq:activemq-broker` from 6.3.1 to 6.3.2\n- [Release notes](https://github.com/apache/activemq/releases)\n- [Commits](https://github.com/apache/activemq/compare/activemq-6.3.1...activemq-6.3.2)\n\nUpdates `ch.qos.logback:logback-core` from 1.3.15 to 1.3.16\n- [Release notes](https://github.com/qos-ch/logback/releases)\n- [Commits](https://github.com/qos-ch/logback/compare/v_1.3.15...v_1.3.16)\n\nUpdates `ch.qos.logback:logback-classic` from 1.3.15 to 1.3.16\n- [Release notes](https://github.com/qos-ch/logback/releases)\n- [Commits](https://github.com/qos-ch/logback/compare/v_1.3.15...v_1.3.16)\n\nUpdates `co.elastic.clients:elasticsearch-java` from 9.5.2 to 9.5.3\n- [Release notes](https://github.com/elastic/elasticsearch-java/releases)\n- [Changelog](https://github.com/elastic/elasticsearch-java/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/elastic/elasticsearch-java/compare/v9.5.2...v9.5.3)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.5.2 to 9.5.3\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.5.2...v9.5.3)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.5.2 to 9.5.3\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.5.2...v9.5.3)\n\nUpdates `org.mongodb:bson` from 5.10.0 to 5.11.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.10.0...r5.11.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.10.0 to 5.11.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.10.0...r5.11.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.10.0 to 5.11.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.10.0...r5.11.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.10.0 to 5.11.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.10.0...r5.11.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.10.0 to 5.11.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.10.0...r5.11.0)\n\nUpdates `org.springframework.cloud:spring-cloud-context` from 4.3.0 to 4.3.3\n- [Release notes](https://github.com/spring-cloud/spring-cloud-commons/releases)\n- [Changelog](https://github.com/spring-cloud/spring-cloud-commons/blob/main/release-train-settings.xml)\n- [Commits](https://github.com/spring-cloud/spring-cloud-commons/compare/v4.3.0...v4.3.3)\n\n---\nupdated-dependencies:\n- dependency-name: ch.qos.logback:logback-core\n  dependency-version: 1.3.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.apache.groovy:groovy-bom\n  dependency-version: 4.0.33\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.apache.activemq:activemq-broker\n  dependency-version: 6.3.2\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: ch.qos.logback:logback-core\n  dependency-version: 1.3.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: ch.qos.logback:logback-classic\n  dependency-version: 1.3.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: co.elastic.clients:elasticsearch-java\n  dependency-version: 9.5.3\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.3\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.3\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:bson\n  dependency-version: 5.11.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.11.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.11.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.11.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.11.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.springframework.cloud:spring-cloud-context\n  dependency-version: 4.3.3\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4311\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "7c4e7db2a2d2be305a62f5d302fce97a6e68e967",
      "tree": "916dd2d5029992d941ef34d21350ce68d862d25d",
      "parents": [
        "b8e67f4c726c30eb3de6fd90b1febc806c439f5c"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Sep 09 13:02:48 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 09 09:32:48 2026 +0200"
      },
      "message": "Update Dependabot ignore rules for Logback, Cassandra, Groovy, Elastic and Kroki (#4305)\n\n* Update Dependabot configuration to include new dependencies and version constraints\n\n* Ignore `spring-cloud-context` 5.x on `2.x` and `main`\n\n* Clarify comments in dependabot.yaml regarding dependency versioning and legacy plugins\n\n* Update version constraint for asciidoctor-kroki in dependabot.yaml"
    },
    {
      "commit": "b8e67f4c726c30eb3de6fd90b1febc806c439f5c",
      "tree": "ab60e071402e0933c541439083a3526754336ecb",
      "parents": [
        "c4e834a58320b9e4753186877cd1cbe690cfab87"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Tue Sep 08 05:32:57 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 08 05:32:57 2026 +0530"
      },
      "message": "Revert \"Bump org.springframework.cloud:spring-cloud-context from 4.3.0 to 5.0.2 (#4211)\" (#4308)\n\nThis reverts commit c4e834a58320b9e4753186877cd1cbe690cfab87."
    },
    {
      "commit": "c4e834a58320b9e4753186877cd1cbe690cfab87",
      "tree": "c53689b33fe3da6e68ed9c1f867d98263e7d072c",
      "parents": [
        "b257e747937fdc644fddb0fae69ad323cf049bdd"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Sep 07 10:37:45 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 07 10:37:45 2026 +0530"
      },
      "message": "Bump org.springframework.cloud:spring-cloud-context from 4.3.0 to 5.0.2 (#4211)\n\n* Bump org.springframework.cloud:spring-cloud-context from 4.3.0 to 5.0.2\n\nBumps [org.springframework.cloud:spring-cloud-context](https://github.com/spring-cloud/spring-cloud-commons) from 4.3.0 to 5.0.2.\n- [Release notes](https://github.com/spring-cloud/spring-cloud-commons/releases)\n- [Changelog](https://github.com/spring-cloud/spring-cloud-commons/blob/main/release-train-settings.xml)\n- [Commits](https://github.com/spring-cloud/spring-cloud-commons/compare/v4.3.0...v5.0.2)\n\n---\nupdated-dependencies:\n- dependency-name: org.springframework.cloud:spring-cloud-context\n  dependency-version: 5.0.2\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4211\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "b257e747937fdc644fddb0fae69ad323cf049bdd",
      "tree": "ab60e071402e0933c541439083a3526754336ecb",
      "parents": [
        "ded9666696e70a142bf27524ebd59cac5603d977"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Sep 07 10:34:28 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 07 10:34:28 2026 +0530"
      },
      "message": "Bump com.github.luben:zstd-jni from 1.5.7-4 to 1.5.7-16 (#4209)\n\n* Bump com.github.luben:zstd-jni from 1.5.7-4 to 1.5.7-16\n\nBumps [com.github.luben:zstd-jni](https://github.com/luben/zstd-jni) from 1.5.7-4 to 1.5.7-16.\n- [Commits](https://github.com/luben/zstd-jni/compare/v1.5.7-4...v1.5.7-16)\n\n---\nupdated-dependencies:\n- dependency-name: com.github.luben:zstd-jni\n  dependency-version: 1.5.7-11\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4209\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "ded9666696e70a142bf27524ebd59cac5603d977",
      "tree": "2d9be77257400f8a8136ea58d090fd47189f127b",
      "parents": [
        "dd04ae859e72c330ec47a9366e4dcb8b8ef169ee"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Sep 06 04:32:18 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 06 04:32:18 2026 +0000"
      },
      "message": "Bump actions/stale from 10.3.0 to 11.0.0 in the actions-all-2-x group (#4289)\n\n* Bump actions/stale from 10.3.0 to 11.0.0 in the actions-all-2-x group\n\nBumps the actions-all-2-x group with 1 update: [actions/stale](https://github.com/actions/stale).\n\n\nUpdates `actions/stale` from 10.3.0 to 11.0.0\n- [Release notes](https://github.com/actions/stale/releases)\n- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/stale/compare/eb5cf3af3ac0a1aa4c9c45633dd1ae542a27a899...4391f3da665fdf50b6810c1a66712fb9ba21aa93)\n\n---\nupdated-dependencies:\n- dependency-name: actions/stale\n  dependency-version: 11.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: actions-all-2-x\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4289\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "dd04ae859e72c330ec47a9366e4dcb8b8ef169ee",
      "tree": "6d788eecbce4710d8c7cafc9ca803962910b49f3",
      "parents": [
        "3711ee3f6a53b4ab4f797e1ba22fe2008542dbc1"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Sep 03 15:22:35 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 15:22:35 2026 +0200"
      },
      "message": "Bump the maven-minor-2-x group with 16 updates (#4291)\n\n* Bump the maven-minor-2-x group with 16 updates\n\nBumps the maven-minor-2-x group with 16 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.22.1` | `2.22.2` |\n| [org.jctools:jctools-core](https://github.com/JCTools/JCTools) | `4.0.6` | `4.0.7` |\n| [org.apache.activemq:activemq-broker](https://github.com/apache/activemq) | `6.2.7` | `6.3.1` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.22.0` | `1.22.1` |\n| [com.google.guava:guava-testlib](https://github.com/google/guava) | `33.6.0-jre` | `33.7.1-jre` |\n| [org.jspecify:jspecify](https://github.com/jspecify/jspecify) | `1.0.0` | `1.0.1` |\n| [org.xmlunit:xmlunit-core](https://github.com/xmlunit/xmlunit) | `2.12.0` | `2.13.0` |\n| [org.xmlunit:xmlunit-matchers](https://github.com/xmlunit/xmlunit) | `2.12.0` | `2.13.0` |\n| [biz.aQute.bnd:biz.aQute.bnd.annotation](https://github.com/bndtools/bnd) | `7.3.0` | `7.4.0` |\n| [io.fabric8:docker-maven-plugin](https://github.com/fabric8io/docker-maven-plugin) | `0.48.1` | `0.49.0` |\n| [com.github.jnr:jnr-ffi](https://github.com/jnr/jnr-ffi) | `2.3.0` | `2.3.1` |\n| [co.elastic.clients:elasticsearch-java](https://github.com/elastic/elasticsearch-java) | `9.4.3` | `9.5.2` |\n| [org.elasticsearch.client:elasticsearch-rest-client](https://github.com/elastic/elasticsearch) | `9.4.3` | `9.5.2` |\n| [org.mongodb:bson](https://github.com/mongodb/mongo-java-driver) | `5.9.0` | `5.10.0` |\n| [org.mongodb:mongodb-driver-core](https://github.com/mongodb/mongo-java-driver) | `5.9.0` | `5.10.0` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `5.9.0` | `5.10.0` |\n\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.22.1 to 2.22.2\n- [Commits](https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.22.1...jackson-bom-2.22.2)\n\nUpdates `org.jctools:jctools-core` from 4.0.6 to 4.0.7\n- [Release notes](https://github.com/JCTools/JCTools/releases)\n- [Commits](https://github.com/JCTools/JCTools/compare/v4.0.6...v4.0.7)\n\nUpdates `org.apache.activemq:activemq-broker` from 6.2.7 to 6.3.1\n- [Release notes](https://github.com/apache/activemq/releases)\n- [Commits](https://github.com/apache/activemq/compare/activemq-6.2.7...activemq-6.3.1)\n\nUpdates `commons-codec:commons-codec` from 1.22.0 to 1.22.1\n- [Changelog](https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-codec/compare/rel/commons-codec-1.22.0...rel/commons-codec-1.22.1)\n\nUpdates `com.google.guava:guava-testlib` from 33.6.0-jre to 33.7.1-jre\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\nUpdates `org.jspecify:jspecify` from 1.0.0 to 1.0.1\n- [Release notes](https://github.com/jspecify/jspecify/releases)\n- [Commits](https://github.com/jspecify/jspecify/compare/v1.0.0...v1.0.1)\n\nUpdates `org.xmlunit:xmlunit-core` from 2.12.0 to 2.13.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.12.0...v2.13.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.12.0 to 2.13.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.12.0...v2.13.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.12.0 to 2.13.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.12.0...v2.13.0)\n\nUpdates `biz.aQute.bnd:biz.aQute.bnd.annotation` from 7.3.0 to 7.4.0\n- [Release notes](https://github.com/bndtools/bnd/releases)\n- [Commits](https://github.com/bndtools/bnd/compare/7.3.0...7.4.0)\n\nUpdates `io.fabric8:docker-maven-plugin` from 0.48.1 to 0.49.0\n- [Release notes](https://github.com/fabric8io/docker-maven-plugin/releases)\n- [Changelog](https://github.com/fabric8io/docker-maven-plugin/blob/master/doc/changelog.md)\n- [Commits](https://github.com/fabric8io/docker-maven-plugin/compare/v0.48.1...v0.49.0)\n\nUpdates `com.github.jnr:jnr-ffi` from 2.3.0 to 2.3.1\n- [Release notes](https://github.com/jnr/jnr-ffi/releases)\n- [Commits](https://github.com/jnr/jnr-ffi/compare/2.3.0...2.3.1)\n\nUpdates `co.elastic.clients:elasticsearch-java` from 9.4.3 to 9.5.2\n- [Release notes](https://github.com/elastic/elasticsearch-java/releases)\n- [Changelog](https://github.com/elastic/elasticsearch-java/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/elastic/elasticsearch-java/compare/v9.4.3...v9.5.2)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.4.3 to 9.5.2\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.4.3...v9.5.2)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.4.3 to 9.5.2\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.4.3...v9.5.2)\n\nUpdates `org.mongodb:bson` from 5.9.0 to 5.10.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.9.0...r5.10.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.9.0 to 5.10.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.9.0...r5.10.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.9.0 to 5.10.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.9.0...r5.10.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.9.0 to 5.10.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.9.0...r5.10.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.9.0 to 5.10.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.9.0...r5.10.0)\n\n---\nupdated-dependencies:\n- dependency-name: com.fasterxml.jackson:jackson-bom\n  dependency-version: 2.22.2\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.jctools:jctools-core\n  dependency-version: 4.0.7\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.apache.activemq:activemq-broker\n  dependency-version: 6.3.1\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: commons-codec:commons-codec\n  dependency-version: 1.22.1\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: com.google.guava:guava-testlib\n  dependency-version: 33.7.1-jre\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.jspecify:jspecify\n  dependency-version: 1.0.1\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-core\n  dependency-version: 2.13.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.13.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.13.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: biz.aQute.bnd:biz.aQute.bnd.annotation\n  dependency-version: 7.4.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: io.fabric8:docker-maven-plugin\n  dependency-version: 0.49.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: com.github.jnr:jnr-ffi\n  dependency-version: 2.3.1\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-2-x\n- dependency-name: co.elastic.clients:elasticsearch-java\n  dependency-version: 9.5.2\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.2\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.5.2\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:bson\n  dependency-version: 5.10.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.10.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.10.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.10.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.10.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-2-x\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4291\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "3711ee3f6a53b4ab4f797e1ba22fe2008542dbc1",
      "tree": "4250b061432cc2289fcc1cb450c059bd2d42ae41",
      "parents": [
        "1ca70aabfa484e4f1134d8e8d863a5d04f13e975"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Thu Sep 03 13:25:44 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 16:55:44 2026 +0530"
      },
      "message": "Add Dependabot configuration for `2.25.x` and rename update groups (#4284)\n\n* Add Dependabot configuration for `2.25.x` and rename update groups\n\n- Add a patch-only Maven entry for the `2.25.x` LTS branch. It uses a\n  `yearly` schedule as a placeholder: updates are triggered manually.\n- Rename all update groups to `\u003cecosystem\u003e-\u003clevel\u003e-\u003cbranch\u003e`, so that the\n  target branch is visible in the title of Dependabot PRs.\n\n* Derive the Dependabot changelog path from the PR base branch\n\nThe `Dependabot Process PR` workflow runs from the default branch for\nPRs against every branch, so the changelog directory must depend on the\nbase branch of the PR that triggered it: `.3.x.x` for `main` and\n`.2.x.x` for the 2.x branches."
    },
    {
      "commit": "1ca70aabfa484e4f1134d8e8d863a5d04f13e975",
      "tree": "018481620d9724f0710fc2e8d2a7dac8d22113bc",
      "parents": [
        "008f69bd293397a52b592bfb7d466fdf19d2b133"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Thu Sep 03 11:38:03 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 11:38:03 2026 +0200"
      },
      "message": "Remove the unused Maven and Plexus dependencies of the test modules (#4281)\n\n* Remove the unused Maven and Plexus dependencies of the test modules\n\nThe `BundleTestInfo` helper in `log4j-api-test` was the only user of\n`maven-core`, `maven-model` and `plexus-utils`. It lost its last caller\nin LOG4J2-3546 and was already removed from `main`. Its compile-scope\ndependencies leaked about 25 transitive jars, including `slf4j-api`,\nGuice and Sisu, to every consumer of `log4j-api-test`.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01PC8EJFvX7V8HzF2F6Z3h96\n\n* Drop transitive dependency pins from the parent POM\n\nLog4j is a library: Maven consults the `dependencyManagement` of the\nproject being built only, so managed versions inherited from\n`log4j-parent` are never applied while resolving the transitive\ndependencies of a Log4j module in a user\u0027s application. The pins only\nchanged the versions our own build resolved. The `guava` pin moves to\n`log4j-cassandra`, the one module whose tests need it, and the guava\nexclusions there, which guarded against the guava that arrived through\n`maven-core`, are removed.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01PC8EJFvX7V8HzF2F6Z3h96\n\n* Add the PR number to the changelog entry\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01PC8EJFvX7V8HzF2F6Z3h96\n\n---------\n\nCo-authored-by: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "008f69bd293397a52b592bfb7d466fdf19d2b133",
      "tree": "0345b8315624aed977fd24a3bd18142640d9a6a6",
      "parents": [
        "9f3b57983e02481aa7cb1c19983755e74f762358"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Wed Sep 02 23:48:57 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 02 23:48:57 2026 +0200"
      },
      "message": "Switches from `protected_branches` to `rulesets` (#4095)\n\n* Switches from `protected_branches` to `rulesets`\n\nSimilarly to apache/logging-parent#456 this PR switches from GitHub Branch Protection to Rulesets and:\n\n- Keeps the same rules for `main`, while protection `2.x` is **temporarily** disabled in case we need to update the `.asf.yaml` file.\n- Adds tag protection for the `rel/*` tags.\n\n* Workaround `.asf.yaml` limitations\n\n* fix: protect tags\n\n* fix: special environment no longer needed\n\n* fix: remove no longer needed workarounds\n\n* fix: add `2.25.x` and `2.26.x` to the list"
    },
    {
      "commit": "9f3b57983e02481aa7cb1c19983755e74f762358",
      "tree": "8ef455b95a8e25f47dbba55f84ff463855dcd5ee",
      "parents": [
        "4606de451b2626ae3e5e23368c6b122d610252cf"
      ],
      "author": {
        "name": "Volkan Yazıcı",
        "email": "volkan@yazi.ci",
        "time": "Wed Sep 02 13:53:29 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 02 17:23:29 2026 +0530"
      },
      "message": "Fix circular references in exceptions (#4249)\n\n* Fix circular references in exceptions"
    },
    {
      "commit": "4606de451b2626ae3e5e23368c6b122d610252cf",
      "tree": "7f76fa3d4ea483df0240eb47f8b4fea8f2838ea4",
      "parents": [
        "c685326e6d33381fb518a44fb8069c176d9c3b08"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Sep 02 17:12:52 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 02 11:42:52 2026 +0000"
      },
      "message": "Fix handling of `onMatch` and `onMismatch` attributes in the properties configuration format (#4116)\n\nCo-authored-by: Jeff Thomas \u003cjeff.w.thomas@outlook.com\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "c685326e6d33381fb518a44fb8069c176d9c3b08",
      "tree": "92b44cce8d312cae4312f76c420f1c8f4cd392d0",
      "parents": [
        "d1f9355a55d7837f19e0601426369eda1b6a49c6"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Sep 02 17:06:40 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 02 11:36:40 2026 +0000"
      },
      "message": "Deprecate externalContext and migrate to Map-backed getObject/putObject (#4070)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "d1f9355a55d7837f19e0601426369eda1b6a49c6",
      "tree": "b74d224b74db76dd2ce9c9ace64394adf5058790",
      "parents": [
        "466f98f47165444e6bae8181269d0b03c98b19a8"
      ],
      "author": {
        "name": "tupelo-schneck",
        "email": "schneck@gmail.com",
        "time": "Mon Aug 31 07:17:21 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 31 11:17:21 2026 +0000"
      },
      "message": "Fix startup delay and direct write file naming in CronTriggeringPolicy (#4226)\n\n`CronTriggeringPolicy` no longer delays startup, and names direct write files after the rollover period rather than the startup time.\n---------\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "466f98f47165444e6bae8181269d0b03c98b19a8",
      "tree": "c4f9c0edb4235b42939779868e2ac56be9f2b12f",
      "parents": [
        "4ce9212cd3ac5e1ebf4b0fdfe08dda3f09ee9a6b"
      ],
      "author": {
        "name": "CHANHAN",
        "email": "theholidaynight@gmail.com",
        "time": "Mon Aug 31 18:07:50 2026 +0900"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 31 09:07:50 2026 +0000"
      },
      "message": "Catch `LinkageError` in `ThrowableExtendedStackTraceRenderer#loadClass` (#4028) (#4049)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "4ce9212cd3ac5e1ebf4b0fdfe08dda3f09ee9a6b",
      "tree": "7cac4598d8e58a777886efc8d2392c8d7d9190d7",
      "parents": [
        "33c8236d880ab05539e18ec3d7c45fe941ec1639"
      ],
      "author": {
        "name": "jmestwa-coder",
        "email": "jmestwa@gmail.com",
        "time": "Sun Aug 30 14:13:17 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Aug 30 10:43:17 2026 +0200"
      },
      "message": "resolve external entities through ConfigurationSource in log4j 1.x XmlConfiguration (#4198)\n\n* disable external entity resolution in log4j 1.x XmlConfiguration\n\n* constrain external resolution to the bundled log4j.dtd in Log4jEntityResolver\n\n* resolve external entities through ConfigurationSource in Log4jEntityResolver"
    },
    {
      "commit": "33c8236d880ab05539e18ec3d7c45fe941ec1639",
      "tree": "0adc2aa6401b10155e7853de23a529637d9be75d",
      "parents": [
        "c64ef11a413e8813b320a0ae56277fe3b478199c"
      ],
      "author": {
        "name": "Sebastien Tardif",
        "email": "SebTardif@ncf.ca",
        "time": "Thu Aug 27 08:58:59 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 15:58:59 2026 +0000"
      },
      "message": "docs: Routing Appender security considerations for high-cardinality keys (#4217)\n\n* docs: add Routing Appender security considerations for high-cardinality keys\n\nDocument that default Route appender definitions create one appender per\nrouting key value, which can exhaust file descriptors when the key is\nuntrusted or high-cardinality. Recommend purge policies and low-cardinality\nkeys.\n\n* docs: note SSRF exposure and link the Routing security section\n\n---------\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "c64ef11a413e8813b320a0ae56277fe3b478199c",
      "tree": "bdf6d542255721516a2db1e6fd01fd967ce4e2bb",
      "parents": [
        "a4364da103fa08dd3bad6fcecef793ca9e9bee59"
      ],
      "author": {
        "name": "Hashim Khan",
        "email": "64767361+Hashim1999164@users.noreply.github.com",
        "time": "Thu Aug 27 20:03:22 2026 +0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 20:33:22 2026 +0530"
      },
      "message": "Add missing RootLogger.Builder withFilter alias (#4224)\n\n* Add missing RootLogger.Builder withFilter alias\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "a4364da103fa08dd3bad6fcecef793ca9e9bee59",
      "tree": "81b04b0b9ed37520b5b4ee60ab9e222afba7d7e8",
      "parents": [
        "abcb38f9ccbe52542b660f939cef4066b6012c66"
      ],
      "author": {
        "name": "Przemek Sadło",
        "email": "przemo509@gmail.com",
        "time": "Thu Aug 27 14:08:45 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 12:08:45 2026 +0000"
      },
      "message": "Fix date format from `mm` to `MM` in pattern layout (#4257)"
    },
    {
      "commit": "abcb38f9ccbe52542b660f939cef4066b6012c66",
      "tree": "1c3c30365dcac2dee3eb0e527ece3c91e1b45d16",
      "parents": [
        "668c0ccaa358b1afa4b5fcaa8004370a0fa95c7c"
      ],
      "author": {
        "name": "dev_Hakaze",
        "email": "af.nawfal@gmail.com",
        "time": "Thu Aug 27 19:03:27 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 12:03:27 2026 +0000"
      },
      "message": "fix: treat null parameters as empty in `CsvParameterLayout` (#4245)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "668c0ccaa358b1afa4b5fcaa8004370a0fa95c7c",
      "tree": "9b01114255dd18e979ee47731b97f6717c0b1d58",
      "parents": [
        "ecf1f41c99c65c6500ed6e9bb1d7d1c16a5b8e77"
      ],
      "author": {
        "name": "Burak Kalaycı",
        "email": "kalayciburak1996@gmail.com",
        "time": "Thu Aug 27 13:12:58 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 10:12:58 2026 +0000"
      },
      "message": "Fix Log4j1SyslogLayout builder javadoc attributes (#4239)\n\nSigned-off-by: Burak KALAYCI \u003ckalayciburak1996@gmail.com\u003e"
    },
    {
      "commit": "ecf1f41c99c65c6500ed6e9bb1d7d1c16a5b8e77",
      "tree": "f5a4fadf18b4ab8b94b3ede00c042ee5f0889775",
      "parents": [
        "ef6ebfbfc80da589e2f1b4d1d20caa80d2514eb2"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Tue Aug 18 18:35:07 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 18 22:05:07 2026 +0530"
      },
      "message": "Change `build` and `codeql-analysis` triggers (#4212)\n\nSince apache/logging-parent#500 has been merged, workflow runs no longer need to be triggered by PR events of type `ready_for_review`. We therefore remove the `pull_request.types` filter entirely, which restores the default event types.\n\nWe also simplify the `branches` filters on the `push` and `pull_request` triggers. Since this workflow file lives on `2.x`, these filters only affect `2.x` itself and branches created from it:\n\n- For `push`: only `release/2*` branches automatically inherit these workflows. We drop `2.25.x` (in `build`) and `main` (in `codeql-analysis`), since those entries would only be useful if we were to branch `2.25.x` or `main` anew from `2.x`. Keeping them would confuse readers of the workflow file.\n- For `pull_request`: all branches will run these workflows if a PR is opened against them (e.g. \"stacked\" PRs opened against the branch of another PR)."
    },
    {
      "commit": "ef6ebfbfc80da589e2f1b4d1d20caa80d2514eb2",
      "tree": "628cae8166ebf57514e728ecc1692dc1cbe2832a",
      "parents": [
        "bf873ae58e75cb2296ad29c8df9691793e3f3dcf"
      ],
      "author": {
        "name": "Sebastien Tardif",
        "email": "SebTardif@ncf.ca",
        "time": "Mon Aug 17 03:09:31 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 17 10:09:31 2026 +0000"
      },
      "message": "fix: close streams in `LoggerContextAdmin::setConfigLocationUri` (#4218)\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "bf873ae58e75cb2296ad29c8df9691793e3f3dcf",
      "tree": "40f719dc2bf44e7c58e068de77342d7cc7625de8",
      "parents": [
        "3c60ae0c04d2f310e33c77d6e22a50023d80193a"
      ],
      "author": {
        "name": "DragonFSKY",
        "email": "38503900+DragonFSKY@users.noreply.github.com",
        "time": "Fri Aug 14 17:07:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Aug 14 09:07:29 2026 +0000"
      },
      "message": "Extend plugin processor message filtering and add `[Log4j]` prefixes (#4228)\n\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "3c60ae0c04d2f310e33c77d6e22a50023d80193a",
      "tree": "0a163020f317e8294b53fdb978cc9ece56c3be14",
      "parents": [
        "494f26c71c010bc6d9efe4699e2b21f9c71e8c61"
      ],
      "author": {
        "name": "Sebastien Tardif",
        "email": "SebTardif@ncf.ca",
        "time": "Fri Aug 14 01:18:49 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Aug 14 08:18:49 2026 +0000"
      },
      "message": "Fix exceptions in the JMX integration (#4185)\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "494f26c71c010bc6d9efe4699e2b21f9c71e8c61",
      "tree": "e83b7c306ca6998777cc434df96d698183f64c64",
      "parents": [
        "c59b0562e6690c61296065f7485f6e82a3c46c47"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Thu Aug 13 19:23:37 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 13 19:23:37 2026 +0530"
      },
      "message": "Fix NPE in PluginElementVisitor when handling unresolved child elements (#4250)\n\n* Fix NPE in PluginElementVisitor when handling unresolved child elements\n\n* Change log severity to ERROR\n\n---------\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "c59b0562e6690c61296065f7485f6e82a3c46c47",
      "tree": "c21a3cbc6182bcfa392b211bc72723bec6be1f79",
      "parents": [
        "246fc76eea147ea067e0924e92bb85580b90a336"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Thu Aug 13 19:22:29 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 13 19:22:29 2026 +0530"
      },
      "message": "Add log4j-api-kotlin dependency to BOM (#4222)\n\n* Add log4j-api-kotlin dependency to BOM\n\n* Add log4j-api-kotlin to the Log4j Bill of Materials (BOM)"
    },
    {
      "commit": "246fc76eea147ea067e0924e92bb85580b90a336",
      "tree": "262870094978d95167943d12829439c8ee02cdda",
      "parents": [
        "04c93c1d33f7d0fc46fe4f390ea1968e8d93c485"
      ],
      "author": {
        "name": "Sebastien Tardif",
        "email": "SebTardif@ncf.ca",
        "time": "Thu Aug 13 03:33:41 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 13 10:33:41 2026 +0000"
      },
      "message": "fix: `InstantPatternLegacyFormatter` precision for legacy `n` patterns (#4220)\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan.yazici@oracle.com\u003e"
    },
    {
      "commit": "04c93c1d33f7d0fc46fe4f390ea1968e8d93c485",
      "tree": "ad20110453d1918e023b51f99305c368583c8913",
      "parents": [
        "95888415f631f546bb35b9ae14d3adaa552b57db"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Jul 26 07:13:52 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 26 07:13:52 2026 +0200"
      },
      "message": "Split `integration-test` into per-deployment jobs (#4216)\n\nSplitting the job into `integration-test-snapshot` and\n`integration-test-release` removes the `always()` condition and the\nresult-based ternaries, since each job now follows exactly one deploy\njob and inherits its skip. The snapshot variant also drops\n`log4j-repository-url`: `deploy-snapshot` has no `nexus-url` output,\nso the value was always empty, which is what the reusable workflow\nexpects for snapshots.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "95888415f631f546bb35b9ae14d3adaa552b57db",
      "tree": "da05a6c2206794ca7f09fb6e1af84182f2285495",
      "parents": [
        "359ee520e3a98558899ceda9e6a4005669c479ed"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Jul 26 07:12:26 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 26 07:12:26 2026 +0200"
      },
      "message": "Pin snapshot reproducibility checks to the deployed artifacts (#4215)\n\nSplit `verify-reproducibility` into per-deployment jobs. The snapshot\nvariant now verifies against the repository artifact uploaded by\n`deploy-snapshot-reusable.yaml` instead of the shared Nexus snapshot\nrepository, which could be overwritten by a concurrent run. The release\nvariant keeps using the per-release staging repository URL.\n\nRequires apache/logging-parent#505.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "359ee520e3a98558899ceda9e6a4005669c479ed",
      "tree": "5f672e2e439c02ad07c10a068ebb42e48ed12bc6",
      "parents": [
        "acac6dd39c7bc43cd33c5374b4b82ee7ccdc2e9c"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Jul 26 07:06:40 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 26 07:06:40 2026 +0200"
      },
      "message": "Revamp XML configuration testing and documentation (#4155)\n\n* Revamp XML configuration testing and documentation\n\nRework the testing and documentation of the XML configuration format so that\neach behavior of the DOM-to-Node conversion is covered by its own focused\ntest. `constructHierarchy`, `getType` and `processAttributes` are now static\nand take the `PluginManager` and `strict` flag as parameters, so the\nconversion can be unit-tested with a mocked `PluginManager` instead of a full\n`LoggerContext`. The `StrictXmlConfigTest` integration test is replaced by\n`XmlConfigurationConstructHierarchyTest`, which exercises plugin resolution,\nattribute folding, text values, strict-mode `type` resolution and XInclude\nwhole-file/positional/by-id fragment resolution individually. The unused\n`Status`/`ErrorType` bookkeeping is dropped in favor of logging the error\ndirectly.\n\nThe XML format documentation is moved into a reusable AsciiDoc partial and\ngains XPointer fragment examples.\n\nTesting each behavior individually surfaced a bug: the XInclude\n`fixup-language` feature adds an `xml:lang` attribute that was never stripped\n(only `xml:base` was) and was not covered by any test, so it leaked through as\na Log4j configuration attribute. Matching the reserved XML namespace instead\nof the literal attribute name now strips both `xml:base` and `xml:lang`, and\nany other reserved `xml:` attribute. `XmlConfiguration` also stops explicitly\nenabling the XInclude `fixup-base-uris`/`fixup-language` features: they default\nto `true` and only add the attributes that Log4j strips.\n\nAssisted-By: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* fix: add reference to PR\n\n* Add a test for nested XInclude resolution\n\nVerify that an included document may itself contain an `xi:include`, and that\nthe inner relative `href` resolves against the included document\u0027s own location\nrather than the top-level configuration\u0027s.\n\nAssisted-By: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Fix formatting"
    },
    {
      "commit": "acac6dd39c7bc43cd33c5374b4b82ee7ccdc2e9c",
      "tree": "659ac8a8bacdb65f54ec826c1f6ba87c5b21255b",
      "parents": [
        "dff7bfa2618db6a2b4727b85248b3842822d1149"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Jul 26 07:04:26 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 26 07:04:26 2026 +0200"
      },
      "message": "Align NOTICE files and drop redundant LICENSE resources (#4170)\n\nUpdate the main `NOTICE.txt` copyright year to 2026 and make sure every\nthird-party attribution it lists is carried by the NOTICE resource of the\nmodule whose classes actually ship that code:\n\n* `log4j-core` gains the `TypeUtil.java`, `picocli` and LMAX\n  `TimeoutBlockingWaitStrategy.java` entries.\n* The `Dumbster SMTP test server` entry moves from\n  `log4j-core-test/src/test/resources` to `src/main/resources`, since the\n  Dumbster classes live in `src/main/java` and ship in the main test-support\n  jar.\n\nThe LMAX entry is reworded from the misleading \"parts of Util.java\" (no such\nfile exists in the tree) to name the upstream `com.lmax.disruptor.util.Util`\nclass, whose code is inlined into `TimeoutBlockingWaitStrategy.java`.\n\nModule NOTICE headers are normalized to `1999-2026 The Apache Software\nFoundation` with the correct module titles, matching the Maven NOTICE\ntemplate.\n\nThe bundled `META-INF/LICENSE` copies are removed; the ASF parent POM\nre-supplies them at build time.\n\nAssisted-By: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "dff7bfa2618db6a2b4727b85248b3842822d1149",
      "tree": "a79a2cc97dce8187e9336fe68eab11b64a989848",
      "parents": [
        "516e85bdbe32228b8db4fd300ada0efe15fe6ada"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Jul 25 09:03:53 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 25 09:03:53 2026 +0200"
      },
      "message": "Bump the maven-minor-updates group with 47 updates (#4206)\n\n* Bump the maven-minor-updates group with 47 updates\n\nBumps the maven-minor-updates group with 47 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [org.apache.commons:commons-compress](https://github.com/apache/commons-compress) | `1.27.1` | `1.28.0` |\n| [org.apache.commons:commons-csv](https://github.com/apache/commons-csv) | `1.14.0` | `1.14.1` |\n| [commons-logging:commons-logging](https://github.com/apache/commons-logging) | `1.3.5` | `1.4.0` |\n| [com.fasterxml.jackson:jackson-bom](https://github.com/FasterXML/jackson-bom) | `2.19.2` | `2.22.1` |\n| [org.jctools:jctools-core](https://github.com/JCTools/JCTools) | `4.0.5` | `4.0.6` |\n| org.slf4j:slf4j-api | `2.0.17` | `2.0.18` |\n| [org.junit:junit-bom](https://github.com/junit-team/junit-framework) | `5.13.4` | `5.14.4` |\n| [org.junit.jupiter:junit-jupiter-engine](https://github.com/junit-team/junit-framework) | `5.13.4` | `5.14.4` |\n| [org.apache.activemq:activemq-broker](https://github.com/apache/activemq) | `6.2.6` | `6.2.7` |\n| [org.eclipse.angus:angus-activation](https://github.com/eclipse-ee4j/angus-activation) | `2.0.2` | `2.0.3` |\n| [org.assertj:assertj-core](https://github.com/assertj/assertj) | `3.27.3` | `3.27.7` |\n| [com.code-intelligence:jazzer](https://github.com/CodeIntelligenceTesting/jazzer) | `0.24.0` | `0.30.0` |\n| [com.code-intelligence:jazzer-api](https://github.com/CodeIntelligenceTesting/jazzer) | `0.24.0` | `0.30.0` |\n| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.18.0` | `1.22.0` |\n| org.apache.commons:commons-dbcp2 | `2.13.0` | `2.14.0` |\n| commons-io:commons-io | `2.19.0` | `2.22.0` |\n| org.apache.commons:commons-lang3 | `3.18.0` | `3.20.0` |\n| org.apache.commons:commons-pool2 | `2.12.1` | `2.13.1` |\n| [com.google.guava:guava](https://github.com/google/guava) | `33.4.8-jre` | `33.6.0-jre` |\n| [com.google.guava:guava-testlib](https://github.com/google/guava) | `33.4.8-jre` | `33.6.0-jre` |\n| [jakarta.activation:jakarta.activation-api](https://github.com/jakartaee/jaf-api) | `2.1.3` | `2.1.4` |\n| org.eclipse.angus:jakarta.mail | `2.0.3` | `2.0.5` |\n| [jakarta.mail:jakarta.mail-api](https://github.com/jakartaee/mail-api) | `2.1.3` | `2.1.5` |\n| [com.google.code.java-allocation-instrumenter:java-allocation-instrumenter](https://github.com/google/allocation-instrumenter) | `3.3.4` | `3.3.5` |\n| [org.jmdns:jmdns](https://github.com/jmdns/jmdns) | `3.6.1` | `3.6.3` |\n| [net.java.dev.jna:jna](https://github.com/java-native-access/jna) | `5.17.0` | `5.19.1` |\n| [co.elastic.logging:log4j2-ecs-layout](https://github.com/elastic/ecs-logging-java) | `1.7.0` | `1.8.0` |\n| org.apache.maven:maven-core | `3.9.10` | `3.9.16` |\n| org.apache.maven:maven-model | `3.9.10` | `3.9.16` |\n| [org.openjdk.nashorn:nashorn-core](https://github.com/openjdk/nashorn) | `15.6` | `15.7` |\n| [org.eclipse.platform:org.eclipse.osgi](https://github.com/eclipse-equinox/equinox) | `3.23.100` | `3.24.200` |\n| [org.codehaus.woodstox:stax2-api](https://github.com/FasterXML/stax2-api) | `4.2.2` | `4.3.0` |\n| [org.xmlunit:xmlunit-core](https://github.com/xmlunit/xmlunit) | `2.10.3` | `2.12.0` |\n| [org.xmlunit:xmlunit-matchers](https://github.com/xmlunit/xmlunit) | `2.10.3` | `2.12.0` |\n| [org.tukaani:xz](https://github.com/tukaani-project/xz-java) | `1.10` | `1.12` |\n| [biz.aQute.bnd:biz.aQute.bnd.annotation](https://github.com/bndtools/bnd) | `7.1.0` | `7.3.0` |\n| [com.google.errorprone:error_prone_annotations](https://github.com/google/error-prone) | `2.38.0` | `2.50.0` |\n| [io.fabric8:docker-maven-plugin](https://github.com/fabric8io/docker-maven-plugin) | `0.46.0` | `0.48.1` |\n| [org.gradlex:gradle-module-metadata-maven-plugin](https://github.com/gradlex-org/gradle-module-metadata-maven-plugin) | `1.1` | `1.2` |\n| [com.github.jnr:jnr-ffi](https://github.com/jnr/jnr-ffi) | `2.2.18` | `2.3.0` |\n| [org.bouncycastle:bcpkix-jdk18on](https://github.com/bcgit/bc-java) | `1.83` | `1.85` |\n| [co.elastic.clients:elasticsearch-java](https://github.com/elastic/elasticsearch-java) | `9.2.0` | `9.4.3` |\n| [org.elasticsearch.client:elasticsearch-rest-client](https://github.com/elastic/elasticsearch) | `9.2.0` | `9.4.3` |\n| [org.mongodb:bson](https://github.com/mongodb/mongo-java-driver) | `5.6.1` | `5.9.0` |\n| [org.mongodb:mongodb-driver-core](https://github.com/mongodb/mongo-java-driver) | `5.6.1` | `5.9.0` |\n| [org.mongodb:mongodb-driver-sync](https://github.com/mongodb/mongo-java-driver) | `5.6.1` | `5.9.0` |\n| org.slf4j:slf4j-nop | `2.0.17` | `2.0.18` |\n\n\nUpdates `org.apache.commons:commons-compress` from 1.27.1 to 1.28.0\n- [Changelog](https://github.com/apache/commons-compress/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-compress/compare/rel/commons-compress-1.27.1...rel/commons-compress-1.28.0)\n\nUpdates `org.apache.commons:commons-csv` from 1.14.0 to 1.14.1\n- [Changelog](https://github.com/apache/commons-csv/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-csv/compare/rel/commons-csv-1.14.0...rel/commons-csv-1.14.1)\n\nUpdates `commons-logging:commons-logging` from 1.3.5 to 1.4.0\n- [Changelog](https://github.com/apache/commons-logging/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-logging/compare/rel/commons-logging-1.3.5...rel/commons-logging-1.4.0)\n\nUpdates `com.fasterxml.jackson:jackson-bom` from 2.19.2 to 2.22.1\n- [Commits](https://github.com/FasterXML/jackson-bom/compare/jackson-bom-2.19.2...jackson-bom-2.22.1)\n\nUpdates `org.jctools:jctools-core` from 4.0.5 to 4.0.6\n- [Release notes](https://github.com/JCTools/JCTools/releases)\n- [Changelog](https://github.com/JCTools/JCTools/blob/master/RELEASE-NOTES.md)\n- [Commits](https://github.com/JCTools/JCTools/compare/v4.0.5...v4.0.6)\n\nUpdates `org.slf4j:slf4j-api` from 2.0.17 to 2.0.18\n\nUpdates `org.junit:junit-bom` from 5.13.4 to 5.14.4\n- [Release notes](https://github.com/junit-team/junit-framework/releases)\n- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.4...r5.14.4)\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 5.13.4 to 5.14.4\n- [Release notes](https://github.com/junit-team/junit-framework/releases)\n- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.4...r5.14.4)\n\nUpdates `org.apache.activemq:activemq-broker` from 6.2.6 to 6.2.7\n- [Release notes](https://github.com/apache/activemq/releases)\n- [Commits](https://github.com/apache/activemq/compare/activemq-6.2.6...activemq-6.2.7)\n\nUpdates `org.eclipse.angus:angus-activation` from 2.0.2 to 2.0.3\n- [Release notes](https://github.com/eclipse-ee4j/angus-activation/releases)\n- [Commits](https://github.com/eclipse-ee4j/angus-activation/compare/2.0.2...2.0.3)\n\nUpdates `org.assertj:assertj-core` from 3.27.3 to 3.27.7\n- [Release notes](https://github.com/assertj/assertj/releases)\n- [Commits](https://github.com/assertj/assertj/compare/assertj-build-3.27.3...assertj-build-3.27.7)\n\nUpdates `com.code-intelligence:jazzer` from 0.24.0 to 0.30.0\n- [Release notes](https://github.com/CodeIntelligenceTesting/jazzer/releases)\n- [Commits](https://github.com/CodeIntelligenceTesting/jazzer/compare/v0.24.0...v0.30.0)\n\nUpdates `com.code-intelligence:jazzer-api` from 0.24.0 to 0.30.0\n- [Release notes](https://github.com/CodeIntelligenceTesting/jazzer/releases)\n- [Commits](https://github.com/CodeIntelligenceTesting/jazzer/compare/v0.24.0...v0.30.0)\n\nUpdates `com.code-intelligence:jazzer-api` from 0.24.0 to 0.30.0\n- [Release notes](https://github.com/CodeIntelligenceTesting/jazzer/releases)\n- [Commits](https://github.com/CodeIntelligenceTesting/jazzer/compare/v0.24.0...v0.30.0)\n\nUpdates `commons-codec:commons-codec` from 1.18.0 to 1.22.0\n- [Changelog](https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt)\n- [Commits](https://github.com/apache/commons-codec/compare/rel/commons-codec-1.18.0...rel/commons-codec-1.22.0)\n\nUpdates `org.apache.commons:commons-dbcp2` from 2.13.0 to 2.14.0\n\nUpdates `commons-io:commons-io` from 2.19.0 to 2.22.0\n\nUpdates `org.apache.commons:commons-lang3` from 3.18.0 to 3.20.0\n\nUpdates `org.apache.commons:commons-pool2` from 2.12.1 to 2.13.1\n\nUpdates `com.google.guava:guava` from 33.4.8-jre to 33.6.0-jre\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\nUpdates `com.google.guava:guava-testlib` from 33.4.8-jre to 33.6.0-jre\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\nUpdates `com.google.guava:guava-testlib` from 33.4.8-jre to 33.6.0-jre\n- [Release notes](https://github.com/google/guava/releases)\n- [Commits](https://github.com/google/guava/commits)\n\nUpdates `jakarta.activation:jakarta.activation-api` from 2.1.3 to 2.1.4\n- [Release notes](https://github.com/jakartaee/jaf-api/releases)\n- [Commits](https://github.com/jakartaee/jaf-api/compare/2.1.3...2.1.4)\n\nUpdates `org.eclipse.angus:jakarta.mail` from 2.0.3 to 2.0.5\n\nUpdates `jakarta.mail:jakarta.mail-api` from 2.1.3 to 2.1.5\n- [Release notes](https://github.com/jakartaee/mail-api/releases)\n- [Commits](https://github.com/jakartaee/mail-api/compare/2.1.3...2.1.5)\n\nUpdates `com.google.code.java-allocation-instrumenter:java-allocation-instrumenter` from 3.3.4 to 3.3.5\n- [Release notes](https://github.com/google/allocation-instrumenter/releases)\n- [Commits](https://github.com/google/allocation-instrumenter/compare/java-allocation-instrumenter-3.3.4...java-allocation-instrumenter-3.3.5)\n\nUpdates `org.jmdns:jmdns` from 3.6.1 to 3.6.3\n- [Release notes](https://github.com/jmdns/jmdns/releases)\n- [Changelog](https://github.com/jmdns/jmdns/blob/main/CHANGELOG.txt)\n- [Commits](https://github.com/jmdns/jmdns/compare/3.6.1...v3.6.3)\n\nUpdates `net.java.dev.jna:jna` from 5.17.0 to 5.19.1\n- [Changelog](https://github.com/java-native-access/jna/blob/master/CHANGES.md)\n- [Commits](https://github.com/java-native-access/jna/compare/5.17.0...5.19.1)\n\nUpdates `co.elastic.logging:log4j2-ecs-layout` from 1.7.0 to 1.8.0\n- [Release notes](https://github.com/elastic/ecs-logging-java/releases)\n- [Commits](https://github.com/elastic/ecs-logging-java/compare/v1.7.0...v1.8.0)\n\nUpdates `org.apache.maven:maven-core` from 3.9.10 to 3.9.16\n\nUpdates `org.apache.maven:maven-model` from 3.9.10 to 3.9.16\n\nUpdates `org.apache.maven:maven-model` from 3.9.10 to 3.9.16\n\nUpdates `org.openjdk.nashorn:nashorn-core` from 15.6 to 15.7\n- [Changelog](https://github.com/openjdk/nashorn/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/openjdk/nashorn/compare/release-15.6...release-15.7)\n\nUpdates `org.eclipse.platform:org.eclipse.osgi` from 3.23.100 to 3.24.200\n- [Commits](https://github.com/eclipse-equinox/equinox/commits)\n\nUpdates `org.codehaus.woodstox:stax2-api` from 4.2.2 to 4.3.0\n- [Commits](https://github.com/FasterXML/stax2-api/compare/stax2-api-4.2.2...stax2-api-4.3.0)\n\nUpdates `org.xmlunit:xmlunit-core` from 2.10.3 to 2.12.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.10.3...v2.12.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.10.3 to 2.12.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.10.3...v2.12.0)\n\nUpdates `org.xmlunit:xmlunit-matchers` from 2.10.3 to 2.12.0\n- [Release notes](https://github.com/xmlunit/xmlunit/releases)\n- [Changelog](https://github.com/xmlunit/xmlunit/blob/main/RELEASE_NOTES.md)\n- [Commits](https://github.com/xmlunit/xmlunit/compare/v2.10.3...v2.12.0)\n\nUpdates `org.tukaani:xz` from 1.10 to 1.12\n- [Release notes](https://github.com/tukaani-project/xz-java/releases)\n- [Changelog](https://github.com/tukaani-project/xz-java/blob/master/NEWS.md)\n- [Commits](https://github.com/tukaani-project/xz-java/compare/v1.10...v1.12)\n\nUpdates `biz.aQute.bnd:biz.aQute.bnd.annotation` from 7.1.0 to 7.3.0\n- [Release notes](https://github.com/bndtools/bnd/releases)\n- [Commits](https://github.com/bndtools/bnd/compare/7.1.0...7.3.0)\n\nUpdates `com.google.errorprone:error_prone_annotations` from 2.38.0 to 2.50.0\n- [Release notes](https://github.com/google/error-prone/releases)\n- [Commits](https://github.com/google/error-prone/compare/v2.38.0...v2.50.0)\n\nUpdates `io.fabric8:docker-maven-plugin` from 0.46.0 to 0.48.1\n- [Release notes](https://github.com/fabric8io/docker-maven-plugin/releases)\n- [Changelog](https://github.com/fabric8io/docker-maven-plugin/blob/master/doc/changelog.md)\n- [Commits](https://github.com/fabric8io/docker-maven-plugin/compare/v0.46.0...v0.48.1)\n\nUpdates `org.gradlex:gradle-module-metadata-maven-plugin` from 1.1 to 1.2\n- [Release notes](https://github.com/gradlex-org/gradle-module-metadata-maven-plugin/releases)\n- [Changelog](https://github.com/gradlex-org/gradle-module-metadata-maven-plugin/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/gradlex-org/gradle-module-metadata-maven-plugin/compare/v1.1...v1.2)\n\nUpdates `org.junit.jupiter:junit-jupiter-engine` from 5.13.4 to 5.14.4\n- [Release notes](https://github.com/junit-team/junit-framework/releases)\n- [Commits](https://github.com/junit-team/junit-framework/compare/r5.13.4...r5.14.4)\n\nUpdates `com.github.jnr:jnr-ffi` from 2.2.18 to 2.3.0\n- [Commits](https://github.com/jnr/jnr-ffi/compare/jnr-ffi-2.2.18...2.3.0)\n\nUpdates `org.bouncycastle:bcpkix-jdk18on` from 1.83 to 1.85\n- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)\n- [Commits](https://github.com/bcgit/bc-java/commits)\n\nUpdates `co.elastic.clients:elasticsearch-java` from 9.2.0 to 9.4.3\n- [Release notes](https://github.com/elastic/elasticsearch-java/releases)\n- [Changelog](https://github.com/elastic/elasticsearch-java/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/elastic/elasticsearch-java/compare/v9.2.0...v9.4.3)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.2.0 to 9.4.3\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.2.0...v9.4.3)\n\nUpdates `org.elasticsearch.client:elasticsearch-rest-client` from 9.2.0 to 9.4.3\n- [Release notes](https://github.com/elastic/elasticsearch/releases)\n- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)\n- [Commits](https://github.com/elastic/elasticsearch/compare/v9.2.0...v9.4.3)\n\nUpdates `org.mongodb:bson` from 5.6.1 to 5.9.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.6.1...r5.9.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.6.1 to 5.9.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.6.1...r5.9.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.6.1 to 5.9.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.6.1...r5.9.0)\n\nUpdates `org.mongodb:mongodb-driver-core` from 5.6.1 to 5.9.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.6.1...r5.9.0)\n\nUpdates `org.mongodb:mongodb-driver-sync` from 5.6.1 to 5.9.0\n- [Release notes](https://github.com/mongodb/mongo-java-driver/releases)\n- [Commits](https://github.com/mongodb/mongo-java-driver/compare/r5.6.1...r5.9.0)\n\nUpdates `org.slf4j:slf4j-nop` from 2.0.17 to 2.0.18\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.commons:commons-compress\n  dependency-version: 1.28.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.commons:commons-csv\n  dependency-version: 1.14.1\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: commons-logging:commons-logging\n  dependency-version: 1.4.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.fasterxml.jackson:jackson-bom\n  dependency-version: 2.22.1\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.jctools:jctools-core\n  dependency-version: 4.0.6\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.slf4j:slf4j-api\n  dependency-version: 2.0.18\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.junit:junit-bom\n  dependency-version: 5.14.4\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.junit.jupiter:junit-jupiter-engine\n  dependency-version: 5.14.4\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.activemq:activemq-broker\n  dependency-version: 6.2.7\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.eclipse.angus:angus-activation\n  dependency-version: 2.0.3\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.assertj:assertj-core\n  dependency-version: 3.27.7\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: com.code-intelligence:jazzer\n  dependency-version: 0.30.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.code-intelligence:jazzer-api\n  dependency-version: 0.30.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.code-intelligence:jazzer-api\n  dependency-version: 0.30.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: commons-codec:commons-codec\n  dependency-version: 1.22.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.commons:commons-dbcp2\n  dependency-version: 2.14.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: commons-io:commons-io\n  dependency-version: 2.22.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.commons:commons-lang3\n  dependency-version: 3.20.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.commons:commons-pool2\n  dependency-version: 2.13.1\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.google.guava:guava\n  dependency-version: 33.6.0-jre\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.google.guava:guava-testlib\n  dependency-version: 33.6.0-jre\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.google.guava:guava-testlib\n  dependency-version: 33.6.0-jre\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: jakarta.activation:jakarta.activation-api\n  dependency-version: 2.1.4\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.eclipse.angus:jakarta.mail\n  dependency-version: 2.0.5\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: jakarta.mail:jakarta.mail-api\n  dependency-version: 2.1.5\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: com.google.code.java-allocation-instrumenter:java-allocation-instrumenter\n  dependency-version: 3.3.5\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.jmdns:jmdns\n  dependency-version: 3.6.3\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: net.java.dev.jna:jna\n  dependency-version: 5.19.1\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: co.elastic.logging:log4j2-ecs-layout\n  dependency-version: 1.8.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.maven:maven-core\n  dependency-version: 3.9.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.maven:maven-model\n  dependency-version: 3.9.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.apache.maven:maven-model\n  dependency-version: 3.9.16\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n- dependency-name: org.openjdk.nashorn:nashorn-core\n  dependency-version: \u002715.7\u0027\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.eclipse.platform:org.eclipse.osgi\n  dependency-version: 3.24.200\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.codehaus.woodstox:stax2-api\n  dependency-version: 4.3.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.xmlunit:xmlunit-core\n  dependency-version: 2.12.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.12.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.xmlunit:xmlunit-matchers\n  dependency-version: 2.12.0\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.tukaani:xz\n  dependency-version: \u00271.12\u0027\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: biz.aQute.bnd:biz.aQute.bnd.annotation\n  dependency-version: 7.3.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.google.errorprone:error_prone_annotations\n  dependency-version: 2.50.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: io.fabric8:docker-maven-plugin\n  dependency-version: 0.48.1\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.gradlex:gradle-module-metadata-maven-plugin\n  dependency-version: \u00271.2\u0027\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.junit.jupiter:junit-jupiter-engine\n  dependency-version: 5.14.4\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: com.github.jnr:jnr-ffi\n  dependency-version: 2.3.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.bouncycastle:bcpkix-jdk18on\n  dependency-version: \u00271.85\u0027\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: co.elastic.clients:elasticsearch-java\n  dependency-version: 9.4.3\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.4.3\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.elasticsearch.client:elasticsearch-rest-client\n  dependency-version: 9.4.3\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.mongodb:bson\n  dependency-version: 5.9.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.9.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.9.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.mongodb:mongodb-driver-core\n  dependency-version: 5.9.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.mongodb:mongodb-driver-sync\n  dependency-version: 5.9.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: maven-minor-updates\n- dependency-name: org.slf4j:slf4j-nop\n  dependency-version: 2.0.18\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: maven-minor-updates\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4206\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e"
    },
    {
      "commit": "516e85bdbe32228b8db4fd300ada0efe15fe6ada",
      "tree": "cd321f19e729aa31c351ed37dd8ffe19e778d777",
      "parents": [
        "de17f604c2ef46add24b0180746f6ef0a300e94e"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Fri Jul 24 16:20:24 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 10:50:24 2026 +0000"
      },
      "message": "Fix properties configuration support for per-logger properties (#4142)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e"
    },
    {
      "commit": "de17f604c2ef46add24b0180746f6ef0a300e94e",
      "tree": "af2f4893cfdd2674811a6a61b569b764a7869fdf",
      "parents": [
        "b21bb323312077a8b0c3e248ce66e223eab38e86"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Fri Jul 24 15:58:59 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 10:28:59 2026 +0000"
      },
      "message": "Fix NPE in ConfigurationScheduler by ensuring scheduledFuture is chec… (#4118)\n\n* Fix NPE in ConfigurationScheduler by ensuring scheduledFuture is checked for null before accessing its methods; add test for race condition in scheduling.\n\n* Restrict JUnit dependencies to below version 6.x to maintain compatib… (#4120)\n\n* Restrict JUnit dependencies to below version 6.x to maintain compatibility with Java 8\n\n* Update JUnit dependency restrictions for compatibility with Java 8 on 2.x\n\n* Don\u0027t override `apache-rat-plugin` version (#4123)\n\nRemove the version override for `apache-rat-plugin` so it falls back to the version provided by the ASF Parent POM.\n\nApache RAT `0.18`, for which Dependabot opened an update PR, contains a bug ([RAT-552](https://issues.apache.org/jira/browse/RAT-552)) that effectively disables the `excludeSubProjects` plugin option whenever `\u003cexcludes\u003e` is present in the configuration.\n\nUpgrading to `0.18` will require converting our `\u003cexcludes\u003e` to `\u003cinputExcludes\u003e`, which depends on a new `logging-parent` release.\n\n* Bump actions/stale from 9.1.0 to 10.2.0 in the dependencies group across 1 directory (#4121)\n\n* Bump actions/stale in the dependencies group across 1 directory\n\nBumps the dependencies group with 1 update in the / directory: [actions/stale](https://github.com/actions/stale).\n\n\nUpdates `actions/stale` from 9.1.0 to 10.2.0\n- [Release notes](https://github.com/actions/stale/releases)\n- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/stale/compare/5bef64f19d7facfb25b37b414482c7164d639639...b5d41d4e1d5dceea10e7104786b73624c18a190f)\n\n---\nupdated-dependencies:\n- dependency-name: actions/stale\n  dependency-version: 10.2.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: dependencies\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4121\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\n\n* Fix KafkaAppender reporting error after successful retry (#4125)\n\n* Fix KafkaAppender reporting error after successful retry\n\nWhen retryCount is configured and the initial tryAppend() fails, the\nretry loop uses break to exit on success. However, break only exits the\nwhile loop and execution always reaches the error() call afterward. This\ncauses spurious error notifications for transient Kafka failures that\nwere successfully recovered by a retry.\n\nReplace break with return so that a successful retry exits append()\nwithout reporting an error. Retry exceptions are now logged at DEBUG\nlevel for diagnostics instead of being silently discarded.\n\nAlso remove dead code in Builder.getRetryCount() where Integer.valueOf(int)\nwas wrapped in a NumberFormatException catch that can never fire.\n\nThe bug was introduced in #315.\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\n\n* Add changelog entry for KafkaAppender retry fix\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\n\n* Use CloseableThreadContext in testRetrySuccessDoesNotReportError\n\nAdopt reviewer suggestion to use try-with-resources CloseableThreadContext\ninstead of manual ThreadContext.put/clearMap.\n\n---------\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\n\n* Revamped `ListAppender` for thread-safety (#4111)\n\nCo-authored-by: Björn Michael \u003cb.michael@gmx.de\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan.yazici@oracle.com\u003e\n\n* Improve `CronExpression` tests to cover daylight saving and scheduling logic (#4081)\n\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Fix `createOnDemand` for Rolling File Appender (#4072)\n\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Add support for max compression delay in compression actions (#4071)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Improve logging for `LinkageError` scenarios involving the LMAX Disruptor library (#4124)\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Fix changelog issue and PR references for Disruptor initialization error logging (#2250, #4124, #4134)\n\n* Fix encoding of `MSGID` and `SD-ID` fields of `StructuredDataMessage` to XML (#4136)\n\n* Fix stack trace rendering for exceptions with identity malfunction (#4133)\n\n* Fix circular reference detection for exceptions with colliding equals/hashCode implementations\n\n* Add changelog entry for circular reference detection fix with colliding equals/hashCode exceptions\n\n* Add changelog entry for circular reference detection fix with colliding equals/hashCode exceptions\n\n* Add test for ThrowableProxy serialization with colliding equals/hashCode implementations\n\n* Refactor ThrowableProxy serialization test to use modern Java I/O classes\n\n* Use `TestFriendlyException` to exercise the malfunction\n\n* Update changelog\n\n* Improve comments\n\n* Remove redundant change\n\n---------\n\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Remove the `patternFlags` attribute from `RegexFilter` (#4119)\n\nCo-authored-by: Jeff Thomas \u003cjeffrey.thomas@t-systems.com\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Fix `DatePatternConverter` locale parsing when timezone is omitted (#4130)\n\n* Harden `readObject(ObjectInputStream)` method argument checks (#4098)\n\nSigned-off-by: SunWeb3Sec \u003cinfosecpt@gmail.com\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Fix resource leaks in `ConfigurationSource` when loading via URL (#4127)\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Ramanathan \u003cramanathanbscmca@gmail.com\u003e\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\n\n* Adopt the Dependabot changelog \u0027draft trick\u0027 (#4148)\n\nApplies the consumer-side changes from logging-parent PR #476:\n\n* `build.yaml` and `codeql-analysis.yaml` now subscribe to the\n  `ready_for_review` pull request type, so required checks re-run when a\n  Dependabot PR is taken out of draft.\n* `process-dependabot.yaml` drops the `RECURSIVE_TOKEN` PAT secret, which\n  is no longer needed now that the reusable workflow parks the PR in\n  draft mode instead of pushing with a privileged token.\n\nAssisted-By: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Add Dependabot config for the 2.26.x maintenance branch (#4149)\n\nConfigure a Maven update entry targeting the `2.26.x` branch that only\nproposes patch-level upgrades. All dependencies are bundled into a single\n`Maven patch updates` group with a 7-day cooldown.\n\n* Fix handling of non-finite numbers while encoding `MapMessage` to JSON (#4163)\n\n* Remove `/log4j-slf4j-impl` Dependabot execution (#4151)\n\nInstead of correcting the target branch, we can safely\nremove it: the only dependency version defined in\n`log4j-slf4j-impl` is SLF4J 1.x, which is highly unlikely\nto see any new releases.\n\n* Upgrade Maven and Maven Wrapper versions to `3.9.16` and `3.3.4`, respectively (#4167)\n\n* Adds `maxRandomDelay` configure to Rolling Appenders (#4165)\n\n* Rework random delay for Rolling Appender action chain\n\n* Stabilize `RollingAppenderDirectCronTest`\n\n* Merge `2.26.1` to `2.x` (#4169)\n\n* Add `2.25.5` release notes (#4174)\n\n* Add native tracing fields to LogEvent to eliminate async MDC overhead (#4171)\n\n* Add tracing fields to RingBufferLogEvent and related classes\n\n* Add W3C trace context support with pattern converters for trace ID, span ID, and trace flags\n\n* Enhance TraceContextProviderService for exception safety and simplify trace ID retrieval\n\n* Add tests for tracing fields serialization and pattern converters\n\n* Refactor tracing metadata documentation and improve code comments for clarity\n\n* Add native W3C tracing fields to LogEvent and introduce TraceContextProvider SPI\n\n* Add benchmark for ContextDataProvider tracing approach\n\n* Enhance TraceContextProviderService to handle SecurityManager restrictions gracefully\n\n* Fix NPE in ConfigurationScheduler by ensuring proper reset of scheduled futures\n\n* Fix NPE in ConfigurationScheduler for frequent cron schedules\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nSigned-off-by: SunWeb3Sec \u003cinfosecpt@gmail.com\u003e\nCo-authored-by: Piotr P. Karwasz \u003cpkarwasz-github@apache.org\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Sebastien Tardif \u003cSebTardif@ncf.ca\u003e\nCo-authored-by: Björn Michael \u003cb.michael@gmx.de\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan.yazici@oracle.com\u003e\nCo-authored-by: Volkan Yazıcı \u003cvolkan@yazi.ci\u003e\nCo-authored-by: Jeff Thomas \u003cjeffrey.thomas@t-systems.com\u003e\nCo-authored-by: SunWeb3Sec \u003c107249780+SunWeb3Sec@users.noreply.github.com\u003e"
    },
    {
      "commit": "b21bb323312077a8b0c3e248ce66e223eab38e86",
      "tree": "5732a458c93c968966b4f576a4ba85e0abe95fc7",
      "parents": [
        "6bfe2359ed9fca9d2290ee840ac67d6cce4e7866"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Fri Jul 24 10:45:26 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 08:45:26 2026 +0000"
      },
      "message": "Open separate Dependabot PRs for major version updates (#4200)\n\nRestrict the catch-all Dependabot groups targeting `2.x` and `main` to\nminor and patch updates. Major updates no longer match any group, so\nDependabot opens a separate PR for each of them.\n\nAssisted-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "6bfe2359ed9fca9d2290ee840ac67d6cce4e7866",
      "tree": "9926f07285870af70c4eab119eaa9e1e8c29cca7",
      "parents": [
        "9ce46c1765de0f5ad15ab68f00b7939622604a4d"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Thu Jul 23 21:01:23 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 21:01:23 2026 +0530"
      },
      "message": "Update Dependabot configuration to handle WireMock 3.x changes (#4192)"
    },
    {
      "commit": "9ce46c1765de0f5ad15ab68f00b7939622604a4d",
      "tree": "042c0f7ca391604bdeebb1120a3ea9a7d99ebe84",
      "parents": [
        "6d4460755ed01c2da66f1c5a05f8151226ed6f3b"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jul 22 23:21:22 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 22 23:21:22 2026 +0530"
      },
      "message": "Bump actions/stale from 10.2.0 to 10.3.0 in the dependencies group across 1 directory (#4137)\n\n* Bump actions/stale in the dependencies group across 1 directory\n\nBumps the dependencies group with 1 update in the / directory: [actions/stale](https://github.com/actions/stale).\n\n\nUpdates `actions/stale` from 10.2.0 to 10.3.0\n- [Release notes](https://github.com/actions/stale/releases)\n- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/stale/compare/b5d41d4e1d5dceea10e7104786b73624c18a190f...eb5cf3af3ac0a1aa4c9c45633dd1ae542a27a899)\n\n---\nupdated-dependencies:\n- dependency-name: actions/stale\n  dependency-version: 10.3.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n  dependency-group: dependencies\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4137\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "6d4460755ed01c2da66f1c5a05f8151226ed6f3b",
      "tree": "8d0c260b23c91ad439151b259ac3d2e0071acde5",
      "parents": [
        "7a862f6ba55eb1f218b14e5ec6b778ebc48b8101"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jul 22 18:03:04 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 22 18:03:04 2026 +0530"
      },
      "message": "Bump org.slf4j:slf4j-nop from 2.0.17 to 2.0.18 in /log4j-mongodb4 in the dependencies group across 1 directory (#4139)\n\n* Bump org.slf4j:slf4j-nop\n\nBumps the dependencies group with 1 update in the /log4j-mongodb4 directory: org.slf4j:slf4j-nop.\n\n\nUpdates `org.slf4j:slf4j-nop` from 2.0.17 to 2.0.18\n\n---\nupdated-dependencies:\n- dependency-name: org.slf4j:slf4j-nop\n  dependency-version: 2.0.18\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: dependencies\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4139\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "7a862f6ba55eb1f218b14e5ec6b778ebc48b8101",
      "tree": "99ae72a6665c6365cdd1c24e7d88376a061fe6f2",
      "parents": [
        "40e974e3a6f77e4638f29b66344eb92e6873be43"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jul 22 00:56:31 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 22 00:56:31 2026 +0530"
      },
      "message": "Bump org.codehaus.plexus:plexus-utils from 3.6.0 to 3.6.1 in /log4j-parent (#4187)\n\n* Bump org.codehaus.plexus:plexus-utils in /log4j-parent\n\nBumps [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) from 3.6.0 to 3.6.1.\n- [Release notes](https://github.com/codehaus-plexus/plexus-utils/releases)\n- [Commits](https://github.com/codehaus-plexus/plexus-utils/compare/plexus-utils-3.6.0...plexus-utils-3.6.1)\n\n---\nupdated-dependencies:\n- dependency-name: org.codehaus.plexus:plexus-utils\n  dependency-version: 3.6.1\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4187\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "40e974e3a6f77e4638f29b66344eb92e6873be43",
      "tree": "a825dc5e136b381d1e8e0d6a69b4c09ec25f23b2",
      "parents": [
        "1f484a13d40bd1a3c12588f5cd969b57f596d265"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jul 22 00:15:46 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 22 00:15:46 2026 +0530"
      },
      "message": "Bump org.apache.kafka:kafka-clients from 3.9.1 to 3.9.2 in /log4j-parent (#4188)\n\n* Bump org.apache.kafka:kafka-clients from 3.9.1 to 3.9.2 in /log4j-parent\n\nBumps org.apache.kafka:kafka-clients from 3.9.1 to 3.9.2.\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.kafka:kafka-clients\n  dependency-version: 3.9.2\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4188\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "1f484a13d40bd1a3c12588f5cd969b57f596d265",
      "tree": "30c287f2d98d89fbac62a04aec69f24dcbed0756",
      "parents": [
        "819f2167cadfc47645926fe7a0ce52b5b33290f9"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Jul 21 20:21:40 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 21 20:21:40 2026 +0530"
      },
      "message": "Bump org.apache.activemq:activemq-broker from 6.1.7 to 6.2.6 in /log4j-parent (#4178)\n\n* Bump org.apache.activemq:activemq-broker in /log4j-parent\n\nBumps [org.apache.activemq:activemq-broker](https://github.com/apache/activemq) from 6.1.7 to 6.2.6.\n- [Release notes](https://github.com/apache/activemq/releases)\n- [Commits](https://github.com/apache/activemq/compare/activemq-6.1.7...activemq-6.2.6)\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.activemq:activemq-broker\n  dependency-version: 6.2.6\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Generate changelog entries for #4178\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: github-actions[bot] \u003c41898282+github-actions[bot]@users.noreply.github.com\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "819f2167cadfc47645926fe7a0ce52b5b33290f9",
      "tree": "c940592e502ee1ab3e7695f051fbd0f7c983ee02",
      "parents": [
        "38889a881f341a2d9a6d6835eb76435673ffc421"
      ],
      "author": {
        "name": "Sebastien Tardif",
        "email": "SebTardif@ncf.ca",
        "time": "Mon Jul 20 12:16:03 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 20 16:16:03 2026 +0000"
      },
      "message": "fix: null-check parseAppender result in log4j-1.2-api XmlConfiguration (#4172)\n\n* fix: null-check parseAppender result in log4j-1.2-api XmlConfiguration\n\nparseAppender can return null when the appender cannot be instantiated.\nDereferencing getName() then caused an NPE during configuration parsing.\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\n\n* Address review: warn, null name guard, test, changelog\n\n- Log a warning when parseAppender returns null or getName() is null\n- Unit test with invalid appender class that NPE\u0027d without the guard\n- Changelog entry for PR 4172\n- Sibling parse() cases (parseCategory/parseRoot) are void and already\n  null-safe; only APPENDER_TAG used a nullable return\n\n* Remove explanatory comments from appender null-guard and test\n\nAddress review feedback: drop production and test comments around the\nparseAppender null handling.\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\n\n---------\n\nSigned-off-by: Sebastien Tardif \u003csebtardif@ncf.ca\u003e\nCo-authored-by: Ramanathan \u003cramanathan@apache.org\u003e"
    },
    {
      "commit": "38889a881f341a2d9a6d6835eb76435673ffc421",
      "tree": "a6079cf41055799b7c8ac54cc6798539e1d9690b",
      "parents": [
        "df1d9a5198c55339cc4eebe78030f4fbdf4d5070"
      ],
      "author": {
        "name": "Kamil Krzywanski",
        "email": "61804231+kamilkrzywanski@users.noreply.github.com",
        "time": "Sat Jul 18 09:44:49 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 18 07:44:49 2026 +0000"
      },
      "message": "Include free-form message when encoding StructuredDataMessage to XML (#4180)\n\n* Include free-form message when encoding StructuredDataMessage to XML\n\nStructuredDataMessage.asXml omitted the constructor message field. Encode\nit as a distinct \u003cmessage\u003e element so it is not conflated with a map entry\nkeyed \"message\". Fixes #4141.\n\n* apply spotless formatting\n\n* update pull id in changelog\n\n---------\n\nCo-authored-by: Ramanathan \u003cramanathanbscmca@gmail.com\u003e"
    },
    {
      "commit": "df1d9a5198c55339cc4eebe78030f4fbdf4d5070",
      "tree": "5fe4ecbb6bfbd7fbf8c5ec6216b402b27c561602",
      "parents": [
        "b6ba7d0af60783e98fbe52aee4f9ea3e70deed25"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Wed Jul 15 12:58:48 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 15 12:58:48 2026 +0530"
      },
      "message": "Add developer information for Ramanathan Muthu (#4182)"
    },
    {
      "commit": "b6ba7d0af60783e98fbe52aee4f9ea3e70deed25",
      "tree": "3a50fd720821dbd54f2530932793c7a76075cc86",
      "parents": [
        "a52ad57022935b07d0d0828d0e11a78748f06eb2"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Mon Jul 06 23:58:28 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 23:58:28 2026 +0530"
      },
      "message": "Add native tracing fields to LogEvent to eliminate async MDC overhead (#4171)\n\n* Add tracing fields to RingBufferLogEvent and related classes\n\n* Add W3C trace context support with pattern converters for trace ID, span ID, and trace flags\n\n* Enhance TraceContextProviderService for exception safety and simplify trace ID retrieval\n\n* Add tests for tracing fields serialization and pattern converters\n\n* Refactor tracing metadata documentation and improve code comments for clarity\n\n* Add native W3C tracing fields to LogEvent and introduce TraceContextProvider SPI\n\n* Add benchmark for ContextDataProvider tracing approach\n\n* Enhance TraceContextProviderService to handle SecurityManager restrictions gracefully"
    },
    {
      "commit": "a52ad57022935b07d0d0828d0e11a78748f06eb2",
      "tree": "1aa904ee9f0bdf4f6d9177efd5f25b0a0e9d1b37",
      "parents": [
        "7f5459bb11c8ddcd83ea9d43f04fcacb4b9ecb70"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Mon Jul 06 15:48:17 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 10:18:17 2026 +0000"
      },
      "message": "Add `2.25.5` release notes (#4174)"
    },
    {
      "commit": "7f5459bb11c8ddcd83ea9d43f04fcacb4b9ecb70",
      "tree": "16dbe4e763c25cbe5dc200f3262dfc37e18e0363",
      "parents": [
        "7775e125ae10f28d64b6442faaad56adc3c7849a"
      ],
      "author": {
        "name": "Ramanathan",
        "email": "ramanathan@apache.org",
        "time": "Thu Jul 02 16:34:43 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 11:04:43 2026 +0000"
      },
      "message": "Merge `2.26.1` to `2.x` (#4169)"
    },
    {
      "commit": "7775e125ae10f28d64b6442faaad56adc3c7849a",
      "tree": "8ea36594a551280aa063bd4e29a53bdf550cfc83",
      "parents": [
        "07948345a92593acc9c5053905c052159a122b54"
      ],
      "author": {
        "name": "Volkan Yazıcı",
        "email": "volkan@yazi.ci",
        "time": "Wed Jul 01 11:20:48 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 14:50:48 2026 +0530"
      },
      "message": "Adds `maxRandomDelay` configure to Rolling Appenders (#4165)\n\n* Rework random delay for Rolling Appender action chain\n\n* Stabilize `RollingAppenderDirectCronTest`"
    },
    {
      "commit": "07948345a92593acc9c5053905c052159a122b54",
      "tree": "29d842bc2622ea1c641cf6ef83869f4666cf9f9a",
      "parents": [
        "6c0719998a569c060d1487583052bf85dbb3c52c"
      ],
      "author": {
        "name": "Volkan Yazıcı",
        "email": "volkan@yazi.ci",
        "time": "Wed Jul 01 10:42:53 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 10:42:53 2026 +0200"
      },
      "message": "Upgrade Maven and Maven Wrapper versions to `3.9.16` and `3.3.4`, respectively (#4167)"
    }
  ],
  "next": "6c0719998a569c060d1487583052bf85dbb3c52c"
}
