)]}'
{
  "commit": "a1c29e0c8846d20e687eb125e9ad66c71ae92072",
  "tree": "0bf8221a030554cbd93479a267743a5641125e4f",
  "parents": [
    "b9e05164c0ae70c9a4d28c03acfbeb46e4f09565"
  ],
  "author": {
    "name": "Jonathan Starup",
    "email": "jonathanlist@google.com",
    "time": "Mon Jun 22 09:24:25 2026 +0000"
  },
  "committer": {
    "name": "r8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "r8-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Jun 22 06:39:07 2026 -0700"
  },
  "message": "Remove field types from API database.\n\nThe current database is based on DexX types and without field types we\ncan\u0027t use DexField. I\u0027ve changed it to be independent of DexX types\nwhich have implications for database misses.\n\nInstead of the canonicalized and cached DexX types and DexString,\nApiDatabaseEntry and ConstantPoolEntry are used with structural equality\nand freshly computed hashes. This will be slower but I can\u0027t imagine it\nis by very much. And this only happens once per DexX type since they are\ncached.\n\nBug: b/510269018\nChange-Id: Idb0b44bec6ca7a9eb8982669479f36abca6a9abd",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5ac9db8e559a21de60dfdbb4513d6c888babca27",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/androidapi/AndroidApiDataAccess.java",
      "new_id": "5b25991355f63f4919ca70843ae1610307e791f7",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/androidapi/AndroidApiDataAccess.java"
    },
    {
      "type": "modify",
      "old_id": "f919d92f315ed9664bac2edcb024fd0b3363f7ef",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/androidapi/AndroidApiLevelHashingDatabaseImpl.java",
      "new_id": "379f0de28585c06e008f8f277b63397ab675916f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/androidapi/AndroidApiLevelHashingDatabaseImpl.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ba19aa91414062fd0065853d24c96dfe00710166",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/androidapi/ApiDatabaseEntry.java"
    },
    {
      "type": "modify",
      "old_id": "4783dea772439f4381b34492e0743ee313343787",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGenerator.java",
      "new_id": "55b096b8b5905305852c5e6f05b2e70b2f4498d6",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGenerator.java"
    },
    {
      "type": "modify",
      "old_id": "b1c1ba26adfec3d59a760e3aead4e502e28ce371",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java",
      "new_id": "de74d4e25a66e23e355bd6a2eba50b0ca665222c",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java"
    },
    {
      "type": "modify",
      "old_id": "72c3685916df72d379c75c86d814e27b7c08694f",
      "old_mode": 33188,
      "old_path": "third_party/api_database/api_database.tar.gz.sha1",
      "new_id": "3574c38fe9fe003c30511449c4ae28843ab37a28",
      "new_mode": 33188,
      "new_path": "third_party/api_database/api_database.tar.gz.sha1"
    }
  ]
}
