)]}'
{"tools/abandon_old_reviews.sh":[{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"66b0efe536d0f9e13ff31b9a805b324c12d16b47","unresolved":false,"context_lines":[{"line_number":54,"context_line":"PROJECTS\u003d\"($("},{"line_number":55,"context_line":"python - \u003c\u003cEOF"},{"line_number":56,"context_line":"import yaml"},{"line_number":57,"context_line":"with open(\u0027/tmp/test\u0027, \u0027r\u0027) as f:"},{"line_number":58,"context_line":"    governance \u003d yaml.load(f)"},{"line_number":59,"context_line":"    stadium \u003d governance[\"neutron\"][\"deliverables\"].keys()"},{"line_number":60,"context_line":"    query \u003d [\"project:openstack/%s\" % p for p in stadium]"}],"source_content_type":"text/x-sh","patch_set":1,"id":"1aa78d24_f5722810","line":57,"range":{"start_line":57,"start_character":16,"end_line":57,"end_character":20},"updated":"2016-07-06 02:08:19.000000000","message":"This is not the file you outputted to on line 53.\n\nPreferably use mktemp, e.g.:\n\n  tmpfile\u003d$(mktemp /tmp/projects-XXXX.yaml)","commit_id":"61416aaaa86d90ef167089e32c63876016629a0d"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"bf8e0bdd620fb83aa2d5917ac77c9083e1f144db","unresolved":false,"context_lines":[{"line_number":54,"context_line":"PROJECTS\u003d\"($("},{"line_number":55,"context_line":"python - \u003c\u003cEOF"},{"line_number":56,"context_line":"import yaml"},{"line_number":57,"context_line":"with open(\u0027/tmp/test\u0027, \u0027r\u0027) as f:"},{"line_number":58,"context_line":"    governance \u003d yaml.load(f)"},{"line_number":59,"context_line":"    stadium \u003d governance[\"neutron\"][\"deliverables\"].keys()"},{"line_number":60,"context_line":"    query \u003d [\"project:openstack/%s\" % p for p in stadium]"}],"source_content_type":"text/x-sh","patch_set":1,"id":"1aa78d24_27e64544","line":57,"range":{"start_line":57,"start_character":16,"end_line":57,"end_character":20},"in_reply_to":"1aa78d24_10da6217","updated":"2016-07-06 03:55:09.000000000","message":"doh...","commit_id":"61416aaaa86d90ef167089e32c63876016629a0d"},{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"e818dac760063a644855be0b3a55e1147b0b7b6c","unresolved":false,"context_lines":[{"line_number":54,"context_line":"PROJECTS\u003d\"($("},{"line_number":55,"context_line":"python - \u003c\u003cEOF"},{"line_number":56,"context_line":"import yaml"},{"line_number":57,"context_line":"with open(\u0027/tmp/test\u0027, \u0027r\u0027) as f:"},{"line_number":58,"context_line":"    governance \u003d yaml.load(f)"},{"line_number":59,"context_line":"    stadium \u003d governance[\"neutron\"][\"deliverables\"].keys()"},{"line_number":60,"context_line":"    query \u003d [\"project:openstack/%s\" % p for p in stadium]"}],"source_content_type":"text/x-sh","patch_set":1,"id":"1aa78d24_10da6217","line":57,"range":{"start_line":57,"start_character":16,"end_line":57,"end_character":20},"in_reply_to":"1aa78d24_f5722810","updated":"2016-07-06 02:45:31.000000000","message":"You can also do the data fetching in memory with python:\n\n  import urllib2, yaml\n  data \u003d urllib2.urlopen(\"https://raw.githubusercontent.com/openstack/\"\n                         \"governance/master/reference/projects.yaml\")\n  governance \u003d yaml.load(data)\n  ...","commit_id":"61416aaaa86d90ef167089e32c63876016629a0d"}]}
