)]}'
{"keystone/token/providers/fernet/token_formatters.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c0c943ec4b96fcec1a1f2d53b4d8afa0d6c3cd00","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        \"\"\"Returns the creation time of a valid Fernet token.\"\"\""},{"line_number":84,"context_line":"        # tokens may be transmitted as Unicode, but they\u0027re just ASCII"},{"line_number":85,"context_line":"        # (pypi/cryptography will refuse to operate on Unicode input)"},{"line_number":86,"context_line":"        fernet_token \u003d six.binary_type(fernet_token)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # the base64 padding on fernet tokens is made URL-safe"},{"line_number":89,"context_line":"        fernet_token \u003d urllib.parse.unquote(fernet_token)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_e7c24d86","side":"PARENT","line":86,"updated":"2015-07-30 16:15:31.000000000","message":"so, just to double check, we *don\u0027t* need this anymore because we\u0027ve already converted the token to ascii?","commit_id":"df62931110096d3960de61e175a672c40fd002f6"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"2a26844becc8e4dd643789dc7fdcc37a54f24c7a","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        \"\"\"Returns the creation time of a valid Fernet token.\"\"\""},{"line_number":84,"context_line":"        # tokens may be transmitted as Unicode, but they\u0027re just ASCII"},{"line_number":85,"context_line":"        # (pypi/cryptography will refuse to operate on Unicode input)"},{"line_number":86,"context_line":"        fernet_token \u003d six.binary_type(fernet_token)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # the base64 padding on fernet tokens is made URL-safe"},{"line_number":89,"context_line":"        fernet_token \u003d urllib.parse.unquote(fernet_token)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_c3504f0d","side":"PARENT","line":86,"in_reply_to":"3a50d1a3_e7c24d86","updated":"2015-07-31 03:57:32.000000000","message":"anything calling this or the method below should be sending bytes and the argument. at least in the unit tests this is true. i still need to test using typist against tempest.","commit_id":"df62931110096d3960de61e175a672c40fd002f6"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"15aa1c6b31026d1273277c4f784c0eedfa1fa5d4","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        fernet_token \u003d six.binary_type(fernet_token)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # the base64 padding on fernet tokens is made URL-safe"},{"line_number":89,"context_line":"        fernet_token \u003d urllib.parse.unquote(fernet_token)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"        # fernet tokens are base64 encoded and the padding made URL-safe"},{"line_number":92,"context_line":"        token_bytes \u003d base64.urlsafe_b64decode(fernet_token)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_278035f7","side":"PARENT","line":89,"updated":"2015-07-30 16:25:34.000000000","message":"shouldn\u0027t this be ascii encoded too?","commit_id":"df62931110096d3960de61e175a672c40fd002f6"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"2a26844becc8e4dd643789dc7fdcc37a54f24c7a","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        fernet_token \u003d six.binary_type(fernet_token)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        # the base64 padding on fernet tokens is made URL-safe"},{"line_number":89,"context_line":"        fernet_token \u003d urllib.parse.unquote(fernet_token)"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"        # fernet tokens are base64 encoded and the padding made URL-safe"},{"line_number":92,"context_line":"        token_bytes \u003d base64.urlsafe_b64decode(fernet_token)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_a372e3ae","side":"PARENT","line":89,"in_reply_to":"3a50d1a3_278035f7","updated":"2015-07-31 03:57:32.000000000","message":"No, unquote takes bytes and returns a string. the ascii encoding only happened where i took a string and needed bytes.","commit_id":"df62931110096d3960de61e175a672c40fd002f6"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c0c943ec4b96fcec1a1f2d53b4d8afa0d6c3cd00","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        \"\"\"Validates a Fernet token and returns the payload attributes.\"\"\""},{"line_number":170,"context_line":"        # Convert v2 unicode token to a string"},{"line_number":171,"context_line":"        if not isinstance(token, six.binary_type):"},{"line_number":172,"context_line":"            token \u003d token.encode(\u0027ascii\u0027)"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        serialized_payload \u003d self.unpack(token)"},{"line_number":175,"context_line":"        versioned_payload \u003d msgpack.unpackb(serialized_payload)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_07c0997b","side":"PARENT","line":172,"updated":"2015-07-30 16:15:31.000000000","message":"same here.","commit_id":"df62931110096d3960de61e175a672c40fd002f6"}]}
