{"action":"created","issue":{"url":"https://api.github.com/repos/polyfox/moon/issues/16","labels_url":"https://api.github.com/repos/polyfox/moon/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/polyfox/moon/issues/16/comments","events_url":"https://api.github.com/repos/polyfox/moon/issues/16/events","html_url":"https://github.com/polyfox/moon/pull/16","id":92517216,"number":16,"title":"High Performance clock","user":{"login":"IceDragon200","id":1649873,"avatar_url":"https://avatars.githubusercontent.com/u/1649873?v=3","gravatar_id":"","url":"https://api.github.com/users/IceDragon200","html_url":"https://github.com/IceDragon200","followers_url":"https://api.github.com/users/IceDragon200/followers","following_url":"https://api.github.com/users/IceDragon200/following{/other_user}","gists_url":"https://api.github.com/users/IceDragon200/gists{/gist_id}","starred_url":"https://api.github.com/users/IceDragon200/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IceDragon200/subscriptions","organizations_url":"https://api.github.com/users/IceDragon200/orgs","repos_url":"https://api.github.com/users/IceDragon200/repos","events_url":"https://api.github.com/users/IceDragon200/events{/privacy}","received_events_url":"https://api.github.com/users/IceDragon200/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-07-02T00:47:00Z","updated_at":"2015-07-02T14:36:31Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/polyfox/moon/pulls/16","html_url":"https://github.com/polyfox/moon/pull/16","diff_url":"https://github.com/polyfox/moon/pull/16.diff","patch_url":"https://github.com/polyfox/moon/pull/16.patch"},"body":"Currently only the linux implementation is in place, this replaces the need for glfw in the system module for time keeping.\r\n\r\n@archSeer Can you implement the Mac specific one, OSX stuff scares me. :("},"comment":{"url":"https://api.github.com/repos/polyfox/moon/issues/comments/118052179","html_url":"https://github.com/polyfox/moon/pull/16#issuecomment-118052179","issue_url":"https://api.github.com/repos/polyfox/moon/issues/16","id":118052179,"user":{"login":"IceDragon200","id":1649873,"avatar_url":"https://avatars.githubusercontent.com/u/1649873?v=3","gravatar_id":"","url":"https://api.github.com/users/IceDragon200","html_url":"https://github.com/IceDragon200","followers_url":"https://api.github.com/users/IceDragon200/followers","following_url":"https://api.github.com/users/IceDragon200/following{/other_user}","gists_url":"https://api.github.com/users/IceDragon200/gists{/gist_id}","starred_url":"https://api.github.com/users/IceDragon200/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IceDragon200/subscriptions","organizations_url":"https://api.github.com/users/IceDragon200/orgs","repos_url":"https://api.github.com/users/IceDragon200/repos","events_url":"https://api.github.com/users/IceDragon200/events{/privacy}","received_events_url":"https://api.github.com/users/IceDragon200/received_events","type":"User","site_admin":false},"created_at":"2015-07-02T14:36:31Z","updated_at":"2015-07-02T14:36:31Z","body":"And you need to initialize GLFW, which requires a display driver present in order to get time, not to mention this forces the system module, whose sole purpose is to define core data classes and utilities to carry around the weight of a windowing gem, when all it wants from it is time.\r\n\r\n```ruby\r\n> GLFW.time\r\n(mirb):2: 65537: The GLFW library is not initialized (GLFWError)\r\n``` \r\n\r\nThe `GLFW.time` here is just a quick wrapper around:\r\n```c++\r\nmrb_float_value(mrb, glfwGetTime());\r\n```\r\n\r\nSo, we can ignore this, keep `glfw` as a dependency of the system module, and then I disable the clock test to have tests \"pass\".\r\n\r\nBesides when you implement it once, you won't have to change it again unless someone magically comes out with a better time api, for a target OS.\r\n\r\n\r\ntl;dr IMPLEMENT OR CONTINUE TO HAVE TEST FAIL OR JUST DISABLE THE CLOCK TEST"}}