)]}'
{"openstackclient/network/v2/router.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"fa77968664c1136ef01a854cf87244828f8ad102","unresolved":false,"context_lines":[{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RoutesColumn(cliff_columns.FormattableColumn):"},{"line_number":50,"context_line":"    def human_readable(self):"},{"line_number":51,"context_line":"        # The \u0027routes\u0027 attribute is optional.  Handle as an empty dict, if it\u0027s"},{"line_number":52,"context_line":"        # missing."},{"line_number":53,"context_line":"        routes \u003d self._value or {}"},{"line_number":54,"context_line":"        # Map the route keys to match --route option."},{"line_number":55,"context_line":"        for route in routes:"},{"line_number":56,"context_line":"            if \u0027nexthop\u0027 in route:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_6499b8ce","line":53,"range":{"start_line":51,"start_character":8,"end_line":53,"end_character":34},"updated":"2019-10-23 12:09:02.000000000","message":"Actually the routes attribute is a list, not a dict, see https://docs.openstack.org/api-ref/network/v2/#extra-routes-extension\n\nThe result when iterating is the same, but better to avoid confusion here IMHO.\n\nI\u0027m also thinking that maybe this should be handled on the SDK side already.","commit_id":"b0c0cfcf5c5caaf1eda499d8cc3fdb9de7de1569"},{"author":{"_account_id":13734,"name":"Nell Jerram","email":"nell@tigera.io","username":"neiljerram"},"change_message_id":"e8e74dc3a711f9c83d36322a50b00213b06e45ed","unresolved":false,"context_lines":[{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RoutesColumn(cliff_columns.FormattableColumn):"},{"line_number":50,"context_line":"    def human_readable(self):"},{"line_number":51,"context_line":"        # The \u0027routes\u0027 attribute is optional.  Handle as an empty dict, if it\u0027s"},{"line_number":52,"context_line":"        # missing."},{"line_number":53,"context_line":"        routes \u003d self._value or {}"},{"line_number":54,"context_line":"        # Map the route keys to match --route option."},{"line_number":55,"context_line":"        for route in routes:"},{"line_number":56,"context_line":"            if \u0027nexthop\u0027 in route:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_e7cdaa86","line":53,"range":{"start_line":51,"start_character":8,"end_line":53,"end_character":34},"in_reply_to":"3fa7e38b_27dbc24f","updated":"2019-10-23 13:36:32.000000000","message":"\u003e handled on the SDK side already\n\nWhere should the change go, in that case?","commit_id":"b0c0cfcf5c5caaf1eda499d8cc3fdb9de7de1569"},{"author":{"_account_id":13734,"name":"Nell Jerram","email":"nell@tigera.io","username":"neiljerram"},"change_message_id":"18f33c18b1871c2529597697da4d7066a347f9f8","unresolved":false,"context_lines":[{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RoutesColumn(cliff_columns.FormattableColumn):"},{"line_number":50,"context_line":"    def human_readable(self):"},{"line_number":51,"context_line":"        # The \u0027routes\u0027 attribute is optional.  Handle as an empty dict, if it\u0027s"},{"line_number":52,"context_line":"        # missing."},{"line_number":53,"context_line":"        routes \u003d self._value or {}"},{"line_number":54,"context_line":"        # Map the route keys to match --route option."},{"line_number":55,"context_line":"        for route in routes:"},{"line_number":56,"context_line":"            if \u0027nexthop\u0027 in route:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_27dbc24f","line":53,"range":{"start_line":51,"start_character":8,"end_line":53,"end_character":34},"in_reply_to":"3fa7e38b_6499b8ce","updated":"2019-10-23 13:33:10.000000000","message":"Thanks Jens, I don\u0027t know what I was thinking there...","commit_id":"b0c0cfcf5c5caaf1eda499d8cc3fdb9de7de1569"}]}
