)]}'
{"tempest/auth.py":[{"author":{"_account_id":9624,"name":"Ramy Asselin","email":"ramyasselin@yahoo.com","username":"asselin"},"change_message_id":"afbcef9f06a46ddbfccae67203445d9b49c11926","unresolved":false,"context_lines":[{"line_number":395,"context_line":"        _, access \u003d auth_data"},{"line_number":396,"context_line":"        expiry \u003d datetime.datetime.strptime(access[\u0027expires_at\u0027],"},{"line_number":397,"context_line":"                                            self.EXPIRY_DATE_FORMAT)"},{"line_number":398,"context_line":"        return expiry - self.token_expiry_threshold \u003c\u003d datetime.datetime.now()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAWH%2F%2B470%3D","line":398,"updated":"2014-03-21 22:58:43.000000000","message":"Token expirations use UTC, so use datetime.datetime.utcnow() instead of now().\n\norig 2014-03-21T23:51:47Z \nexpiry: 2014-03-21 23:51:47 \nrenew_time is 2014-03-21 23:50:47 \nnow is 2014-03-21 15:52:02.807020 \nutcnow is 2014-03-21 22:52:02.807033","commit_id":"c6e7f92b6939687b60c0bde60e72ac529802f081"}]}
