)]}'
{"vitrage/evaluator/evaluator_service.py":[{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"e3924a358ae891b14b4edd2b66d68b4b31d0b3b7","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        evaluator_action \u003d kwargs.get(\u0027evaluator_action\u0027, None)"},{"line_number":78,"context_line":"        self._notify_and_wait((before, current, is_vertex, evaluator_action))"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _notify_and_wait(self, payload):"},{"line_number":81,"context_line":"        for q in self._worker_queues:"},{"line_number":82,"context_line":"            q.put(payload)"},{"line_number":83,"context_line":"        time.sleep(0)  # context switch before join"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_c3ddfb42","line":80,"range":{"start_line":80,"start_character":31,"end_line":80,"end_character":38},"updated":"2017-11-15 09:25:58.000000000","message":"why not payload\u003dNone as a default\nand then you can call it with no parameters on stop_all_workers","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"b213e93e3e08decab8a79f84dca477941d93a52b","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        evaluator_action \u003d kwargs.get(\u0027evaluator_action\u0027, None)"},{"line_number":78,"context_line":"        self._notify_and_wait((before, current, is_vertex, evaluator_action))"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _notify_and_wait(self, payload):"},{"line_number":81,"context_line":"        for q in self._worker_queues:"},{"line_number":82,"context_line":"            q.put(payload)"},{"line_number":83,"context_line":"        time.sleep(0)  # context switch before join"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_be2212a3","line":80,"range":{"start_line":80,"start_character":31,"end_line":80,"end_character":38},"in_reply_to":"1f485f77_a3d43fbe","updated":"2017-11-15 09:45:28.000000000","message":"then define a constant POISON_PILL\u003d None\nand use this\n\nand then you don\u0027t need the comment","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"79f6bba150dccba03db0ef50e6dd1c5f014a4b07","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        evaluator_action \u003d kwargs.get(\u0027evaluator_action\u0027, None)"},{"line_number":78,"context_line":"        self._notify_and_wait((before, current, is_vertex, evaluator_action))"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _notify_and_wait(self, payload):"},{"line_number":81,"context_line":"        for q in self._worker_queues:"},{"line_number":82,"context_line":"            q.put(payload)"},{"line_number":83,"context_line":"        time.sleep(0)  # context switch before join"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_b9b8ec75","line":80,"range":{"start_line":80,"start_character":31,"end_line":80,"end_character":38},"in_reply_to":"1f485f77_be2212a3","updated":"2017-11-15 10:47:34.000000000","message":"silly me. done.","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"75e87d96a077fb4b73a8922abb0612f6937c4d8b","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        evaluator_action \u003d kwargs.get(\u0027evaluator_action\u0027, None)"},{"line_number":78,"context_line":"        self._notify_and_wait((before, current, is_vertex, evaluator_action))"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _notify_and_wait(self, payload):"},{"line_number":81,"context_line":"        for q in self._worker_queues:"},{"line_number":82,"context_line":"            q.put(payload)"},{"line_number":83,"context_line":"        time.sleep(0)  # context switch before join"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_a3d43fbe","line":80,"range":{"start_line":80,"start_character":31,"end_line":80,"end_character":38},"in_reply_to":"1f485f77_c3ddfb42","updated":"2017-11-15 09:41:25.000000000","message":"None is the poison pill to kill all the workers, IMO explicit use is clearer","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"931f668c226594da89917a29d7683ebd7bcf6943","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def stop_all_workers(self):"},{"line_number":88,"context_line":"        self._notify_and_wait(payload\u003dNone)"},{"line_number":89,"context_line":"        for q in self._worker_queues:"},{"line_number":90,"context_line":"            q.close()"},{"line_number":91,"context_line":"        self._worker_queues \u003d list()"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_23ef2fb1","line":89,"range":{"start_line":89,"start_character":12,"end_line":89,"end_character":13},"updated":"2017-11-15 09:32:49.000000000","message":"Why \u0027q\u0027 and not \u0027worker\u0027?","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"fca10fe8ab2697162e6c078b71a47aee14be6e55","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def stop_all_workers(self):"},{"line_number":88,"context_line":"        self._notify_and_wait(payload\u003dNone)"},{"line_number":89,"context_line":"        for q in self._worker_queues:"},{"line_number":90,"context_line":"            q.close()"},{"line_number":91,"context_line":"        self._worker_queues \u003d list()"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_c35cdb7f","line":89,"range":{"start_line":89,"start_character":12,"end_line":89,"end_character":13},"in_reply_to":"1f485f77_231defbc","updated":"2017-11-15 09:36:47.000000000","message":"Right... I thought he was closing workers. My mistake","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"5b3588f83527612f0a39f051d843b9046cba7ccf","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def stop_all_workers(self):"},{"line_number":88,"context_line":"        self._notify_and_wait(payload\u003dNone)"},{"line_number":89,"context_line":"        for q in self._worker_queues:"},{"line_number":90,"context_line":"            q.close()"},{"line_number":91,"context_line":"        self._worker_queues \u003d list()"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_231defbc","line":89,"range":{"start_line":89,"start_character":12,"end_line":89,"end_character":13},"in_reply_to":"1f485f77_23ef2fb1","updated":"2017-11-15 09:34:32.000000000","message":"I suppose he means queue","commit_id":"bb224f1b592bd93b6c1bc16d5b68fdc2774b922d"}]}
