)]}'
{"openstackclient/tests/compute/v2/fakes.py":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"d7afba285a4227c56addcc923509b91ef6e69a31","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Fake one or more security groups.\"\"\""},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    @staticmethod"},{"line_number":303,"context_line":"    def create_one_security_group(attrs\u003d{}, methods\u003d{}):"},{"line_number":304,"context_line":"        \"\"\"Create a fake security group."},{"line_number":305,"context_line":""},{"line_number":306,"context_line":"        :param Dictionary attrs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"bae84128_23df09da","line":303,"range":{"start_line":303,"start_character":34,"end_line":303,"end_character":54},"updated":"2016-02-24 01:46:05.000000000","message":"Just one concern, referring to this review:\nhttps://review.openstack.org/#/c/282626/\n\nshould we make it:\n\ndef create_one_security_group(attrs\u003dNone, methods\u003dNone):\n    if attrs is None:\n        attrs \u003d {}\n    if methods is None:\n        method \u003d {}\n\n\nOf course, it would be no problem here because attrs and methods are readonly. We don\u0027t modify them. But I think we should fix them all. How do you think?","commit_id":"2aa2f71b54385c6b123488e1bf0ad761a718f8ce"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"7e8abcf4a1f1beb301ebcdaefe44225848d3d95a","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Fake one or more security groups.\"\"\""},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    @staticmethod"},{"line_number":303,"context_line":"    def create_one_security_group(attrs\u003d{}, methods\u003d{}):"},{"line_number":304,"context_line":"        \"\"\"Create a fake security group."},{"line_number":305,"context_line":""},{"line_number":306,"context_line":"        :param Dictionary attrs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9aed3d3a_cc570001","line":303,"range":{"start_line":303,"start_character":34,"end_line":303,"end_character":54},"in_reply_to":"9aed3d3a_d69f8f01","updated":"2016-02-26 13:07:11.000000000","message":"Thank you!","commit_id":"2aa2f71b54385c6b123488e1bf0ad761a718f8ce"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"6043b18ceb9261ccff5a5d187a7e880fe878fca4","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Fake one or more security groups.\"\"\""},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    @staticmethod"},{"line_number":303,"context_line":"    def create_one_security_group(attrs\u003d{}, methods\u003d{}):"},{"line_number":304,"context_line":"        \"\"\"Create a fake security group."},{"line_number":305,"context_line":""},{"line_number":306,"context_line":"        :param Dictionary attrs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"bae84128_4d102ca9","line":303,"range":{"start_line":303,"start_character":34,"end_line":303,"end_character":54},"in_reply_to":"bae84128_23df09da","updated":"2016-02-25 03:28:44.000000000","message":"I agree with fixing them.  Can you please open a bug to track the work?","commit_id":"2aa2f71b54385c6b123488e1bf0ad761a718f8ce"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"6379f7f2aa3e05721eecb92cd1727ec927ac71dd","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Fake one or more security groups.\"\"\""},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    @staticmethod"},{"line_number":303,"context_line":"    def create_one_security_group(attrs\u003d{}, methods\u003d{}):"},{"line_number":304,"context_line":"        \"\"\"Create a fake security group."},{"line_number":305,"context_line":""},{"line_number":306,"context_line":"        :param Dictionary attrs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9aed3d3a_d69f8f01","line":303,"range":{"start_line":303,"start_character":34,"end_line":303,"end_character":54},"in_reply_to":"bae84128_4d102ca9","updated":"2016-02-26 12:46:46.000000000","message":"Done. Here:\n\nhttps://bugs.launchpad.net/python-openstackclient/+bug/1550320\n\nAnd I\u0027m working on it. :)","commit_id":"2aa2f71b54385c6b123488e1bf0ad761a718f8ce"}],"openstackclient/tests/network/v2/test_security_group.py":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"f0cb6d4ce135028e16c03661cd1a90a1f17bce31","unresolved":false,"context_lines":[{"line_number":213,"context_line":"        kwargs \u003d {\u0027search_opts\u0027: {\u0027all_tenants\u0027: False}}"},{"line_number":214,"context_line":"        self.compute.security_groups.list.assert_called_with(**kwargs)"},{"line_number":215,"context_line":"        self.assertEqual(self.expected_columns, columns)"},{"line_number":216,"context_line":"        self.assertEqual(self.expected_data, list(data))"},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"    def test_security_group_list_all_projects(self):"},{"line_number":219,"context_line":"        arglist \u003d ["}],"source_content_type":"text/x-python","patch_set":9,"id":"9aed3d3a_33bff7d1","line":216,"range":{"start_line":216,"start_character":25,"end_line":216,"end_character":55},"updated":"2016-02-26 09:56:40.000000000","message":"Can we make expected_data a tupal, not a list ?  So that we don\u0027t need to translate data to list.\n\nThere are lots of similar problems in unit tests. I\u0027ll openstack a bug for this. :)","commit_id":"5fc8cdfab074bbfbbb6c2ff0141eeab492866fb1"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"dda37089302d4e8f48d96afc07a5db0e42080909","unresolved":false,"context_lines":[{"line_number":213,"context_line":"        kwargs \u003d {\u0027search_opts\u0027: {\u0027all_tenants\u0027: False}}"},{"line_number":214,"context_line":"        self.compute.security_groups.list.assert_called_with(**kwargs)"},{"line_number":215,"context_line":"        self.assertEqual(self.expected_columns, columns)"},{"line_number":216,"context_line":"        self.assertEqual(self.expected_data, list(data))"},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"    def test_security_group_list_all_projects(self):"},{"line_number":219,"context_line":"        arglist \u003d ["}],"source_content_type":"text/x-python","patch_set":9,"id":"9aed3d3a_f99ef2b6","line":216,"range":{"start_line":216,"start_character":25,"end_line":216,"end_character":55},"in_reply_to":"9aed3d3a_33bff7d1","updated":"2016-02-26 17:03:58.000000000","message":"Done","commit_id":"5fc8cdfab074bbfbbb6c2ff0141eeab492866fb1"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"f0cb6d4ce135028e16c03661cd1a90a1f17bce31","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        kwargs \u003d {\u0027search_opts\u0027: {\u0027all_tenants\u0027: True}}"},{"line_number":230,"context_line":"        self.compute.security_groups.list.assert_called_with(**kwargs)"},{"line_number":231,"context_line":"        self.assertEqual(self.expected_columns_all_projects, columns)"},{"line_number":232,"context_line":"        self.assertEqual(self.expected_data_all_projects, list(data))"}],"source_content_type":"text/x-python","patch_set":9,"id":"9aed3d3a_13c91379","line":232,"range":{"start_line":232,"start_character":25,"end_line":232,"end_character":68},"updated":"2016-02-26 09:56:40.000000000","message":"ditto","commit_id":"5fc8cdfab074bbfbbb6c2ff0141eeab492866fb1"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"dda37089302d4e8f48d96afc07a5db0e42080909","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        kwargs \u003d {\u0027search_opts\u0027: {\u0027all_tenants\u0027: True}}"},{"line_number":230,"context_line":"        self.compute.security_groups.list.assert_called_with(**kwargs)"},{"line_number":231,"context_line":"        self.assertEqual(self.expected_columns_all_projects, columns)"},{"line_number":232,"context_line":"        self.assertEqual(self.expected_data_all_projects, list(data))"}],"source_content_type":"text/x-python","patch_set":9,"id":"9aed3d3a_39a97ae0","line":232,"range":{"start_line":232,"start_character":25,"end_line":232,"end_character":68},"in_reply_to":"9aed3d3a_13c91379","updated":"2016-02-26 17:03:58.000000000","message":"Done","commit_id":"5fc8cdfab074bbfbbb6c2ff0141eeab492866fb1"}],"releasenotes/notes/bug-1519511-74bab0e0d32db043.yaml":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"2e2292aedcf28b902d362513d79558839cbf987a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Ignore the ``security group list`` command ``--all-projects`` option"},{"line_number":5,"context_line":"    for Network v2 since security groups will be displayed for all projects"},{"line_number":6,"context_line":"    by default (admin only)."},{"line_number":7,"context_line":"    [Bug `1519511 \u003chttps://bugs.launchpad.net/bugs/1519511\u003e`_]"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"dae33548_4a22e202","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":10},"updated":"2016-02-19 04:23:12.000000000","message":"I think this patch also did the refactor of \"security group list\" to support neutron. So this should also be included in the release note.","commit_id":"019977d2502ea7b3cb61e7ccd1f831d6b47c3444"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"f78b174ac889888bb4f01cb52f53cc921a959f1c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Ignore the ``security group list`` command ``--all-projects`` option"},{"line_number":5,"context_line":"    for Network v2 since security groups will be displayed for all projects"},{"line_number":6,"context_line":"    by default (admin only)."},{"line_number":7,"context_line":"    [Bug `1519511 \u003chttps://bugs.launchpad.net/bugs/1519511\u003e`_]"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"bae84128_1874ab9a","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":10},"in_reply_to":"dae33548_4a22e202","updated":"2016-02-19 13:52:48.000000000","message":"Hi Tang, thanks for the review.  Actually, the \"security group list\" command already supports neutron.  It just did so via the nova APIs which in turn called the neutron APIs.","commit_id":"019977d2502ea7b3cb61e7ccd1f831d6b47c3444"}]}
