)]}'
{
  "commit": "a7d9a54aa073367c72066e3efff4f04b8ede8cb5",
  "tree": "e7bbc30168ec8715d32dddef724c19eefba107f3",
  "parents": [
    "dab591817440f5e8cd26525f7b388cdf1f1a907b",
    "35bf0dfc05c30f80648228dc2f0a0412bb100c3d"
  ],
  "author": {
    "name": "tonyaiuto",
    "email": "tony.aiuto@gmail.com",
    "time": "Thu Feb 19 17:13:55 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Feb 19 17:13:55 2026 -0400"
  },
  "message": "fix: handle UTF-16LE-encoded manifests on Windows (#1021)\n\nPrior to Bazel 8, manifest files containing non-ASCII characters were written with UTF-16LE encoding instead of UTF-8 on Windows:\n- bazelbuild/bazel#24231\n- bazelbuild/bazel#24350\n- bazelbuild/bazel#24403\n\nThis led to disable failing tests in CI:\n\n`//tests/zip:unicode_test`:\n```\nFile \"pkg\\private\\manifest.py\", line 59, in read_entries_from\n  raw_entries \u003d json.loads(fh.read())\nUnicodeDecodeError: \u0027utf-8\u0027 codec can\u0027t decode byte 0xbb in position 338: invalid start byte\n```\n\n`//tests/mappings:utf8_manifest_test`:\n```\nFile \"tests\\mappings\\manifest_test_lib.py\", line 39, in assertManifestsMatch\n  got \u003d json.loads(g_fp.read())\nUnicodeDecodeError: \u0027utf-8\u0027 codec can\u0027t decode byte 0xbb in position 354: invalid start byte\n```\n\nSince the manifest is plain JSON, the fix simply consists in detecting\nwhether the second byte is `0`, where the default UTF-8 decoding would\nfail, in which case we assume the file is UTF-16LE-encoded.\n\nThe code is slightly reorganized to factor out the encoding selection.\n\nThis allows to enable `//tests/mappings:utf8_manifest_test` and\n`//tests/zip:unicode_test` tests in Windows CI.",
  "tree_diff": []
}
