)]}'
{"rally/task/engine.py":[{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"4ab9700306dd3f90609cadebe33b890a7e268ad0","unresolved":false,"context_lines":[{"line_number":50,"context_line":"CONF.register_opts(TASK_ENGINE_OPTS)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class TaskAborted(Exception):"},{"line_number":54,"context_line":"    \"\"\"Task aborted exception"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    Used by TaskEngine to interupt task run."},{"line_number":57,"context_line":"    \"\"\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"class ResultConsumer(object):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_b755a5c7","line":57,"range":{"start_line":53,"start_character":0,"end_line":57,"end_character":7},"updated":"2016-12-01 16:30:08.000000000","message":"why not move this class to exception.py?","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"e503c4afdf672b9da3730eb38e9b75f7accb6156","unresolved":false,"context_lines":[{"line_number":50,"context_line":"CONF.register_opts(TASK_ENGINE_OPTS)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class TaskAborted(Exception):"},{"line_number":54,"context_line":"    \"\"\"Task aborted exception"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    Used by TaskEngine to interupt task run."},{"line_number":57,"context_line":"    \"\"\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"class ResultConsumer(object):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_5e0aa9d3","line":57,"range":{"start_line":53,"start_character":0,"end_line":57,"end_character":7},"in_reply_to":"3a71b18c_b755a5c7","updated":"2016-12-01 17:25:42.000000000","message":"because it is engine specific and it shouldn\u0027t be raised/caught outside of engine","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":24350,"name":"xianba","email":"scuxia@gmail.com"},"change_message_id":"04218b683c7dfaf3314dac4c62d2639479ff140b","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def __init__(self, key, task, subtask, workload, runner,"},{"line_number":68,"context_line":"                 abort_on_sla_failure):"},{"line_number":69,"context_line":"        \"\"\"ResultConsumer constructor."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :param key: Scenario identifier"},{"line_number":72,"context_line":"        :param task: Instance of Task, task to run"},{"line_number":73,"context_line":"        :param runner: ScenarioRunner instance that produces results to be"},{"line_number":74,"context_line":"                       consumed"},{"line_number":75,"context_line":"        :param abort_on_sla_failure: True if the execution should be stopped"},{"line_number":76,"context_line":"                                     when some SLA check fails"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        self.key \u003d key"},{"line_number":80,"context_line":"        self.task \u003d task"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a74a57a_050c2c3a","line":77,"range":{"start_line":69,"start_character":0,"end_line":77,"end_character":11},"updated":"2016-12-01 03:29:21.000000000","message":"please add a description of the other parameters","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"e503c4afdf672b9da3730eb38e9b75f7accb6156","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def __init__(self, key, task, subtask, workload, runner,"},{"line_number":68,"context_line":"                 abort_on_sla_failure):"},{"line_number":69,"context_line":"        \"\"\"ResultConsumer constructor."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :param key: Scenario identifier"},{"line_number":72,"context_line":"        :param task: Instance of Task, task to run"},{"line_number":73,"context_line":"        :param runner: ScenarioRunner instance that produces results to be"},{"line_number":74,"context_line":"                       consumed"},{"line_number":75,"context_line":"        :param abort_on_sla_failure: True if the execution should be stopped"},{"line_number":76,"context_line":"                                     when some SLA check fails"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        self.key \u003d key"},{"line_number":80,"context_line":"        self.task \u003d task"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_fe5535c6","line":77,"range":{"start_line":69,"start_character":0,"end_line":77,"end_character":11},"in_reply_to":"5a74a57a_050c2c3a","updated":"2016-12-01 17:25:42.000000000","message":"Will do this in first patch","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"93c94924970e22c54769a8f2dfbc6e9e1d22d6c3","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        context_obj \u003d self._prepare_context("},{"line_number":445,"context_line":"            subtask_context_obj, workload.context, workload.name)"},{"line_number":446,"context_line":"        try:"},{"line_number":447,"context_line":"            with ResultConsumer(key, self.task, subtask_obj, workload_obj,"},{"line_number":448,"context_line":"                                runner_obj, self.abort_on_sla_failure):"},{"line_number":449,"context_line":"                with context.ContextManager(context_obj):"},{"line_number":450,"context_line":"                    runner_obj.run(workload.name, context_obj,"},{"line_number":451,"context_line":"                                   workload.args)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_7b6db703","line":448,"range":{"start_line":447,"start_character":11,"end_line":448,"end_character":71},"updated":"2016-12-01 17:14:24.000000000","message":"ResultConsumer refactor is not in this patch?","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":19011,"name":"Anton Studenov","email":"tohin1332@gmail.com","username":"tohin"},"change_message_id":"e503c4afdf672b9da3730eb38e9b75f7accb6156","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        context_obj \u003d self._prepare_context("},{"line_number":445,"context_line":"            subtask_context_obj, workload.context, workload.name)"},{"line_number":446,"context_line":"        try:"},{"line_number":447,"context_line":"            with ResultConsumer(key, self.task, subtask_obj, workload_obj,"},{"line_number":448,"context_line":"                                runner_obj, self.abort_on_sla_failure):"},{"line_number":449,"context_line":"                with context.ContextManager(context_obj):"},{"line_number":450,"context_line":"                    runner_obj.run(workload.name, context_obj,"},{"line_number":451,"context_line":"                                   workload.args)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a71b18c_5e2b8982","line":448,"range":{"start_line":447,"start_character":11,"end_line":448,"end_character":71},"in_reply_to":"3a71b18c_7b6db703","updated":"2016-12-01 17:25:42.000000000","message":"What do you mean?","commit_id":"59540daeea379e23e5fdfba56c1b005a4608083a"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"296621e902c88a859ee31a979b5dd89fa176b8c7","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        creds \u003d self.deployment.get_credentials_for(subtask.platform)"},{"line_number":445,"context_line":"        existing_users \u003d creds[\"users\"]"},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"        subtask_context \u003d copy.deepcopy(subtask.context)"},{"line_number":448,"context_line":"        if existing_users and \"users\" not in subtask_context:"},{"line_number":449,"context_line":"            subtask_context.setdefault(\"existing_users\", existing_users)"},{"line_number":450,"context_line":"        elif \"users\" not in subtask_context:"},{"line_number":451,"context_line":"            subtask_context.setdefault(\"users\", {})"},{"line_number":452,"context_line":""},{"line_number":453,"context_line":"        context_obj \u003d {"},{"line_number":454,"context_line":"            \"task\": self.task,"}],"source_content_type":"text/x-python","patch_set":11,"id":"7ffa3b31_590a5dd2","line":451,"range":{"start_line":447,"start_character":8,"end_line":451,"end_character":51},"updated":"2017-04-18 07:16:14.000000000","message":"In the case when \"users\" context is specified in all workloads, adding it globally looks redundant.","commit_id":"5ae465ba1400cdf20dbbc1b6476ffa507f366257"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"296621e902c88a859ee31a979b5dd89fa176b8c7","unresolved":false,"context_lines":[{"line_number":619,"context_line":"                        \"title\": {\"type\": \"string\"},"},{"line_number":620,"context_line":"                        \"group\": {\"type\": \"string\"},"},{"line_number":621,"context_line":"                        \"description\": {\"type\": \"string\"},"},{"line_number":622,"context_line":"                        \"platform\": {\"type\": \"string\"},"},{"line_number":623,"context_line":"                        \"tags\": {"},{"line_number":624,"context_line":"                            \"type\": \"array\","},{"line_number":625,"context_line":"                            \"items\": {\"type\": \"string\"}"}],"source_content_type":"text/x-python","patch_set":11,"id":"7ffa3b31_99bc6506","line":622,"range":{"start_line":622,"start_character":24,"end_line":622,"end_character":55},"updated":"2017-04-18 07:16:14.000000000","message":"What is an advantage to have additional \"platform\" field instead of using namespace of Scenario?","commit_id":"5ae465ba1400cdf20dbbc1b6476ffa507f366257"}]}
