Bug 124734 - [WebIDL] Introduce the Unforgeable IDL attribute
Summary: [WebIDL] Introduce the Unforgeable IDL attribute
Status: RESOLVED DUPLICATE of bug 149147
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Zan Dobersek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-21 12:12 PST by Zan Dobersek
Modified: 2015-11-12 21:07 PST (History)
9 users (show)

See Also:


Attachments
Patch (4.90 KB, patch)
2013-11-21 12:30 PST, Zan Dobersek
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2 (253.02 KB, application/zip)
2013-11-21 14:20 PST, Build Bot
no flags Details
Archive of layout-test-results from webkit-ews-06 for mac-mountainlion (267.35 KB, application/zip)
2013-11-21 14:20 PST, Build Bot
no flags Details
Patch (60.91 KB, patch)
2013-11-22 01:50 PST, Zan Dobersek
no flags Details | Formatted Diff | Diff
Patch (60.54 KB, patch)
2013-11-22 08:48 PST, Zan Dobersek
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Zan Dobersek 2013-11-21 12:12:41 PST
[WebIDL] Introduce the Unforgeable IDL attribute
Comment 1 Zan Dobersek 2013-11-21 12:30:40 PST
Created attachment 217596 [details]
Patch
Comment 2 Darin Adler 2013-11-21 13:52:44 PST
Comment on attachment 217596 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=217596&action=review

> Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:4199
> +    return $function->signature->extendedAttributes->{"Unforgeable"} || $interface->extendedAttributes->{"Unforgeable"};

This adds per-function Unforgeable as well as per-interface Unforgeable, but I don’t see any test coverage for the per-function one. We have bindings tests, and it should be easy to add coverage to them.
Comment 3 Build Bot 2013-11-21 14:20:25 PST
Comment on attachment 217596 [details]
Patch

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

New failing tests:
fast/dom/Window/Location/window-override-window-using-defineGetter.html
http/tests/cache/network-error-during-revalidation.html
fast/dom/Window/Location/location-override-toString-on-proto.html
fast/canvas/webgl/webgl-reload-crash.html
fast/dom/HTMLObjectElement/object-as-frame.html
fast/css/counter-crash.html
fast/css/preserve-user-specified-zoom-level-on-reload.html
fast/dom/Window/Location/location-override-valueOf-on-proto-using-with.html
http/tests/cache/loaded-from-cache-after-reload.html
fast/dom/Window/Location/location-override-toString-on-proto-using-with.html
fast/css/invalid-cursor-property-crash.html
fast/css-generated-content/bug91547.html
fast/block/positioning/absolute-layout-after-image-load.html
http/tests/cache/history-only-cached-subresource-loads.html
fast/dom/Window/Location/location-override-valueOf.html
fast/dom/Window/Location/location-override-valueOf-using-with.html
fast/dom/Window/Location/location-override-valueOf-on-proto-using-defineGetter.html
fast/canvas/canvas-bg-multiple-removal.html
http/tests/cache/cancel-during-revalidation-succeeded.html
fast/dom/Window/Location/location-override-toString-using-with.html
http/tests/cache/loaded-from-cache-after-reload-within-iframe.html
fast/dom/Window/Location/location-override-toString-on-proto-using-defineGetter.html
fast/dom/Window/redirect-with-timer.html
fast/dom/Window/Location/location-override-valueOf-on-proto.html
fast/css/reload-non-styled-element-crash.html
fast/dom/Window/Location/location-override-toString.html
fast/dom/Window/Location/location-override-toString-using-defineGetter.html
fast/dom/Window/Location/window-override-location-using-defineGetter.html
fast/dom/Window/Location/location-override-valueOf-using-defineGetter.html
fast/block/positioning/positioned-float-layout-after-image-load.html
Comment 4 Build Bot 2013-11-21 14:20:28 PST
Created attachment 217611 [details]
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-15  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 5 Build Bot 2013-11-21 14:20:36 PST
Comment on attachment 217596 [details]
Patch

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

New failing tests:
fast/dom/Window/Location/window-override-window-using-defineGetter.html
fast/dom/Window/Location/location-override-toString-on-proto.html
fast/dom/Window/Location/location-override-toString.html
fast/css/counter-crash.html
fast/dom/Window/Location/location-override-valueOf-on-proto-using-with.html
fast/dom/HTMLObjectElement/object-as-frame.html
editing/undo/undo-iframe-location-change.html
http/tests/appcache/history-test.html
fast/dom/Window/Location/location-override-toString-using-with.html
fast/css/invalid-cursor-property-crash.html
fast/css-generated-content/bug91547.html
fast/block/positioning/absolute-layout-after-image-load.html
fast/dom/Window/Location/location-override-valueOf.html
fast/canvas/webgl/webgl-reload-crash.html
http/tests/cache/history-only-cached-subresource-loads-max-age-https.html
fast/dom/Window/Location/location-override-valueOf-on-proto-using-defineGetter.html
fast/canvas/canvas-bg-multiple-removal.html
http/tests/cache/cancel-during-revalidation-succeeded.html
http/tests/appcache/interrupted-update.html
http/tests/appcache/reload.html
fast/dom/Window/Location/location-override-valueOf-using-with.html
editing/deleting/password-delete-performance.html
fast/dom/Window/Location/location-override-toString-on-proto-using-defineGetter.html
fast/dom/Window/redirect-with-timer.html
http/tests/appcache/local-content.html
fast/dom/Window/Location/location-override-valueOf-on-proto.html
fast/dom/Window/Location/location-override-toString-on-proto-using-with.html
fast/dom/Window/Location/location-override-toString-using-defineGetter.html
fast/dom/Window/Location/window-override-location-using-defineGetter.html
fast/dom/Window/Location/location-override-valueOf-using-defineGetter.html
Comment 6 Build Bot 2013-11-21 14:20:39 PST
Created attachment 217612 [details]
Archive of layout-test-results from webkit-ews-06 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-06  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 7 Darin Adler 2013-11-21 14:22:48 PST
Comment on attachment 217596 [details]
Patch

Hmm, please don’t land this since it didn’t seem to work properly.
Comment 8 Zan Dobersek 2013-11-22 01:50:55 PST
Created attachment 217659 [details]
Patch
Comment 9 Darin Adler 2013-11-22 08:19:00 PST
Comment on attachment 217659 [details]
Patch

Patch is not applying in EWS. You should find out why.
Comment 10 Zan Dobersek 2013-11-22 08:48:56 PST
Created attachment 217689 [details]
Patch

Removed the accidentally included garbage file.
Comment 11 WebKit Commit Bot 2013-11-22 08:50:15 PST
Attachment 217689 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/bindings/scripts/CodeGeneratorJS.pm', u'Source/WebCore/bindings/scripts/IDLAttributes.txt', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestObj.cpp', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestObj.h', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestUnforgeableInterface.cpp', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestUnforgeableInterface.h', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.h', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.symbols', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestUnforgeableInterface.cpp', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestUnforgeableInterface.h', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestUnforgeableInterface.symbols', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestUnforgeableInterfacePrivate.h', u'Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp', u'Source/WebCore/bindings/scripts/test/JS/JSTestObj.h', u'Source/WebCore/bindings/scripts/test/JS/JSTestUnforgeableInterface.cpp', u'Source/WebCore/bindings/scripts/test/JS/JSTestUnforgeableInterface.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestObj.mm', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestUnforgeableInterface.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestUnforgeableInterface.mm', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestUnforgeableInterfaceInternal.h', u'Source/WebCore/bindings/scripts/test/TestObj.idl', u'Source/WebCore/bindings/scripts/test/TestUnforgeableInterface.idl', u'Source/WebCore/page/Location.idl']" exit_code: 1
Source/WebCore/bindings/scripts/test/JS/JSTestUnforgeableInterface.cpp:171:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 1 in 26 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 12 Joseph Pecoraro 2015-11-12 21:07:21 PST
Comment on attachment 217689 [details]
Patch

Clearing review flag. This patch is stale, it seems bug 149147 introduced Unforgeable to our bindings generator as well, so duping to that.
Comment 13 Joseph Pecoraro 2015-11-12 21:07:31 PST

*** This bug has been marked as a duplicate of bug 149147 ***