)]}'
{"neutron_lib/tests/unit/api/definitions/base.py":[{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"a4d6bbe05cd6767ead2ca4f1b1ed6953636a5d3a","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                          \u0027Required extension is unknown, check for typos.\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_optional_extensions(self):"},{"line_number":137,"context_line":"        self.assertIsInstance(self.optional_extensions, list)"},{"line_number":138,"context_line":"        if not self.optional_extensions:"},{"line_number":139,"context_line":"            self.skipTest(\u0027API definition has no optional extensions.\u0027)"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_a6481489","line":137,"updated":"2016-12-19 13:34:46.000000000","message":"Do we need to be this explicit for the required/optional extensions? Seems we could accept None or list. We have some existing api-defs in review that will break as a result of these UTs.","commit_id":"5d74a5af7c0bcb8b54532f8574efe5dd8dfa84b3"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"9c479da5db7a762e9aa150e1c81ffb9c51665e16","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                          \u0027Required extension is unknown, check for typos.\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_optional_extensions(self):"},{"line_number":137,"context_line":"        self.assertIsInstance(self.optional_extensions, list)"},{"line_number":138,"context_line":"        if not self.optional_extensions:"},{"line_number":139,"context_line":"            self.skipTest(\u0027API definition has no optional extensions.\u0027)"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a430d35_89072817","line":137,"in_reply_to":"1a430d35_02bb290f","updated":"2017-02-07 11:45:17.000000000","message":"True :)","commit_id":"5d74a5af7c0bcb8b54532f8574efe5dd8dfa84b3"},{"author":{"_account_id":5367,"name":"boden","email":"bodenvmw@gmail.com","username":"boden"},"change_message_id":"cea2c2206c4f4b250f4ae1c79ceb58e2040ba7cd","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                          \u0027Required extension is unknown, check for typos.\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_optional_extensions(self):"},{"line_number":137,"context_line":"        self.assertIsInstance(self.optional_extensions, list)"},{"line_number":138,"context_line":"        if not self.optional_extensions:"},{"line_number":139,"context_line":"            self.skipTest(\u0027API definition has no optional extensions.\u0027)"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa31d9ce_57352f44","line":137,"in_reply_to":"1a430d35_6b461d7c","updated":"2017-02-10 17:32:38.000000000","message":"Admittedly I\u0027ve complained on a few api-def reviews for using None vs. [] or {}. I think I\u0027ve just been nitting them for consistency sake, but am surely willing to quit even that if needed. I\u0027d prefer to be consistent in the definition as proposed herein, but am fine with a \"looser\" approach as well.","commit_id":"5d74a5af7c0bcb8b54532f8574efe5dd8dfa84b3"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"6796b0c594253c18b0720a426b9de46728e18c06","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                          \u0027Required extension is unknown, check for typos.\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_optional_extensions(self):"},{"line_number":137,"context_line":"        self.assertIsInstance(self.optional_extensions, list)"},{"line_number":138,"context_line":"        if not self.optional_extensions:"},{"line_number":139,"context_line":"            self.skipTest(\u0027API definition has no optional extensions.\u0027)"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a430d35_6b461d7c","line":137,"in_reply_to":"1a430d35_89072817","updated":"2017-02-09 00:13:04.000000000","message":"You must forgive me, but I am not sure I see the point of this change. Both None and [] eval to False and they are telling whoever reads the definition that no dependency or map exists. So are we really just complaining stylistically?","commit_id":"5d74a5af7c0bcb8b54532f8574efe5dd8dfa84b3"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"d2dcc975e6b22910f005eb87613a0bf7dca4a542","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                          \u0027Required extension is unknown, check for typos.\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"    def test_optional_extensions(self):"},{"line_number":137,"context_line":"        self.assertIsInstance(self.optional_extensions, list)"},{"line_number":138,"context_line":"        if not self.optional_extensions:"},{"line_number":139,"context_line":"            self.skipTest(\u0027API definition has no optional extensions.\u0027)"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a430d35_02bb290f","line":137,"in_reply_to":"1a6eadb0_a6481489","updated":"2017-02-06 23:06:20.000000000","message":"do we need? i guess no.\nbut it seems some of reviewers (you :-) don\u0027t like None appearing for these places.  this would help both of reviewers and submitters of patches.","commit_id":"5d74a5af7c0bcb8b54532f8574efe5dd8dfa84b3"}]}
