)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"b8bf9b940829380cf6c9ff1f78858ee20458a519","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     George Tian \u003ctian694293774@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-11 10:34:31 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Optimize code ,remove some redundant variable"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ibe9d5da9f5c136c69685b1bc523e60bb19d97b65"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa6399be_0b9469e0","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":15},"updated":"2016-10-11 14:31:33.000000000","message":"s/Optimize code ,/Optimize code, /\n\ncomma should be placed before the space","commit_id":"8bcc7c75ce952a1bf6a2b901da376bd0782251ff"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"b8bf9b940829380cf6c9ff1f78858ee20458a519","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2016-10-11 10:34:31 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Optimize code ,remove some redundant variable"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ibe9d5da9f5c136c69685b1bc523e60bb19d97b65"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa6399be_8bb6b988","line":8,"updated":"2016-10-11 14:31:33.000000000","message":"add more details about the \"redundant code\"","commit_id":"8bcc7c75ce952a1bf6a2b901da376bd0782251ff"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"b591bc63de65674fecc3170566c28762fb1d0e85","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     George Tian \u003ctian694293774@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-12 09:48:01 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Optimize code, remove some redundant variable"},{"line_number":8,"context_line":"1. There is no need define this separator variable"},{"line_number":9,"context_line":"2. Don\u0027t need to use e attribute"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fa6399be_62696ebe","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":45},"updated":"2016-10-12 02:37:53.000000000","message":"break here to separate the title and body or else all them will be parsed as the title.","commit_id":"bc0d4bce08c2b6c010bf4ae2237c05d032e55c36"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"5d91b0dba308cd05b52c61f55dc1d664a38b4d9d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     George Tian \u003ctian694293774@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-10-13 15:56:24 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"optimize code"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":" Don\u0027t need to use e attribute and"},{"line_number":10,"context_line":" use separator instead of \u0027:\u0027"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"fa6399be_01f85e7a","line":7,"updated":"2016-10-13 14:52:39.000000000","message":"There is no optimization. Maybe cleanup?","commit_id":"08bda52b564be3577ae6ff9643b3251fa64c73be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"5d91b0dba308cd05b52c61f55dc1d664a38b4d9d","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"optimize code"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":" Don\u0027t need to use e attribute and"},{"line_number":10,"context_line":" use separator instead of \u0027:\u0027"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ibe9d5da9f5c136c69685b1bc523e60bb19d97b65"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"fa6399be_6114ba9f","line":9,"updated":"2016-10-13 14:52:39.000000000","message":"e isn\u0027t an attribute here.","commit_id":"08bda52b564be3577ae6ff9643b3251fa64c73be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"5d91b0dba308cd05b52c61f55dc1d664a38b4d9d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"optimize code"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":" Don\u0027t need to use e attribute and"},{"line_number":10,"context_line":" use separator instead of \u0027:\u0027"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ibe9d5da9f5c136c69685b1bc523e60bb19d97b65"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"fa6399be_a18172c5","line":10,"updated":"2016-10-13 14:52:39.000000000","message":"\"Use already defined constant.\"","commit_id":"08bda52b564be3577ae6ff9643b3251fa64c73be"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"d310e6ce2b8756409c26c41459d618190d181f00","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Code cleanup"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":" there isn\u0027t need use e and"},{"line_number":10,"context_line":" Use already defined constant"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ibe9d5da9f5c136c69685b1bc523e60bb19d97b65"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"fa6399be_c3da9816","line":9,"updated":"2016-10-16 23:08:32.000000000","message":"Might want to make this a list like:\n\n* remove the redundant e variable\n* use already defined constant\n* move import to top of file","commit_id":"9127b0599ca32a2e8fa552ef02705084379c486b"}],"keystone/cmd/manage.py":[{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"7ee8c5005501694645fa436eb43bf80ffac90992","unresolved":false,"context_lines":[{"line_number":29,"context_line":"                               \u0027__init__.py\u0027)):"},{"line_number":30,"context_line":"    sys.path.insert(0, possible_topdir)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"from keystone.cmd import cli"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# entry point."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa6399be_703ecdb9","side":"PARENT","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":28},"updated":"2016-10-11 02:46:54.000000000","message":"what\u0027s the rationale for this one in the first place? not quite sure about this, let\u0027s see what\u0027s other thinking about it.","commit_id":"3079ce0b189a9426a4d81ae8ea361fc925de62ca"},{"author":{"_account_id":23681,"name":"George Tian","email":"tian694293774@gmail.com","username":"georgetian"},"change_message_id":"99c8f6b98c0ff6b6bb5b46b85bfc6f9534062a4f","unresolved":false,"context_lines":[{"line_number":29,"context_line":"                               \u0027__init__.py\u0027)):"},{"line_number":30,"context_line":"    sys.path.insert(0, possible_topdir)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"from keystone.cmd import cli"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"# entry point."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa6399be_90e521aa","side":"PARENT","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":28},"in_reply_to":"fa6399be_703ecdb9","updated":"2016-10-11 04:02:15.000000000","message":"Does not have any effect，just everyone habit in the first line","commit_id":"3079ce0b189a9426a4d81ae8ea361fc925de62ca"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"fa3f6f0eeb7a1fb717513c4bd66f6598a492a105","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":"from keystone.cmd import cli"},{"line_number":20,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"},{"line_number":21,"context_line":"# that it will override what happens to be installed in"},{"line_number":22,"context_line":"# /usr/(local/)lib/python..."}],"source_content_type":"text/x-python","patch_set":4,"id":"fa6399be_16647447","line":19,"updated":"2016-10-12 06:17:36.000000000","message":"pls fix this.\nH306  imports not in alphabetical order (sys, keystone.cmd.cli)","commit_id":"2e26c47a45ed6c7582feac4f873a34dcfe8aec97"},{"author":{"_account_id":22604,"name":"Samuel Pilla","email":"sp516w@att.com","username":"samuel.pilla"},"change_message_id":"7cedf0b7074a2d9ef432edb1d979632b3dbb613a","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from keystone.cmd import cli"},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":"import sys"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa6399be_ada9a07d","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":28},"updated":"2016-10-12 14:38:37.000000000","message":"Move this below \"import sys\".\nSee: http://docs.openstack.org/developer/hacking/#imports","commit_id":"af70a658023f147ae8fa83c961f2030184b030f0"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"ef514257ff8aa1a7a192f9fb024e4dcdcd6056d2","unresolved":false,"context_lines":[{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from keystone.cmd import cli"},{"line_number":21,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"},{"line_number":22,"context_line":"# that it will override what happens to be installed in"},{"line_number":23,"context_line":"# /usr/(local/)lib/python..."}],"source_content_type":"text/x-python","patch_set":6,"id":"fa6399be_a9c5f48e","line":20,"updated":"2016-10-13 06:43:52.000000000","message":"Add one blank line here, although this is not breaking pep8 but for the sake of consistency.","commit_id":"69a0fe91d2adf251a728edfd67c19a03e9872284"},{"author":{"_account_id":22604,"name":"Samuel Pilla","email":"sp516w@att.com","username":"samuel.pilla"},"change_message_id":"07e1b86f74a240ef6b4510800870cd000b6a9562","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":"from keystone.cmd import cli"},{"line_number":20,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"},{"line_number":21,"context_line":"# that it will override what happens to be installed in"},{"line_number":22,"context_line":"# /usr/(local/)lib/python..."}],"source_content_type":"text/x-python","patch_set":7,"id":"fa6399be_1b30d4e7","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":28},"updated":"2016-10-13 13:15:28.000000000","message":"PEP8 doesn\u0027t like this here, I guess it does go above both os and sys. I was wrong, sorry about that :(","commit_id":"08bda52b564be3577ae6ff9643b3251fa64c73be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"5d91b0dba308cd05b52c61f55dc1d664a38b4d9d","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"import os"},{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":"from keystone.cmd import cli"},{"line_number":20,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"},{"line_number":21,"context_line":"# that it will override what happens to be installed in"},{"line_number":22,"context_line":"# /usr/(local/)lib/python..."}],"source_content_type":"text/x-python","patch_set":7,"id":"fa6399be_e17e0a18","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":28},"in_reply_to":"fa6399be_1b30d4e7","updated":"2016-10-13 14:52:39.000000000","message":"It belongs in a third-party section generally: http://docs.openstack.org/developer/hacking/#import-order-template\n\nIn this specific case I think it\u0027s after the os.path manipulation on purpose, but if it\u0027s not we should deal with it properly","commit_id":"08bda52b564be3577ae6ff9643b3251fa64c73be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"0df4f2cfa5ee455c44e8e501822cc4ad5529d57c","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from keystone.cmd import cli"},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":"import sys"},{"line_number":20,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa6399be_35b49233","line":17,"updated":"2016-10-14 13:02:26.000000000","message":"Why are you changing this? And it\u0027s also incorrect even if we did want to move it up here: http://docs.openstack.org/developer/hacking/#import-order-template","commit_id":"852f3ad8325906e21286509d4ba269452be7dace"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"2bba40530d3a5c038c1aa8adc4b6ce99d4c2a42b","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from keystone.cmd import cli"},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":"import sys"},{"line_number":20,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa6399be_6050ed32","line":17,"in_reply_to":"fa6399be_35b49233","updated":"2016-10-15 07:56:13.000000000","message":"++","commit_id":"852f3ad8325906e21286509d4ba269452be7dace"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"d310e6ce2b8756409c26c41459d618190d181f00","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import sys"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from keystone.cmd import cli"},{"line_number":21,"context_line":"# If ../../keystone/__init__.py exists, add ../../ to Python search path, so"},{"line_number":22,"context_line":"# that it will override what happens to be installed in"},{"line_number":23,"context_line":"# /usr/(local/)lib/python..."},{"line_number":24,"context_line":"possible_topdir \u003d os.path.normpath(os.path.join(os.path.abspath(__file__),"}],"source_content_type":"text/x-python","patch_set":10,"id":"fa6399be_83d420ec","line":21,"updated":"2016-10-16 23:08:32.000000000","message":"Please add two blank lines after the added import.","commit_id":"9127b0599ca32a2e8fa552ef02705084379c486b"}],"keystone/common/utils.py":[{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"5a856e233bd67cb5a68ac4e60ff89798a8b3939e","unresolved":false,"context_lines":[{"line_number":579,"context_line":"def remove_standard_port(url):"},{"line_number":580,"context_line":"    # remove the default ports specified in RFC2616 and 2818"},{"line_number":581,"context_line":"    o \u003d moves.urllib.parse.urlparse(url)"},{"line_number":582,"context_line":"    (host, separator, port) \u003d o.netloc.partition(\u0027:\u0027)"},{"line_number":583,"context_line":"    if o.scheme.lower() \u003d\u003d \u0027http\u0027 and port \u003d\u003d \u002780\u0027:"},{"line_number":584,"context_line":"        # NOTE(gyee): _replace() is not a private method. It has"},{"line_number":585,"context_line":"        # an underscore prefix to prevent conflict with field names."}],"source_content_type":"text/x-python","patch_set":3,"id":"fa6399be_e5882825","line":582,"range":{"start_line":582,"start_character":49,"end_line":582,"end_character":52},"updated":"2016-10-12 03:52:53.000000000","message":"pls use `separator` instead of removing it.","commit_id":"43e434a3ab6ca9565a9e14c63b36afbd3365e503"}]}
