)]}'
{"novaclient/v2/flavors.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"ea5c3081457db9f4e8dda326ff52cdfc5dacb1fd","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        if not is_public:"},{"line_number":114,"context_line":"            qparams[\u0027is_public\u0027] \u003d is_public"},{"line_number":115,"context_line":"        items \u003d list(qparams.items())"},{"line_number":116,"context_line":"        new_qparams \u003d sorted(items, key\u003dlambda x: x[0])"},{"line_number":117,"context_line":"        query_string \u003d \"?%s\" % parse.urlencode("},{"line_number":118,"context_line":"            new_qparams) if new_qparams else \"\""},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"fa32b979_f13b1d9a","line":116,"updated":"2015-06-25 16:07:20.000000000","message":"You could combine these two lines like so:\n\n    qparams \u003d sorted(qparams.items(), key\u003dlambda x: x[0])\n\nThat also eliminates the need to introduce the \u0027items\u0027 variable and the \u0027new_qparams\u0027 variable, as well as the need to use the \u0027list\u0027 constructor.","commit_id":"ca242dfdce0edfd0e06a16e48409dc5a80d8c24f"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"275f6ac074b312f05ed4dccdd11c093b6d675b87","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        Get a list of all flavors."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"        :rtype: list of :class:`Flavor`."},{"line_number":101,"context_line":"        :param limit: maximum number of images to return (optional)."},{"line_number":102,"context_line":"        :param marker: Begin returning servers that appear later in the flavor"},{"line_number":103,"context_line":"                       list than that represented by this flavor id (optional)."},{"line_number":104,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":9,"id":"fa32b979_d96dc99a","line":101,"range":{"start_line":101,"start_character":40,"end_line":101,"end_character":46},"updated":"2015-06-26 05:40:18.000000000","message":"Copy-paste error","commit_id":"08d05911bcb006790ea3d12961176eec4fc7d7cd"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"275f6ac074b312f05ed4dccdd11c093b6d675b87","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"        :rtype: list of :class:`Flavor`."},{"line_number":101,"context_line":"        :param limit: maximum number of images to return (optional)."},{"line_number":102,"context_line":"        :param marker: Begin returning servers that appear later in the flavor"},{"line_number":103,"context_line":"                       list than that represented by this flavor id (optional)."},{"line_number":104,"context_line":"        \"\"\""},{"line_number":105,"context_line":"        qparams \u003d {}"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa32b979_195b31f8","line":102,"range":{"start_line":102,"start_character":39,"end_line":102,"end_character":46},"updated":"2015-06-26 05:40:18.000000000","message":"Copy-paste error","commit_id":"08d05911bcb006790ea3d12961176eec4fc7d7cd"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"275f6ac074b312f05ed4dccdd11c093b6d675b87","unresolved":false,"context_lines":[{"line_number":114,"context_line":"            qparams[\u0027is_public\u0027] \u003d is_public"},{"line_number":115,"context_line":"        qparams \u003d sorted(qparams.items(), key\u003dlambda x: x[0])"},{"line_number":116,"context_line":"        query_string \u003d \"?%s\" % parse.urlencode("},{"line_number":117,"context_line":"            qparams) if qparams else \"\""},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        detail \u003d \"\""},{"line_number":120,"context_line":"        if detailed:"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa32b979_d9e2a901","line":117,"updated":"2015-06-26 05:40:18.000000000","message":"Why split this statement into two lines? I thought it was better as one line","commit_id":"08d05911bcb006790ea3d12961176eec4fc7d7cd"}],"novaclient/v2/images.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"e674a5dbc15e30fcf71af0bb81a620dbff626d46","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        if marker:"},{"line_number":71,"context_line":"            params[\u0027marker\u0027] \u003d str(marker)"},{"line_number":72,"context_line":"        items \u003d list(params.items())"},{"line_number":73,"context_line":"        new_params \u003d sorted(items, key\u003dlambda x: x[0])"},{"line_number":74,"context_line":"        query \u003d \u0027?%s\u0027 % parse.urlencode(new_params) if new_params else \u0027\u0027"},{"line_number":75,"context_line":"        return self._list(\u0027/images%s%s\u0027 % (detail, query), \u0027images\u0027)"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_76c29888","line":73,"updated":"2015-06-25 20:10:41.000000000","message":"Worth pointing out that the same comment applies here :)","commit_id":"91348c90e4b65fa4f95e69a9d3e2fb83a04f415b"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"275f6ac074b312f05ed4dccdd11c093b6d675b87","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        :rtype: list of :class:`Image`"},{"line_number":60,"context_line":"        :param limit: maximum number of images to return."},{"line_number":61,"context_line":"        :param marker: Begin returning servers that appear later in the image"},{"line_number":62,"context_line":"                       list than that represented by this image id (optional)."},{"line_number":63,"context_line":"        \"\"\""},{"line_number":64,"context_line":"        params \u003d {}"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa32b979_996741b7","line":61,"range":{"start_line":61,"start_character":39,"end_line":61,"end_character":46},"updated":"2015-06-26 05:40:18.000000000","message":"Copy-paste error","commit_id":"08d05911bcb006790ea3d12961176eec4fc7d7cd"}]}
