)]}'
{"ironic_python_agent/agent.py":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"8c8b26c5bf14986978168111c864b957de858608","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            while self.serve_api:"},{"line_number":354,"context_line":"                eventlet.sleep(0)"},{"line_number":355,"context_line":"        except KeyboardInterrupt:"},{"line_number":356,"context_line":"            LOG.info(\u0027Caught keyboard interrupt, exiting\u0027)"},{"line_number":357,"context_line":"        self.api.stop()"},{"line_number":358,"context_line":""},{"line_number":359,"context_line":"    def run(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_fb2553c0","line":356,"range":{"start_line":356,"start_character":16,"end_line":356,"end_character":20},"updated":"2019-12-02 11:52:08.000000000","message":"exception ?","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f3ff11b45e84ede009de5051b5d3cf3a9354119a","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            while self.serve_api:"},{"line_number":354,"context_line":"                eventlet.sleep(0)"},{"line_number":355,"context_line":"        except KeyboardInterrupt:"},{"line_number":356,"context_line":"            LOG.info(\u0027Caught keyboard interrupt, exiting\u0027)"},{"line_number":357,"context_line":"        self.api.stop()"},{"line_number":358,"context_line":""},{"line_number":359,"context_line":"    def run(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_4b9b4b72","line":356,"range":{"start_line":356,"start_character":16,"end_line":356,"end_character":20},"in_reply_to":"3fa7e38b_fb2553c0","updated":"2019-12-06 10:30:01.000000000","message":"It\u0027s a normal situation, so probably no.","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c052c6302697f831b11ac21a60ed09bc1e9f3853","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            while self.serve_api:"},{"line_number":354,"context_line":"                eventlet.sleep(0)"},{"line_number":355,"context_line":"        except KeyboardInterrupt:"},{"line_number":356,"context_line":"            LOG.info(\u0027Caught keyboard interrupt, exiting\u0027)"},{"line_number":357,"context_line":"        self.api.stop()"},{"line_number":358,"context_line":""},{"line_number":359,"context_line":"    def run(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_de795b30","line":356,"range":{"start_line":356,"start_character":16,"end_line":356,"end_character":20},"in_reply_to":"3fa7e38b_fb2553c0","updated":"2019-12-05 23:03:52.000000000","message":"exception would raise an exception I believe, so otherwise self.api.stop() should be called first... I think.","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"}],"ironic_python_agent/api/app.py":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"8c8b26c5bf14986978168111c864b957de858608","unresolved":false,"context_lines":[{"line_number":44,"context_line":"def make_link(url, rel_name, resource\u003d\u0027\u0027, resource_args\u003d\u0027\u0027,"},{"line_number":45,"context_line":"              bookmark\u003dFalse, type_\u003dNone):"},{"line_number":46,"context_line":"    if rel_name \u003d\u003d \u0027describedby\u0027:"},{"line_number":47,"context_line":"        url \u003d \u0027https://docs.openstack.org/ironic-python-agent\u0027"},{"line_number":48,"context_line":"        type_ \u003d \u0027text/html\u0027"},{"line_number":49,"context_line":"    elif rel_name \u003d\u003d \u0027bookmark\u0027:"},{"line_number":50,"context_line":"        bookmark \u003d True"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_fb7793d0","line":47,"updated":"2019-12-02 11:52:08.000000000","message":"wondering if this url should be taken outside and defined as constant","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"}],"ironic_python_agent/tests/unit/test_api.py":[{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"8c8b26c5bf14986978168111c864b957de858608","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return response"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def put_json(self, path, params, expect_errors\u003dFalse, headers\u003dNone):"},{"line_number":72,"context_line":"        \"\"\"Sends simulated HTTP PUT request to Pecan test app."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        :param path: url path of target service"},{"line_number":75,"context_line":"        :param params: content for wsgi.input of request"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_d1b8a1c8","line":72,"range":{"start_line":72,"start_character":47,"end_line":72,"end_character":52},"updated":"2019-12-02 11:52:08.000000000","message":"nit: not Pecan anymore :)","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"8c8b26c5bf14986978168111c864b957de858608","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                                  headers\u003dheaders, method\u003d\"put\")"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def post_json(self, path, params, expect_errors\u003dFalse, headers\u003dNone):"},{"line_number":85,"context_line":"        \"\"\"Sends simulated HTTP POST request to Pecan test app."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        :param path: url path of target service"},{"line_number":88,"context_line":"        :param params: content for wsgi.input of request"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_91b229e5","line":85,"range":{"start_line":85,"start_character":48,"end_line":85,"end_character":53},"updated":"2019-12-02 11:52:08.000000000","message":"ditto","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"8c8b26c5bf14986978168111c864b957de858608","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    def get_json(self, path, expect_errors\u003dFalse, headers\u003dNone,"},{"line_number":98,"context_line":"                 path_prefix\u003dPATH_PREFIX):"},{"line_number":99,"context_line":"        \"\"\"Sends simulated HTTP GET request to Pecan test app."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        :param path: url path of target service"},{"line_number":102,"context_line":"        :param expect_errors: Boolean value;whether an error is expected based"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fa7e38b_31c7b549","line":99,"range":{"start_line":99,"start_character":47,"end_line":99,"end_character":52},"updated":"2019-12-02 11:52:08.000000000","message":"ditto","commit_id":"5c71e02a7affc2ccbbe46290adfa21142edb8f32"}]}
