)]}'
{"swiftclient/client.py":[{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"cb6548be8b5848cd6553ff0b76b35fdd7807d4fb","unresolved":false,"context_lines":[{"line_number":189,"context_line":"            for target_type in \u0027container\u0027, \u0027account\u0027, \u0027object\u0027:"},{"line_number":190,"context_line":"                prefix \u003d \u0027x-%s-meta-\u0027 % target_type"},{"line_number":191,"context_line":"                if header.startswith(prefix):"},{"line_number":192,"context_line":"                    header \u003d encode_utf8(header)"},{"line_number":193,"context_line":"            ret.append((header, value))"},{"line_number":194,"context_line":"        return dict(ret)"},{"line_number":195,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2Fwj8%3D","line":192,"updated":"2014-04-17 16:56:59.000000000","message":"So other keys are encoded to utf8?\n\nWould it be possible to use \"\u003d?UTF-8?Q?\" encoding? For example using email.base64mime.header_encode().\n\nhttp://stackoverflow.com/questions/4400678/http-header-should-use-what-character-encoding","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":866,"name":"Chmouel Boudjnah","email":"chmouel@chmouel.com","username":"chmouel"},"change_message_id":"b525631438ce07dd3a2adb73a3d4d0d97946f317","unresolved":false,"context_lines":[{"line_number":189,"context_line":"            for target_type in \u0027container\u0027, \u0027account\u0027, \u0027object\u0027:"},{"line_number":190,"context_line":"                prefix \u003d \u0027x-%s-meta-\u0027 % target_type"},{"line_number":191,"context_line":"                if header.startswith(prefix):"},{"line_number":192,"context_line":"                    header \u003d encode_utf8(header)"},{"line_number":193,"context_line":"            ret.append((header, value))"},{"line_number":194,"context_line":"        return dict(ret)"},{"line_number":195,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2FEcA%3D","line":192,"in_reply_to":"AAAAXH%2F%2Fwj8%3D","updated":"2014-04-24 08:56:51.000000000","message":"This probably would need to have a server change as I am not aware that is supported (I may be wrong)","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"cb6548be8b5848cd6553ff0b76b35fdd7807d4fb","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        if headers is None:"},{"line_number":199,"context_line":"            headers \u003d {}"},{"line_number":200,"context_line":"        else:"},{"line_number":201,"context_line":"            headers \u003d self._encode_meta_headers(headers.items())"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"        # set a default User-Agent header if it wasn\u0027t passed in"},{"line_number":204,"context_line":"        if \u0027user-agent\u0027 not in headers:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2FwmU%3D","line":201,"updated":"2014-04-17 16:56:59.000000000","message":"You may pass the headers dictionary instead of items.\n\nI know that some swift developers disagree, but I would prefer to use six.iteritems() to avoid a temporary list of items.","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":7680,"name":"Alex Gaynor","email":"alex.gaynor@gmail.com","username":"alex_gaynor"},"change_message_id":"d12aa18ea3820091fbe97bed0b769daebec65114","unresolved":false,"context_lines":[{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    def _encode_meta_headers(self, items):"},{"line_number":184,"context_line":"        \"\"\"Only encode metadata headers keys\"\"\""},{"line_number":185,"context_line":"        ret \u003d []"},{"line_number":186,"context_line":"        for header, value in items:"},{"line_number":187,"context_line":"            value \u003d encode_utf8(value)"},{"line_number":188,"context_line":"            header \u003d header.lower()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAXH%2F%2FCP8%3D","line":185,"updated":"2014-04-24 13:58:51.000000000","message":"I don\u0027t think it\u0027s necessary to build this up as a list, and then switch to a dict. You can just make it a dict from the start.","commit_id":"6c572c9ec46d659022fd058fbf9c8bc4ea1ad6f4"}],"tests/test_swiftclient.py":[{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"cb6548be8b5848cd6553ff0b76b35fdd7807d4fb","unresolved":false,"context_lines":[{"line_number":228,"context_line":""},{"line_number":229,"context_line":"        # test if it\u0027s actually set"},{"line_number":230,"context_line":"        conn.request(\u0027GET\u0027, \u0027/\u0027, headers\u003d{\u0027User-Agent\u0027: \u0027Me\u0027})"},{"line_number":231,"context_line":"        ua \u003d req_headers.get(\u0027user-agent\u0027, \u0027XXX-MISSING-XXX\u0027)"},{"line_number":232,"context_line":"        self.assertEqual(ua, b\u0027Me\u0027, req_headers)"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"    def test_set_user_agent_default_override(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2Fwno%3D","line":231,"updated":"2014-04-17 16:56:59.000000000","message":"If the value is encoded, the default must be b\u0027XXX-MISSING-XXX\u0027.","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"cb6548be8b5848cd6553ff0b76b35fdd7807d4fb","unresolved":false,"context_lines":[{"line_number":740,"context_line":""},{"line_number":741,"context_line":"    def test_unicode_ok(self):"},{"line_number":742,"context_line":"        conn \u003d c.http_connection(u\u0027http://www.test.com/\u0027)"},{"line_number":743,"context_line":"        args \u003d (u\u0027\\u5929\\u7a7a\\u4e2d\\u7684\\u4e4c\\u4e91\u0027,"},{"line_number":744,"context_line":"                \u0027\\u5929\\u7a7a\\u4e2d\\u7684\\u4e4c\\u4e91\u0027,"},{"line_number":745,"context_line":"                u\u0027\\u5929\\u7a7a\\u4e2d\\u7684\\u4e4c\\u4e91\u0027,"},{"line_number":746,"context_line":"                u\u0027\\u5929\\u7a7a\\u4e2d\\u7684\\u4e4c\\u4e91\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2Fwms%3D","line":743,"updated":"2014-04-17 16:56:59.000000000","message":"It\u0027s strange that this line doesn\u0027t have the \"u\" prefix.","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"fec66865bfefc0a16fc6231c6b695dbb15d66457","unresolved":false,"context_lines":[{"line_number":753,"context_line":"        conn[1]._request \u003d resp._fake_request"},{"line_number":754,"context_line":"        c.post_object(*args, headers\u003dheaders, http_conn\u003dconn)"},{"line_number":755,"context_line":"        # Test for RFC-2616 encoded symbols"},{"line_number":756,"context_line":"        self.assertTrue((\u0027a-b\u0027, b\"a-b: .x:yz mn:kl:qr\"), resp.buffer)"},{"line_number":757,"context_line":"        # Test unicode header"},{"line_number":758,"context_line":"        self.assertIn((\u0027x-header1\u0027, text.encode(\u0027utf8\u0027)),"},{"line_number":759,"context_line":"                      resp.buffer)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2FKD4%3D","line":756,"updated":"2014-04-23 16:37:02.000000000","message":"This test doesn\u0027t seem right - should it be the similar to line 634? i.e.\n\n  self.assertIn((\u0027a-b\u0027, b\".x:yz mn:kl:qr\"), resp.buffer)","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"},{"author":{"_account_id":866,"name":"Chmouel Boudjnah","email":"chmouel@chmouel.com","username":"chmouel"},"change_message_id":"b525631438ce07dd3a2adb73a3d4d0d97946f317","unresolved":false,"context_lines":[{"line_number":753,"context_line":"        conn[1]._request \u003d resp._fake_request"},{"line_number":754,"context_line":"        c.post_object(*args, headers\u003dheaders, http_conn\u003dconn)"},{"line_number":755,"context_line":"        # Test for RFC-2616 encoded symbols"},{"line_number":756,"context_line":"        self.assertTrue((\u0027a-b\u0027, b\"a-b: .x:yz mn:kl:qr\"), resp.buffer)"},{"line_number":757,"context_line":"        # Test unicode header"},{"line_number":758,"context_line":"        self.assertIn((\u0027x-header1\u0027, text.encode(\u0027utf8\u0027)),"},{"line_number":759,"context_line":"                      resp.buffer)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAXH%2F%2FEaI%3D","line":756,"in_reply_to":"AAAAXH%2F%2FKD4%3D","updated":"2014-04-24 08:56:51.000000000","message":"I think those tests are somewhat buggy and I am not that knowledgeable in unicode to know how to fix it, will ping victor when he\u0027s back from holiday to help fix those after this review pass","commit_id":"51dd224ec73ebdf31ad1c95ec66a07c9ca295a2e"}]}
