)]}'
{
  "commit": "8061c5b5cd4c383d4016ded758a5ae0e8a3ae04d",
  "tree": "8b27af24aa6a01bf39d39001f098a3bb5820b4c6",
  "parents": [
    "bcd263c9d346a9bb74ffcbdc5666458b7217a3e7"
  ],
  "author": {
    "name": "Michael Schurter",
    "email": "michael.schurter@vercel.com",
    "time": "Thu Oct 08 12:25:34 2026 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Oct 08 14:25:34 2026 -0500"
  },
  "message": "fix handling of M5 Pro and Max handling (#37)\n\nThis patch detects the clock speeds of the two different M5 Pro and Max\ncores correctly. Without this fix only the \"Super\" core clock speed is\nread.\n\nI\u0027m not entirely sure what to do with the weird trick Apple pulled with\nM5 Pro and Max CPUs. There\u0027s still 2 tiers of cores, but instead of\nbeing Performance and Efficiency, they\u0027re *Super* and Performance.\n\nThe route I chose was:\n\n * M5 Pro/Max Super Core \u003d\u003e PCore\n * M5 Pro/Max Performance Core \u003d\u003e ECore\n\nThis is based on the idea that the important thing is that there\u0027s 2\n*tiers* of cores. What those tiers is called is up to marketing.\n\nSadly that\u0027s not entirely true as these cores do have architectural\ndifferences. However I think for the purposes of this library it\u0027s\npreferable to take advantage of the BIG.little high/low mapping to keep\nthe API stable. If consumers want to use specific architectural features\nof various M cores, this library wouldn\u0027t suffice anyway.\n\nChanges are 100% ai driven. This is my first time working on Apple\nhardware and their system interfaces are a nightmare.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "858495d040d688dc9e3f3ab55fea32c44fb449da",
      "old_mode": 33188,
      "old_path": "cpu.go",
      "new_id": "11cd286abf90701c8fbb37e6ed7937923fe1a59b",
      "new_mode": 33188,
      "new_path": "cpu.go"
    },
    {
      "type": "modify",
      "old_id": "afe86059e3a2a41236c34db51138dc5ec2995f9e",
      "old_mode": 33188,
      "old_path": "cpu_test.go",
      "new_id": "792e42edf657263b46bc6458a7eb3968a7fba4ca",
      "new_mode": 33188,
      "new_path": "cpu_test.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "218b840bf9d1becdb0c0776ea25dbdc325a2f1de",
      "new_mode": 33188,
      "new_path": "frequency.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8701628622697e4ac7212c22937fa981d42c33e2",
      "new_mode": 33188,
      "new_path": "frequency_test.go"
    },
    {
      "type": "modify",
      "old_id": "a6ebf8c728a3d1b724f0a839629e3e9b9775b8a0",
      "old_mode": 33188,
      "old_path": "generation_test.go",
      "new_id": "6270a784bf2b39ab5e5e7c344f7a6ec71bb74761",
      "new_mode": 33188,
      "new_path": "generation_test.go"
    }
  ]
}
