)]}'
{"nova/conf/base.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"0f2e43d39d5aef661ae6a1486a184e22e7536f60","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    cfg.StrOpt("},{"line_number":27,"context_line":"        \u0027instance_usage_audit_period\u0027,"},{"line_number":28,"context_line":"        default\u003d\u0027month\u0027,"},{"line_number":29,"context_line":"        regex\u003d\u0027^(hour|month|day|year)(@([0-9]+))?$\u0027,"},{"line_number":30,"context_line":"        help\u003d\u0027\u0027\u0027"},{"line_number":31,"context_line":"Time period to generate instance usages for. It is possible to define optional"},{"line_number":32,"context_line":"offset to given period by appending @ character followed by a number defining"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_8e67ca4d","line":29,"range":{"start_line":29,"start_character":15,"end_line":29,"end_character":50},"updated":"2019-02-13 17:22:11.000000000","message":"this lets us remove some validation, see comment in utils.py","commit_id":"9cb825b0147af3b191ea2989e5187e4afdadcb15"}],"nova/conf/cinder.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f40bc04624c2eaf52c5adbe742315c59dab4e35a","unresolved":false,"context_lines":[{"line_number":24,"context_line":"cinder_opts \u003d ["},{"line_number":25,"context_line":"    cfg.StrOpt(\u0027catalog_info\u0027,"},{"line_number":26,"context_line":"            default\u003d\u0027volumev3::publicURL\u0027,"},{"line_number":27,"context_line":"            regex\u003d\u0027^(\\w+):(\\w*):(.*?)$\u0027,"},{"line_number":28,"context_line":"            help\u003d\"\"\""},{"line_number":29,"context_line":"Info to match when looking for cinder in the service catalog."},{"line_number":30,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_4b9a1d14","line":27,"range":{"start_line":27,"start_character":21,"end_line":27,"end_character":22},"updated":"2019-02-14 14:16:03.000000000","message":"Not entirely related, but [1]. We can fix this in a follow up\n\n[1] https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior","commit_id":"9cb825b0147af3b191ea2989e5187e4afdadcb15"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"0f2e43d39d5aef661ae6a1486a184e22e7536f60","unresolved":false,"context_lines":[{"line_number":24,"context_line":"cinder_opts \u003d ["},{"line_number":25,"context_line":"    cfg.StrOpt(\u0027catalog_info\u0027,"},{"line_number":26,"context_line":"            default\u003d\u0027volumev3::publicURL\u0027,"},{"line_number":27,"context_line":"            regex\u003d\u0027^(\\w+):(\\w*):(.*?)$\u0027,"},{"line_number":28,"context_line":"            help\u003d\"\"\""},{"line_number":29,"context_line":"Info to match when looking for cinder in the service catalog."},{"line_number":30,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_0e3c3a2d","line":27,"range":{"start_line":27,"start_character":35,"end_line":27,"end_character":36},"updated":"2019-02-13 17:22:11.000000000","message":"This \u0027?\u0027 is now redundant.\n\nAnd given that the capture groups are not used where this is read (which the \u0027?\u0027 would have actually broken), all the parens could go too.","commit_id":"9cb825b0147af3b191ea2989e5187e4afdadcb15"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"5245db5edd01259f905344eeb77e28007e075eee","unresolved":false,"context_lines":[{"line_number":24,"context_line":"cinder_opts \u003d ["},{"line_number":25,"context_line":"    cfg.StrOpt(\u0027catalog_info\u0027,"},{"line_number":26,"context_line":"            default\u003d\u0027volumev3::publicURL\u0027,"},{"line_number":27,"context_line":"            regex\u003d\u0027^(\\w+):(\\w*):(.*?)$\u0027,"},{"line_number":28,"context_line":"            help\u003d\"\"\""},{"line_number":29,"context_line":"Info to match when looking for cinder in the service catalog."},{"line_number":30,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_f9a2c2fb","line":27,"range":{"start_line":27,"start_character":21,"end_line":27,"end_character":22},"in_reply_to":"9fdfeff1_4b9a1d14","updated":"2019-02-14 18:35:27.000000000","message":"i.e. make sure backslashes are real backslashes, usually by making these raw strings (r\u0027...\u0027). Yes please.","commit_id":"9cb825b0147af3b191ea2989e5187e4afdadcb15"}],"nova/utils.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"0f2e43d39d5aef661ae6a1486a184e22e7536f60","unresolved":false,"context_lines":[{"line_number":292,"context_line":"        rightnow \u003d before"},{"line_number":293,"context_line":"    else:"},{"line_number":294,"context_line":"        rightnow \u003d timeutils.utcnow()"},{"line_number":295,"context_line":"    if unit not in (\u0027month\u0027, \u0027day\u0027, \u0027year\u0027, \u0027hour\u0027):"},{"line_number":296,"context_line":"        raise ValueError(_(\u0027Time period must be hour, day, month or year\u0027))"},{"line_number":297,"context_line":"    if unit \u003d\u003d \u0027month\u0027:"},{"line_number":298,"context_line":"        if offset \u003d\u003d 0:"},{"line_number":299,"context_line":"            offset \u003d 1"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_0e6afa18","line":296,"range":{"start_line":295,"start_character":0,"end_line":296,"end_character":75},"updated":"2019-02-13 17:22:11.000000000","message":"This can go away now.","commit_id":"9cb825b0147af3b191ea2989e5187e4afdadcb15"}]}
