)]}'
{"keystone/controllers.py":[{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"0525439fdd49c8cd5a70cb20fba3b63a1cac8cbb","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    SUPPORTED_TYPES \u003d [MimeTypes.JSON, MimeTypes.JSON_HOME]"},{"line_number":75,"context_line":"    return accept_header.best_match(SUPPORTED_TYPES)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class Version(wsgi.Application):"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1abeadc6_d7908e45","line":76,"updated":"2014-08-20 05:11:27.000000000","message":"What does best_match do?  Does it handle q factors?  What will happen if the accept is not one of the requested types?\n\nLooks like it does everything from the tests?  Can you please let me know the documentation of best_match?","commit_id":"368c851f148fca6bbe169b21acd16f0918ed8ad6"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"6810abefeaafa29d8ef87efdc26b228e9d64c327","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    SUPPORTED_TYPES \u003d [MimeTypes.JSON, MimeTypes.JSON_HOME]"},{"line_number":75,"context_line":"    return accept_header.best_match(SUPPORTED_TYPES)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class Version(wsgi.Application):"},{"line_number":79,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1abeadc6_293959d7","line":76,"in_reply_to":"1abeadc6_d7908e45","updated":"2014-08-20 13:42:34.000000000","message":"http://webob.readthedocs.org/en/latest/reference.html#accept-headers","commit_id":"368c851f148fca6bbe169b21acd16f0918ed8ad6"},{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"b25006144f27418140bbb42b136af021999b1d5f","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        return MimeTypes.JSON"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    SUPPORTED_TYPES \u003d [MimeTypes.JSON, MimeTypes.JSON_HOME]"},{"line_number":75,"context_line":"    return accept_header.best_match(SUPPORTED_TYPES)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class Version(wsgi.Application):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_8fc34856","line":75,"updated":"2014-08-20 16:37:21.000000000","message":"Also is it possible to add  a comment about param type.  Just by glancing the code, you get the impression that  accept_header is string. Didn\u0027t realize that it is of type MIMEAccept","commit_id":"d149d8ba22b4b14dc1f3d83a0024d92c5c075aa9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"6e223c00fd402b4b049a26b0c44c6d4dc3044c7c","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        return MimeTypes.JSON"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    SUPPORTED_TYPES \u003d [MimeTypes.JSON, MimeTypes.JSON_HOME]"},{"line_number":75,"context_line":"    return accept_header.best_match(SUPPORTED_TYPES)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class Version(wsgi.Application):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_de2a428f","line":75,"in_reply_to":"1abeadc6_8fc34856","updated":"2014-08-21 00:25:25.000000000","message":"Done","commit_id":"d149d8ba22b4b14dc1f3d83a0024d92c5c075aa9"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"75eaaf9793ae42d5281c2d316e48c4f55c1e8719","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        return MimeTypes.JSON"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    SUPPORTED_TYPES \u003d [MimeTypes.JSON, MimeTypes.JSON_HOME]"},{"line_number":77,"context_line":"    return accept_header.best_match(SUPPORTED_TYPES)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"class Version(wsgi.Application):"}],"source_content_type":"text/x-python","patch_set":7,"id":"1abeadc6_1dcc0e61","line":77,"updated":"2014-08-26 16:10:49.000000000","message":"i always wondered where this api was","commit_id":"c2e40d3de7cfce075e513832bf150b9258f61423"}],"keystone/tests/test_versions.py":[{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"f8639e517b5f09d9119b35e09b8c0089c6d4ac67","unresolved":false,"context_lines":[{"line_number":545,"context_line":"            self.assertThat(resp.status, tt_matchers.Equals(\u0027200 OK\u0027))"},{"line_number":546,"context_line":"            return resp.headers[\u0027Content-Type\u0027]"},{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        JSON \u003d \u0027application/json\u0027"},{"line_number":549,"context_line":"        JSON_HOME \u003d \u0027application/json-home\u0027"},{"line_number":550,"context_line":""},{"line_number":551,"context_line":"        JSON_MATCHER \u003d tt_matchers.Equals(JSON)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_4c769ed8","line":548,"updated":"2014-08-20 16:25:59.000000000","message":"Any reason why you can\u0027t use the constants defined in  MimeTypes.JSON_HOME?","commit_id":"d149d8ba22b4b14dc1f3d83a0024d92c5c075aa9"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"6e223c00fd402b4b049a26b0c44c6d4dc3044c7c","unresolved":false,"context_lines":[{"line_number":545,"context_line":"            self.assertThat(resp.status, tt_matchers.Equals(\u0027200 OK\u0027))"},{"line_number":546,"context_line":"            return resp.headers[\u0027Content-Type\u0027]"},{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        JSON \u003d \u0027application/json\u0027"},{"line_number":549,"context_line":"        JSON_HOME \u003d \u0027application/json-home\u0027"},{"line_number":550,"context_line":""},{"line_number":551,"context_line":"        JSON_MATCHER \u003d tt_matchers.Equals(JSON)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_0150df09","line":548,"in_reply_to":"1abeadc6_4c769ed8","updated":"2014-08-21 00:25:25.000000000","message":"Done","commit_id":"d149d8ba22b4b14dc1f3d83a0024d92c5c075aa9"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"75eaaf9793ae42d5281c2d316e48c4f55c1e8719","unresolved":false,"context_lines":[{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        # If request JSON Home, JSON;q\u003d0.5 get JSON Home."},{"line_number":602,"context_line":"        accept_types \u003d \u0027%s, %s;q\u003d0.5\u0027 % (JSON_HOME, JSON)"},{"line_number":603,"context_line":"        self.assertThat(make_request(accept_types), JSON_HOME_MATCHER)"},{"line_number":604,"context_line":""},{"line_number":605,"context_line":"        # If request some unknown mime-type, get JSON."},{"line_number":606,"context_line":"        self.assertThat(make_request(self.getUniqueString()), JSON_MATCHER)"}],"source_content_type":"text/x-python","patch_set":7,"id":"1abeadc6_5deda6b6","line":603,"updated":"2014-08-26 16:10:49.000000000","message":"cool","commit_id":"c2e40d3de7cfce075e513832bf150b9258f61423"}]}
