)]}'
{
  "commit": "dd94de33229b7eabf8a08e3801602cc5472db12b",
  "tree": "97bd27057a521f9ce0d32aba4a9c4052e2a23b81",
  "parents": [
    "39e6b149a87da415a6643f49a1baa7108b97868e"
  ],
  "author": {
    "name": "Richard Zowalla",
    "email": "rzo1@apache.org",
    "time": "Sun Sep 20 21:23:03 2026 +0200"
  },
  "committer": {
    "name": "Richard Zowalla",
    "email": "rzo1@apache.org",
    "time": "Sun Sep 20 21:23:33 2026 +0200"
  },
  "message": "GERONIMO-6780 - Accept the reference implementation\u0027s OAuth2 configuration keys\n\nXOAUTH2 was only reachable through mail.\u003cprotocol\u003e.sasl.enable together with\nmail.\u003cprotocol\u003e.sasl.mechanisms, so an application moving here from the\nreference implementation had to be reconfigured to authenticate at all.\n\nAccept the keys it uses instead:\n\n  mail.\u003cprotocol\u003e.auth.mechanisms\u003dXOAUTH2\n  mail.\u003cprotocol\u003e.auth.xoauth2.disable\u003dfalse\n\nauth.mechanisms is honoured as an alias of sasl.mechanisms, restricting which\nmechanisms are considered; the SASL-specific key still wins where both are\nset. XOAUTH2 needs no SASL API of its own, so it is now selected outside the\nsasl.enable branch and constructed directly rather than reflectively. It is\nonly ever chosen when the application asked for it and the server advertises\nit, since the mechanism needs an access token rather than a password.\n\nSMTP, POP3 and NNTP already reached the factory unconditionally. IMAP gated\nXOAUTH2 behind sasl.enable, so it gets an attempt after the SASL block and\nbefore the PLAIN and LOGIN fallbacks.\n\nThe existing sasl.enable configuration keeps working unchanged. The fake IMAP\nserver used by the tests advertised AUTH\u003dXOAUTH rather than AUTH\u003dXOAUTH2; it\nnow advertises both, matching what Gmail and Outlook offer, because selection\nchecks the server capabilities.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3c65856824027ea2d36b3055e92079691cac68f1",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "6685d454d494bcd8685c184f68daa7d71acc4c0c",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "modify",
      "old_id": "a604c362c279995209d9c2626a03db34fc3d0fcb",
      "old_mode": 33188,
      "old_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/authentication/AuthenticatorFactory.java",
      "new_id": "3d5dad714b1bd5c8bf14c31ca2c69e6376a8bc52",
      "new_mode": 33188,
      "new_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/authentication/AuthenticatorFactory.java"
    },
    {
      "type": "modify",
      "old_id": "cc0ae9f8230c791f073a8c50cb78c6c36a9cd89c",
      "old_mode": 33188,
      "old_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/store/imap/connection/IMAPConnection.java",
      "new_id": "a8201a13b1e822ba46f2b125f7020c5b7b3f3d4a",
      "new_mode": 33188,
      "new_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/store/imap/connection/IMAPConnection.java"
    },
    {
      "type": "modify",
      "old_id": "71f54172b114dca13c07985ff43981fa562c55fa",
      "old_mode": 33188,
      "old_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/util/MailConnection.java",
      "new_id": "8b40aced4a2700b1ea816fc15d716bc3c48477ed",
      "new_mode": 33188,
      "new_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/main/java/org/apache/geronimo/mail/util/MailConnection.java"
    },
    {
      "type": "modify",
      "old_id": "274c620f1852c447673a7a363d794a59647772e6",
      "old_mode": 33188,
      "old_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/test/java/org/apache/geronimo/mail/store/imap/AuthenticationTest.java",
      "new_id": "69a73c439de12bc73b61bd901c43038231dfb19d",
      "new_mode": 33188,
      "new_path": "geronimo-mail_2.1_impl/geronimo-mail_2.1_provider/src/test/java/org/apache/geronimo/mail/store/imap/AuthenticationTest.java"
    }
  ]
}
