)]}'
{"mistralclient/api/v2/event_triggers.py":[{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"a3359bcb118d35c0c606e49e104ce698ba8fe40c","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        }"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        if workflow_input:"},{"line_number":43,"context_line":"            data.update({\u0027workflow_input\u0027: json.dumps(workflow_input)})"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        if workflow_params:"},{"line_number":46,"context_line":"            data.update({\u0027workflow_params\u0027: json.dumps(workflow_params)})"}],"source_content_type":"text/x-python","patch_set":10,"id":"bff0334d_d3d5721d","line":43,"updated":"2017-07-05 08:31:34.000000000","message":"What type do you expect workflow_input and workflow_params to be? I thought they would already be JSON?","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"367b3a7c2c2dcebde8d0cff1907a8831085674d3","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        }"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        if workflow_input:"},{"line_number":43,"context_line":"            data.update({\u0027workflow_input\u0027: json.dumps(workflow_input)})"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        if workflow_params:"},{"line_number":46,"context_line":"            data.update({\u0027workflow_params\u0027: json.dumps(workflow_params)})"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f1d235d_ad493133","line":43,"in_reply_to":"3f1d235d_36370d02","updated":"2017-07-10 07:15:31.000000000","message":"json.dumps should be changed to dumps from oslo serialization","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"477511e3fc31cfb8f1ceaebce926557a6aa98991","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        }"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        if workflow_input:"},{"line_number":43,"context_line":"            data.update({\u0027workflow_input\u0027: json.dumps(workflow_input)})"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        if workflow_params:"},{"line_number":46,"context_line":"            data.update({\u0027workflow_params\u0027: json.dumps(workflow_params)})"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f1d235d_36370d02","line":43,"in_reply_to":"bff0334d_d3d5721d","updated":"2017-07-06 07:57:05.000000000","message":"ah, I see in the command it is parsed JSON. That does mean at the moment that we parse JSON to just dump it again :)\n\nAnyway, I think this is fine but I think we should change how we handle the input. (see my other comment)","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":7700,"name":"Nikolay Mahotkin","email":"nikolay.makhotkin@gmail.com","username":"nmakhotkin"},"change_message_id":"6ed1ceb4ce07e9c41887184051c7556a6bf86433","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        return self._create(\u0027/event_triggers\u0027, data)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def list(self):"},{"line_number":51,"context_line":"        return self._list(\u0027/event_triggers\u0027, response_key\u003d\u0027event_triggers\u0027)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def get(self, id):"}],"source_content_type":"text/x-python","patch_set":14,"id":"3f1d235d_2ecf2680","line":50,"range":{"start_line":50,"start_character":4,"end_line":50,"end_character":19},"updated":"2017-07-11 13:42:30.000000000","message":"What about filters like fields/sort_keys/sort_dirs/all_projects?","commit_id":"b7acbde407d0f3cddbdabb2c920b06a8f0839713"},{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"46609acdda2270e358c732f129c37eca8f914ac3","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        return self._create(\u0027/event_triggers\u0027, data)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def list(self):"},{"line_number":51,"context_line":"        return self._list(\u0027/event_triggers\u0027, response_key\u003d\u0027event_triggers\u0027)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def get(self, id):"}],"source_content_type":"text/x-python","patch_set":14,"id":"ff346bd7_27d645c5","line":50,"range":{"start_line":50,"start_character":4,"end_line":50,"end_character":19},"in_reply_to":"3f1d235d_2ecf2680","updated":"2017-07-25 08:04:42.000000000","message":"+1, that would be useful - but I think they could be added in a following patch.","commit_id":"b7acbde407d0f3cddbdabb2c920b06a8f0839713"}],"mistralclient/commands/v2/event_triggers.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"367b3a7c2c2dcebde8d0cff1907a8831085674d3","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \u0027Updated at\u0027"},{"line_number":37,"context_line":"    )"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    if trigger:"},{"line_number":40,"context_line":"        data \u003d ("},{"line_number":41,"context_line":"            trigger.id,"},{"line_number":42,"context_line":"            trigger.name,"},{"line_number":43,"context_line":"            trigger.workflow_id,"},{"line_number":44,"context_line":"            trigger.workflow_params,"},{"line_number":45,"context_line":"            trigger.exchange,"},{"line_number":46,"context_line":"            trigger.topic,"},{"line_number":47,"context_line":"            trigger.event,"},{"line_number":48,"context_line":"            trigger.created_at,"},{"line_number":49,"context_line":"        )"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        if hasattr(trigger, \u0027updated_at\u0027):"},{"line_number":52,"context_line":"            data +\u003d (trigger.updated_at,)"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            data +\u003d (None,)"},{"line_number":55,"context_line":"    else:"},{"line_number":56,"context_line":"        data \u003d (tuple(\u0027\u003cnone\u003e\u0027 for _ in range(len(columns))),)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    return columns, data"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3f1d235d_2d2d2146","line":56,"range":{"start_line":39,"start_character":0,"end_line":56,"end_character":62},"updated":"2017-07-10 07:15:31.000000000","message":"if you plan to add new value to tuple, you should initialize it as a list -\u003e convert to tuple when return rather than do stuffs like this.","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":20863,"name":"Sharat Sharma","email":"sharat.sharma@in.ibm.com","username":"sharat.sharma"},"change_message_id":"fc5b2c71fc64a8058f6fddecb9ff8a8b8735adad","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \u0027Updated at\u0027"},{"line_number":37,"context_line":"    )"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    if trigger:"},{"line_number":40,"context_line":"        data \u003d ("},{"line_number":41,"context_line":"            trigger.id,"},{"line_number":42,"context_line":"            trigger.name,"},{"line_number":43,"context_line":"            trigger.workflow_id,"},{"line_number":44,"context_line":"            trigger.workflow_params,"},{"line_number":45,"context_line":"            trigger.exchange,"},{"line_number":46,"context_line":"            trigger.topic,"},{"line_number":47,"context_line":"            trigger.event,"},{"line_number":48,"context_line":"            trigger.created_at,"},{"line_number":49,"context_line":"        )"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        if hasattr(trigger, \u0027updated_at\u0027):"},{"line_number":52,"context_line":"            data +\u003d (trigger.updated_at,)"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            data +\u003d (None,)"},{"line_number":55,"context_line":"    else:"},{"line_number":56,"context_line":"        data \u003d (tuple(\u0027\u003cnone\u003e\u0027 for _ in range(len(columns))),)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    return columns, data"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3f1d235d_d7c053e3","line":56,"range":{"start_line":39,"start_character":0,"end_line":56,"end_character":62},"in_reply_to":"3f1d235d_2d2d2146","updated":"2017-07-11 07:11:13.000000000","message":"This is how it is handled in all the other commands as well.","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"477511e3fc31cfb8f1ceaebce926557a6aa98991","unresolved":false,"context_lines":[{"line_number":118,"context_line":"        return parser"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    @staticmethod"},{"line_number":121,"context_line":"    def _get_file_content_or_dict(string):"},{"line_number":122,"context_line":"        if string:"},{"line_number":123,"context_line":"            return utils.load_json(string)"},{"line_number":124,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f1d235d_b6743dd0","line":121,"updated":"2017-07-06 07:57:05.000000000","message":"This doesn\u0027t get a files contents. It either parses a JSON string or returns an empty dict - do we want to handle file paths too?","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"}],"mistralclient/tests/functional/cli/v2/base_v2.py":[{"author":{"_account_id":9712,"name":"Dougal Matthews","email":"dougal.matthews@canonical.com","username":"dougal"},"change_message_id":"a3359bcb118d35c0c606e49e104ce698ba8fe40c","unresolved":false,"context_lines":[{"line_number":209,"context_line":"            admin,"},{"line_number":210,"context_line":"            \u0027event-trigger-create\u0027,"},{"line_number":211,"context_line":"            params\u003d\u0027{} {} {} {} {} {}\u0027.format("},{"line_number":212,"context_line":"                name, wf_id, exchange, topic, event, wf_input))"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"        ev_tr_id \u003d self.get_field_value(trigger, \u0027ID\u0027)"},{"line_number":215,"context_line":"        self.addCleanup(self.mistral_cli,"}],"source_content_type":"text/x-python","patch_set":10,"id":"bff0334d_f3c2b652","line":212,"updated":"2017-07-05 08:31:34.000000000","message":"This might be neater:\n\n    params\u003d\u0027 \u0027.join(name, wf_id, exchange, topic, event, wf_input)","commit_id":"8c476a1133ca1ac271e4cb427f492d8ade3a6034"},{"author":{"_account_id":15895,"name":"Adriano Petrich","email":"apetrich@redhat.com","username":"apetrich"},"change_message_id":"ab98afe7a991226ab90c08e1a990a46c265573ac","unresolved":false,"context_lines":[{"line_number":208,"context_line":"        trigger \u003d self.mistral_cli("},{"line_number":209,"context_line":"            admin,"},{"line_number":210,"context_line":"            \u0027event-trigger-create\u0027,"},{"line_number":211,"context_line":"            params\u003d\u0027 \u0027.join(name, wf_id, exchange, topic, event, wf_input))"},{"line_number":212,"context_line":"        ev_tr_id \u003d self.get_field_value(trigger, \u0027ID\u0027)"},{"line_number":213,"context_line":"        self.addCleanup(self.mistral_cli,"},{"line_number":214,"context_line":"                        admin,"}],"source_content_type":"text/x-python","patch_set":13,"id":"3f1d235d_f41ea672","line":211,"updated":"2017-07-11 09:35:45.000000000","message":"Missing an extra parenthesis to make it a tuple .join((name, wf_id, exchange, topic, event, wf_input)))","commit_id":"717ec5849f8f0c2b3fd890cd140c7dfc32ce40c5"}]}
