)]}'
{
  "commit": "e2af9c03ef4cfb769e391968a5cfbb1afe6f01e2",
  "tree": "cfb898942707fe179dbb8ca2e409d0536e7aa274",
  "parents": [
    "f46ec5218fe7829ac18323b5ee0b409a63169f27"
  ],
  "author": {
    "name": "Martin Nordholts",
    "email": "martin.nordholts@codetale.se",
    "time": "Mon Jun 29 20:05:45 2026 +0200"
  },
  "committer": {
    "name": "Martin Nordholts",
    "email": "martin.nordholts@codetale.se",
    "time": "Tue Jun 30 20:59:17 2026 +0200"
  },
  "message": "borrowck: Introduce BlameConstraint::to_obligation_cause_from_path()\n\nBefore this commit, `BlameConstraint` is a bit hard to understand at\nfirst, because of its `ObligationCause` field. In practice,\n`BlameConstraint` is just a slimmed down version of an\n`OutlivesConstraint` from `Vec\u003cOutlivesConstraint\u003e`.\n\nThe artificial `ObligationCause` is only needed in one place. Rather\nthan having that exception polute the lower level analysis, bubble it up\nas much as we can. That way, it becomes clearer what `BlameConstraint`\nactually is.\n\nFor reference, `ObligationCause` was introdued by 93ab12eeaba2c, but the\ncodebase looked quite different back then.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f6abafb8741656bb248a01c6a581c605dfd3abad",
      "old_mode": 33188,
      "old_path": "compiler/rustc_borrowck/src/diagnostics/explain_borrow.rs",
      "new_id": "1e336f1e4509dea59e371e471ade71d9d4c995a2",
      "new_mode": 33188,
      "new_path": "compiler/rustc_borrowck/src/diagnostics/explain_borrow.rs"
    },
    {
      "type": "modify",
      "old_id": "1166e1265dadbd7df80f6ac01f7e8fc0d174ac94",
      "old_mode": 33188,
      "old_path": "compiler/rustc_borrowck/src/diagnostics/region_errors.rs",
      "new_id": "a82cd5c74c33052abb860dfab71af882bf68df3e",
      "new_mode": 33188,
      "new_path": "compiler/rustc_borrowck/src/diagnostics/region_errors.rs"
    },
    {
      "type": "modify",
      "old_id": "5e56ae80ff5daea9766f2817cb057e9d7e8ad72b",
      "old_mode": 33188,
      "old_path": "compiler/rustc_borrowck/src/region_infer/mod.rs",
      "new_id": "64aa92c2c88789020bf7f4a4a1c920892b4b0841",
      "new_mode": 33188,
      "new_path": "compiler/rustc_borrowck/src/region_infer/mod.rs"
    }
  ]
}
