)]}'
{
  "commit": "6258844c27e3b5a43816e7c559089a5fe0a47123",
  "tree": "a5a9a80f60f3bd15f546322cc717f280fb95bf21",
  "parents": [
    "689ada79150f28b0053fa6c1fb646b75ab2cc200"
  ],
  "author": {
    "name": "Barney Gale",
    "email": "barney.gale@gmail.com",
    "time": "Wed Apr 10 19:43:07 2024"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Apr 10 19:43:07 2024"
  },
  "message": "GH-117586: Speed up `pathlib.Path.glob()` by working with strings (#117589)\n\nMove pathlib globbing implementation into a new private class: `glob._Globber`. This class implements fast string-based globbing. It\u0027s called by `pathlib.Path.glob()`, which then converts strings back to path objects.\r\n\r\nIn the private pathlib ABCs, add a `pathlib._abc.Globber` subclass that works with `PathBase` objects rather than strings, and calls user-defined path methods like `PathBase.stat()` rather than `os.stat()`.\r\n\r\nThis sets the stage for two more improvements:\r\n\r\n- GH-115060: Query non-wildcard segments with `lstat()`\r\n- GH-116380: Unify `pathlib` and `glob` implementations of globbing.\r\n\r\nNo change to the implementations of `glob.glob()` and `glob.iglob()`.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a915cf0bdf45023792317e2756ad6b4e1b520d46",
      "old_mode": 33188,
      "old_path": "Lib/glob.py",
      "new_id": "62cf0394e921d760cc2dabd29fa75b054dd93bc5",
      "new_mode": 33188,
      "new_path": "Lib/glob.py"
    },
    {
      "type": "modify",
      "old_id": "747000f1a43475c7117edaea2d6428340a704aa2",
      "old_mode": 33188,
      "old_path": "Lib/pathlib/__init__.py",
      "new_id": "88e3286d9b08dc04024d8e6b8ac3151943243aa3",
      "new_mode": 33188,
      "new_path": "Lib/pathlib/__init__.py"
    },
    {
      "type": "modify",
      "old_id": "ca38a51d072cfbdb24bfd4e48d0e7b8e3d70f2e5",
      "old_mode": 33188,
      "old_path": "Lib/pathlib/_abc.py",
      "new_id": "553f797d75e7930a0c03c4124de7b335e85cf495",
      "new_mode": 33188,
      "new_path": "Lib/pathlib/_abc.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "65c699977bd80782ec6e53a56f0574b99a8463b6",
      "new_mode": 33188,
      "new_path": "Misc/NEWS.d/next/Library/2024-04-06-20-31-09.gh-issue-117586.UgWdRK.rst"
    }
  ]
}
