)]}'
{"nova/api/ec2/ec2utils.py":[{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"d2b27632b629dd096c7a45ca453f1f0f67a6629b","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%S.%fZ\""},{"line_number":269,"context_line":"        else:"},{"line_number":270,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%SZ\""},{"line_number":271,"context_line":"        return datetime.datetime.strptime(strtime, time_format)"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"    try:"},{"line_number":274,"context_line":"        if timestamp and expiry_time:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_66449f1a","line":271,"updated":"2015-07-01 14:33:10.000000000","message":"Note: parse_isodate() cannot be used here, because an unit test ensure that a timestamp which doesn\u0027t end with \"Z\" is treated as invalid. It looks like the exact format matters here.","commit_id":"28584b9529d73d8d65f8ab267a03fba2e0f6f8ab"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"d692078a10709fa8aa4f1778c86f18ada746d61a","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%S.%fZ\""},{"line_number":269,"context_line":"        else:"},{"line_number":270,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%SZ\""},{"line_number":271,"context_line":"        return datetime.datetime.strptime(strtime, time_format)"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"    try:"},{"line_number":274,"context_line":"        if timestamp and expiry_time:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_fa21c29e","line":271,"in_reply_to":"ba3cc151_66449f1a","updated":"2015-07-03 09:15:06.000000000","message":"You should write this code of things in the code rather than in gerrit but well :)","commit_id":"28584b9529d73d8d65f8ab267a03fba2e0f6f8ab"},{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"8509bee1027485f662de1972d378d266f1112d31","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%S.%fZ\""},{"line_number":269,"context_line":"        else:"},{"line_number":270,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%SZ\""},{"line_number":271,"context_line":"        return datetime.datetime.strptime(strtime, time_format)"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"    try:"},{"line_number":274,"context_line":"        if timestamp and expiry_time:"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_3a188ad2","line":271,"in_reply_to":"ba3cc151_fa21c29e","updated":"2015-07-03 09:25:44.000000000","message":"You\u0027re right. It\u0027s just that I forgot that before submiting the first patch set.\n\nI integrated this note in the code directly in the new patch set.","commit_id":"28584b9529d73d8d65f8ab267a03fba2e0f6f8ab"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"d9028f950c13860c230ee15c3ec9997d43e3dcd0","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%S.%fZ\""},{"line_number":269,"context_line":"        else:"},{"line_number":270,"context_line":"            time_format \u003d \"%Y-%m-%dT%H:%M:%SZ\""},{"line_number":271,"context_line":"        # NOTE(haypo): parse_isodate() cannot be used here, because an unit"},{"line_number":272,"context_line":"        # test ensure that a timestamp which doesn\u0027t end with \"Z\" is treated as"},{"line_number":273,"context_line":"        # invalid, whereas parse_isodate() accepts timezone with other formats."},{"line_number":274,"context_line":"        # The exact timestamp format matters here."}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_45c0b4e0","line":271,"updated":"2015-08-18 13:47:32.000000000","message":"parse_isotime()?","commit_id":"789d4b564a2bbe4878c50a424f5064753cb3291d"}],"nova/api/openstack/compute/contrib/simple_tenant_usage.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7b8b25e6882a6e3b9cd2d469b8a8713f78366513","unresolved":false,"context_lines":[{"line_number":185,"context_line":"            value \u003d dtstr"},{"line_number":186,"context_line":"        else:"},{"line_number":187,"context_line":"            try:"},{"line_number":188,"context_line":"                value \u003d timeutils.parse_isotime(dtstr)"},{"line_number":189,"context_line":"            except ValueError:"},{"line_number":190,"context_line":"                msg \u003d _(\"Datetime is in invalid format\")"},{"line_number":191,"context_line":"                raise exception.InvalidStrTime(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_5d908443","line":188,"updated":"2015-08-18 16:56:42.000000000","message":"This does change the API, but it seems a halmless one.","commit_id":"789d4b564a2bbe4878c50a424f5064753cb3291d"}],"nova/tests/unit/cells/test_cells_messaging.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7b8b25e6882a6e3b9cd2d469b8a8713f78366513","unresolved":false,"context_lines":[{"line_number":1667,"context_line":""},{"line_number":1668,"context_line":"        self.mox.StubOutWithMock(cells_utils, \u0027get_instances_to_sync\u0027)"},{"line_number":1669,"context_line":""},{"line_number":1670,"context_line":"        with mock.patch.object(timeutils, \u0027parse_isotime\u0027,"},{"line_number":1671,"context_line":"                               return_value\u003dupdated_since_parsed):"},{"line_number":1672,"context_line":""},{"line_number":1673,"context_line":"            # Middle cell."}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_9d6dbc9a","line":1670,"updated":"2015-08-18 16:56:42.000000000","message":"I don\u0027t like us using both mox and mock in the same test, its a bit of a mess.\n\nEither keep using mox, or convert this test method to mock, please.\n\nThis is my interpretation of the guidelines here:\nhttp://docs.openstack.org/infra/manual/developers.html#peer-review","commit_id":"789d4b564a2bbe4878c50a424f5064753cb3291d"}]}
