)]}'
{".mailmap":[{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"bd7b91c2137f404b8006a26737ad30293eddea9d","unresolved":false,"context_lines":[{"line_number":116,"context_line":"Vishvananda Ishaya \u003cvishvananda@gmail.com\u003e \u003croot@ubuntu\u003e"},{"line_number":117,"context_line":"Vivek YS \u003cvivek.ys@gmail.com\u003e Vivek YS vivek.ys@gmail.com \u003c\u003e"},{"line_number":118,"context_line":"Zhongyue Luo \u003czhongyue.nah@intel.com\u003e \u003clzyeval@gmail.com\u003e"},{"line_number":119,"context_line":"Édouard Thuleau \u003cedouard.thuleau@orange.com\u003e Thuleau Édouard \u003cthuleau@gmail.com\u003e"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAALn%2F%2F7wo%3D","line":119,"updated":"2012-10-26 07:37:22.000000000","message":"Sorry, I should have picked this up last time. I think this file is listed alphabetically, and therefore your entry should be above here.","commit_id":"2cf25416a4ec6dad52f0c40bb65d9fc4894ab882"}],"nova/compute/manager.py":[{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"0f83af29285405269d8bfb027c68926644878dc4","unresolved":false,"context_lines":[{"line_number":1247,"context_line":"                   \u0027property-instance_uuid\u0027: instance[\u0027uuid\u0027]}"},{"line_number":1248,"context_line":""},{"line_number":1249,"context_line":"        images \u003d image_service.detail(context, filters\u003dfilters,"},{"line_number":1250,"context_line":"                 sort_key\u003d\u0027created_at\u0027, sort_dir\u003d\u0027desc\u0027)"},{"line_number":1251,"context_line":"        num_images \u003d len(images)"},{"line_number":1252,"context_line":"        LOG.debug(_(\"Found %(num_images)d images (rotation: %(rotation)d)\")"},{"line_number":1253,"context_line":"                  % locals(), instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAALn%2F%2F81c%3D","line":1250,"updated":"2012-10-25 08:17:47.000000000","message":"Please indent this under the bracket on the line above.","commit_id":"757a9209d90beaf8626e81c7528e2c8116592628"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"0f83af29285405269d8bfb027c68926644878dc4","unresolved":false,"context_lines":[{"line_number":1250,"context_line":"                 sort_key\u003d\u0027created_at\u0027, sort_dir\u003d\u0027desc\u0027)"},{"line_number":1251,"context_line":"        num_images \u003d len(images)"},{"line_number":1252,"context_line":"        LOG.debug(_(\"Found %(num_images)d images (rotation: %(rotation)d)\")"},{"line_number":1253,"context_line":"                  % locals(), instance\u003dinstance)"},{"line_number":1254,"context_line":""},{"line_number":1255,"context_line":"        if num_images \u003e rotation:"},{"line_number":1256,"context_line":"            # NOTE(sirp): this deletes all backups that exceed the rotation"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAALn%2F%2F81Y%3D","line":1253,"updated":"2012-10-25 08:17:47.000000000","message":"I\u0027d prefer this was:\n\nLOG.debug(_(\"....\"), locals(), instance\u003dinstance)\n\ni.e. locals is an argument, not a % applied to the format string.","commit_id":"757a9209d90beaf8626e81c7528e2c8116592628"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"bd7b91c2137f404b8006a26737ad30293eddea9d","unresolved":false,"context_lines":[{"line_number":1256,"context_line":"            # NOTE(sirp): this deletes all backups that exceed the rotation"},{"line_number":1257,"context_line":"            # limit"},{"line_number":1258,"context_line":"            excess \u003d len(images) - rotation"},{"line_number":1259,"context_line":"            LOG.debug(_(\"Rotating out %d backups\"), excess,"},{"line_number":1260,"context_line":"                      instance\u003dinstance)"},{"line_number":1261,"context_line":"            for i in xrange(excess):"},{"line_number":1262,"context_line":"                image \u003d images.pop()"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2F7wk%3D","line":1259,"updated":"2012-10-26 07:37:22.000000000","message":"Oh, thanks for fixing these extra ones as well!","commit_id":"2cf25416a4ec6dad52f0c40bb65d9fc4894ab882"}],"nova/image/glance.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"67149864d018682cbcbd5c5180d14442c2fdebcd","unresolved":false,"context_lines":[{"line_number":177,"context_line":"        accepted_params \u003d (\u0027filters\u0027, \u0027marker\u0027, \u0027limit\u0027,"},{"line_number":178,"context_line":"                           \u0027sort_key\u0027, \u0027sort_dir\u0027)"},{"line_number":179,"context_line":"        for param in accepted_params:"},{"line_number":180,"context_line":"            if param in params and params.get(param):"},{"line_number":181,"context_line":"                _params[param] \u003d params.get(param)"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        # ensure filters is a dict"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALn%2F%2F9jE%3D","line":180,"updated":"2012-10-24 18:04:15.000000000","message":"The \u0027param in params\u0027 is useless in this conditional if you add the \u0027params.get(param)\u0027 check. You might as well simplify this down to \u0027if params.get(param):\u0027","commit_id":"28d5a219a1db8bba22cefa16099a421c1dd18c2b"},{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"f5d7bb13f013948a43d47b16989aa159ea95b37c","unresolved":false,"context_lines":[{"line_number":177,"context_line":"        accepted_params \u003d (\u0027filters\u0027, \u0027marker\u0027, \u0027limit\u0027,"},{"line_number":178,"context_line":"                           \u0027sort_key\u0027, \u0027sort_dir\u0027)"},{"line_number":179,"context_line":"        for param in accepted_params:"},{"line_number":180,"context_line":"            if params.get(param):"},{"line_number":181,"context_line":"                _params[param] \u003d params.get(param)"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        # ensure filters is a dict"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAALn%2F%2F35M%3D","line":180,"updated":"2012-10-31 12:32:22.000000000","message":"This seems like an unrelated change, so I\u0027d prefer if you\u0027d submitted it as a separate patch\n\ne.g. I\u0027d be concerned about a legitimate case where we want to pass 0 as a query parameter\n\nHowever, it seems safe enough","commit_id":"17149f688d22e4f4938674f7179a03caeafbfc93"}]}
