)]}'
{"keystonemiddleware/auth_token.py":[{"author":{"_account_id":11428,"name":"Ajaya Agrawal","email":"ajku.agr@gmail.com","username":"ajayaa"},"change_message_id":"50c00ce62234600da364a6f30cfe6281d3504774","unresolved":false,"context_lines":[{"line_number":636,"context_line":"            raise InvalidUserToken(\u0027Unable to find token in headers\u0027)"},{"line_number":637,"context_line":""},{"line_number":638,"context_line":"    def _reject_request(self, env, start_response):"},{"line_number":639,"context_line":"        \"\"\"Reject request because we authenticate failed."},{"line_number":640,"context_line":""},{"line_number":641,"context_line":"        :param env: wsgi request environment"},{"line_number":642,"context_line":"        :param start_response: wsgi response callback"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa98f980_5b0dab36","line":639,"updated":"2014-09-10 10:59:15.000000000","message":"Replace it with something like\n\"Reject request because authentication failed\"","commit_id":"cdd39fe93aee47735aba9ed78cb957e2c2871ad2"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"a0142087825102b72aa9aa002689545bca40d6df","unresolved":false,"context_lines":[{"line_number":636,"context_line":"            raise InvalidUserToken(\u0027Unable to find token in headers\u0027)"},{"line_number":637,"context_line":""},{"line_number":638,"context_line":"    def _reject_request(self, env, start_response):"},{"line_number":639,"context_line":"        \"\"\"Reject request because authentication failed."},{"line_number":640,"context_line":""},{"line_number":641,"context_line":"        :param env: wsgi request environment"},{"line_number":642,"context_line":"        :param start_response: wsgi response callback"}],"source_content_type":"text/x-python","patch_set":2,"id":"da9df570_32b9332f","line":639,"updated":"2014-09-22 12:59:18.000000000","message":"\"Reject request because of authentication error\" ?","commit_id":"210a7d7758f4a9a3621f809f6989a9fb38120e19"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"1281cc37fd256c8e9e4b21b94093073d6c5f12c7","unresolved":false,"context_lines":[{"line_number":829,"context_line":""},{"line_number":830,"context_line":"        \"\"\""},{"line_number":831,"context_line":"        resp \u003d _MiniResp(\u0027Authentication required\u0027,"},{"line_number":832,"context_line":"                         env, self._reject_auth_headers)"},{"line_number":833,"context_line":"        start_response(\u0027401 Unauthorized\u0027, resp.headers)"},{"line_number":834,"context_line":"        return resp.body"},{"line_number":835,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"baa201ad_e92f8b86","line":832,"updated":"2014-10-01 20:50:26.000000000","message":"Perhaps \"Redirect\" is worded too strongly, as there\u0027s no 301/302 response here, but the self._reject_auth_headers returns a link to Keystone\u0027s public endpoint, where the client is intended to go auth and come back. A 3xx would be incorrect because the original request should not be repeated against keystone or anything.\n\nI prefer the original docstr over the new one, as it better explains what\u0027s really going on (especially because it\u0027s not entirely obvious in this implementation).","commit_id":"aa4823f2482b0b46fc9a97862f11d3baf6ad1b0f"}]}
