)]}'
{"openstack_dashboard/test/integration_tests/video_recorder.py":[{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"4cecd0a21d3720baa75d3b1f22a237d1f4133296","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    def __init__(self, width, height, display\u003d\u00270.0\u0027, frame_rate\u003d15):"},{"line_number":27,"context_line":"        self.is_launched \u003d False"},{"line_number":28,"context_line":"        self.file_path \u003d mktemp() + \u0027.mp4\u0027"},{"line_number":29,"context_line":"        # avconv -f x11grab -r 15 -s 1920x1080 -i :0.0 -codec libx264 out.mp4"},{"line_number":30,"context_line":"        self._cmd \u003d [\u0027avconv\u0027, \u0027-f\u0027, \u0027x11grab\u0027, \u0027-r\u0027, str(frame_rate),"},{"line_number":31,"context_line":"                     \u0027-s\u0027, \u0027{}x{}\u0027.format(width, height),"},{"line_number":32,"context_line":"                     \u0027-i\u0027, \u0027:{}\u0027.format(display),"},{"line_number":33,"context_line":"                     \u0027-codec\u0027, \u0027libx264\u0027, self.file_path]"},{"line_number":34,"context_line":"        self._cmd \u003d [\u0027ffmpeg\u0027,"},{"line_number":35,"context_line":"                     \u0027-video_size\u0027, \u0027{}x{}\u0027.format(width, height),"},{"line_number":36,"context_line":"                     \u0027-framerate\u0027, str(frame_rate),"}],"source_content_type":"text/x-python","patch_set":7,"id":"df33271e_ab3aebc9","line":33,"range":{"start_line":29,"start_character":1,"end_line":33,"end_character":57},"updated":"2020-04-06 14:42:24.000000000","message":"why are you not just replacing lines and fixing the comment?\n\nleaves a lot of confusion for future code readers","commit_id":"a43d685f22fdbe01676346264809035a865feab4"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"4cecd0a21d3720baa75d3b1f22a237d1f4133296","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        fnull \u003d open(os.devnull, \u0027w\u0027)"},{"line_number":51,"context_line":"        LOG.info(\u0027Record video via %s\u0027, \u0027 \u0027.join(self._cmd))"},{"line_number":52,"context_line":"        self._popen \u003d subprocess.Popen(self._cmd, stdout\u003dfnull, stderr\u003dfnull)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        self.is_launched \u003d True"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    def stop(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"df33271e_0b51570f","line":53,"updated":"2020-04-06 14:42:24.000000000","message":"nit: unneeded change","commit_id":"a43d685f22fdbe01676346264809035a865feab4"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"4cecd0a21d3720baa75d3b1f22a237d1f4133296","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"        if not os.path.isfile(self.file_path):"},{"line_number":86,"context_line":"            LOG.warning(\"%s is absent already\", self.file_path)"},{"line_number":87,"context_line":"            return"},{"line_number":88,"context_line":"        os.remove(self.file_path)"}],"source_content_type":"text/x-python","patch_set":7,"id":"df33271e_4b5b5f2d","line":88,"range":{"start_line":87,"start_character":12,"end_line":88,"end_character":13},"updated":"2020-04-06 14:42:24.000000000","message":"nit: unneeded change","commit_id":"a43d685f22fdbe01676346264809035a865feab4"}],"tools/gate/integration/post_test_hook.sh":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"7db120cb09a8139834322d33aa021fc80a60442d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# This script will be executed inside post_test_hook function in devstack gate"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-sh","patch_set":6,"id":"1fa4df85_bd74fcfe","line":1,"updated":"2020-03-10 20:44:43.000000000","message":"This change is not needed, but I figured out it too late. I deleted these files in https://review.opendev.org/#/c/712157/. I can merge these patches into the one if needed.","commit_id":"8c2be9371274285a5d34db10d006a74243842381"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c20ae2647860e682becc4e6158bd31708fb93dc3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"df33271e_7d16924b","updated":"2020-04-09 05:04:38.000000000","message":"question: why do we need this file?","commit_id":"28bdfc9b3912a37a3cd9add46f98ec77478ed270"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"9e7f97e3f26bef6ada2a56dfc917754172986066","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"df33271e_6e77f6d5","in_reply_to":"df33271e_7d16924b","updated":"2020-04-09 09:19:00.000000000","message":"it\u0027s a rebase  issue. I will  remove it in a next patch-set","commit_id":"28bdfc9b3912a37a3cd9add46f98ec77478ed270"}]}
