)]}'
{"rally/api.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        Task is a list of subtasks that are called one by one, results of"},{"line_number":373,"context_line":"        execution is stored into DB."},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        Every subtask is sort of test case which is created by combination"},{"line_number":376,"context_line":"        of sceanrio, runner, contexts, slas and hoooks plugins."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"        :param deployment: UUID or name of the deployment"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_07864fdc","line":375,"range":{"start_line":375,"start_character":8,"end_line":375,"end_character":42},"updated":"2017-08-03 12:53:32.000000000","message":"should we mention term \"workload\" here?","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        Task is a list of subtasks that are called one by one, results of"},{"line_number":373,"context_line":"        execution is stored into DB."},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        Every subtask is sort of test case which is created by combination"},{"line_number":376,"context_line":"        of sceanrio, runner, contexts, slas and hoooks plugins."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"        :param deployment: UUID or name of the deployment"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_e1df6963","line":375,"range":{"start_line":375,"start_character":8,"end_line":375,"end_character":42},"in_reply_to":"df3967d1_07864fdc","updated":"2017-08-30 20:47:46.000000000","message":"not sure because subtask - is test case workload is just combination of ruunners/scenario/context...","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":373,"context_line":"        execution is stored into DB."},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        Every subtask is sort of test case which is created by combination"},{"line_number":376,"context_line":"        of sceanrio, runner, contexts, slas and hoooks plugins."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"        :param deployment: UUID or name of the deployment"},{"line_number":379,"context_line":"        :param tags: a list of tags for this task"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_4780d7c0","line":376,"range":{"start_line":376,"start_character":11,"end_line":376,"end_character":19},"updated":"2017-08-03 12:53:32.000000000","message":"s/sceanrio/scenArio","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":373,"context_line":"        execution is stored into DB."},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"        Every subtask is sort of test case which is created by combination"},{"line_number":376,"context_line":"        of sceanrio, runner, contexts, slas and hoooks plugins."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"        :param deployment: UUID or name of the deployment"},{"line_number":379,"context_line":"        :param tags: a list of tags for this task"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_01bef5fd","line":376,"range":{"start_line":376,"start_character":11,"end_line":376,"end_character":19},"in_reply_to":"df3967d1_4780d7c0","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"fa83ede467b2d0388460180ca268afeef6cd1544","unresolved":false,"context_lines":[{"line_number":351,"context_line":"        \"\"\"Create a task without starting it."},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"        Task is a list of subtasks that are called one by one, results of"},{"line_number":354,"context_line":"        execution is stored into DB."},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"        Every subtask is sort of test case which is created by combination"},{"line_number":357,"context_line":"        of scenario, runner, contexts, sla and hoooks plugins."}],"source_content_type":"text/x-python","patch_set":4,"id":"7f287b81_b46188d6","line":354,"range":{"start_line":354,"start_character":18,"end_line":354,"end_character":20},"updated":"2017-08-31 17:06:34.000000000","message":"Since word \"results\" is in plural form, so maybe it should be \"are\" ?","commit_id":"1844607d93b0f0e91bfe1f8c41d3472fd8386295"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"fa83ede467b2d0388460180ca268afeef6cd1544","unresolved":false,"context_lines":[{"line_number":399,"context_line":"        \"\"\"Validate and start a task."},{"line_number":400,"context_line":""},{"line_number":401,"context_line":"        Task is a list of subtasks that are called one by one, results of"},{"line_number":402,"context_line":"        execution will be stored in DB."},{"line_number":403,"context_line":""},{"line_number":404,"context_line":"        :param deployment: UUID or name of the deployment (will be ignored in"},{"line_number":405,"context_line":"            case of transmitting existing task)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f287b81_347c7871","line":402,"range":{"start_line":402,"start_character":18,"end_line":402,"end_character":22},"updated":"2017-08-31 17:06:34.000000000","message":"is/are like in create method ?","commit_id":"1844607d93b0f0e91bfe1f8c41d3472fd8386295"}],"rally/cli/commands/task.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":204,"context_line":"                   help\u003d\"Don\u0027t set new task as default for future operations.\")"},{"line_number":205,"context_line":"    @cliutils.args(\"--abort-on-sla-failure\", action\u003d\"store_true\","},{"line_number":206,"context_line":"                   dest\u003d\"abort_on_sla_failure\","},{"line_number":207,"context_line":"                   help\u003d\"Abort the execution of a subtask when any SLA check \""},{"line_number":208,"context_line":"                        \"for it fails.\")"},{"line_number":209,"context_line":"    @envutils.with_default_deployment(cli_arg_name\u003d\"deployment\")"},{"line_number":210,"context_line":"    @plugins.ensure_plugins_are_loaded"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_07d40fbc","line":207,"range":{"start_line":207,"start_character":50,"end_line":207,"end_character":57},"updated":"2017-08-03 12:53:32.000000000","message":"Since not only current workload or subtask will be aborted, I prefer to use term task here.","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":204,"context_line":"                   help\u003d\"Don\u0027t set new task as default for future operations.\")"},{"line_number":205,"context_line":"    @cliutils.args(\"--abort-on-sla-failure\", action\u003d\"store_true\","},{"line_number":206,"context_line":"                   dest\u003d\"abort_on_sla_failure\","},{"line_number":207,"context_line":"                   help\u003d\"Abort the execution of a subtask when any SLA check \""},{"line_number":208,"context_line":"                        \"for it fails.\")"},{"line_number":209,"context_line":"    @envutils.with_default_deployment(cli_arg_name\u003d\"deployment\")"},{"line_number":210,"context_line":"    @plugins.ensure_plugins_are_loaded"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_a13cc192","line":207,"range":{"start_line":207,"start_character":50,"end_line":207,"end_character":57},"in_reply_to":"df3967d1_07d40fbc","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":205,"context_line":"    @cliutils.args(\"--abort-on-sla-failure\", action\u003d\"store_true\","},{"line_number":206,"context_line":"                   dest\u003d\"abort_on_sla_failure\","},{"line_number":207,"context_line":"                   help\u003d\"Abort the execution of a subtask when any SLA check \""},{"line_number":208,"context_line":"                        \"for it fails.\")"},{"line_number":209,"context_line":"    @envutils.with_default_deployment(cli_arg_name\u003d\"deployment\")"},{"line_number":210,"context_line":"    @plugins.ensure_plugins_are_loaded"},{"line_number":211,"context_line":"    def start(self, api, task_file, deployment\u003dNone, task_args\u003dNone,"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_67f2bb72","line":208,"range":{"start_line":208,"start_character":29,"end_line":208,"end_character":31},"updated":"2017-08-03 12:53:32.000000000","message":"\"for a subtask or workload\"","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":205,"context_line":"    @cliutils.args(\"--abort-on-sla-failure\", action\u003d\"store_true\","},{"line_number":206,"context_line":"                   dest\u003d\"abort_on_sla_failure\","},{"line_number":207,"context_line":"                   help\u003d\"Abort the execution of a subtask when any SLA check \""},{"line_number":208,"context_line":"                        \"for it fails.\")"},{"line_number":209,"context_line":"    @envutils.with_default_deployment(cli_arg_name\u003d\"deployment\")"},{"line_number":210,"context_line":"    @plugins.ensure_plugins_are_loaded"},{"line_number":211,"context_line":"    def start(self, api, task_file, deployment\u003dNone, task_args\u003dNone,"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_414d1d3c","line":208,"range":{"start_line":208,"start_character":29,"end_line":208,"end_character":31},"in_reply_to":"df3967d1_67f2bb72","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        :param tags: optional tag for this task"},{"line_number":230,"context_line":"        :param do_use: if True, the new task will be stored as the default one"},{"line_number":231,"context_line":"                       for future operations"},{"line_number":232,"context_line":"        :param abort_on_sla_failure: if True, the execution of a subtask"},{"line_number":233,"context_line":"                                     will stop if any SLA fails"},{"line_number":234,"context_line":"        \"\"\""},{"line_number":235,"context_line":"        input_task \u003d self._load_and_validate_task(api, task_file,"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_27e8337a","line":232,"range":{"start_line":232,"start_character":65,"end_line":232,"end_character":72},"updated":"2017-08-03 12:53:32.000000000","message":"the same","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        :param tags: optional tag for this task"},{"line_number":230,"context_line":"        :param do_use: if True, the new task will be stored as the default one"},{"line_number":231,"context_line":"                       for future operations"},{"line_number":232,"context_line":"        :param abort_on_sla_failure: if True, the execution of a subtask"},{"line_number":233,"context_line":"                                     will stop if any SLA fails"},{"line_number":234,"context_line":"        \"\"\""},{"line_number":235,"context_line":"        input_task \u003d self._load_and_validate_task(api, task_file,"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_615b79f5","line":232,"range":{"start_line":232,"start_character":65,"end_line":232,"end_character":72},"in_reply_to":"df3967d1_27e8337a","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":244,"context_line":"            print(cliutils.make_header("},{"line_number":245,"context_line":"                _(\"Task %(tags)s %(uuid)s: started\")"},{"line_number":246,"context_line":"                % {\"uuid\": task_instance[\"uuid\"], \"tags\": tags}))"},{"line_number":247,"context_line":"            print(\"Running Task... This can take a while...\\n\")"},{"line_number":248,"context_line":"            print(\"To track task status use:\\n\")"},{"line_number":249,"context_line":"            print(\"\\trally task status\\n\\tor\\n\\trally task detailed\\n\")"},{"line_number":250,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_878d9fd4","line":247,"range":{"start_line":247,"start_character":35,"end_line":247,"end_character":56},"updated":"2017-08-03 12:53:32.000000000","message":"\"take a while\"...funny phrase :) we need to add \"lol\" at the end of it.","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":271,"context_line":""},{"line_number":272,"context_line":"        :param task_id: Task uuid"},{"line_number":273,"context_line":"        :param soft: if set to True, task should be aborted after execution of"},{"line_number":274,"context_line":"                     current scenario"},{"line_number":275,"context_line":"        \"\"\""},{"line_number":276,"context_line":"        if soft:"},{"line_number":277,"context_line":"            print(\"INFO: please be informed that soft abort won\u0027t stop \""}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_c7b0478d","line":274,"range":{"start_line":274,"start_character":29,"end_line":274,"end_character":37},"updated":"2017-08-03 12:53:32.000000000","message":"While we are here:\ns/scenario/workload","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":271,"context_line":""},{"line_number":272,"context_line":"        :param task_id: Task uuid"},{"line_number":273,"context_line":"        :param soft: if set to True, task should be aborted after execution of"},{"line_number":274,"context_line":"                     current scenario"},{"line_number":275,"context_line":"        \"\"\""},{"line_number":276,"context_line":"        if soft:"},{"line_number":277,"context_line":"            print(\"INFO: please be informed that soft abort won\u0027t stop \""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_e11409eb","line":274,"range":{"start_line":274,"start_character":29,"end_line":274,"end_character":37},"in_reply_to":"df3967d1_c7b0478d","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":275,"context_line":"        \"\"\""},{"line_number":276,"context_line":"        if soft:"},{"line_number":277,"context_line":"            print(\"INFO: please be informed that soft abort won\u0027t stop \""},{"line_number":278,"context_line":"                  \"a running scenario, but will prevent new ones from \""},{"line_number":279,"context_line":"                  \"starting. If you are running task with only one \""},{"line_number":280,"context_line":"                  \"scenario, soft abort will not help at all.\")"},{"line_number":281,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_e778ebc4","line":278,"range":{"start_line":278,"start_character":29,"end_line":278,"end_character":37},"updated":"2017-08-03 12:53:32.000000000","message":"workloadd","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":275,"context_line":"        \"\"\""},{"line_number":276,"context_line":"        if soft:"},{"line_number":277,"context_line":"            print(\"INFO: please be informed that soft abort won\u0027t stop \""},{"line_number":278,"context_line":"                  \"a running scenario, but will prevent new ones from \""},{"line_number":279,"context_line":"                  \"starting. If you are running task with only one \""},{"line_number":280,"context_line":"                  \"scenario, soft abort will not help at all.\")"},{"line_number":281,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_c1d58d1d","line":278,"range":{"start_line":278,"start_character":29,"end_line":278,"end_character":37},"in_reply_to":"df3967d1_e778ebc4","updated":"2017-08-30 20:47:46.000000000","message":"Done","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"6055b304cd643d2a201cefd3cd9a4b3e261e79e3","unresolved":false,"context_lines":[{"line_number":914,"context_line":"                              key\u003dlambda x: x[\"criterion\"]):"},{"line_number":915,"context_line":"                success \u003d sla.pop(\"success\")"},{"line_number":916,"context_line":"                sla[\"status\"] \u003d success and STATUS_PASS or STATUS_FAIL"},{"line_number":917,"context_line":"                sla[\"subtask\"] \u003d workload[\"name\"]"},{"line_number":918,"context_line":"                sla[\"pos\"] \u003d workload[\"position\"]"},{"line_number":919,"context_line":"                failed_criteria +\u003d int(not success)"},{"line_number":920,"context_line":"                data.append(sla if tojson else rutils.Struct(**sla))"}],"source_content_type":"text/x-python","patch_set":3,"id":"df3967d1_4206851f","line":917,"range":{"start_line":917,"start_character":16,"end_line":917,"end_character":49},"updated":"2017-08-03 12:53:32.000000000","message":"not sure that we can do it. It will break all parsing stuff. \n\nSince the current output of the command supports only one workload per subtask(we do not have such limit in the engine), there are more incompatible things. Let\u0027s collect them and change everything at once to not produce a lot of pain for our customers. So please leave it as is, at least for now.","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"5c38e6bb9b11faede25b436038441acb596f28e7","unresolved":false,"context_lines":[{"line_number":914,"context_line":"                              key\u003dlambda x: x[\"criterion\"]):"},{"line_number":915,"context_line":"                success \u003d sla.pop(\"success\")"},{"line_number":916,"context_line":"                sla[\"status\"] \u003d success and STATUS_PASS or STATUS_FAIL"},{"line_number":917,"context_line":"                sla[\"subtask\"] \u003d workload[\"name\"]"},{"line_number":918,"context_line":"                sla[\"pos\"] \u003d workload[\"position\"]"},{"line_number":919,"context_line":"                failed_criteria +\u003d int(not success)"},{"line_number":920,"context_line":"                data.append(sla if tojson else rutils.Struct(**sla))"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f287b81_61b7f9f6","line":917,"range":{"start_line":917,"start_character":16,"end_line":917,"end_character":49},"in_reply_to":"df3967d1_4206851f","updated":"2017-08-30 20:47:46.000000000","message":"returned back","commit_id":"cc8146d893d5bc66f1d02ba4272f63db438d8563"}],"rally/plugins/common/runners/constant.py":[{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"c9679f44f500dc1fc83caf8dec22e159cbd47965","unresolved":false,"context_lines":[{"line_number":190,"context_line":"        :param method_name: Name of the method that implements the scenario"},{"line_number":191,"context_line":"        :param context: context that contains users, admin \u0026 other"},{"line_number":192,"context_line":"                        information, that was created before scenario"},{"line_number":193,"context_line":"                        is execution is started."},{"line_number":194,"context_line":"        :param args: Arguments to call the scenario method with"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"        :returns: List of results fore each single scenario iteration,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_835e2543","line":193,"range":{"start_line":193,"start_character":37,"end_line":193,"end_character":39},"updated":"2017-09-03 08:45:36.000000000","message":"redundant?","commit_id":"4023d8619ec654b38c79ca0dbb759933e6a5094b"}],"tests/unit/cli/commands/test_task.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"fa83ede467b2d0388460180ca268afeef6cd1544","unresolved":false,"context_lines":[{"line_number":897,"context_line":"    def test_sla_check(self, mock_print_list):"},{"line_number":898,"context_line":"        task_obj \u003d self._make_task()"},{"line_number":899,"context_line":"        task_obj[\"subtasks\"][0][\"workloads\"][0][\"sla_results\"][\"sla\"] \u003d ["},{"line_number":900,"context_line":"            {\"subtask\": \"KeystoneBasic.create_user\","},{"line_number":901,"context_line":"             \"criterion\": \"max_seconds_per_iteration\","},{"line_number":902,"context_line":"             \"pos\": 0, \"success\": False, \"detail\": \"Max foo, actually bar\"}]"},{"line_number":903,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7f287b81_740320c0","line":900,"range":{"start_line":900,"start_character":14,"end_line":900,"end_character":21},"updated":"2017-08-31 17:06:34.000000000","message":"it should not be changed.","commit_id":"1844607d93b0f0e91bfe1f8c41d3472fd8386295"}]}
