)]}'
{"nova/compute/api.py":[{"author":{"_account_id":3217,"name":"Ian Wells","username":"ijw-ubuntu"},"change_message_id":"d77b74953fa0b69d287364596a3593d8aab6896a","unresolved":false,"context_lines":[{"line_number":1723,"context_line":"        #             change the logic in the manager for what constitutes"},{"line_number":1724,"context_line":"        #             a valid device."},{"line_number":1725,"context_line":"        if device and not re.match(\"^/dev/x{0,1}[a-z]{0,1}d{0,1}[a-z]+$\","},{"line_number":1726,"context_line":"                                   device):"},{"line_number":1727,"context_line":"            raise exception.InvalidDevicePath(path\u003ddevice)"},{"line_number":1728,"context_line":"        # NOTE(vish): This is done on the compute host because we want"},{"line_number":1729,"context_line":"        #             to avoid a race where two devices are requested at"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FhGA%3D","line":1726,"updated":"2012-09-04 22:48:49.000000000","message":"Same goes here as for in the other location; additionally you might consider a cross-reference since the two regexps should remain in sync in the future.","commit_id":"b5e271f24ce0da548162fd3608797868016e1a4b"}],"nova/compute/utils.py":[{"author":{"_account_id":3217,"name":"Ian Wells","username":"ijw-ubuntu"},"change_message_id":"d77b74953fa0b69d287364596a3593d8aab6896a","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    # NOTE(vish): this will generate a unique device name that is not"},{"line_number":38,"context_line":"    #             in use already. It is a reasonable guess at where"},{"line_number":39,"context_line":"    #             it will show up in a linux guest, but it may not"},{"line_number":40,"context_line":"    #             always be correct"},{"line_number":41,"context_line":"    req_prefix \u003d None"},{"line_number":42,"context_line":"    req_letters \u003d None"},{"line_number":43,"context_line":"    if device:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FhGM%3D","line":40,"updated":"2012-09-04 22:48:49.000000000","message":"Docstring, since you\u0027re here.  Looks like this function needs it if, in fact, it\u0027s generating an unused, unique device name (which is not adequately described by the function name).","commit_id":"b5e271f24ce0da548162fd3608797868016e1a4b"},{"author":{"_account_id":3217,"name":"Ian Wells","username":"ijw-ubuntu"},"change_message_id":"d77b74953fa0b69d287364596a3593d8aab6896a","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    req_letters \u003d None"},{"line_number":43,"context_line":"    if device:"},{"line_number":44,"context_line":"        try:"},{"line_number":45,"context_line":"            match \u003d re.match(\"(^/dev/x{0,1}[a-z]{0,1}d{0,1})([a-z]+)$\", device)"},{"line_number":46,"context_line":"            req_prefix, req_letters \u003d match.groups()"},{"line_number":47,"context_line":"        except (TypeError, AttributeError, ValueError):"},{"line_number":48,"context_line":"            raise exception.InvalidDevicePath(path\u003ddevice)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FhGI%3D","line":45,"updated":"2012-09-04 22:48:49.000000000","message":"A comment here to describe what strings you hope to match and why will make the lives of those that follow you a lot simpler.  (Including the reviewers. ;)","commit_id":"b5e271f24ce0da548162fd3608797868016e1a4b"}]}
