)]}'
{"doc/source/command-objects/security-group.rst":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"2a46bbd2b4fa9986b9908d9039e186389dfc5728","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    Owner\u0027s project (name or ID)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    *Network version 2 only*"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":".. option:: --project-domain \u003cproject-domain\u003e"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3afc51ec_ef742d37","line":28,"range":{"start_line":28,"start_character":4,"end_line":28,"end_character":28},"updated":"2016-03-15 05:49:02.000000000","message":"I was using () instead of * *. Which one do you prefer ? Let\u0027s keep it consistent. :)\n\nSeeing from this patch, I think * * is better......\n\nLet me change mine.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"774864a36bb2e0dcd550883e2879ad9379c57383","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    Owner\u0027s project (name or ID)"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    *Network version 2 only*"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":".. option:: --project-domain \u003cproject-domain\u003e"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1af94dfe_3ef8857c","line":28,"range":{"start_line":28,"start_character":4,"end_line":28,"end_character":28},"in_reply_to":"3afc51ec_ef742d37","updated":"2016-03-15 11:49:43.000000000","message":"I used * * to match other documentation for some of the volume commands.  I prefer * *.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"}],"openstackclient/network/v2/security_group.py":[{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"cc97093f6564f979b923368c4f5fb26ceae64c0f","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        attrs \u003d {}"},{"line_number":129,"context_line":"        attrs[\u0027name\u0027] \u003d parsed_args.name"},{"line_number":130,"context_line":"        attrs[\u0027description\u0027] \u003d self._get_description(parsed_args)"},{"line_number":131,"context_line":"        if parsed_args.project is not None:"},{"line_number":132,"context_line":"            identity_client \u003d self.app.client_manager.identity"},{"line_number":133,"context_line":"            project_id \u003d identity_common.find_project("},{"line_number":134,"context_line":"                identity_client,"},{"line_number":135,"context_line":"                parsed_args.project,"},{"line_number":136,"context_line":"                parsed_args.project_domain,"},{"line_number":137,"context_line":"            ).id"},{"line_number":138,"context_line":"            attrs[\u0027tenant_id\u0027] \u003d project_id"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # Create the security group and display the results."},{"line_number":141,"context_line":"        obj \u003d client.create_security_group(**attrs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3afc51ec_2f62953e","line":138,"range":{"start_line":131,"start_character":7,"end_line":138,"end_character":43},"updated":"2016-03-15 05:52:41.000000000","message":"This is common in all patches.\nCan I add it in the common_utility patch??","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"774864a36bb2e0dcd550883e2879ad9379c57383","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        attrs \u003d {}"},{"line_number":129,"context_line":"        attrs[\u0027name\u0027] \u003d parsed_args.name"},{"line_number":130,"context_line":"        attrs[\u0027description\u0027] \u003d self._get_description(parsed_args)"},{"line_number":131,"context_line":"        if parsed_args.project is not None:"},{"line_number":132,"context_line":"            identity_client \u003d self.app.client_manager.identity"},{"line_number":133,"context_line":"            project_id \u003d identity_common.find_project("},{"line_number":134,"context_line":"                identity_client,"},{"line_number":135,"context_line":"                parsed_args.project,"},{"line_number":136,"context_line":"                parsed_args.project_domain,"},{"line_number":137,"context_line":"            ).id"},{"line_number":138,"context_line":"            attrs[\u0027tenant_id\u0027] \u003d project_id"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # Create the security group and display the results."},{"line_number":141,"context_line":"        obj \u003d client.create_security_group(**attrs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1af94dfe_9e16f9a5","line":138,"range":{"start_line":131,"start_character":7,"end_line":138,"end_character":43},"in_reply_to":"3afc51ec_2f62953e","updated":"2016-03-15 11:49:43.000000000","message":"I think this is fine for a common utility.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"2a46bbd2b4fa9986b9908d9039e186389dfc5728","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    def take_action_network(self, client, parsed_args):"},{"line_number":127,"context_line":"        # Build the create attributes."},{"line_number":128,"context_line":"        attrs \u003d {}"},{"line_number":129,"context_line":"        attrs[\u0027name\u0027] \u003d parsed_args.name"},{"line_number":130,"context_line":"        attrs[\u0027description\u0027] \u003d self._get_description(parsed_args)"},{"line_number":131,"context_line":"        if parsed_args.project is not None:"},{"line_number":132,"context_line":"            identity_client \u003d self.app.client_manager.identity"},{"line_number":133,"context_line":"            project_id \u003d identity_common.find_project("},{"line_number":134,"context_line":"                identity_client,"},{"line_number":135,"context_line":"                parsed_args.project,"},{"line_number":136,"context_line":"                parsed_args.project_domain,"},{"line_number":137,"context_line":"            ).id"},{"line_number":138,"context_line":"            attrs[\u0027tenant_id\u0027] \u003d project_id"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # Create the security group and display the results."},{"line_number":141,"context_line":"        obj \u003d client.create_security_group(**attrs)"},{"line_number":142,"context_line":"        display_columns, property_columns \u003d _get_columns(obj)"},{"line_number":143,"context_line":"        data \u003d utils.get_item_properties("}],"source_content_type":"text/x-python","patch_set":2,"id":"3afc51ec_0fbd19b7","line":140,"range":{"start_line":128,"start_character":0,"end_line":140,"end_character":60},"updated":"2016-03-15 05:49:02.000000000","message":"Shall we add a _get_attrs() helper in this file ? Just like the other commands.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"878af9f8eb9cfd94652d451b698ff3785cad5195","unresolved":false,"context_lines":[{"line_number":137,"context_line":"            ).id"},{"line_number":138,"context_line":"            attrs[\u0027tenant_id\u0027] \u003d project_id"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # Create the security group and display the results."},{"line_number":141,"context_line":"        obj \u003d client.create_security_group(**attrs)"},{"line_number":142,"context_line":"        display_columns, property_columns \u003d _get_columns(obj)"},{"line_number":143,"context_line":"        data \u003d utils.get_item_properties("}],"source_content_type":"text/x-python","patch_set":2,"id":"1af94dfe_b8aae017","line":140,"in_reply_to":"1af94dfe_7e068d21","updated":"2016-03-15 14:58:13.000000000","message":"If there is _any_ question about those factored-out functions, I would not do them.  I still this it is much clearer and less fragile to have the duplicated code.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"774864a36bb2e0dcd550883e2879ad9379c57383","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    def take_action_network(self, client, parsed_args):"},{"line_number":127,"context_line":"        # Build the create attributes."},{"line_number":128,"context_line":"        attrs \u003d {}"},{"line_number":129,"context_line":"        attrs[\u0027name\u0027] \u003d parsed_args.name"},{"line_number":130,"context_line":"        attrs[\u0027description\u0027] \u003d self._get_description(parsed_args)"},{"line_number":131,"context_line":"        if parsed_args.project is not None:"},{"line_number":132,"context_line":"            identity_client \u003d self.app.client_manager.identity"},{"line_number":133,"context_line":"            project_id \u003d identity_common.find_project("},{"line_number":134,"context_line":"                identity_client,"},{"line_number":135,"context_line":"                parsed_args.project,"},{"line_number":136,"context_line":"                parsed_args.project_domain,"},{"line_number":137,"context_line":"            ).id"},{"line_number":138,"context_line":"            attrs[\u0027tenant_id\u0027] \u003d project_id"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # Create the security group and display the results."},{"line_number":141,"context_line":"        obj \u003d client.create_security_group(**attrs)"},{"line_number":142,"context_line":"        display_columns, property_columns \u003d _get_columns(obj)"},{"line_number":143,"context_line":"        data \u003d utils.get_item_properties("}],"source_content_type":"text/x-python","patch_set":2,"id":"1af94dfe_7e068d21","line":140,"range":{"start_line":128,"start_character":0,"end_line":140,"end_character":60},"in_reply_to":"3afc51ec_0fbd19b7","updated":"2016-03-15 11:49:43.000000000","message":"I didn\u0027t think it was necessary given that name is the only common attr setting between create and set.  I prefer to leave as-is unless you or others would like such a helper.","commit_id":"a7c76878da02da406c9ccbcd62cc40def1108faa"}]}
