{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/27547","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/27547/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/27547/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/27547/events","html_url":"https://github.com/rust-lang/rust/pull/27547","id":99288361,"number":27547,"title":"Block import resolution only on 'pub' imports","user":{"login":"vberger","id":3009227,"avatar_url":"https://avatars.githubusercontent.com/u/3009227?v=3","gravatar_id":"","url":"https://api.github.com/users/vberger","html_url":"https://github.com/vberger","followers_url":"https://api.github.com/users/vberger/followers","following_url":"https://api.github.com/users/vberger/following{/other_user}","gists_url":"https://api.github.com/users/vberger/gists{/gist_id}","starred_url":"https://api.github.com/users/vberger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vberger/subscriptions","organizations_url":"https://api.github.com/users/vberger/orgs","repos_url":"https://api.github.com/users/vberger/repos","events_url":"https://api.github.com/users/vberger/events{/privacy}","received_events_url":"https://api.github.com/users/vberger/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},"milestone":null,"comments":12,"created_at":"2015-08-05T20:08:20Z","updated_at":"2015-08-09T22:34:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang/rust/pulls/27547","html_url":"https://github.com/rust-lang/rust/pull/27547","diff_url":"https://github.com/rust-lang/rust/pull/27547.diff","patch_url":"https://github.com/rust-lang/rust/pull/27547.patch"},"body":"As noted in my previous PR #27439 , the import resolution algorithm has two cases where it bails out:\r\n\r\n- The algorithm will delay an import if the module containing the target of the import still has unresolved glob imports\r\n- The algorithm will delay a glob import of the target module still has unresolved imports\r\n\r\nThis PR alters the behaviour to only bail out when the above described unresolved imports are `pub`, as non-pub imports don't affect the result anyway.\r\n\r\nIt is still possible to fail the algorithm with examples like\r\n```rust\r\npub mod a {\r\n    pub use b::*;\r\n}\r\n\r\npub mod b {\r\n    pub use a::*;\r\n}\r\n```\r\nbut such configurations cannot be resolved in any meaningful way, as these are cyclic imports.\r\n\r\nCloses #4865"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/129257736","html_url":"https://github.com/rust-lang/rust/pull/27547#issuecomment-129257736","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/27547","id":129257736,"user":{"login":"bors","id":3372342,"avatar_url":"https://avatars.githubusercontent.com/u/3372342?v=3","gravatar_id":"","url":"https://api.github.com/users/bors","html_url":"https://github.com/bors","followers_url":"https://api.github.com/users/bors/followers","following_url":"https://api.github.com/users/bors/following{/other_user}","gists_url":"https://api.github.com/users/bors/gists{/gist_id}","starred_url":"https://api.github.com/users/bors/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bors/subscriptions","organizations_url":"https://api.github.com/users/bors/orgs","repos_url":"https://api.github.com/users/bors/repos","events_url":"https://api.github.com/users/bors/events{/privacy}","received_events_url":"https://api.github.com/users/bors/received_events","type":"User","site_admin":false},"created_at":"2015-08-09T22:34:34Z","updated_at":"2015-08-09T22:34:34Z","body":":hourglass: Testing commit 5847ea7 with merge 8d6a10d..."}}