-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Disable implementationOnly Foundation import for resource accessor #5997
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@swift-ci please smoke test |
If we decide to merge this, we'll also need a 5.8 cherry-pick, of course. |
Can you elaborate on this? How exactly would this work? |
I was thinking we do an import scan on all files of any modules that contains resources and if we find imports of |
Is there some specific tooling already for this type of scanning, or do you think that a simple textual search without even parsing source files would be sufficient? |
Yah, we have |
We may need to augment the compiler so as to distinguish Also (just a brain dump here) this will need to be kept in sync with future Foundation modularization—a user may down the line import one of the future packages like One alternative which I anticipate will be less high-maintenance would be an augmentation of |
That is true, but also a pre-existing problem that as far as I know hasn't been reported so far. Because of that, I think it would be ok to ignore for now. I think for 5.8, the most sensible thing is to go back to the 5.7 behavior and revisit for 5.9+ in some other form. Other thoughts? |
Agree, probably best to roll back for now. |
This was a change that landed in #5728 but it has the unintended consequence of generating unfixable warnings for packages which do import Foundation. We can probably solve that with import scanning to decide between the two import types, but given where we are in the 5.8 schedule, this seems to be something better done for a future manifest version.
b20845f
to
44f19ff
Compare
@swift-ci please smoke test |
…5997) This was a change that landed in #5728 but it has the unintended consequence of generating unfixable warnings for packages which do import Foundation. We can probably solve that with import scanning to decide between the two import types, but given where we are in the 5.8 schedule, this seems to be something better done for a future manifest version. (cherry picked from commit cb9d03b)
…5997) (#6055) This was a change that landed in #5728 but it has the unintended consequence of generating unfixable warnings for packages which do import Foundation. We can probably solve that with import scanning to decide between the two import types, but given where we are in the 5.8 schedule, this seems to be something better done for a future manifest version. (cherry picked from commit cb9d03b)
This was a change that landed in #5728 but it has the unintended consequence of generating unfixable warnings for packages which do import Foundation. We can probably solve that with import scanning to decide between the two import types, but given where we are in the 5.8 schedule, this seems to be something better done for a future manifest version.
See also #5991