)]}'
{"nova/utils.py":[{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"6496c3670478315f178b4b31478014a297b4f272","unresolved":false,"context_lines":[{"line_number":25,"context_line":"import functools"},{"line_number":26,"context_line":"import hashlib"},{"line_number":27,"context_line":"import inspect"},{"line_number":28,"context_line":"import netaddr"},{"line_number":29,"context_line":"import os"},{"line_number":30,"context_line":"import pyclbr"},{"line_number":31,"context_line":"import random"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2Fjmw%3D","line":28,"updated":"2013-05-03 23:48:06.000000000","message":"Is this used or just left behind?","commit_id":"059e7bc5e57424e8a3344be4809e06c9f2c97e0e"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"ddcfe50617e906bad9940efc583219a467133bee","unresolved":false,"context_lines":[{"line_number":25,"context_line":"import functools"},{"line_number":26,"context_line":"import hashlib"},{"line_number":27,"context_line":"import inspect"},{"line_number":28,"context_line":"import netaddr"},{"line_number":29,"context_line":"import os"},{"line_number":30,"context_line":"import pyclbr"},{"line_number":31,"context_line":"import random"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2Fjgc%3D","line":28,"in_reply_to":"AAAAOn%2F%2FjiE%3D","updated":"2013-05-04 04:47:26.000000000","message":"Oh, I didn\u0027t realise it was a third party module. I was just cleaning up ordering. I will tweak now.","commit_id":"059e7bc5e57424e8a3344be4809e06c9f2c97e0e"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"8c9c2bc49d3030820dfc9413c219eb5a986ddfac","unresolved":false,"context_lines":[{"line_number":25,"context_line":"import functools"},{"line_number":26,"context_line":"import hashlib"},{"line_number":27,"context_line":"import inspect"},{"line_number":28,"context_line":"import netaddr"},{"line_number":29,"context_line":"import os"},{"line_number":30,"context_line":"import pyclbr"},{"line_number":31,"context_line":"import random"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2FjiE%3D","line":28,"in_reply_to":"AAAAOn%2F%2FjmM%3D","updated":"2013-05-04 03:32:52.000000000","message":"Why is it moved from line 43 below?  It\u0027s a 3rd party module..","commit_id":"059e7bc5e57424e8a3344be4809e06c9f2c97e0e"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"e6f6fc424f69dc6cc5c6dab3748551603a907580","unresolved":false,"context_lines":[{"line_number":25,"context_line":"import functools"},{"line_number":26,"context_line":"import hashlib"},{"line_number":27,"context_line":"import inspect"},{"line_number":28,"context_line":"import netaddr"},{"line_number":29,"context_line":"import os"},{"line_number":30,"context_line":"import pyclbr"},{"line_number":31,"context_line":"import random"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2FjmM%3D","line":28,"in_reply_to":"AAAAOn%2F%2Fjmw%3D","updated":"2013-05-03 23:53:20.000000000","message":"Yeah, its used a bunch in this file.","commit_id":"059e7bc5e57424e8a3344be4809e06c9f2c97e0e"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"77152bce271a43d8e47df4a064f7bd5b072494d0","unresolved":false,"context_lines":[{"line_number":38,"context_line":"from xml.sax import saxutils"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"import netaddr"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"from oslo.config import cfg"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"from nova import exception"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOn%2F%2Fjdo%3D","line":41,"updated":"2013-05-04 06:19:10.000000000","message":"We don\u0027t seem to treat oslo as a special case compared to other 3rd party modules, either....  but I don\u0027t want to nit too much on this one.  Ie, this blank line probably shouldn\u0027t be here.  HACKING only shows 3 sections and I see other cases of oslo mixed with eventlet in the 3rd party section with no blank line separation.","commit_id":"1a11790f2d26ec92858a3ffa100388310912fae1"},{"author":{"_account_id":4419,"name":"Matthew Sherborne","email":"msherborne+openstack@gmail.com","username":"msherborne+openstack"},"change_message_id":"8b9c35718bf1de9d33a09560237907719b0f0ab2","unresolved":false,"context_lines":[{"line_number":38,"context_line":"from xml.sax import saxutils"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"import netaddr"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"from oslo.config import cfg"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"from nova import exception"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOn%2F%2FjcA%3D","line":41,"in_reply_to":"AAAAOn%2F%2Fjdo%3D","updated":"2013-05-04 09:35:58.000000000","message":"I think maybe HACKING needs updating to give \u0027imports from other openstack projects\u0027 a special separation.\n\nThey should be in a separate block imho.\n\nSomething like this:\n\npython library imports\n\n3rd party\n\noslo (other openstack imports)\n\ninternal imports","commit_id":"1a11790f2d26ec92858a3ffa100388310912fae1"}]}
