{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang-nursery/log/issues/68","labels_url":"https://api.github.com/repos/rust-lang-nursery/log/issues/68/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang-nursery/log/issues/68/comments","events_url":"https://api.github.com/repos/rust-lang-nursery/log/issues/68/events","html_url":"https://github.com/rust-lang-nursery/log/pull/68","id":125810075,"number":68,"title":"Split crate into log and log_core","user":{"login":"Amanieu","id":278509,"avatar_url":"https://avatars.githubusercontent.com/u/278509?v=3","gravatar_id":"","url":"https://api.github.com/users/Amanieu","html_url":"https://github.com/Amanieu","followers_url":"https://api.github.com/users/Amanieu/followers","following_url":"https://api.github.com/users/Amanieu/following{/other_user}","gists_url":"https://api.github.com/users/Amanieu/gists{/gist_id}","starred_url":"https://api.github.com/users/Amanieu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Amanieu/subscriptions","organizations_url":"https://api.github.com/users/Amanieu/orgs","repos_url":"https://api.github.com/users/Amanieu/repos","events_url":"https://api.github.com/users/Amanieu/events{/privacy}","received_events_url":"https://api.github.com/users/Amanieu/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2016-01-10T09:37:29Z","updated_at":"2016-01-12T17:40:02Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang-nursery/log/pulls/68","html_url":"https://github.com/rust-lang-nursery/log/pull/68","diff_url":"https://github.com/rust-lang-nursery/log/pull/68.diff","patch_url":"https://github.com/rust-lang-nursery/log/pull/68.patch"},"body":"This splits the `log` crate into `log` and `log_core`. `log_core` has no dependency on `libc` or `libstd`, which allows it to be used in kernel or embedded environments.\r\n\r\nBoth crates export a similar API, with a few exceptions:\r\n- Only in `log`: panic handler support, `set_logger` function\r\n- Only in `log_core`: `set_logger_raw`, `shutdown_logger`\r\n\r\n`log` re-exports most of the definitions from `log_core`, which allows libraries using `log_core` to work with executables using `log`.\r\n\r\nFixes #13"},"comment":{"url":"https://api.github.com/repos/rust-lang-nursery/log/issues/comments/170986236","html_url":"https://github.com/rust-lang-nursery/log/pull/68#issuecomment-170986236","issue_url":"https://api.github.com/repos/rust-lang-nursery/log/issues/68","id":170986236,"user":{"login":"alexcrichton","id":64996,"avatar_url":"https://avatars.githubusercontent.com/u/64996?v=3","gravatar_id":"","url":"https://api.github.com/users/alexcrichton","html_url":"https://github.com/alexcrichton","followers_url":"https://api.github.com/users/alexcrichton/followers","following_url":"https://api.github.com/users/alexcrichton/following{/other_user}","gists_url":"https://api.github.com/users/alexcrichton/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcrichton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcrichton/subscriptions","organizations_url":"https://api.github.com/users/alexcrichton/orgs","repos_url":"https://api.github.com/users/alexcrichton/repos","events_url":"https://api.github.com/users/alexcrichton/events{/privacy}","received_events_url":"https://api.github.com/users/alexcrichton/received_events","type":"User","site_admin":false},"created_at":"2016-01-12T17:40:02Z","updated_at":"2016-01-12T17:40:02Z","body":"Instead of having a no_std feature it could instead be a \"std\" feature that's enabled by default, that way enabling no_std support would just be `default-features = false`.\r\n\r\nI also think that while the registration is different, the ergonomic registration could just defer to the unergonomic registration, and then a no_std version only has the unergonomic variants.\r\n\r\nI'm wary to split such a core crate a `log` into two crates. It's somewhat confusing that if you're no_std you have to use log_core, when everywhere else you just use log. It's much easier conceptually to just use log everywhere."}}