Bug 115852 - [NoInterfaceObject] extended attribute should be removed for several interfaces
Summary: [NoInterfaceObject] extended attribute should be removed for several interfaces
Alias: None
Product: WebKit
Classification: Unclassified
Component: Bindings (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Chris Dumez
Keywords: WebExposed
Depends on:
Reported: 2013-05-09 02:18 PDT by Chris Dumez
Modified: 2013-05-09 14:47 PDT (History)
13 users (show)

See Also:

Patch (23.05 KB, patch)
2013-05-09 06:55 PDT, Chris Dumez
buildbot: commit-queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion (516.63 KB, application/zip)
2013-05-09 08:14 PDT, Build Bot
no flags Details
Patch (22.10 KB, patch)
2013-05-09 08:20 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Dumez 2013-05-09 02:18:43 PDT
The following interfaces have the [NoInterfaceObject] extended attribute:
SecurityPolicy, History, Location, Navigator, Performance, PerformanceEntry, PerformanceMark, PerformanceMeasure, PerformanceNavigation, PerformanceResourceTiming, PerformanceTiming and Screen.

This means that there is no corresponding property on the global Window object with the same name.

However, this is incorrect according to their respective specifications:
- http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-history-interface
- http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-location-interface
- https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#securitypolicy
- http://www.w3.org/html/wg/drafts/html/master/webappapis.html#the-navigator-object
- http://www.w3.org/TR/navigation-timing/#performance
- https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html#sec-PerformanceEntry-interface
- http://www.w3.org/TR/navigation-timing/#performancenavigation
- http://www.w3.org/TR/navigation-timing/#performancetiming
- http://www.w3.org/TR/user-timing/#performancemark
- http://www.w3.org/TR/user-timing/#performancemeasure
- http://www.w3c-test.org/webperf/specs/ResourceTiming/#performanceresourcetiming
- http://dev.w3.org/csswg/cssom-view/#the-screen-interface

We should remove [NoInterfaceObject] from these interfaces to match the specs.

I confirmed the following behavior for Firefox:
All of them are exposed except SecurityPolicy, PerformanceEntry, PerformanceMark, PerformanceMeasure, PerformanceResourceTiming. The ones that are not exposed are unimplemented.

Corresponding Blink patch:
Comment 1 Chris Dumez 2013-05-09 06:55:14 PDT
Created attachment 201188 [details]
Comment 2 Build Bot 2013-05-09 08:14:12 PDT
Comment on attachment 201188 [details]

Attachment 201188 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/342100

New failing tests:
Comment 3 Build Bot 2013-05-09 08:14:17 PDT
Created attachment 201238 [details]
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-03  Port: mac-mountainlion  Platform: Mac OS X 10.8.2
Comment 4 Chris Dumez 2013-05-09 08:20:44 PDT
Created attachment 201239 [details]
Comment 5 WebKit Commit Bot 2013-05-09 14:46:56 PDT
Comment on attachment 201239 [details]

Clearing flags on attachment: 201239

Committed r149845: <http://trac.webkit.org/changeset/149845>
Comment 6 WebKit Commit Bot 2013-05-09 14:47:01 PDT
All reviewed patches have been landed.  Closing bug.