-
Notifications
You must be signed in to change notification settings - Fork 10.6k
[APINotes] Add Swift 3 SwiftName for NSXMLDTDKind #6901
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
b2a8895 to
c8da212
Compare
|
@swift-ci Please smoke test |
|
so this will be a breaking change without an update to the Foundation headers right? |
|
It's not for two different reasons:
After this change, Foundation can either remove its NS_SWIFT_NAMEs from NSXMLDTDKind entirely, or fix it in the header and then remove the unversioned entry from the API notes. We're stuck with this new versioned one for compatibility reasons, though. |
|
TBH I would much rather remove that ugliness from our headers (this particular case is hard to read). If we did that (removed the NS_SWIFT_NAME) it would need a synchronized submission then? Just making sure that it isn't changing the name in swift 3 or 4 'cause that would require a full API review. |
|
I don't think we need a fully synchronized submission, but Foundation will have to wait until this change is submitted first. Still, this is planning to change the name in Swift 4; it's just changing it to "dtd" which it was always intended to be in Swift 3. (And presumably was reviewed as such.) |
|
@swift-ci Please smoke test Linux |
|
@parkera should we hold off on this until proposals go through for the swift 4 naming to dtd? |
|
If you'd prefer I can change it to "DTDKind" everywhere for now, just to get the Clang patch unblocked. |
|
I think that would be the best route so that we can get it approved as an API change - it seems reasonable but there may be other issues yet unforeseen (iirc there is ambiguity with dtd) |
In the SDK shipped with Swift 3, NSXMLNodeKind's enumerator NSXMLDTDKind was mistakenly annotated with `NS_SWIFT_NAME(DTDKind)` instead of `NS_SWIFT_NAME(dtd)`. We'd like to fix that in a later version of the SDK, but we need to maintain Swift 3 compatibility on the off-chance someone is using the bad name. If we /do/ decide to change this, we can undo this change (going back to an API note SwiftName of 'dtd') and add a Swift-3-versioned SwiftName of 'DTDKind' instead.
c8da212 to
a098292
Compare
|
Okay, does this look good? @swift-ci Please smoke test |
|
(ping) |
|
Yea go for it, I will see if we can follow up on this in Foundation separately. |
|
Thank you! |
In the SDK shipped with Swift 3, NSXMLNodeKind's enumerator NSXMLDTDKind was mistakenly annotated with
NS_SWIFT_NAME(DTDKind)instead ofNS_SWIFT_NAME(dtd). We'd like to fix that in a later version of the SDK, but we need to maintain Swift 3 compatibility on the offchance someone is using the bad name.There's already an unversioned SwiftName API note for NSXMLDTDKind to mark it as 'dtd', so with this change we can just not mention it in the headers at all.