)]}'
{
  "commit": "22b54a36730453bf03de28ec4ad4bf15eed3fb59",
  "tree": "843c9df8e406440986496cab1ec8c1ea7d5163e9",
  "parents": [
    "c5854cdd32673f62c848964ff3117cac5e6aa563"
  ],
  "author": {
    "name": "Xiaoyi",
    "email": "ashi009@users.noreply.github.com",
    "time": "Fri May 15 05:07:45 2026 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu May 14 15:07:45 2026 -0600"
  },
  "message": "fix(tar): drop truthy-string default on store_true argparse flags (#1065)\n\nThe `--preserve_mode` and `--preserve_mtime` flags in\n`pkg/private/tar/build_tar.py` were declared with `default\u003d\u0027False\u0027` (a\nstring, which is truthy) combined with `action\u003d\u0027store_true\u0027`. When the\nflags are not passed on the command line, argparse uses the default\nverbatim instead of the boolean `False` that `store_true` would produce,\nso `options.preserve_mode` and `options.preserve_mtime` end up as the\nstring `\u0027False\u0027` — truthy under any natural truthy check.\n\nrules_pkg\u0027s own use happens to be safe because the check is\n`if self.preserve_mode is True`, but the typo is a foot-gun for anyone\ncopying the pattern.\n\nDrop the bogus default — `action\u003d\u0027store_true\u0027` already defaults to\nboolean `False`.\n\nFixes #1064",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1810207377e74e54fe10c88f1bc1fa41e76546b9",
      "old_mode": 33188,
      "old_path": "pkg/private/tar/build_tar.py",
      "new_id": "900f2842eb9b76e8fb9081b3c144108b9b3acacf",
      "new_mode": 33188,
      "new_path": "pkg/private/tar/build_tar.py"
    }
  ]
}
