Bug 195999

Summary: Compilation broken in WKWebViewGetContents.mm with iOS SDK (rev 243195)
Product: WebKit Reporter: olivierrobin
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: ajuma, commit-queue, fred.wang, lforschler, thorton, timothy, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Local Build   
Hardware: Unspecified   
OS: iOS 12   
Attachments:
Description Flags
Initial upload none

Description olivierrobin 2019-03-20 06:30:56 PDT
Compilation is broken with error 

webkit/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:60:14: error: '_getContentsAsAttributedStringWithCompletionHandler:' is unavailable: not available on iOS
    [webView _getContentsAsAttributedStringWithCompletionHandler:^(NSAttributedString *attributedString, NSDictionary<NSAttributedStringDocumentAttributeKey, id> *documentAttributes, NSError *error) {
             ^
In file included from webkit/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:30:
In file included from webkit/Tools/TestWebKitAPI/cocoa/TestNavigationDelegate.h:28:
In file included from /webkit/WebKitBuild/Debug-iphonesimulator/WebKit.framework/PrivateHeaders/WKNavigationDelegatePrivate.h:29:
/WebKitBuild/Debug-iphonesimulator/WebKit.framework/PrivateHeaders/WKWebViewPrivate.h:367:1: note: '_getContentsAsAttributedStringWithCompletionHandler:' has been explicitly marked
      unavailable here
- (void)_getContentsAsAttributedStringWithCompletionHandler:(void (^)(NSAttributedString *, NSDictionary<NSAttributedStringDocumentAttributeKey, id> *, NSError *))completionHandler API_AVAILABLE(macosx(NA), ios(NA));
^
1 error generated.
Comment 1 olivierrobin 2019-03-20 08:47:13 PDT
Created attachment 365347 [details]
Initial upload
Comment 2 Ali Juma 2019-03-20 08:50:27 PDT
This typo (WK_MAC_TBA instead of WK_IOS_TBA) unfortunately happens every so often and breaks the open-source iOS build.
Comment 3 WebKit Commit Bot 2019-03-20 09:48:00 PDT
Comment on attachment 365347 [details]
Initial upload

Clearing flags on attachment: 365347

Committed r243212: <https://trac.webkit.org/changeset/243212>
Comment 4 WebKit Commit Bot 2019-03-20 09:48:02 PDT
All reviewed patches have been landed.  Closing bug.
Comment 5 Radar WebKit Bug Importer 2019-03-20 09:49:19 PDT
<rdar://problem/49064939>
Comment 6 Frédéric Wang (:fredw) 2019-03-21 05:06:20 PDT
(In reply to Ali Juma from comment #2)
> This typo (WK_MAC_TBA instead of WK_IOS_TBA) unfortunately happens every so
> often and breaks the open-source iOS build.

I had added a style check in bug 181394 ; I wonder why the error was not caught by check-webkit-style?
Comment 7 Frédéric Wang (:fredw) 2019-03-21 05:47:25 PDT
(In reply to Frédéric Wang (:fredw) from comment #6)
> (In reply to Ali Juma from comment #2)
> > This typo (WK_MAC_TBA instead of WK_IOS_TBA) unfortunately happens every so
> > often and breaks the open-source iOS build.
> 
> I had added a style check in bug 181394 ; I wonder why the error was not
> caught by check-webkit-style?

OK it was actually detected: https://bugs.webkit.org/show_bug.cgi?id=195636#c52
Comment 8 Timothy Hatcher 2019-03-21 10:22:50 PDT
(In reply to Frédéric Wang (:fredw) from comment #7)
> (In reply to Frédéric Wang (:fredw) from comment #6)
> > (In reply to Ali Juma from comment #2)
> > > This typo (WK_MAC_TBA instead of WK_IOS_TBA) unfortunately happens every so
> > > often and breaks the open-source iOS build.
> > 
> > I had added a style check in bug 181394 ; I wonder why the error was not
> > caught by check-webkit-style?
> 
> OK it was actually detected:
> https://bugs.webkit.org/show_bug.cgi?id=195636#c52

Oops, I remember seeing that and not fully understanding / reading it I guess.

"WK_MAC_TBA is neither a version number nor WK_IOS_TBA"

That statement is true, it is not a number nor WK_IOS_TBA — nothing to see here. It sounded (at a glance) like it didn't approve of a define being used — expecting only a number — since macosx(WK_MAC_TBA) was also used on the same line. The missing part is this is about the WK_MAC_TBA  being used in the ios() macro.

An error more like would help:

"ios(WK_MAC_TBA) is invalid; expected WK_IOS_TBA or a number"

I'll file a bug on this.
Comment 9 Frédéric Wang (:fredw) 2019-03-21 15:18:52 PDT
(In reply to Timothy Hatcher from comment #8)
> (In reply to Frédéric Wang (:fredw) from comment #7)
> > (In reply to Frédéric Wang (:fredw) from comment #6)
> > > (In reply to Ali Juma from comment #2)
> > > > This typo (WK_MAC_TBA instead of WK_IOS_TBA) unfortunately happens every so
> > > > often and breaks the open-source iOS build.
> > > 
> > > I had added a style check in bug 181394 ; I wonder why the error was not
> > > caught by check-webkit-style?
> > 
> > OK it was actually detected:
> > https://bugs.webkit.org/show_bug.cgi?id=195636#c52
> 
> Oops, I remember seeing that and not fully understanding / reading it I
> guess.
> 
> "WK_MAC_TBA is neither a version number nor WK_IOS_TBA"
> 
> That statement is true, it is not a number nor WK_IOS_TBA — nothing to see
> here. It sounded (at a glance) like it didn't approve of a define being used
> — expecting only a number — since macosx(WK_MAC_TBA) was also used on the
> same line. The missing part is this is about the WK_MAC_TBA  being used in
> the ios() macro.
> 
> An error more like would help:
> 
> "ios(WK_MAC_TBA) is invalid; expected WK_IOS_TBA or a number"
> 
> I'll file a bug on this.

I see. Thanks.