)]}'
{
  "commit": "4d2902f219d09b29c543fd66d114f2dd2171aaea",
  "tree": "a5edffa179e8d5c6525ab787896fe183509a73d7",
  "parents": [
    "6d304c03acb1ea1eff06752ad816132fb041510a"
  ],
  "author": {
    "name": "Hixie",
    "email": "github.com@spam.hixie.ch",
    "time": "Tue Jul 21 17:21:01 2015 -0700"
  },
  "committer": {
    "name": "Hixie",
    "email": "github.com@spam.hixie.ch",
    "time": "Tue Jul 21 17:24:51 2015 -0700"
  },
  "message": "Many code improvements to Mine Digger.\n\nText styles are now a global constant instead of being initialised dynamically.\nThere are now sufficient text styles for 8 mines around a square.\nI coallesced Game and MineDiggerApp.\nUsed an enum instead of constants for the cell state.\nUsed setState() instead of scheduleBuild().\nUsed an O(N) algorithm for mine laying instead of the previous potentially-never-ending algorithm.\nMoved the listener on the cells to the app, so that the logic survives a rebuild.\nVarious other minor changes.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0db72e289529ee00b04de0e3e220c21a3584737b",
      "old_mode": 33188,
      "old_path": "packages/flutter/example/mine_digger/lib/main.dart",
      "new_id": "3219837fa31457f8874007514f5bcaf9ee7447ce",
      "new_mode": 33188,
      "new_path": "packages/flutter/example/mine_digger/lib/main.dart"
    }
  ]
}
