)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"51b5dae4dfcadeedcdc8340d9bdfe021e3b507f7","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Support multiple argument for compute agent delete command"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"detailed information see BP from Tang Chen:"},{"line_number":10,"context_line":"https://blueprints.launchpad.net/python-openstackclient/+spec/multi-argument-compute"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I3b19e4914d475b86d7e8aa8d76e62a2ac811272f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9abb7d3a_5e40d056","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":84},"updated":"2016-05-28 02:16:50.000000000","message":"Use \"Implements: blueprint multi-argument-compute\"","commit_id":"870d4029403a41fac4efcde0865f6e2348ca647c"}],"doc/source/command-objects/compute-agent.rst":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"2d92658ae8b91b4d42c9b1bf3bbf6129472daacf","unresolved":false,"context_lines":[{"line_number":44,"context_line":"compute agent delete"},{"line_number":45,"context_line":"--------------------"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"Delete compute agent command"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":".. program:: compute agent delete"},{"line_number":50,"context_line":".. code:: bash"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9abb7d3a_03a503b4","line":47,"range":{"start_line":47,"start_character":15,"end_line":47,"end_character":20},"updated":"2016-05-31 09:15:19.000000000","message":"agent(s)","commit_id":"c2ee9ae82f4efe1374dd8032ba978f7acee9d4ff"}],"openstackclient/compute/v2/agent.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"bb9b43e3087ad15a6f2515bddf252a47c9175603","unresolved":false,"context_lines":[{"line_number":83,"context_line":"            \"id\","},{"line_number":84,"context_line":"            metavar\u003d\"\u003cid\u003e\","},{"line_number":85,"context_line":"            nargs\u003d\u0027+\u0027,"},{"line_number":86,"context_line":"            help\u003d\"ID of agent(s) to delete\")"},{"line_number":87,"context_line":"        return parser"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9abb7d3a_9808b993","line":86,"range":{"start_line":86,"start_character":17,"end_line":86,"end_character":44},"updated":"2016-05-27 07:17:44.000000000","message":"keep this wrapped in _(), it marks the string for translation","commit_id":"870d4029403a41fac4efcde0865f6e2348ca647c"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"c9b4565ea4727e02488570049a33edf8289ae379","unresolved":false,"context_lines":[{"line_number":83,"context_line":"            \"id\","},{"line_number":84,"context_line":"            metavar\u003d\"\u003cid\u003e\","},{"line_number":85,"context_line":"            nargs\u003d\u0027+\u0027,"},{"line_number":86,"context_line":"            help\u003d\"ID of agent(s) to delete\")"},{"line_number":87,"context_line":"        return parser"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9abb7d3a_51d107fb","line":86,"range":{"start_line":86,"start_character":17,"end_line":86,"end_character":44},"in_reply_to":"9abb7d3a_9808b993","updated":"2016-05-27 11:28:51.000000000","message":"Done","commit_id":"870d4029403a41fac4efcde0865f6e2348ca647c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"bb9b43e3087ad15a6f2515bddf252a47c9175603","unresolved":false,"context_lines":[{"line_number":94,"context_line":"                compute_client.agents.delete(id)"},{"line_number":95,"context_line":"            except Exception as e:"},{"line_number":96,"context_line":"                result +\u003d 1"},{"line_number":97,"context_line":"                self.app.log.error(e)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        if result \u003e 0:"},{"line_number":100,"context_line":"            total \u003d len(parsed_args.id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9abb7d3a_581db1bc","line":97,"range":{"start_line":97,"start_character":16,"end_line":97,"end_character":37},"updated":"2016-05-27 07:17:44.000000000","message":"follow the example here: https://github.com/openstack/python-openstackclient/blob/5dfedd6445347417e8d68707ec24780f574d6b23/openstackclient/network/common.py#L97-L98","commit_id":"870d4029403a41fac4efcde0865f6e2348ca647c"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"c9b4565ea4727e02488570049a33edf8289ae379","unresolved":false,"context_lines":[{"line_number":94,"context_line":"                compute_client.agents.delete(id)"},{"line_number":95,"context_line":"            except Exception as e:"},{"line_number":96,"context_line":"                result +\u003d 1"},{"line_number":97,"context_line":"                self.app.log.error(e)"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        if result \u003e 0:"},{"line_number":100,"context_line":"            total \u003d len(parsed_args.id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9abb7d3a_b10953e0","line":97,"range":{"start_line":97,"start_character":16,"end_line":97,"end_character":37},"in_reply_to":"9abb7d3a_581db1bc","updated":"2016-05-27 11:28:51.000000000","message":"Done","commit_id":"870d4029403a41fac4efcde0865f6e2348ca647c"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"2d92658ae8b91b4d42c9b1bf3bbf6129472daacf","unresolved":false,"context_lines":[{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class DeleteAgent(command.Command):"},{"line_number":79,"context_line":"    \"\"\"Delete compute agent command\"\"\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def get_parser(self, prog_name):"},{"line_number":82,"context_line":"        parser \u003d super(DeleteAgent, self).get_parser(prog_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9abb7d3a_03bea3d3","line":79,"range":{"start_line":79,"start_character":22,"end_line":79,"end_character":27},"updated":"2016-05-31 09:15:19.000000000","message":"I think \"agent(s)\" is better","commit_id":"c2ee9ae82f4efe1374dd8032ba978f7acee9d4ff"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"39dc07edc0c7bc6b19b4f75f20f7ee3bf9a4b2c4","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            \"id\","},{"line_number":85,"context_line":"            metavar\u003d\"\u003cid\u003e\","},{"line_number":86,"context_line":"            nargs\u003d\u0027+\u0027,"},{"line_number":87,"context_line":"            help\u003d_(\"ID of agent to delete\")"},{"line_number":88,"context_line":"        )"},{"line_number":89,"context_line":"        return parser"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9abb7d3a_2e1eb40b","line":87,"range":{"start_line":87,"start_character":26,"end_line":87,"end_character":31},"updated":"2016-06-02 03:27:50.000000000","message":"nit: agent -\u003e agent(s)","commit_id":"63169c3b59d859a38eec055528fb6b4c956f2832"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"d5e76b50ee7e41aedde877d0a798bd7c3a3d0373","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            \"id\","},{"line_number":85,"context_line":"            metavar\u003d\"\u003cid\u003e\","},{"line_number":86,"context_line":"            nargs\u003d\u0027+\u0027,"},{"line_number":87,"context_line":"            help\u003d_(\"ID of agent to delete\")"},{"line_number":88,"context_line":"        )"},{"line_number":89,"context_line":"        return parser"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9abb7d3a_9d2b9081","line":87,"range":{"start_line":87,"start_character":26,"end_line":87,"end_character":31},"in_reply_to":"9abb7d3a_2e1eb40b","updated":"2016-06-02 06:44:30.000000000","message":"Done","commit_id":"63169c3b59d859a38eec055528fb6b4c956f2832"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"39dc07edc0c7bc6b19b4f75f20f7ee3bf9a4b2c4","unresolved":false,"context_lines":[{"line_number":98,"context_line":"                result +\u003d 1"},{"line_number":99,"context_line":"                self.app.log.error(_(\"Failed to delete agent with \""},{"line_number":100,"context_line":"                                   \"ID \u0027%(id)s\u0027: %(e)s\")"},{"line_number":101,"context_line":"                                   % {\u0027id\u0027: id, \u0027e\u0027: e})"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        if result \u003e 0:"},{"line_number":104,"context_line":"            total \u003d len(parsed_args.id)"}],"source_content_type":"text/x-python","patch_set":11,"id":"9abb7d3a_4e233856","line":101,"range":{"start_line":101,"start_character":35,"end_line":101,"end_character":37},"updated":"2016-06-02 03:27:50.000000000","message":"Well, this is not following the rule here:\nhttp://docs.openstack.org/developer/oslo.i18n/guidelines.html#adding-variables-to-translated-messages\n\n# WRONG\nLOG.info(_LI(\u0027some message: variable\u003d%s\u0027) % variable)\n\n# RIGHT\nLOG.info(_LI(\u0027some message: variable\u003d%s\u0027), variable)","commit_id":"63169c3b59d859a38eec055528fb6b4c956f2832"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"d5e76b50ee7e41aedde877d0a798bd7c3a3d0373","unresolved":false,"context_lines":[{"line_number":98,"context_line":"                result +\u003d 1"},{"line_number":99,"context_line":"                self.app.log.error(_(\"Failed to delete agent with \""},{"line_number":100,"context_line":"                                   \"ID \u0027%(id)s\u0027: %(e)s\")"},{"line_number":101,"context_line":"                                   % {\u0027id\u0027: id, \u0027e\u0027: e})"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        if result \u003e 0:"},{"line_number":104,"context_line":"            total \u003d len(parsed_args.id)"}],"source_content_type":"text/x-python","patch_set":11,"id":"9abb7d3a_bdd5b41c","line":101,"range":{"start_line":101,"start_character":35,"end_line":101,"end_character":37},"in_reply_to":"9abb7d3a_4e233856","updated":"2016-06-02 06:44:30.000000000","message":"Done","commit_id":"63169c3b59d859a38eec055528fb6b4c956f2832"}],"releasenotes/notes/compute-agent-deff48988e81b30e.yaml":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"f81d663fe995c29db73650432368092abb84094d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"upgrade:"},{"line_number":3,"context_line":"  - Command \"compute agent delete\" now supports deleting multiple agents."}],"source_content_type":"text/x-yaml","patch_set":13,"id":"9abb7d3a_5cc0cee0","line":3,"range":{"start_line":3,"start_character":12,"end_line":3,"end_character":34},"updated":"2016-06-03 02:09:26.000000000","message":"use `` around the command, not \"","commit_id":"2e484566309bb28cc602b321839517aa469b6d3f"}]}
