)]}'
{"keystoneclient/tests/test_memcache_crypt.py":[{"author":{"_account_id":8996,"name":"Florent Flament","email":"contact@florentflament.com","username":"florent"},"change_message_id":"10b49f02535beaa4edb49abd9102bd8efecc0e9b","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        keys \u003d self._setup_keys(\u0027ENCRYPT\u0027)"},{"line_number":57,"context_line":"        # what you put in is what you get out"},{"line_number":58,"context_line":"        for data in [\u0027data\u0027, \u00271234567890123456\u0027, \u0027\\x00\\xFF\u0027 * 13"},{"line_number":59,"context_line":"                     ] + [chr(x % 256) * x for x in list(range(768))]:"},{"line_number":60,"context_line":"            crypt \u003d memcache_crypt.encrypt_data(keys[\u0027ENCRYPTION\u0027], data)"},{"line_number":61,"context_line":"            decrypt \u003d memcache_crypt.decrypt_data(keys[\u0027ENCRYPTION\u0027], crypt)"},{"line_number":62,"context_line":"            self.assertEqual(data, decrypt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2B9xM%3D","line":59,"updated":"2014-01-20 10:33:32.000000000","message":"The original code is already working with Python3 and is more efficient than the proposed update.","commit_id":"aa05b354cf574ad5473e1258727b20498e71c4df"},{"author":{"_account_id":9645,"name":"lizheming","email":"lizheming.li@huawei.com","username":"lizheming"},"change_message_id":"95567628f4a3597a130ef64ca8d1c5cb5a8cc4f1","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        keys \u003d self._setup_keys(\u0027ENCRYPT\u0027)"},{"line_number":57,"context_line":"        # what you put in is what you get out"},{"line_number":58,"context_line":"        for data in [\u0027data\u0027, \u00271234567890123456\u0027, \u0027\\x00\\xFF\u0027 * 13"},{"line_number":59,"context_line":"                     ] + [chr(x % 256) * x for x in list(range(768))]:"},{"line_number":60,"context_line":"            crypt \u003d memcache_crypt.encrypt_data(keys[\u0027ENCRYPTION\u0027], data)"},{"line_number":61,"context_line":"            decrypt \u003d memcache_crypt.decrypt_data(keys[\u0027ENCRYPTION\u0027], crypt)"},{"line_number":62,"context_line":"            self.assertEqual(data, decrypt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2B4j4%3D","line":59,"in_reply_to":"AAAAUH%2F%2B9m0%3D","updated":"2014-01-21 05:02:36.000000000","message":"I agree, it is useless","commit_id":"aa05b354cf574ad5473e1258727b20498e71c4df"},{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"9064ec1c5aa34bb7bec20e62512a42a509f4a6c2","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        keys \u003d self._setup_keys(\u0027ENCRYPT\u0027)"},{"line_number":57,"context_line":"        # what you put in is what you get out"},{"line_number":58,"context_line":"        for data in [\u0027data\u0027, \u00271234567890123456\u0027, \u0027\\x00\\xFF\u0027 * 13"},{"line_number":59,"context_line":"                     ] + [chr(x % 256) * x for x in list(range(768))]:"},{"line_number":60,"context_line":"            crypt \u003d memcache_crypt.encrypt_data(keys[\u0027ENCRYPTION\u0027], data)"},{"line_number":61,"context_line":"            decrypt \u003d memcache_crypt.decrypt_data(keys[\u0027ENCRYPTION\u0027], crypt)"},{"line_number":62,"context_line":"            self.assertEqual(data, decrypt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2B9m0%3D","line":59,"in_reply_to":"AAAAUH%2F%2B9xM%3D","updated":"2014-01-20 11:15:47.000000000","message":"I agree with Florent, the change is useless and is inefficient.","commit_id":"aa05b354cf574ad5473e1258727b20498e71c4df"}],"keystoneclient/utils.py":[{"author":{"_account_id":8996,"name":"Florent Flament","email":"contact@florentflament.com","username":"florent"},"change_message_id":"10b49f02535beaa4edb49abd9102bd8efecc0e9b","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    if max_length \u003c\u003d 0:"},{"line_number":66,"context_line":"        return string"},{"line_number":67,"context_line":"    return \u0027\\n\u0027.join([string[i:i + max_length] for i in"},{"line_number":68,"context_line":"                     list(range(0, len(string), max_length))])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"def print_dict(d, wrap\u003d0):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2B9xE%3D","line":68,"updated":"2014-01-20 10:33:32.000000000","message":"The original code is already working with Python3 and is more efficient than the proposed update.","commit_id":"aa05b354cf574ad5473e1258727b20498e71c4df"},{"author":{"_account_id":9107,"name":"Victor Stinner","email":"vstinner@redhat.com","username":"haypo"},"change_message_id":"9064ec1c5aa34bb7bec20e62512a42a509f4a6c2","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    if max_length \u003c\u003d 0:"},{"line_number":66,"context_line":"        return string"},{"line_number":67,"context_line":"    return \u0027\\n\u0027.join([string[i:i + max_length] for i in"},{"line_number":68,"context_line":"                     list(range(0, len(string), max_length))])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"def print_dict(d, wrap\u003d0):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2B9mw%3D","line":68,"in_reply_to":"AAAAUH%2F%2B9xE%3D","updated":"2014-01-20 11:15:47.000000000","message":"ditto","commit_id":"aa05b354cf574ad5473e1258727b20498e71c4df"}]}
