)]}'
{"glance/api/v2/images.py":[{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"2b18e5e2c357085405e24aa496930534ff38acc8","unresolved":false,"context_lines":[{"line_number":811,"context_line":"        params.pop(\u0027marker\u0027, None)"},{"line_number":812,"context_line":"        encode_params \u003d {}"},{"line_number":813,"context_line":"        for key, value in six.iteritems(params):"},{"line_number":814,"context_line":"            encode_params[encodeutils.safe_encode(key)] \u003d \\"},{"line_number":815,"context_line":"                encodeutils.safe_encode(value)"},{"line_number":816,"context_line":"        query \u003d urlparse.urlencode(encode_params)"},{"line_number":817,"context_line":"        body \u003d {"}],"source_content_type":"text/x-python","patch_set":1,"id":"9ad45d7e_d6a565a2","line":814,"updated":"2016-08-10 12:43:15.000000000","message":"This only will work with utf8. Do Glance suppose to work with other encodings?","commit_id":"985c6624edaa4eb701710e49f4ba7e7c3dad5272"}],"glance/tests/functional/v2/test_images.py":[{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"8ef15879797bc0b8f8581e3b8d5a37902e251a63","unresolved":false,"context_lines":[{"line_number":2902,"context_line":"        self.start_servers(**self.__dict__.copy())"},{"line_number":2903,"context_line":""},{"line_number":2904,"context_line":"        unicode_text \u003d u\u0027\\u041f\\u0420\\u0418\\u0412\\u0415\\u0422\u0027"},{"line_number":2905,"context_line":"        headers \u003d self._headers({\u0027Content-Type\u0027: \u0027application/json; \u0027"},{"line_number":2906,"context_line":"                                                 \u0027text/html; charset\u003dUTF-8\u0027})"},{"line_number":2907,"context_line":"        # Create new images with unicode"},{"line_number":2908,"context_line":"        path \u003d self._url(\u0027/v2/images\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a629dbe_e9535ce0","line":2905,"updated":"2016-11-09 19:20:36.000000000","message":"This isn\u0027t a valid Content-Type header, if I remember correctly.","commit_id":"985c6624edaa4eb701710e49f4ba7e7c3dad5272"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"8ef15879797bc0b8f8581e3b8d5a37902e251a63","unresolved":false,"context_lines":[{"line_number":2914,"context_line":""},{"line_number":2915,"context_line":"        # Get list with unicode filter"},{"line_number":2916,"context_line":"        path \u003d \\"},{"line_number":2917,"context_line":"            self._url(u\u0027/v2/images?name\u003d\\u041f\\u0420\\u0418\\u0412\\u0415\\u0422\u0027)"},{"line_number":2918,"context_line":"        response_url \u003d u\u0027/v2/images?name\u003d%D0%9F%D0%A0%D0%98%D0%92%D0%95%D0%A2\u0027"},{"line_number":2919,"context_line":"        response \u003d requests.get(path, headers\u003dheaders)"},{"line_number":2920,"context_line":"        image \u003d jsonutils.loads(response.text)[\u0027images\u0027][0]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a629dbe_095170d8","line":2917,"updated":"2016-11-09 19:20:36.000000000","message":"Is this the actual problem? If so, what client is generating URLs like this? If you instead do:\n\n    requests.get(\u0027http://localhost:9292/v2/images\u0027, params\u003d{\u0027name\u0027: u\u0027\\u041f\\u0420\\u0418\\u0412\\u0415\\u0422\u0027})\n\nYou shouldn\u0027t get a URL constructed like that and this issue shouldn\u0027t arise. Any *good* HTTP client won\u0027t behave this way unless you hardcode the URL. It\u0027s my opinion that anyone hard-coding the URL deserved any unhelpful error code they get. Ideally it won\u0027t be a 500 error code, but that\u0027s a different matter.","commit_id":"985c6624edaa4eb701710e49f4ba7e7c3dad5272"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"67f4bda2bd2958c3a72f9629ddbc41a72f249b83","unresolved":false,"context_lines":[{"line_number":2914,"context_line":""},{"line_number":2915,"context_line":"        # Get list with unicode filter"},{"line_number":2916,"context_line":"        path \u003d \\"},{"line_number":2917,"context_line":"            self._url(u\u0027/v2/images?name\u003d\\u041f\\u0420\\u0418\\u0412\\u0415\\u0422\u0027)"},{"line_number":2918,"context_line":"        response_url \u003d u\u0027/v2/images?name\u003d%D0%9F%D0%A0%D0%98%D0%92%D0%95%D0%A2\u0027"},{"line_number":2919,"context_line":"        response \u003d requests.get(path, headers\u003dheaders)"},{"line_number":2920,"context_line":"        image \u003d jsonutils.loads(response.text)[\u0027images\u0027][0]"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_34fa83bc","line":2917,"in_reply_to":"9a629dbe_095170d8","updated":"2017-09-28 22:06:55.000000000","message":"According to the bug report, this is a possible URL based on something taking a query string with a unicode object name.","commit_id":"985c6624edaa4eb701710e49f4ba7e7c3dad5272"}]}
