)]}'
{
  "log": [
    {
      "commit": "6c7ce387fd93620433ca39562d7d62b0445a25f2",
      "tree": "13b2a7d226dfb62b17e58ebb140ccfd797f1f795",
      "parents": [
        "f73eb27f0d2792c0be2bb638f8ec5cb938dc4200"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed May 06 10:06:52 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed May 06 10:07:29 2026"
      },
      "message": "Detect conflicts between record components and explicit accessor methods\n\nhttps://github.com/google/error-prone/issues/5177\n\nPiperOrigin-RevId: 911220057\n"
    },
    {
      "commit": "f73eb27f0d2792c0be2bb638f8ec5cb938dc4200",
      "tree": "915c467c4134f79f7c4e772d221c1d2b8e591bfa",
      "parents": [
        "734fe122ce8459a6397d82beaba557e52c13ef44"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Tue May 05 16:58:29 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue May 05 16:59:18 2026"
      },
      "message": "Recognize when `join(Iterable)` calls `toString()` on arrays, etc.\n\nPiperOrigin-RevId: 910752376\n"
    },
    {
      "commit": "734fe122ce8459a6397d82beaba557e52c13ef44",
      "tree": "7c4f2d5587954c8ddd172e93b956131072029858",
      "parents": [
        "13bec964e8170049ef5d7accb2414f3d9bb477d1"
      ],
      "author": {
        "name": "Error Prone Team",
        "email": "java-team-github-bot@google.com",
        "time": "Tue May 05 01:50:30 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue May 05 01:51:13 2026"
      },
      "message": "Include the `link` from `@RestrictedApi` in the diagnostic message.\n\nThe Critique chip is not very useful without the link!\n\nIf a `RestrictedApi` annotation has a non-empty `link` attribute, the checker will now include this link in the diagnostic message by setting the description\u0027s link URL.\n\nPiperOrigin-RevId: 910364655\n"
    },
    {
      "commit": "13bec964e8170049ef5d7accb2414f3d9bb477d1",
      "tree": "69fb074a6d84b997fe316039f23ba00e83ffe82e",
      "parents": [
        "1750134a6bdaf86057df4293e6b915e259aae51e"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Mon May 04 19:17:58 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon May 04 19:18:58 2026"
      },
      "message": "Create a JUnit3 -\u003e JUnit4 migration tool.\n\nIt performs fairly well so far. E.g., unknown commit unknown commit\n\nPiperOrigin-RevId: 910171949\n"
    },
    {
      "commit": "1750134a6bdaf86057df4293e6b915e259aae51e",
      "tree": "452f9af815df2267f8858ee46a1c7b615f6c01fe",
      "parents": [
        "98ac22cabd02503eb6ee57d28f24bd3ccef6b44c"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon May 04 19:06:44 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon May 04 19:07:29 2026"
      },
      "message": "Forbid \"complex\" statements in `AssertThrowsMultipleStatements`.\n\nPiperOrigin-RevId: 910165339\n"
    },
    {
      "commit": "98ac22cabd02503eb6ee57d28f24bd3ccef6b44c",
      "tree": "09289774e0ff2cb7cbcbd6f59ddb00b2bae4a0b8",
      "parents": [
        "1c75a643a05277eead62a55811c3b72eec403255"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon May 04 15:32:22 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon May 04 15:33:23 2026"
      },
      "message": "Discourage @Override on record component declarations that don\u0027t override\nanything\n\nhttps://github.com/google/error-prone/issues/5174\n\nPiperOrigin-RevId: 910048919\n"
    },
    {
      "commit": "1c75a643a05277eead62a55811c3b72eec403255",
      "tree": "ce238646ea1ba1dbd477e7adbe67586b6df8c16e",
      "parents": [
        "f84df64bd5491f0b6f45a72315aa57427250b77e"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Mon May 04 13:16:00 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon May 04 13:17:04 2026"
      },
      "message": "Stop hoisting `/* paramName\u003d */` comments in front of the `assertThrows()` lambdas.\n\nPiperOrigin-RevId: 909989075\n"
    },
    {
      "commit": "f84df64bd5491f0b6f45a72315aa57427250b77e",
      "tree": "bc15ac2fc3f28dcd397f88e18b71577f7c4d558d",
      "parents": [
        "72364b35de6e07f64fc05e00373496da32098eeb"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Fri May 01 18:19:19 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri May 01 18:20:02 2026"
      },
      "message": "Extend `TypeParameterQualifier` to cover method references (`T::foo`).\n\nI could see an argument that one of the cases newly covered by this CL, `T::instanceMethod`, is less bad than the other, `T::staticMethod` (which I see as as bad as the already covered cases of `T.staticMethod()` and `T.Type`): At least instance-method dispatch depends on the actual runtime type. Still, that\u0027s different than depending on the _compile-time_ type argument. Plus, it\u0027s not as if javac will do overload resolution based on the compile-time type argument; it always uses the bound. That seems like more than enough reason to ban `T::instanceMethod`, too, especially when the resulting rule is easy to explain: Don\u0027t use a type variable as a qualifier ever. (I notice that Kotlin is [not having any of it](https://pl.kotl.in/KyaHuhH5n).)\n\nPiperOrigin-RevId: 908818269\n"
    },
    {
      "commit": "72364b35de6e07f64fc05e00373496da32098eeb",
      "tree": "5697896408420047cd31c9e39db90b85118a28eb",
      "parents": [
        "c0c371d9de0815749549c1315a43735f0952fd94"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Fri May 01 18:16:40 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri May 01 18:17:28 2026"
      },
      "message": "Expand NullNeedsCastForVarargs to cover `UsingCorrespondence`.\n\nThis CL also moves to a simpler and more robust way to look up the varargs element type.\n\nPiperOrigin-RevId: 908817127\n"
    },
    {
      "commit": "c0c371d9de0815749549c1315a43735f0952fd94",
      "tree": "2173fd7febc728587b33075ab9bf4fa6683be143",
      "parents": [
        "2e8a9b823fa934cf81f6516b3eefeb6cd05afef9"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri May 01 16:24:18 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri May 01 16:25:32 2026"
      },
      "message": "Add a[]\n\nPiperOrigin-RevId: 908768541\n"
    },
    {
      "commit": "2e8a9b823fa934cf81f6516b3eefeb6cd05afef9",
      "tree": "e13a85b8a41733109d7128bd368ad075e1681eaf",
      "parents": [
        "d4322c05f7ff4e7d015081f2ed9e5ca83de1c26f"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Fri May 01 14:11:30 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri May 01 14:13:52 2026"
      },
      "message": "Ignore AutoValue-generated code in TypeEqualsChecker and TypeToString to avoid false positives\n\nThe AutoValue `toString` representation could be used as a key or for comparison in a way that\u0027s fragile, but some of these uses are harmless. The check also wouldn\u0027t report the use of `TypeMirror`s in records, so this is consistent with that.\n\nPiperOrigin-RevId: 908717753\n"
    },
    {
      "commit": "d4322c05f7ff4e7d015081f2ed9e5ca83de1c26f",
      "tree": "a7bf353c44ee528b971c25ad44816983809ded9a",
      "parents": [
        "7aaed940c9ebcf158ff672c7d818b8353dafbd7c"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Thu Apr 30 16:42:47 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 30 16:43:48 2026"
      },
      "message": "MisformattedTestData: fix the entire compilation unit with one finding\n\nPiperOrigin-RevId: 908226149\n"
    },
    {
      "commit": "7aaed940c9ebcf158ff672c7d818b8353dafbd7c",
      "tree": "4c7f10ad63429df9885f3b8ce40f75fcb6609436",
      "parents": [
        "42c93df8e6248abd3397b3626eacbe6d606f3de4"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Thu Apr 30 14:11:06 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 30 14:12:33 2026"
      },
      "message": "Discourage use of JUnit3 via static analysis.\n\nPutting this in `JdkObsolete` is a bit of a hack, but we already have non-JDK APIs in there (`org.apache.commons.io.IOUtils`), so...\n\nPiperOrigin-RevId: 908153869\n"
    },
    {
      "commit": "42c93df8e6248abd3397b3626eacbe6d606f3de4",
      "tree": "0a7babc524a22ebe72109378e5ca6ccf9ae51e23",
      "parents": [
        "af5cc889873ba970b3f42d1c069127193f0aede3"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Wed Apr 29 16:18:17 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 29 16:19:13 2026"
      },
      "message": "[IfChainToSwitch] support multiple `instanceof` patterns within the same `case`, such as `... if (x instanceof Foo || x instanceof Bar) ...`\n\nPiperOrigin-RevId: 907624777\n"
    },
    {
      "commit": "af5cc889873ba970b3f42d1c069127193f0aede3",
      "tree": "effd219c538aa8c6282799917b9a0d0b51f47fb9",
      "parents": [
        "8d20b5c889cc8d8e4d0b0c03df70174718374f37"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 29 14:46:04 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 29 14:46:53 2026"
      },
      "message": "Preserve comments in `TryFailRefactoring` and `MissingFail`.\n\nPiperOrigin-RevId: 907585072\n"
    },
    {
      "commit": "8d20b5c889cc8d8e4d0b0c03df70174718374f37",
      "tree": "84883fa60681e56ace68ae23c7ddb3d7001c1e87",
      "parents": [
        "36354c97570b6b1d068cdc7277e767a5fb92a24e"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 28 19:01:55 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 28 19:02:39 2026"
      },
      "message": "Fix bug in `MissingFail` when there\u0027s 2 try/catch blocks with identical exception variable names.\n\nPiperOrigin-RevId: 907105616\n"
    },
    {
      "commit": "36354c97570b6b1d068cdc7277e767a5fb92a24e",
      "tree": "124a7cbd11da6019410d46ed4c85183bbca98581",
      "parents": [
        "0bae15baadd946e2163df79f60621f1af6c275de"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 28 18:29:32 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 28 18:30:34 2026"
      },
      "message": "Refactor `TryFailRefactoring` to use `SuppressibleTreePathScanner`. This allows:\n  1. Automatically respecting local `@SuppressWarnings` annotations on nested elements.\n  2. Maintaining the active `TreePath` during traversal to enable more robust context checks.\n\nPiperOrigin-RevId: 907088642\n"
    },
    {
      "commit": "0bae15baadd946e2163df79f60621f1af6c275de",
      "tree": "433bd74b8ee3af1bbea48b22467d8726f9ad4f9e",
      "parents": [
        "dd37bb3fce309cdbb8c2799615f010f840208499"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 28 15:17:01 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 28 15:18:01 2026"
      },
      "message": "Pick a fresh name for the exception variable (if necessary) in `AssertThrowsUtils`.\n\nPiperOrigin-RevId: 906988165\n"
    },
    {
      "commit": "dd37bb3fce309cdbb8c2799615f010f840208499",
      "tree": "60190744157c86767fe2d26a0aa7c205ac746064",
      "parents": [
        "a87eded53a2e8b485fc741b40f28607ec65e20d2"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 28 13:07:50 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 28 13:08:36 2026"
      },
      "message": "Add a test demonstrating the bug in `TryFailRefactoring` when there are 2 try/fails in scope with the same exception variable name.\n\nPiperOrigin-RevId: 906933779\n"
    },
    {
      "commit": "a87eded53a2e8b485fc741b40f28607ec65e20d2",
      "tree": "2475e567e5a7605a17cddcdb26d8100808e52cf9",
      "parents": [
        "ae3490c174a07667629018958becc4caa5482872"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Mon Apr 27 18:46:04 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 27 18:47:07 2026"
      },
      "message": "Add `IfChainToSwitchTest` tests (patched from CL/904760508).\n\nSee[]\n\nPiperOrigin-RevId: 906470387\n"
    },
    {
      "commit": "ae3490c174a07667629018958becc4caa5482872",
      "tree": "d064aa98494d26965169cde047feac8f73327c80",
      "parents": [
        "cd68904b3f34bf14cec919cfc092116232980988"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon Apr 27 17:41:47 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 27 17:42:37 2026"
      },
      "message": "Expand regex checks to cover Truth\u0027s `StringSubject`.\n\nI\u0027ve fixed the single new hit (in Truth itself) in unknown commit.\n\nPiperOrigin-RevId: 906436566\n"
    },
    {
      "commit": "cd68904b3f34bf14cec919cfc092116232980988",
      "tree": "dab771851e56809caa7bbbf9777eaba1735ee846",
      "parents": [
        "598d7b52d8732b54c9d4efee87d30c546f1535d3"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Mon Apr 27 16:48:04 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 27 16:49:16 2026"
      },
      "message": "Update behavior of `Matchers.packageStartsWith(String)` so that `packageStartsWith(\"com.google\")` will match:\n\n* `com.google`\n* `com.google.common`\n* `com.google.common.collect`\n\n...but not `com.googlebutnotreallygoogle`.\n\nPlus some other minor cleanups to `MatchersTest`.\n\nAnd finally, disable `MockitoInternalUsage` in `third_party/looker_migration_libs/mockito/v4_6_1/BUILD`.\n\nPiperOrigin-RevId: 906408524\n"
    },
    {
      "commit": "598d7b52d8732b54c9d4efee87d30c546f1535d3",
      "tree": "879619fda36f949a9c3fa958d38b1b013e7edbcf",
      "parents": [
        "43fcf95632a109190b72df93f7c291dd145d1c07"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Fri Apr 24 19:45:52 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 24 19:47:19 2026"
      },
      "message": "Extend DuplicateAssertion to cover longer Truth assertion chains.\n\nFlume: unknown commit\n\n#coding-mcp\n\nPiperOrigin-RevId: 905174355\n"
    },
    {
      "commit": "43fcf95632a109190b72df93f7c291dd145d1c07",
      "tree": "6add3aa4e5f57ae71ce7d97f307014c4bc3cb9d7",
      "parents": [
        "cc0413436cc3a01260efd7b6c1acb903dec90f30"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Thu Apr 23 18:02:17 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 23 18:03:38 2026"
      },
      "message": "Link to the latest version of `guava-testlib`.\n\nCompare unknown commit (though here I\u0027m using `javadoc.io` instead of `www.javadoc.io`).\n\nPiperOrigin-RevId: 904540050\n"
    },
    {
      "commit": "cc0413436cc3a01260efd7b6c1acb903dec90f30",
      "tree": "c98d4c36d5ace67c4db0b4ed35af7702e60b22f3",
      "parents": [
        "769cd2026b51ee47d7941fccd9746fdb3c9b2f8c"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Thu Apr 23 17:00:51 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 23 17:01:47 2026"
      },
      "message": "Fix a crash in GetClassOnAnnotation\n\nFixes https://github.com/google/error-prone/issues/5743\n\nPiperOrigin-RevId: 904509097\n"
    },
    {
      "commit": "769cd2026b51ee47d7941fccd9746fdb3c9b2f8c",
      "tree": "4529a9692d96c627341bb2f287e9ae382c5cd014",
      "parents": [
        "88c1420464df8a6fe58009ca27a6b2a281ca5595"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Thu Apr 23 14:41:10 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 23 14:42:25 2026"
      },
      "message": "Discourage using `toString` and `.equals` to test `TypeMirror`s for equality\n\n`TypeMirror` doesn\u0027t define `.equals`, and the string representation may contain type annotations. Using `Types#isSameType` is a more robust way to compare `TypeMirror`s.\n\nPiperOrigin-RevId: 904451662\n"
    },
    {
      "commit": "88c1420464df8a6fe58009ca27a6b2a281ca5595",
      "tree": "3b2a8ab75d0187975a42716386931e2641da83b1",
      "parents": [
        "7a8059eaf8cc1802df2fb78f231bcaec2a24900f"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Tue Apr 21 23:22:58 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 21 23:23:55 2026"
      },
      "message": "Update comments for the test support added in https://github.com/google/error-prone/commit/018b56163d2e1e2b9ada32b6504c2ae2c8f049c8.\n\nSpecifically: Now that the whole check runs over test code, we don\u0027t need to segregate the test-specific hard-coded rules from the regular hard-coded rules.\nPiperOrigin-RevId: 903485600\n"
    },
    {
      "commit": "7a8059eaf8cc1802df2fb78f231bcaec2a24900f",
      "tree": "91be5f36a3769bcc519c33502fb2cca27869af1b",
      "parents": [
        "0124cb15dac7c124879ea13152ff0a21fb57bda0"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 21 18:36:36 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 21 18:38:37 2026"
      },
      "message": "Remove references to EasyMock, which was deleted 3+ years ago (unknown commit).\nPush `MOCKED_VAR` up to the base class.\n\nPiperOrigin-RevId: 903340783\n"
    },
    {
      "commit": "0124cb15dac7c124879ea13152ff0a21fb57bda0",
      "tree": "5670b7853e27089d8ed67443e33c4205f6386276",
      "parents": [
        "2925bdff3f3522ab4fcf10f83e1496268cd4d3f6"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Apr 21 07:33:17 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 21 07:34:19 2026"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 903045386\n"
    },
    {
      "commit": "2925bdff3f3522ab4fcf10f83e1496268cd4d3f6",
      "tree": "267e2c3699ccdf4ffdc53523040638845f1e24d7",
      "parents": [
        "a7016465eaff9d871a12818344b6ae7f7212d4be"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Apr 20 13:05:59 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 20 13:07:09 2026"
      },
      "message": "Handle `null` in `hasDirectAnnotationWithSimpleName`\n\nAnd use pattern switches and other small cleanups.\n\nhttps://github.com/google/error-prone/pull/4307\n\nPiperOrigin-RevId: 902595762\n"
    },
    {
      "commit": "a7016465eaff9d871a12818344b6ae7f7212d4be",
      "tree": "593544196a59a1640540ba49152ff1c18e24e70f",
      "parents": [
        "a8c85fae8f0b080f830a235f19b18b9589084138"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Apr 20 12:48:55 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 20 12:49:42 2026"
      },
      "message": "Don\u0027t treat non-final enum fields as constant\n\nhttps://github.com/google/error-prone/issues/5710\n\nPiperOrigin-RevId: 902589448\n"
    },
    {
      "commit": "a8c85fae8f0b080f830a235f19b18b9589084138",
      "tree": "55c0b923ad4f1ab05dbd3314b45bb0743a9b0915",
      "parents": [
        "7f34489a7db516e417fb9a32721a0a956077df68"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri Apr 17 14:30:05 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 17 14:31:05 2026"
      },
      "message": "Don\u0027t flag `Optional` parameters inside `@AutoValue.Builder`.\n\nPiperOrigin-RevId: 901286959\n"
    },
    {
      "commit": "7f34489a7db516e417fb9a32721a0a956077df68",
      "tree": "8a50fec246ef212aa948bde3ebb05c8aea0154c6",
      "parents": [
        "39bc7f87dff266c21c0f23d158e63cd9ca0e21f0"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri Apr 17 14:13:42 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 17 14:14:41 2026"
      },
      "message": "Add a test demonstrating that we current flag `java.util.Optional` parameters inside `@AutoValue.Builder`\u0027s.\n\nPiperOrigin-RevId: 901281015\n"
    },
    {
      "commit": "39bc7f87dff266c21c0f23d158e63cd9ca0e21f0",
      "tree": "d3bf0c66f96d8b5a02f90215ac85a85d7c17008b",
      "parents": [
        "26982d5d5f285a24a36db593d56c029702118f26"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Thu Apr 16 20:03:43 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 16 20:04:34 2026"
      },
      "message": "Improve diagnostic message and documentation for UnnecessarilyFullyQualified\n\nPiperOrigin-RevId: 900871236\n"
    },
    {
      "commit": "26982d5d5f285a24a36db593d56c029702118f26",
      "tree": "91f9e70abb23b0be0c05891c8997b7d0f45f2e3e",
      "parents": [
        "c78d87f3ca0a879b24788c53ac782b9d7dce75fe"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Thu Apr 16 16:17:11 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 16 16:17:59 2026"
      },
      "message": "Discourage directly invoking JUnit test methods.\n\nAlso remove an unnecessary `;` from `JUnit4TestNotRun` while I\u0027m here.\n\nPiperOrigin-RevId: 900762011\n"
    },
    {
      "commit": "c78d87f3ca0a879b24788c53ac782b9d7dce75fe",
      "tree": "a3137c13e5759d3907bf3f11660a6a7779c82781",
      "parents": [
        "cc35ba1720d8c248ee573fd5d8c55b7e9926e6e0"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Thu Apr 16 15:35:37 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 16 15:36:44 2026"
      },
      "message": "Document an alternative to overriding `Throwable.equals`.\n\nPiperOrigin-RevId: 900744432\n"
    },
    {
      "commit": "cc35ba1720d8c248ee573fd5d8c55b7e9926e6e0",
      "tree": "3517c36c1120375bc5039125c94a7ea3c85a634f",
      "parents": [
        "ba4ccd175323e9bb40f31f111c42f5401300868e"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 15 19:25:01 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 15 19:25:39 2026"
      },
      "message": "Discourage overriding `Throwable.equals()` and `hashCode()`.\n\nPiperOrigin-RevId: 900291065\n"
    },
    {
      "commit": "ba4ccd175323e9bb40f31f111c42f5401300868e",
      "tree": "302d3fc8e40d91f81f8c2270827a52da871695c0",
      "parents": [
        "623770a866f9b5f95ac4afb109da7e9c62863e60"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Wed Apr 15 14:59:10 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 15 15:00:16 2026"
      },
      "message": "[IfChainToSwitch] [StatementSwitchToExpressionSwitch] make internal records `private`\n\nPiperOrigin-RevId: 900169215\n"
    },
    {
      "commit": "623770a866f9b5f95ac4afb109da7e9c62863e60",
      "tree": "60639d07755ec375f7c8d912d68a42cc9d922c2a",
      "parents": [
        "e6d13c5fdd3dfa30ae6444eae2d8714ae7a2a083"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Apr 15 14:39:59 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 15 14:41:06 2026"
      },
      "message": "Detect dangling doc comments in NotJavadoc\n\nPiperOrigin-RevId: 900161791\n"
    },
    {
      "commit": "e6d13c5fdd3dfa30ae6444eae2d8714ae7a2a083",
      "tree": "e229390b972803f236ae13a8b6546a8e60b1138c",
      "parents": [
        "b282fa2407a9d4b4923aef6aa77584b9e96a5173"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Tue Apr 14 20:20:41 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 14 20:21:28 2026"
      },
      "message": "[RefactorSwitch] flip flag to enable arrow-style switches to be converted to `return switch`es\n\nPiperOrigin-RevId: 899743356\n"
    },
    {
      "commit": "b282fa2407a9d4b4923aef6aa77584b9e96a5173",
      "tree": "7e4a34617b50bcaa55789e12d51adf398491b7de",
      "parents": [
        "00d4c36f42df44ef308341a91447d13bc433574d"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Apr 14 19:10:24 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 14 19:11:28 2026"
      },
      "message": "Improve error message for ExposedPrivateType\n\nThe diagnostic message now includes the name of the non-private member that is exposing a private type\n\nPiperOrigin-RevId: 899711391\n"
    },
    {
      "commit": "00d4c36f42df44ef308341a91447d13bc433574d",
      "tree": "dc606ea34a55dc48cc8625bece2f3372dafa1547",
      "parents": [
        "831da3605b2ee27468019a6acb482063be2d6a8f"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon Apr 13 21:14:17 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 13 21:16:15 2026"
      },
      "message": "Recognize nested `{@code ...}` tags as valid.\n\nPiperOrigin-RevId: 899178676\n"
    },
    {
      "commit": "831da3605b2ee27468019a6acb482063be2d6a8f",
      "tree": "f430c9047a74726472f44bcdb8eb199a8c0a1c3b",
      "parents": [
        "7c4b0406b851d5423762b0deb82e8ab7395e79ee"
      ],
      "author": {
        "name": "Mirko Alicastro",
        "email": "mirkoalicastro@gmail.com",
        "time": "Mon Apr 13 18:44:45 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 13 18:45:36 2026"
      },
      "message": "Fixes #5553 : Skip UnnecessaryOptionalGet when lambda parameter is unnamed\n\n`UnnecessaryOptionalGet` suggested replacing `.get()` with the lambda parameter name, but the parameter `_` (unnamed variable, Java 22+) produces uncompilable code since `_` cannot be referenced.\n\nChanges:\n- Added an early return when the lambda parameter source is `_`\n- Added a test guarded by `assume().that(Runtime.version().feature()).isAtLeast(22)`\n\nFixes #5553\n\nFixes #5649\n\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/google/error-prone/pull/5649 from mirkoalicastro:mirkoalicastro/fix-unnecessary-optional-get-unnamed-variable bdcd04238044bf720d5b2fe4c6b50d3d7926d576\nPiperOrigin-RevId: 899107954\n"
    },
    {
      "commit": "7c4b0406b851d5423762b0deb82e8ab7395e79ee",
      "tree": "be00631689611a289544b4004f0b6ab640b6277c",
      "parents": [
        "47bb52306ffbea2da88708a246e456d3d62a0a0a"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri Apr 10 14:05:02 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 10 14:06:11 2026"
      },
      "message": "Retain explicit types on LambdaExpressionTrees that are not assignments.\n\nFor example:\n* `Function\u003cString, Integer\u003e f \u003d unused -\u003e 1;` -\u003e `Function\u003cString, Integer\u003e f \u003d _ -\u003e 1;`\n* `list.forEach((String unused1) -\u003e System.out.println());` -\u003e `list.forEach((String _) -\u003e System.out.println());`\n\n#java25\n\nPiperOrigin-RevId: 897672843\n"
    },
    {
      "commit": "47bb52306ffbea2da88708a246e456d3d62a0a0a",
      "tree": "1c05aec3da6ff374aa0bc1c6fc46833e47211cd4",
      "parents": [
        "570ac280a2042408e42c74a03aafaac1d7d2a40e"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Fri Apr 10 13:15:27 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 10 13:16:38 2026"
      },
      "message": "Provide a better error message for empty test inputs\n\nPiperOrigin-RevId: 897655598\n"
    },
    {
      "commit": "570ac280a2042408e42c74a03aafaac1d7d2a40e",
      "tree": "9540cbcd77f108b3efe03cf3bbd60ef06eb77375",
      "parents": [
        "af4e2026ea5bc67ec80170e63cf1a0e78cd2e32f"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Fri Apr 10 12:55:31 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 10 12:56:35 2026"
      },
      "message": "Discourage references to private member classes from non-private APIs\n\nPiperOrigin-RevId: 897649059\n"
    },
    {
      "commit": "af4e2026ea5bc67ec80170e63cf1a0e78cd2e32f",
      "tree": "d38991d22206ad2b6e072a61f92a7ed4405f802b",
      "parents": [
        "30a5a30bd8539ff423a8611a31322d0f1787e004"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri Apr 10 00:44:42 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Apr 10 00:45:53 2026"
      },
      "message": "Add a unit test for `LambdaExpressionTree`s to `UnnecessaryParenthesesTest`.\n\nPiperOrigin-RevId: 897391220\n"
    },
    {
      "commit": "30a5a30bd8539ff423a8611a31322d0f1787e004",
      "tree": "769ce91121e2608c88535f6d5eae0b018cf903f1",
      "parents": [
        "a875dd0194c5f8e2aba25424f7c4dd8aba4c1a2d"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Thu Apr 09 23:06:50 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 09 23:07:45 2026"
      },
      "message": "When renaming a variable to `_`, also use `var`.\n\n#java25\n\nPiperOrigin-RevId: 897350931\n"
    },
    {
      "commit": "a875dd0194c5f8e2aba25424f7c4dd8aba4c1a2d",
      "tree": "5a26e3294a22dd28d41223f0b98308fa36850241",
      "parents": [
        "d9c143c288e6ee5f0bee20bc646baafa062af225"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Thu Apr 09 19:23:23 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 09 19:24:14 2026"
      },
      "message": "Improve NullArgumentForNonNullParameter to include parameter and method names in the diagnostic message.\n\nIdeally, I\u0027d also see whether we can do anything about the _location_ of the report. But this CL should be a big improvement on its own.\n\nPiperOrigin-RevId: 897243077\n"
    },
    {
      "commit": "d9c143c288e6ee5f0bee20bc646baafa062af225",
      "tree": "ff5154c09242b8f3d4c39d4e5fa34f2daf36e2ec",
      "parents": [
        "2c12eb282f8bb2ad9b695e8bc4f6ed99ac9cf3be"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 08 17:46:36 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 08 17:47:23 2026"
      },
      "message": "Update `UnnamedVariableTest` to show it retains the `Type` and doesn\u0027t switch to `var` (this is being done as  a pre-factoring --- an uncoming change will make it re-write these to `var`).\n\n#java25\n\nPiperOrigin-RevId: 896584767\n"
    },
    {
      "commit": "2c12eb282f8bb2ad9b695e8bc4f6ed99ac9cf3be",
      "tree": "35a567baf10e4e40872691788ac5111d04eb61e3",
      "parents": [
        "9a40f460e6dd12ce4d96a4945b2363ebd7b3e95f"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Wed Apr 08 15:15:16 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 08 15:17:54 2026"
      },
      "message": "[RefactorSwitch] fix bug which can result in invalid code generation when a variable is read on the left side of an assignment\n\nPiperOrigin-RevId: 896510776\n"
    },
    {
      "commit": "9a40f460e6dd12ce4d96a4945b2363ebd7b3e95f",
      "tree": "f47523b4792e8e965b7c22ed80dca80ad03e3166",
      "parents": [
        "018b56163d2e1e2b9ada32b6504c2ae2c8f049c8"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 08 13:27:08 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 08 13:28:35 2026"
      },
      "message": "Fix a small typo from https://github.com/google/error-prone/commit/018b56163d2e1e2b9ada32b6504c2ae2c8f049c8\n\nPiperOrigin-RevId: 896462777\n"
    },
    {
      "commit": "018b56163d2e1e2b9ada32b6504c2ae2c8f049c8",
      "tree": "bfb03fa37b452b7cfc795ef149783bb3af2d47db",
      "parents": [
        "0b7b03b05d038f596e687e35fccd2cdc0356a7e2"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Tue Apr 07 22:56:26 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 07 22:57:07 2026"
      },
      "message": "Extend NullArgumentForNonNullParameter to cover test code, adding special cases to allow intentional NPE tests.\n\nPiperOrigin-RevId: 896128515\n"
    },
    {
      "commit": "0b7b03b05d038f596e687e35fccd2cdc0356a7e2",
      "tree": "aae265c4853540fedd607236420bec2bc1383786",
      "parents": [
        "fe5a7b1f4583db97387c46ed32ccd664d3f455f6"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Tue Apr 07 00:40:28 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Apr 07 00:41:19 2026"
      },
      "message": "Fix up some javadoc on `ModifySourceCollectionInStream.isStreamApiInvocationOnStreamSource` (see also unknown commit)\n\nPiperOrigin-RevId: 895582687\n"
    },
    {
      "commit": "fe5a7b1f4583db97387c46ed32ccd664d3f455f6",
      "tree": "2d8b4240011c56d01befc134d00c933045386216",
      "parents": [
        "d54a1d1cd9b57dd49de585e21d0e315f3fb88c82"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Apr 06 20:15:04 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 06 20:16:04 2026"
      },
      "message": "Remove old FieldMatchers API\n\nStartblock:\n  cl-status javac.javabuilder contains https://github.com/google/error-prone/commit/1dd9c3a6bd76fca8104be6ae1c1004655d6a1745 in prod\n\nTested:\n    TAP for global presubmit queue\n    []\nPiperOrigin-RevId: 895467233\n"
    },
    {
      "commit": "d54a1d1cd9b57dd49de585e21d0e315f3fb88c82",
      "tree": "f9ba162f7c1f8a85aaa3cb12351706c78a9f1137",
      "parents": [
        "d93b31908fd361eb5e817a7dd18a1296f12f6414"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Mon Apr 06 14:58:42 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Apr 06 14:59:26 2026"
      },
      "message": "Fix up some `Finally` javadocs.\n\nPiperOrigin-RevId: 895329872\n"
    },
    {
      "commit": "d93b31908fd361eb5e817a7dd18a1296f12f6414",
      "tree": "74e616dce30f7192555007028bd7a35cfeccb780",
      "parents": [
        "ff59782c69b9394e14b11d0b17574fe5b3dafa9c"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Thu Apr 02 18:54:58 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 02 18:55:44 2026"
      },
      "message": "[RefactorSwitch] bugfix comment handling\n\nPiperOrigin-RevId: 893624649\n"
    },
    {
      "commit": "ff59782c69b9394e14b11d0b17574fe5b3dafa9c",
      "tree": "330b2574ea5208d18106ea175fa93586790ae327",
      "parents": [
        "43b6df64ed635e1fcabaabd9c884df5753aac26b"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Thu Apr 02 15:19:28 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 02 15:20:20 2026"
      },
      "message": "[IfChainToSwitch] cleanup redundant conditions in ternary.  No functional changes.\n\nPiperOrigin-RevId: 893520756\n"
    },
    {
      "commit": "43b6df64ed635e1fcabaabd9c884df5753aac26b",
      "tree": "13461488645d25f08620559da979cdce69bea210",
      "parents": [
        "2c4346f59fdcdda7bf17839b55d2d5e416c7d1d1"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Thu Apr 02 14:06:51 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 02 14:08:05 2026"
      },
      "message": "Generalise DuplicateAssertion to handle check* methods.\n\nPiperOrigin-RevId: 893490559\n"
    },
    {
      "commit": "2c4346f59fdcdda7bf17839b55d2d5e416c7d1d1",
      "tree": "61775f1c95d7dc3044f1b2dac46fa0a72e171da1",
      "parents": [
        "559039bcc26400cd725236bdffe7fc94c4519311"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Thu Apr 02 13:34:04 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Apr 02 13:35:18 2026"
      },
      "message": "Fix a bug in `BooleanLiteral`: it currently suggests replacing `Boolean.FALSE` with `false` even when it\u0027s explicitly cast to a type variable `V`. This results in uncompilable code because Java doesn\u0027t allow casting a primitive boolean to a type variable (`(V) false` is invalid).\n\nThis bug accidentally broke some code in unknown commit (which lacked TAP coverage, but...)\n\nPiperOrigin-RevId: 893477765\n"
    },
    {
      "commit": "559039bcc26400cd725236bdffe7fc94c4519311",
      "tree": "769d315659c4e369247a95da02a0301ebebe2f6f",
      "parents": [
        "393c61ce5b28fd5bcd1290ee831d3358d37cce16"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Wed Apr 01 15:26:26 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 15:27:26 2026"
      },
      "message": "[IfChainToSwitch] doc-only change.  fix typo in code comments.\n\nPiperOrigin-RevId: 892943144\n"
    },
    {
      "commit": "393c61ce5b28fd5bcd1290ee831d3358d37cce16",
      "tree": "0c627978ac99580c0ac21742991c19fe203c8d4d",
      "parents": [
        "337a6c840b9d33a371bc8c989ade6c0e2bd4f215"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Wed Apr 01 15:13:28 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 15:14:29 2026"
      },
      "message": "[IfChainToSwitch] enhance code generation to emit unnamed variables, when supported\n\nPiperOrigin-RevId: 892938092\n"
    },
    {
      "commit": "337a6c840b9d33a371bc8c989ade6c0e2bd4f215",
      "tree": "d8b1e7a7196a8bd2e627bdd6dcc66ac1e9a25440",
      "parents": [
        "736e704e7642a18f35746daf13b90b900c0d42f5"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 01 13:39:22 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 13:40:29 2026"
      },
      "message": "Ban using reference equality for `MemorySegment`s.\n\nSee https://github.com/openjdk/jdk/pull/30501\n\nPiperOrigin-RevId: 892899625\n"
    },
    {
      "commit": "736e704e7642a18f35746daf13b90b900c0d42f5",
      "tree": "5b163cfa1faf766afd1ddb8695de7123fb500a40",
      "parents": [
        "da4b5f8070e04d74ca288cddade04e7362025675"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Apr 01 12:22:15 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 12:23:05 2026"
      },
      "message": "Fix a crash in NestedInstanceOfConditions on instanceof patterns\n\nhttps://github.com/google/error-prone/issues/5685\n\nPiperOrigin-RevId: 892871736\n"
    },
    {
      "commit": "da4b5f8070e04d74ca288cddade04e7362025675",
      "tree": "8de7c6f43736489c5007f5810a895545d93b711e",
      "parents": [
        "a2fb8421e5a72f79156ffdc0db15abdb5cfb9e83"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Apr 01 09:03:32 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 09:04:27 2026"
      },
      "message": "Deprecate `doTest(TestMode)`\n\nPiperOrigin-RevId: 892798434\n"
    },
    {
      "commit": "a2fb8421e5a72f79156ffdc0db15abdb5cfb9e83",
      "tree": "43fc9b1cdaba624eb2020ac2e0da2b77fe9062fc",
      "parents": [
        "9601a3cc64763df6348cde7dd83933abef4ca756"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Apr 01 08:36:14 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 08:36:55 2026"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 892786984\n"
    },
    {
      "commit": "9601a3cc64763df6348cde7dd83933abef4ca756",
      "tree": "f90fdd994f9f2411d08adec9848210bc9a0f4fc7",
      "parents": [
        "1e227c5b11bedcd9441147628d24f9e86bbb20cd"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 01 08:03:17 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 08:04:20 2026"
      },
      "message": "Delete fix that suggests using Guava\u0027s deprecated `Object.equal()` method.\n\nPiperOrigin-RevId: 892774368\n"
    },
    {
      "commit": "1e227c5b11bedcd9441147628d24f9e86bbb20cd",
      "tree": "64b68f09627d21403c3f91e9a1cc9c8e740d1c11",
      "parents": [
        "2d579a9cf6bec4639611747fad41067136a903c4"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Wed Apr 01 07:37:46 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Apr 01 07:38:28 2026"
      },
      "message": "Add a[]\n\nPiperOrigin-RevId: 892765109\n"
    },
    {
      "commit": "2d579a9cf6bec4639611747fad41067136a903c4",
      "tree": "8bf8eb78b6a2b80b0338068ce526f931350ace77",
      "parents": [
        "351abc237abc3d6125c975d0185db3cc4697befc"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 31 18:04:56 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 18:06:14 2026"
      },
      "message": "Fix a crash in DeprecatedVariable on synthetic record trees\n\n`@Deprecated` annotations on record components are propagated to the getter methods, where they do have an effect.\n\nPiperOrigin-RevId: 892440290\n"
    },
    {
      "commit": "351abc237abc3d6125c975d0185db3cc4697befc",
      "tree": "e6dca63d7471d9101e739d8c0fa924cb9b54ded7",
      "parents": [
        "949be061dee17cda7ebe31d97a7836cb4c4cd4f0"
      ],
      "author": {
        "name": "Error Prone Team",
        "email": "java-team-github-bot@google.com",
        "time": "Tue Mar 31 16:03:28 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 16:04:27 2026"
      },
      "message": "Added an ErrorProne check to detect record accessors inside the compact canonical ctors:\n\nAs they read uninitialized fields, using them inside the compact canonical constructor\nis unlikely intentional.\n\nSee also: https://gemini.google.com/share/bc7d0a22b687\n\nPiperOrigin-RevId: 892372581\n"
    },
    {
      "commit": "949be061dee17cda7ebe31d97a7836cb4c4cd4f0",
      "tree": "3d71a53543fedbd4f203a1a7bf2cb43d01742b70",
      "parents": [
        "429a509acefdce27b044669414591b22e4ba7a77"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 31 15:29:39 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 15:30:23 2026"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 892355578\n"
    },
    {
      "commit": "429a509acefdce27b044669414591b22e4ba7a77",
      "tree": "dfad16e2cfe3592a8809131d2477492362d1ec44",
      "parents": [
        "ee7b7d735abd5ddd3bb0ae178aeab0c56c61331e"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 31 15:08:52 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 15:10:53 2026"
      },
      "message": "Match interfaces that override `equals` in `ReferenceEquality`\n\nIf an interface specifies behaviour of `equals`, `ReferenceEquality` should suggest using `equals` for implementations of the interface even if it can\u0027t guarantee there\u0027s a concrete implementation of equals.\n\nFor example, interfaces like `List` and `MemorySegment` specify behaviour for equals.\n\nPiperOrigin-RevId: 892346252\n"
    },
    {
      "commit": "ee7b7d735abd5ddd3bb0ae178aeab0c56c61331e",
      "tree": "9966442e82d2f551e9ba79900f2efc6f6549f760",
      "parents": [
        "190e452caa94e7a351e4e6f585fc1d7a640c6f1a"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 31 13:42:58 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 13:46:53 2026"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 892308394\n"
    },
    {
      "commit": "190e452caa94e7a351e4e6f585fc1d7a640c6f1a",
      "tree": "d5b01ca8b64fbec89fa1e5d848cfe66595cb5952",
      "parents": [
        "6308f644f544447e4e100fd98b909cad2a9dc705"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 31 13:42:37 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 13:44:23 2026"
      },
      "message": "Deprecate `AST_MATCH`\n\nPiperOrigin-RevId: 892308248\n"
    },
    {
      "commit": "6308f644f544447e4e100fd98b909cad2a9dc705",
      "tree": "dfddc243d963b8fd54b45be82de6f521f858dff3",
      "parents": [
        "ccfc176eb738a46e15e29a296d41f169101112fa"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Tue Mar 31 10:45:08 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 31 10:46:13 2026"
      },
      "message": "Reformat test data.\n\nPiperOrigin-RevId: 892237739\n"
    },
    {
      "commit": "ccfc176eb738a46e15e29a296d41f169101112fa",
      "tree": "d23502d8f8d5e097d2d49e4816491ea47155bfef",
      "parents": [
        "1a249a7ec22e187eceed51fd603d29eae9343cf4"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 30 18:57:11 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 30 18:58:10 2026"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 891833808\n"
    },
    {
      "commit": "1a249a7ec22e187eceed51fd603d29eae9343cf4",
      "tree": "2b4f9fab704852555921bf27befdae5166acf8e9",
      "parents": [
        "fbcfab1906508aa26c1104772686a57aa295d14b"
      ],
      "author": {
        "name": "markbrady",
        "email": "markbrady@google.com",
        "time": "Mon Mar 30 15:03:12 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 30 15:04:16 2026"
      },
      "message": "[IfChainToSwitch] enhance domination logic to respect developing changes in JEP 530\n\nPiperOrigin-RevId: 891722438\n"
    },
    {
      "commit": "fbcfab1906508aa26c1104772686a57aa295d14b",
      "tree": "cc8117293994cadf12d250d2c0901a3b91d3a13b",
      "parents": [
        "111d692bf217ce0e3bb84910649837b00d79e1e5"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 30 10:46:03 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 30 10:46:52 2026"
      },
      "message": "Create a helper for changing the visibility of an element\n\nPiperOrigin-RevId: 891626066\n"
    },
    {
      "commit": "111d692bf217ce0e3bb84910649837b00d79e1e5",
      "tree": "636db3e4bd3b816e3a6a25f46440ca1a06e682a4",
      "parents": [
        "2eee0408cd7efb5de2a178e87e3ba22697bb6112"
      ],
      "author": {
        "name": "Error Prone Team",
        "email": "java-team-github-bot@google.com",
        "time": "Fri Mar 27 15:49:38 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Mar 27 15:50:39 2026"
      },
      "message": "Add nested-@Generated test and restore EnumLite diagnostics\n\nThis change fixes a regression where a test enum stopped implementing EnumLite, causing the test not to verify diagnostic suppression in generated code. It also expands coverage such as including calls within nested classes under a top-level @Generated annotation.\n\nPiperOrigin-RevId: 890477878\n"
    },
    {
      "commit": "2eee0408cd7efb5de2a178e87e3ba22697bb6112",
      "tree": "142861db25455c2840e694ce72a0f61a32cab817",
      "parents": [
        "f65588d59186d3d00587c8e688e4a1991670987e"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Fri Mar 27 11:52:48 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Mar 27 11:53:50 2026"
      },
      "message": "Check ternary expressions in TimeUnitMismatch.\n\nPiperOrigin-RevId: 890383204\n"
    },
    {
      "commit": "f65588d59186d3d00587c8e688e4a1991670987e",
      "tree": "12d3867860a820decf6d558eeb55977eaf2004cc",
      "parents": [
        "5b1d3d13ffd9eaa252026fe85ad2a4ee62ca6c1a"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Fri Mar 27 11:17:41 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Mar 27 11:18:39 2026"
      },
      "message": "Improve InvalidLink to better handle qualified method references.\n\nIf the class part of a method reference exists, we can check the method.\n\nPiperOrigin-RevId: 890370644\n"
    },
    {
      "commit": "5b1d3d13ffd9eaa252026fe85ad2a4ee62ca6c1a",
      "tree": "4ef8ffd775d884e86d1f73eade77891b6c494c9f",
      "parents": [
        "73f258dc40b0b5de50e29e106bd57ab95c8db8bf"
      ],
      "author": {
        "name": "Éamonn McManus",
        "email": "emcmanus@google.com",
        "time": "Thu Mar 26 14:58:30 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Mar 26 14:59:34 2026"
      },
      "message": "Update `MisleadingEscapedSpace` to account for CRLF line endings.\n\nPiperOrigin-RevId: 889843068\n"
    },
    {
      "commit": "73f258dc40b0b5de50e29e106bd57ab95c8db8bf",
      "tree": "356ac220d3bc0f4fe40e181755ad24896b9315b8",
      "parents": [
        "eee32c338d4c7e6fa626a55774dbac0c67f1402c"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Thu Mar 26 11:37:54 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Mar 26 11:39:53 2026"
      },
      "message": "Add a comment about the limitations of InvalidLink.\n\nFixes external #5609.\n\nPiperOrigin-RevId: 889760744\n"
    },
    {
      "commit": "eee32c338d4c7e6fa626a55774dbac0c67f1402c",
      "tree": "f70f2464c47e3df13db42c28e7a9bee07ed43f3d",
      "parents": [
        "4f91e96be3b227a92bcb81e057a01a560a8dfd12"
      ],
      "author": {
        "name": "ghm",
        "email": "ghm@google.com",
        "time": "Thu Mar 26 11:01:00 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Thu Mar 26 11:02:04 2026"
      },
      "message": "Improve error message for block tags used as inline tags.\n\nWhen an unknown inline tag is encountered, check if it is a valid block tag. If so, provide a more specific error message indicating that the tag is a valid block tag but not a valid inline tag.\n\nPiperOrigin-RevId: 889746128\n"
    },
    {
      "commit": "4f91e96be3b227a92bcb81e057a01a560a8dfd12",
      "tree": "dec7ae2696092bb70037e2354cc520f22472c0a8",
      "parents": [
        "17054edda30dfdfcf167cb620ff43115c034e688"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Mar 25 22:17:40 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Mar 25 22:19:17 2026"
      },
      "message": "Update some tests for `var` position handling to pass on JDK 26\n\nI think these are affected by https://bugs.openjdk.org/browse/JDK-8359383\n\nThese tests cover crash handling on earlier versions, on JDK 26 `var` start and end positions are the same so trying to replace `var` will result in adding the replacement as a prefix. In practice checks need to be using `hasExplicitSource` and `replaceVariableType` to handle `var` prior to JDK 27.\n\nPiperOrigin-RevId: 889460016\n"
    },
    {
      "commit": "17054edda30dfdfcf167cb620ff43115c034e688",
      "tree": "d9a61e843f8e1c8521be5cd7ffad353271ee50fb",
      "parents": [
        "b53bebf4788746efc8220ec1e7c109d31ba4471d"
      ],
      "author": {
        "name": "Chaoren Lin",
        "email": "aoe@google.com",
        "time": "Wed Mar 25 20:58:57 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Mar 25 20:59:43 2026"
      },
      "message": "Update CheckReturnValue to recognize ignorability annotations used by the Kotlin stdlib.\n\nTested:\n    TAP for global presubmit queue\n    []\nPiperOrigin-RevId: 889423026\n"
    },
    {
      "commit": "b53bebf4788746efc8220ec1e7c109d31ba4471d",
      "tree": "4039ed75c3b7e391ef4302a8939a493d30658085",
      "parents": [
        "0778412dcac54c7464fc449b24ee6c120bdcd483"
      ],
      "author": {
        "name": "Petr Portnov | PROgrm_JARvis",
        "email": "mrJARVIScraft@gmail.com",
        "time": "Wed Mar 25 17:54:29 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Mar 25 17:55:20 2026"
      },
      "message": "Fix `FixedPosition` `endPosition` constructor parameter\n\n# Description\n\nThis fixed `FixedPosition`\u0027s constructor which wrongly passes `startPosition` istead of (available) `endPosition`.\n\nFixes #5656\n\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/google/error-prone/pull/5656 from JarvisCraft:FixedPosition-invlaid-end 551cc338a766ac16ee85eb45c158465cb4654645\nPiperOrigin-RevId: 889330479\n"
    },
    {
      "commit": "0778412dcac54c7464fc449b24ee6c120bdcd483",
      "tree": "1fbc47a55c7b352a55444887a8a0cdcbd512d413",
      "parents": [
        "ef810932e5c03577dcc140b3e5f4317538603e96"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Wed Mar 25 16:39:30 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Wed Mar 25 16:40:30 2026"
      },
      "message": "Clean up and remove some redundant matchers\n\nTested:\n    TAP for global presubmit queue\n    []\nPiperOrigin-RevId: 889291759\n"
    },
    {
      "commit": "ef810932e5c03577dcc140b3e5f4317538603e96",
      "tree": "c7e797530205cd5ad7c1b052812d58f352480a00",
      "parents": [
        "aa994bdb607a2b06a2d2ce7c280d2df18baaf92f"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 24 17:56:53 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 24 17:58:20 2026"
      },
      "message": "Also reorder imports in MisformattedTestData\n\nPiperOrigin-RevId: 888754531\n"
    },
    {
      "commit": "aa994bdb607a2b06a2d2ce7c280d2df18baaf92f",
      "tree": "246ca8c2324925e0a95d052742315c1c0a5afaf1",
      "parents": [
        "5ebde4ccf6887b9a3669d2eed86e2199bd94fb4e"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 24 17:55:13 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 24 17:56:09 2026"
      },
      "message": "Update some expected test outputs\n\nThese tests pass with AST_MATCH, but not TEXT_MATCH. This update prepares for making TEXT_MATCH the default.\n\nPiperOrigin-RevId: 888753676\n"
    },
    {
      "commit": "5ebde4ccf6887b9a3669d2eed86e2199bd94fb4e",
      "tree": "3645cc71fef81bdbe86430a09c7ffe135e24cf1b",
      "parents": [
        "2e3cef7e03678a411c0096680e238e601d066146"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 24 16:48:23 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 24 16:49:37 2026"
      },
      "message": "Remove `variableType(Matcher)`\n\nStartblock:\n  * unknown commit is submitted\n\nTested:\n    TAP for global presubmit queue\n    []\nRELNOTES\u003dRemoved `variableType(Matcher)` API. `Matchers.variableType(Matcher)` uses `VariableTree#getType` to match variable types, which own\u0027t work for lambda parameters with inferred types after https://bugs.openjdk.org/browse/JDK-8268850. The recommended replacement is `variableType(TypePredicate)`.\nPiperOrigin-RevId: 888716488\n"
    },
    {
      "commit": "2e3cef7e03678a411c0096680e238e601d066146",
      "tree": "367514c2ac10441382789f63e847f550c5033d28",
      "parents": [
        "ee5a9cb2f7fad12376801de44418dd7ada8b9722"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Tue Mar 24 15:41:06 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 24 15:41:51 2026"
      },
      "message": "Don\u0027t match `instanceof` expressions with patterns.\n\nWe\u0027d prefer to provide a way to handle them \"properly,\" but it\u0027s not entirely clear what that would mean. (Maybe we\u0027d have to let you write `foo instanceof SomeTypeThatYouMakeUp t`, where `SomeTypeThatYouMakeUp` is (ideally) an `interface` that you declare, perhaps annotated with a `@PretendThisIsATypeParameter` annotation??)\n\n#coding-mcp\n\nPiperOrigin-RevId: 888686334\n"
    },
    {
      "commit": "ee5a9cb2f7fad12376801de44418dd7ada8b9722",
      "tree": "0a7f4f6bf9b7c0c55c86ab2a752d14b5ff07523f",
      "parents": [
        "1dd9c3a6bd76fca8104be6ae1c1004655d6a1745"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Tue Mar 24 11:27:59 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Tue Mar 24 11:28:40 2026"
      },
      "message": "Relax an assertion in `onlyTypeParameter`\n\nThe matcher should simply not match if there isn\u0027t exactly one type parameter, to support overloaded methods where not all overloads have type parameters.\n\nPiperOrigin-RevId: 888587412\n"
    },
    {
      "commit": "1dd9c3a6bd76fca8104be6ae1c1004655d6a1745",
      "tree": "7a23858c8359f3cdc6e5c690bac1f157d5910e9b",
      "parents": [
        "4ea00ca8ef82a1567d6af65dc2445409d17f2863"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 23 22:27:09 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 23 22:27:58 2026"
      },
      "message": "Create a new FieldMatchers API, similar to MethodMatchers\n\nPiperOrigin-RevId: 888309114\n"
    },
    {
      "commit": "4ea00ca8ef82a1567d6af65dc2445409d17f2863",
      "tree": "0bb98ea081b04bdb112013db6c8a131af96c8e7a",
      "parents": [
        "bb6c75bfbab1f4f9b32de29765528ce2bfc3f148"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 23 15:55:43 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 23 15:56:41 2026"
      },
      "message": "Simplify isJavadoccableClass\n\nThe built in `isDirectlyOrIndirectlyLocal` method does most of what we want here.\n\nPiperOrigin-RevId: 888119682\n"
    },
    {
      "commit": "bb6c75bfbab1f4f9b32de29765528ce2bfc3f148",
      "tree": "f05c98038b85c82f8facd6eb0bf650f610d4efda",
      "parents": [
        "7e0462ad399b6a1e9a0a9e8fd5a17590636f3710"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 23 15:00:01 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 23 15:01:03 2026"
      },
      "message": "Remove deprecated `MethodMatchers.withSignature`\n\nStartblock:\n  * unknown commit is submitted\n\nTested:\n    TAP for global presubmit queue\n    []\nRELNOTES\u003dRemove deprecated `MethodMatchers.withSignature` API\nPiperOrigin-RevId: 888096008\n"
    },
    {
      "commit": "7e0462ad399b6a1e9a0a9e8fd5a17590636f3710",
      "tree": "b5ca6b820fd85e372bc3e63e65702f13e1b0f8d1",
      "parents": [
        "2961b19a33d5647387a50c9f2eb447ef0328a237"
      ],
      "author": {
        "name": "Liam Miller-Cushon",
        "email": "cushon@google.com",
        "time": "Mon Mar 23 14:03:19 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Mon Mar 23 14:04:21 2026"
      },
      "message": "Update some expected test outputs\n\nThese tests pass with AST_MATCH, but not TEXT_MATCH. This update prepares for making TEXT_MATCH the default.\n\nPiperOrigin-RevId: 888074557\n"
    },
    {
      "commit": "2961b19a33d5647387a50c9f2eb447ef0328a237",
      "tree": "85a9b3f8501ec09fb5d12fe73e1e6298e111ee6c",
      "parents": [
        "a676288add168d368781bc31ed9edbc14bd1d7ee"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Sat Mar 21 01:57:40 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Sat Mar 21 01:58:29 2026"
      },
      "message": "Improve logic of whether or not something is a javadoccable `Class`.\n\nPiperOrigin-RevId: 887077145\n"
    },
    {
      "commit": "a676288add168d368781bc31ed9edbc14bd1d7ee",
      "tree": "496d8b598a3c1aea8048a69e5c52e616ddc890b7",
      "parents": [
        "e30934a38e613fc1222f76bad7daf31e83e6813e"
      ],
      "author": {
        "name": "Kurt Alfred Kluever",
        "email": "kak@google.com",
        "time": "Fri Mar 20 20:00:12 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Mar 20 20:01:13 2026"
      },
      "message": "Methods inside local classes are not javadoccable.\n\nPiperOrigin-RevId: 886936126\n"
    },
    {
      "commit": "e30934a38e613fc1222f76bad7daf31e83e6813e",
      "tree": "d8996f0cfc3b920d4a0e08f9d3e9d8959c85f693",
      "parents": [
        "837f5109dd7704ca9f88976c272ae3c84b74a20b"
      ],
      "author": {
        "name": "elyse-yao",
        "email": "132704341+elyse-yao@users.noreply.github.com",
        "time": "Fri Mar 20 19:21:26 2026"
      },
      "committer": {
        "name": "Error Prone Team",
        "email": "error-prone-team+copybara@google.com",
        "time": "Fri Mar 20 19:22:20 2026"
      },
      "message": "Add MockitoBean to list of exempted variable annotations\n\n`MockitoBean` is the replacement for `MockBean`, which was [deprecated](https://docs.spring.io/spring-boot/3.5/api/java/org/springframework/boot/test/mock/mockito/MockBean.html) but otherwise used in the same way. Since upgrading our Spring Boot version and migrating over, we\u0027ve been getting `UnusedVariable` warnings since `MockitoBean` isn\u0027t exempted.\n\nThere\u0027s a [previous PR that was approved here](https://github.com/google/error-prone/pull/4800) but never merged and is now out of date, so creating this new one.\n\nThank you!\n\nFixes: https://github.com/google/error-prone/issues/4804\n\nFixes #5614\n\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/google/error-prone/pull/5614 from elyse-yao:exempt-mockito-bean-annotation ac742b1f824008a2913072ce700832d0b08836b2\nPiperOrigin-RevId: 886918640\n"
    }
  ],
  "next": "837f5109dd7704ca9f88976c272ae3c84b74a20b"
}
