<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>This proposal is specifically source breaking because we're only trying to deprecate and remove</div><div id="AppleMailSignature"><br></div><div id="AppleMailSignature">import {class|func|struct|...} Module.Entity</div><div id="AppleMailSignature"><br></div><div id="AppleMailSignature">-style imports (which not too many people seem to know actually exist).</div><div id="AppleMailSignature"><br>~Robert Widmann</div><div><br>2016/07/21 0:27、Pyry Jahkola <<a href="mailto:pyry.jahkola@iki.fi">pyry.jahkola@iki.fi</a>> のメッセージ:<br><br></div><blockquote type="cite"><div><meta http-equiv="Content-Type" content="text/html charset=utf-8"><br class=""><div><blockquote type="cite" class=""><div class="">On 21 Jul 2016, at 10:20, Robert Widmann <<a href="mailto:devteam.codafi@gmail.com" class="">devteam.codafi@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><div class="">Simple! You don't need to hide the others if we enforce a rule that explicitly mentioning one in the current file imports that name as a fileprivate identifier which shadows the ones not explicitly mentioned:</div></blockquote><div style="font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">What you're describing is making a distinction between an<span class="Apple-converted-space"> </span><i class="">open</i><span class="Apple-converted-space"> </span>module and an<span class="Apple-converted-space"> </span><i class="">imported</i><span class="Apple-converted-space"> </span>module and is both additive and out of scope for this particular proposal. We didn't want to touch module re-exports until that proposal came up later. This is a fantastic idea that we have plans to incorporate in there nonetheless. This distinction is far more powerful than our current approach of just opening every module that gets imported into the top level namespace.</div></div></blockquote><br class=""></div><div>Cool, thanks for the feedback. Now, is there a reason to consider any of this before Swift 3's timeframe? Isn't this all additive?</div><div><br class=""></div><div>In any case then, I'll hold that proposal back until Swift 3's scope has been fixed.</div><div><br class=""></div><div>— Pyry</div><div><br class=""></div></div></blockquote></body></html>