)]}'
{"tools/simulator.py":[{"author":{"_account_id":13290,"name":"Oleksii Zamiatin","email":"ozamiatin@mirantis.com","username":"ozamiatin"},"change_message_id":"b0eda6a9e67da8230f818b91969193ce369e4aec","unresolved":false,"context_lines":[{"line_number":41,"context_line":"CURRENT_PID \u003d None"},{"line_number":42,"context_line":"CLIENTS \u003d []"},{"line_number":43,"context_line":"MESSAGES \u003d []"},{"line_number":44,"context_line":"IS_RUNNING \u003d True"},{"line_number":45,"context_line":"SERVERS \u003d []"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"USAGE \u003d \"\"\" Usage: ./simulator.py [-h] [--url URL] [-d DEBUG]\\"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_3ffe6bae","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":10},"updated":"2016-05-04 09:35:29.000000000","message":"As I can see IS_RUNNING is not needed any more.","commit_id":"b342969045d23f8d8bc47d4afdee57e2f7e28b7a"},{"author":{"_account_id":20864,"name":"Gevorg Davoian","email":"gdavoian@gmail.com","username":"gdavoian"},"change_message_id":"85e7f373c622976024563c9186dd4b9332c83957","unresolved":false,"context_lines":[{"line_number":389,"context_line":"def wrap_sigexit(f):"},{"line_number":390,"context_line":"    def inner(*args, **kwargs):"},{"line_number":391,"context_line":"        try:"},{"line_number":392,"context_line":"            f(*args, **kwargs)"},{"line_number":393,"context_line":"        except SignalExit as e:"},{"line_number":394,"context_line":"            LOG.info(\u0027Signal %s is caught. Interrupting the execution\u0027,"},{"line_number":395,"context_line":"                     e.signo)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_aff9ccca","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":13},"updated":"2016-05-06 17:35:38.000000000","message":"I think it would be better to explicitly return f\u0027s results, so that it would be possible to use this decorator also for functions returning something meaningful (not only None).","commit_id":"38a83969e47e5151e8ddc7072719aca29a671e14"},{"author":{"_account_id":8601,"name":"Dmitriy Ukhlov","email":"dukhlov@mirantis.com","username":"dukhlov"},"change_message_id":"b6e8fc2ee66f2ec4e078fc89fbf47bb88f6fa8b9","unresolved":false,"context_lines":[{"line_number":389,"context_line":"def wrap_sigexit(f):"},{"line_number":390,"context_line":"    def inner(*args, **kwargs):"},{"line_number":391,"context_line":"        try:"},{"line_number":392,"context_line":"            f(*args, **kwargs)"},{"line_number":393,"context_line":"        except SignalExit as e:"},{"line_number":394,"context_line":"            LOG.info(\u0027Signal %s is caught. Interrupting the execution\u0027,"},{"line_number":395,"context_line":"                     e.signo)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_c8634adb","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":13},"in_reply_to":"dab17558_aff9ccca","updated":"2016-05-08 15:25:12.000000000","message":"Agree, but it is very easy to do later if we will have such necessity. For now this patch looks good","commit_id":"38a83969e47e5151e8ddc7072719aca29a671e14"}]}
