{"action":"created","issue":{"url":"https://api.github.com/repos/kivy/kivy/issues/2906","labels_url":"https://api.github.com/repos/kivy/kivy/issues/2906/labels{/name}","comments_url":"https://api.github.com/repos/kivy/kivy/issues/2906/comments","events_url":"https://api.github.com/repos/kivy/kivy/issues/2906/events","html_url":"https://github.com/kivy/kivy/pull/2906","id":55444750,"number":2906,"title":"Don't break application on time changes","user":{"login":"derekstavis","id":1611639,"avatar_url":"https://avatars.githubusercontent.com/u/1611639?v=3","gravatar_id":"","url":"https://api.github.com/users/derekstavis","html_url":"https://github.com/derekstavis","followers_url":"https://api.github.com/users/derekstavis/followers","following_url":"https://api.github.com/users/derekstavis/following{/other_user}","gists_url":"https://api.github.com/users/derekstavis/gists{/gist_id}","starred_url":"https://api.github.com/users/derekstavis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/derekstavis/subscriptions","organizations_url":"https://api.github.com/users/derekstavis/orgs","repos_url":"https://api.github.com/users/derekstavis/repos","events_url":"https://api.github.com/users/derekstavis/events{/privacy}","received_events_url":"https://api.github.com/users/derekstavis/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kivy/kivy/labels/confirmed","name":"confirmed","color":"009800"},{"url":"https://api.github.com/repos/kivy/kivy/labels/core","name":"core","color":"444444"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/kivy/kivy/milestones/25","html_url":"https://github.com/kivy/kivy/milestones/1.9.1","labels_url":"https://api.github.com/repos/kivy/kivy/milestones/25/labels","id":741176,"number":25,"title":"1.9.1","description":"","creator":{"login":"akshayaurora","id":788023,"avatar_url":"https://avatars.githubusercontent.com/u/788023?v=3","gravatar_id":"","url":"https://api.github.com/users/akshayaurora","html_url":"https://github.com/akshayaurora","followers_url":"https://api.github.com/users/akshayaurora/followers","following_url":"https://api.github.com/users/akshayaurora/following{/other_user}","gists_url":"https://api.github.com/users/akshayaurora/gists{/gist_id}","starred_url":"https://api.github.com/users/akshayaurora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akshayaurora/subscriptions","organizations_url":"https://api.github.com/users/akshayaurora/orgs","repos_url":"https://api.github.com/users/akshayaurora/repos","events_url":"https://api.github.com/users/akshayaurora/events{/privacy}","received_events_url":"https://api.github.com/users/akshayaurora/received_events","type":"User","site_admin":false},"open_issues":16,"closed_issues":78,"state":"open","created_at":"2014-08-03T19:04:24Z","updated_at":"2015-12-08T16:10:20Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2015-01-26T03:56:00Z","updated_at":"2015-12-12T23:29:47Z","closed_at":"2015-11-22T19:14:24Z","pull_request":{"url":"https://api.github.com/repos/kivy/kivy/pulls/2906","html_url":"https://github.com/kivy/kivy/pull/2906","diff_url":"https://github.com/kivy/kivy/pull/2906.diff","patch_url":"https://github.com/kivy/kivy/pull/2906.patch"},"body":"Python's standard library `time.time` function relies on `gettimeofday`, a clock source sensitive to system/ntp time changes, causing Kivy applications to freeze when time goes backwards. \r\n\r\nThis patch makes use of `clock_gettime` to retrieve a always increasing time via `CLOCK_MONOTONIC` or `CLOCK_MONOTONIC_RAW` (a Linux-specific clone) which aren't affected by system/ntp time changes."},"comment":{"url":"https://api.github.com/repos/kivy/kivy/issues/comments/164201724","html_url":"https://github.com/kivy/kivy/pull/2906#issuecomment-164201724","issue_url":"https://api.github.com/repos/kivy/kivy/issues/2906","id":164201724,"user":{"login":"dessant","id":7513068,"avatar_url":"https://avatars.githubusercontent.com/u/7513068?v=3","gravatar_id":"","url":"https://api.github.com/users/dessant","html_url":"https://github.com/dessant","followers_url":"https://api.github.com/users/dessant/followers","following_url":"https://api.github.com/users/dessant/following{/other_user}","gists_url":"https://api.github.com/users/dessant/gists{/gist_id}","starred_url":"https://api.github.com/users/dessant/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dessant/subscriptions","organizations_url":"https://api.github.com/users/dessant/orgs","repos_url":"https://api.github.com/users/dessant/repos","events_url":"https://api.github.com/users/dessant/events{/privacy}","received_events_url":"https://api.github.com/users/dessant/received_events","type":"User","site_admin":false},"created_at":"2015-12-12T23:29:47Z","updated_at":"2015-12-12T23:29:47Z","body":"@derekstavis, I've tried to reproduce a freeze on linux when setting the time back, with a sample app, but I couldn't do it. Would you share an example or at least tell us how te reproduce the bug? I would like to document it in a new issue.\r\n\r\nI'm not sure if you're aware of it, but the pr was patched because of https://github.com/kivy/kivy/issues/3797, so now it mostly just falls back to the old implementation, I wasn't able to use it on debian and travis also failed with it, which is ubuntu.\r\n\r\n@akshayaurora, you mentioned running it in a vm, could you tell us the distro and version you used?"}}