)]}'
{
  "commit": "364b6b3989e9df6335711e282e3250534d88299a",
  "tree": "ffbdb0709e86f2b0b76f2b0cf0d062f491d11e44",
  "parents": [
    "49c9392412ccf31cf948310acda057b96eb6afc6"
  ],
  "author": {
    "name": "Qunxin Liu",
    "email": "qxliu@google.com",
    "time": "Sun Oct 31 14:38:20 2021 -0700"
  },
  "committer": {
    "name": "Behdad Esfahbod",
    "email": "behdad@behdad.org",
    "time": "Tue Nov 02 15:15:02 2021 -0700"
  },
  "message": "[subset] Don\u0027t assume FeatureList is sorted\n\nThough the spec said FeatureRecords are sorted alphabetically by feature\ntag, there\u0027re font files with unsorted FeatureList. And harfbuzz is not\nable to subset these files correctly because we use binary search in\nfinding featureRecords when collecting lookups. Also\nfind_duplicate_features needs to be updated to handle this.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fde273e69214f961edbd7fbd5973caaf3fb99bff",
      "old_mode": 33188,
      "old_path": "src/hb-ot-layout-gsubgpos.hh",
      "new_id": "59abdf7377a368bbe202ebc9ea2ddc04dc15e573",
      "new_mode": 33188,
      "new_path": "src/hb-ot-layout-gsubgpos.hh"
    },
    {
      "type": "modify",
      "old_id": "d02a3c0ea63a4ff1887b7d29784b6a31c2c176e6",
      "old_mode": 33188,
      "old_path": "src/hb-ot-layout.cc",
      "new_id": "1e446c66ff403b529cb25c1ace27baf4c447f036",
      "new_mode": 33188,
      "new_path": "src/hb-ot-layout.cc"
    },
    {
      "type": "modify",
      "old_id": "f530fad2858ca6aff694733b6126388f6171a287",
      "old_mode": 33188,
      "old_path": "test/subset/data/Makefile.am",
      "new_id": "33ffb9eda465d087ceb269d922c183ebe30ad697",
      "new_mode": 33188,
      "new_path": "test/subset/data/Makefile.am"
    },
    {
      "type": "modify",
      "old_id": "2ed10567f4418fbf448fe38e7645eb8b77a5f254",
      "old_mode": 33188,
      "old_path": "test/subset/data/Makefile.sources",
      "new_id": "34f2f07083310eae4f56f7a9064832d5bdb8bcf8",
      "new_mode": 33188,
      "new_path": "test/subset/data/Makefile.sources"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3fb42c6a323ccafde397aab9b18e9b59e743d5df",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.default.392,3a7,3b2,3c7.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "decba004d65ba54e44da502d964031a08f853ba9",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.default.retain-all-codepoint.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a0b6145f0b4ca5c20441c39f176a5ad313b608d1",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.layout-test.392,3a7,3b2,3c7.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2d76b5afc823ef26403014565f18da8f20496eff",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.layout-test.retain-all-codepoint.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "012bb1646717c5b1446f80702a021fc8d611d0ad",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.retain-gids.392,3a7,3b2,3c7.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7ddb09ac248d4aebd1eafbed763f019be2367530",
      "new_mode": 33188,
      "new_path": "test/subset/data/expected/layout.unsorted_featurelist/NotoIKEAHebrewLatin-Regular.retain-gids.retain-all-codepoint.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7566808135a4bafd2ebf4cb6a83546585d9d9378",
      "new_mode": 33188,
      "new_path": "test/subset/data/fonts/NotoIKEAHebrewLatin-Regular.ttf"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9c77a7ade36ee70bd8e984d9661bedba975d7bb1",
      "new_mode": 33188,
      "new_path": "test/subset/data/tests/layout.unsorted_featurelist.tests"
    },
    {
      "type": "modify",
      "old_id": "9a5377c9eab0ccc9e7e5641e929f214fd6f164b2",
      "old_mode": 33188,
      "old_path": "test/subset/meson.build",
      "new_id": "a287136a9a9ffa819d03684897bec89fa59f0ec9",
      "new_mode": 33188,
      "new_path": "test/subset/meson.build"
    }
  ]
}
