)]}'
{
  "commit": "c89749284728d778ded3790033ad77edc7a11265",
  "tree": "b8e2ea312d03ea8904335adf9209ca950e2c335d",
  "parents": [
    "4c1e4682a422d644090daae322958a8479f5f9ae"
  ],
  "author": {
    "name": "Miyoung Shin",
    "email": "myid.shin@igalia.com",
    "time": "Mon Oct 19 11:08:46 2026 +0900"
  },
  "committer": {
    "name": "angle-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "angle-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Sat Oct 31 11:35:41 2026 -0700"
  },
  "message": "[3p freshness] libxnvctrl: Rename and move code into src/\n\nlibXNVCtrl is moving to the Crowbar workflow so that it can be updated\nautomatically. Crowbar requires upstream files of a third-party\ndependency to live in a src/ directory, with Chromium and ANGLE glue\nnext to it, and it uses the directory name as the package name, which\nmust be lowercase:\n\n  $ crowbar build ./src/third_party/libXNVCtrl\n  failed to build packages: action name must conform\n  ^[a-z_]+[a-z0-9_\\.]*$: name:\"libXNVCtrl\" ...\n\n- Rename src/third_party/libXNVCtrl to src/third_party/libxnvctrl.\n- Move NVCtrl.c, NVCtrl.h, NVCtrlLib.h and nv_control.h into\n  src/third_party/libxnvctrl/src/ unchanged (pure renames).\n- BUILD.gn: rename the source_set to libxnvctrl, the default target\n  of the new directory, and update its sources; update the dep in\n  the top-level BUILD.gn.\n- libXNVCtrl.gyp, scripts/generate_android_bp.py and\n  src/gpu_info_util/SystemInfo_x11.cpp: update the paths.\n- Add .clang-format with DisableFormat. The moved files count as new\n  files for the presubmit format check, and ANGLE\u0027s clang-format\n  would change NVCtrl.h; third-party code is not reformatted.\n\nLICENSE stays outside src/: upstream has no such file (its COPYING is\nthe GPL license of nvidia-settings); it holds the MIT text from the\nfile headers.\n\nChromium references this directory in tools/cfi/ignores.txt and\nbuild/linux/unbundle/. Landing order:\n1. Chromium https://crrev.com/c/8609807 (adds the new CFI path).\n2. This CL and https://crrev.com/c/8605189 (Crowbar workflow).\n3. The ANGLE roll into Chromium.\n4. Chromium https://crrev.com/c/8605270 (unbundle paths, old CFI\n   path removed).\n\nBug: chromium:502790555\nChange-Id: Ib632fe90706dbc0cb9952e87415cc2b1da05ed39\nReviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/8610567\nReviewed-by: Shahbaz Youssefi \u003csyoussefi@chromium.org\u003e\nReviewed-by: Yuly Novikov \u003cynovikov@chromium.org\u003e\nCommit-Queue: Yuly Novikov \u003cynovikov@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f38d9e8b85ed315661cf1b5a0c3aa2cd51da6f38",
      "old_mode": 33188,
      "old_path": "BUILD.gn",
      "new_id": "5e8714b9cd4f6b607b3f2d72d7c1718e094b1a33",
      "new_mode": 33188,
      "new_path": "BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "d94d7636388e5d48c21c046f86a0eb352c2143d8",
      "old_mode": 33188,
      "old_path": "scripts/generate_android_bp.py",
      "new_id": "517f7d2c90bf18ca9d7037309aa665f9c10e0970",
      "new_mode": 33188,
      "new_path": "scripts/generate_android_bp.py"
    },
    {
      "type": "modify",
      "old_id": "304a58ba721a1dc080e65ade39c8d7264cea05b6",
      "old_mode": 33188,
      "old_path": "src/gpu_info_util/SystemInfo_x11.cpp",
      "new_id": "c520d3fcd0fdc8a65eb331b734ce29d24b8ddf80",
      "new_mode": 33188,
      "new_path": "src/gpu_info_util/SystemInfo_x11.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9d159247d518108410702980b90b13c2cfb4b84f",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/.clang-format"
    },
    {
      "type": "rename",
      "old_id": "131c7ffd66c4bac7844abac169f401c27bd7dc35",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/BUILD.gn",
      "new_id": "f74e023203a77e91b338038206f881ee15140259",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/BUILD.gn",
      "score": 86
    },
    {
      "type": "rename",
      "old_id": "74324c0c6fb862635ef3f21e1c61b062c467d6ca",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/LICENSE",
      "new_id": "74324c0c6fb862635ef3f21e1c61b062c467d6ca",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/LICENSE",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "8c451d2d304b260121fa085ad40d30c1f3debe32",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/README.chromium",
      "new_id": "8c451d2d304b260121fa085ad40d30c1f3debe32",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/README.chromium",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "dc0df7835ddd6557c0582c699a2790d42e4ee192",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/libXNVCtrl.gyp",
      "new_id": "4f50c4f411a1f3648996dc67780a3d5c836b3935",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/libXNVCtrl.gyp",
      "score": 72
    },
    {
      "type": "rename",
      "old_id": "e984373947c5ac73e5d6e46d95906a690a35448d",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/NVCtrl.c",
      "new_id": "e984373947c5ac73e5d6e46d95906a690a35448d",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/src/NVCtrl.c",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "181df713a21c188a4c9fb40e9e418300d7916f2f",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/NVCtrl.h",
      "new_id": "181df713a21c188a4c9fb40e9e418300d7916f2f",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/src/NVCtrl.h",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "1a5d5decfa3bea4c4b504614ee1ad739ea8116ae",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/NVCtrlLib.h",
      "new_id": "1a5d5decfa3bea4c4b504614ee1ad739ea8116ae",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/src/NVCtrlLib.h",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "621cef30b9b18dc3eb564bfda173c20f5ac6d84f",
      "old_mode": 33188,
      "old_path": "src/third_party/libXNVCtrl/nv_control.h",
      "new_id": "621cef30b9b18dc3eb564bfda173c20f5ac6d84f",
      "new_mode": 33188,
      "new_path": "src/third_party/libxnvctrl/src/nv_control.h",
      "score": 100
    }
  ]
}
