)]}'
{
  "commit": "32099aa22ed940b52134b85206e3cbda3a917129",
  "tree": "799007d7365a0d5d21a812635e7294a26a3732c2",
  "parents": [
    "88a6088a91fd494f20b3a0faf97b6f59f63f80e9"
  ],
  "author": {
    "name": "Eric Petersen",
    "email": "eric@ericpetersen.io",
    "time": "Thu Jan 17 17:28:32 2019 -0800"
  },
  "committer": {
    "name": "Gregory P. Smith",
    "email": "greg@krypto.org",
    "time": "Thu Jan 17 17:28:32 2019 -0800"
  },
  "message": "Don\u0027t continually ask the OS for a port, raise an exception (#13)\n\nDon\u0027t continually ask the OS for a port, raise an exception instead of\r\nreturning None if no port could be found from `pick_unused_port()`.\r\n\r\nOn very busy machines, we might not be able to get a port from the OS\r\nthat is free on both TCP and UDP. Rather than spinning forever, only try\r\na handful of times.\r\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c8001613d3b9095a43a5cd29f13e1544ed8afb0e",
      "old_mode": 33188,
      "old_path": "src/portpicker.py",
      "new_id": "cd9295263b422e0783c6f5cd644d26d08bdf15b9",
      "new_mode": 33188,
      "new_path": "src/portpicker.py"
    },
    {
      "type": "modify",
      "old_id": "b6ac95930f75ba4d0a714f9053e051ce054d0e42",
      "old_mode": 33188,
      "old_path": "src/tests/portpicker_test.py",
      "new_id": "8220ca007cd6907d48eda7758505690a2630c53a",
      "new_mode": 33188,
      "new_path": "src/tests/portpicker_test.py"
    }
  ]
}
