{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/37247","repository_url":"https://api.github.com/repos/rust-lang/rust","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/37247/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/37247/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/37247/events","html_url":"https://github.com/rust-lang/rust/pull/37247","id":183597141,"number":37247,"title":"macros: Future proof `#[no_link]`","user":{"login":"jseyfried","id":8652869,"avatar_url":"https://avatars.githubusercontent.com/u/8652869?v=3","gravatar_id":"","url":"https://api.github.com/users/jseyfried","html_url":"https://github.com/jseyfried","followers_url":"https://api.github.com/users/jseyfried/followers","following_url":"https://api.github.com/users/jseyfried/following{/other_user}","gists_url":"https://api.github.com/users/jseyfried/gists{/gist_id}","starred_url":"https://api.github.com/users/jseyfried/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jseyfried/subscriptions","organizations_url":"https://api.github.com/users/jseyfried/orgs","repos_url":"https://api.github.com/users/jseyfried/repos","events_url":"https://api.github.com/users/jseyfried/events{/privacy}","received_events_url":"https://api.github.com/users/jseyfried/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"nrc","id":762626,"avatar_url":"https://avatars.githubusercontent.com/u/762626?v=3","gravatar_id":"","url":"https://api.github.com/users/nrc","html_url":"https://github.com/nrc","followers_url":"https://api.github.com/users/nrc/followers","following_url":"https://api.github.com/users/nrc/following{/other_user}","gists_url":"https://api.github.com/users/nrc/gists{/gist_id}","starred_url":"https://api.github.com/users/nrc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nrc/subscriptions","organizations_url":"https://api.github.com/users/nrc/orgs","repos_url":"https://api.github.com/users/nrc/repos","events_url":"https://api.github.com/users/nrc/events{/privacy}","received_events_url":"https://api.github.com/users/nrc/received_events","type":"User","site_admin":false},"assignees":[{"login":"nrc","id":762626,"avatar_url":"https://avatars.githubusercontent.com/u/762626?v=3","gravatar_id":"","url":"https://api.github.com/users/nrc","html_url":"https://github.com/nrc","followers_url":"https://api.github.com/users/nrc/followers","following_url":"https://api.github.com/users/nrc/following{/other_user}","gists_url":"https://api.github.com/users/nrc/gists{/gist_id}","starred_url":"https://api.github.com/users/nrc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nrc/subscriptions","organizations_url":"https://api.github.com/users/nrc/orgs","repos_url":"https://api.github.com/users/nrc/repos","events_url":"https://api.github.com/users/nrc/events{/privacy}","received_events_url":"https://api.github.com/users/nrc/received_events","type":"User","site_admin":false}],"milestone":null,"comments":2,"created_at":"2016-10-18T05:59:33Z","updated_at":"2016-10-21T04:53:27Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang/rust/pulls/37247","html_url":"https://github.com/rust-lang/rust/pull/37247","diff_url":"https://github.com/rust-lang/rust/pull/37247.diff","patch_url":"https://github.com/rust-lang/rust/pull/37247.patch"},"body":"This PR future proofs `#[no_link]` for macro modularization (cc #35896).\r\n\r\nFirst, we resolve all `#[no_link] extern crate`s. `#[no_link]` crates without `#[macro_use]` or `#[macro_reexport]` are not resolved today, this is a [breaking-change]. For example,\r\n```rust\r\n#[no_link] extern crate non_existent_crate; //< this becomes a `crate not found` error.\r\n```\r\nAny breakage can be fixed by simply removing the `#[no_link] extern crate`.\r\n\r\nSecond, `#[no_link] extern crate`s will define an empty module in type namespace to eventually allow importing the crate's macros with `use`. This is a [breaking-change], for example:\r\n```rust\r\n#[macro_use] #[no_link] extern crate syntax;\r\nmod syntax {} //< This becomes a duplicate error.\r\n```\r\n\r\nr? @nrc"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/255293209","html_url":"https://github.com/rust-lang/rust/pull/37247#issuecomment-255293209","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/37247","id":255293209,"user":{"login":"eddyb","id":77424,"avatar_url":"https://avatars.githubusercontent.com/u/77424?v=3","gravatar_id":"","url":"https://api.github.com/users/eddyb","html_url":"https://github.com/eddyb","followers_url":"https://api.github.com/users/eddyb/followers","following_url":"https://api.github.com/users/eddyb/following{/other_user}","gists_url":"https://api.github.com/users/eddyb/gists{/gist_id}","starred_url":"https://api.github.com/users/eddyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eddyb/subscriptions","organizations_url":"https://api.github.com/users/eddyb/orgs","repos_url":"https://api.github.com/users/eddyb/repos","events_url":"https://api.github.com/users/eddyb/events{/privacy}","received_events_url":"https://api.github.com/users/eddyb/received_events","type":"User","site_admin":false},"created_at":"2016-10-21T04:53:27Z","updated_at":"2016-10-21T04:53:27Z","body":"On it."}}
{"actor":{"display_login":"eddyb"}}