New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 714866 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Add support for extended attributes on types in Web IDL

Project Member Reported by domenic@chromium.org, Apr 24 2017

Issue description

Web IDL was recently revised to add extended attributes on types: https://github.com/heycam/webidl/pull/286. The existing extended attributes [EnforceRange], [Clamp], and [TreatNullAs] were moved to this model, so that they can no longer be used on attributes/arguments, but instead only on types. For example.

This is now making its way into specifications, see e.g. https://github.com/whatwg/html/pull/2580. It will also be crucial for SharedArrayBuffer API safelisting (although I understand we have a workaround for now).

This bug tracks updating our Web IDL parser and bindings for this change.
 
Cc: haraken@chromium.org ch.du...@samsung.com peter@chromium.org jochen@chromium.org arv@chromium.org
 Issue 309700  has been merged into this issue.
Cc: yukishiino@chromium.org bashi@chromium.org
Cc: raphael....@intel.com
Cc: -ch.du...@samsung.com
Owner: bashi@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 6 by bugdroid1@chromium.org, Sep 4 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a9be6dcb17958449671e1bc78f1c9c3565cbdc87

commit a9be6dcb17958449671e1bc78f1c9c3565cbdc87
Author: Lisa Suzuki <lisabelle@google.com>
Date: Mon Sep 04 06:40:38 2017

idl_parser: Allow special comments only before Definitions

Before this CL, special comments can be put into both before Definitions
and before ExtendedAttributeList.
After this CL, however, special comments are allowed only before
Definitions.

There are 2 reasons for this CL.
First, in the current rule, special comments are used only before Definitions,
so we no longer need to support special comments at any other places.
Second, in order to support IDL grammer of annotated types,
we want to use ExtendedAttributeList.
However, the data structures of ExtendedAttributeList's return values
are different depending on whether special comments exist or not,
which is confusing and makes it difficult for ExtendedAttributeList
to be handled in a consistent way. This CL can solve this problem.

Bug:  714866 
Change-Id: I9480cade5ffcc1af08fd5c7e836cda20e1b75be4
Reviewed-on: https://chromium-review.googlesource.com/647511
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499444}
[modify] https://crrev.com/a9be6dcb17958449671e1bc78f1c9c3565cbdc87/tools/idl_parser/idl_parser.py

Project Member

Comment 7 by bugdroid1@chromium.org, Sep 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab

commit 4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab
Author: Lisa Suzuki <lisabelle@google.com>
Date: Mon Sep 11 03:52:10 2017

idl_parser: Support annotated types in Dictionary Member

- support TypeWithExtendedAttributes
- support ExtendedAttributes which are applicable to types
    (only 3 ExtendedAttributes are applicable to types:
                 [Clamp], [EnforceRange], [TreatNullAs])
- rewrite and add pattern match based tests and TestDictionary tests

Bug:  714866 
Change-Id: I61321308edfbbc8989883330b4502514d59d68ec
Reviewed-on: https://chromium-review.googlesource.com/650106
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Cr-Commit-Position: refs/heads/master@{#500834}
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/scripts/idl_definitions.py
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/scripts/idl_types.py
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/scripts/v8_types.py
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/tests/idls/core/TestDictionary.idl
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/tests/results/core/TestDictionary.cpp
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/tests/results/core/TestDictionary.h
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionary.cpp
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/4bd5bc28ff27c42667ce9e7f50be0d1dbedf15ab/tools/idl_parser/test_parser/dictionary_web.idl

Project Member

Comment 8 by bugdroid1@chromium.org, Sep 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c2aaa6ff98c6742c895e21556351a0b3d5e16049

commit c2aaa6ff98c6742c895e21556351a0b3d5e16049
Author: Lisa Suzuki <lisabelle@google.com>
Date: Mon Sep 11 09:43:27 2017

idl_parser: Support annotated types in AttributeRest part

Before this CL, type can be used in AttributeRest without extended attributes like this:
    - attribute Type AttributeName;
After this CL, type can be used in AttributeRest with extended attributes' list as well:
    - attribute Type AttributeName;
    - attribute ExtendedAttributeList Type AttributeName ;

I also rewrote and added pattern match based tests and TestInterface tests.

Bug:  714866 
Change-Id: I780e601e8431d21c4b5e650c7ab78e28cade2d61
Reviewed-on: https://chromium-review.googlesource.com/657788
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500874}
[modify] https://crrev.com/c2aaa6ff98c6742c895e21556351a0b3d5e16049/third_party/WebKit/Source/bindings/tests/idls/core/TestInterface.idl
[modify] https://crrev.com/c2aaa6ff98c6742c895e21556351a0b3d5e16049/third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface.cpp
[modify] https://crrev.com/c2aaa6ff98c6742c895e21556351a0b3d5e16049/third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface.h
[modify] https://crrev.com/c2aaa6ff98c6742c895e21556351a0b3d5e16049/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/c2aaa6ff98c6742c895e21556351a0b3d5e16049/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 9 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19

commit 285ef68a1989bc8eaa88ba5ad006fc2aaf712b19
Author: Lisa Suzuki <lisabelle@google.com>
Date: Tue Sep 12 04:25:49 2017

idl_parser: Support annotated types in Iterable part

Before this CL, type can be used without extended attributes in Iterable like this:
    ex1) iterable<long>;

After this CL, type can be used in Iterable with extended attributes' list as well:
    ex1) iterable<long>;
    ex2) iterable<[Clamp] long>;

I rewrote and added pattern match based tests and integer indexed tests.

Bug:  714866 
Change-Id: I1b2a264a20d6ab43c7b8ef94d6fb72dd1ddaa83a
Reviewed-on: https://chromium-review.googlesource.com/660137
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501176}
[modify] https://crrev.com/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19/third_party/WebKit/Source/bindings/tests/idls/core/TestIntegerIndexed.idl
[modify] https://crrev.com/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19/third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.cpp
[modify] https://crrev.com/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19/third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.h
[modify] https://crrev.com/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/285ef68a1989bc8eaa88ba5ad006fc2aaf712b19/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 10 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f0af41e594fe1195e0effdfd3a2ca20557ce59cb

commit f0af41e594fe1195e0effdfd3a2ca20557ce59cb
Author: Lisa Suzuki <lisabelle@google.com>
Date: Tue Sep 12 08:54:32 2017

idl_parser: Support annotated types in Argument part

This CL's intention is to adjust to the change of WebIDL's specification.

Before this CL, type in Argument cannot be treated with Extended Attributes as a group:
    - ex1) ExtendedAttributeList optional Type ArgumentName Default
    - ex2) ExtendedAttributeList Type Ellipsis ArgumentName
 All ExtendedAttributes in ExtendedAttributeList are treated with ArgumentName in AST

After this CL, however, type in Argument can be treated with Extended Attributes:
    - ex1) ExtendedAttributeList optional TypeWithExtendedAttributes ArgumentName Default
    - ex2) ExtendedAttributeList Type Ellipsis ArgumentName
 in ex1), all the ExtendedAttributes in TypeWithExtendedAttributes can be
 treated with Type in AST
 in ex2), ExtendedAttributes in ExtendedAttributeList which are applicable
 to types ([Clamp], [EnforceRange], [TreatNullAs]) can be treated with
 Type in AST

In order to check if ASTs are dumped correctly, I also added pattern match based tests
and TestInterface tests.

Bug:  714866 
Change-Id: I063dc2f88ed31cab36c614c4d4ab7c83591e1bed
Reviewed-on: https://chromium-review.googlesource.com/662483
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501219}
[modify] https://crrev.com/f0af41e594fe1195e0effdfd3a2ca20557ce59cb/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/f0af41e594fe1195e0effdfd3a2ca20557ce59cb/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 11 by bugdroid1@chromium.org, Sep 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a6ed7764b2b0877ab0ba07ac08683fb61a4168a6

commit a6ed7764b2b0877ab0ba07ac08683fb61a4168a6
Author: Lisa Suzuki <lisabelle@google.com>
Date: Wed Sep 13 00:48:14 2017

idl_parser: Support annotated types in OptionalType (Iterable's value type)

This CL's intention is to adjust to the change of WebIDL's specification.

Before this CL, Iterable's value types cannot be annotated.

After this CL, however, Iterable's value types can be annotated types.

In order to check if ASTs are dumped correctly, I also added pattern match based tests.

Bug:  714866 
Change-Id: I4e5cb09f36b6b7c04b7a0d3a32cff085691bcdc6
Reviewed-on: https://chromium-review.googlesource.com/662979
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501488}
[modify] https://crrev.com/a6ed7764b2b0877ab0ba07ac08683fb61a4168a6/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/a6ed7764b2b0877ab0ba07ac08683fb61a4168a6/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 12 by bugdroid1@chromium.org, Sep 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8670bc8a28d1d79efe9affc576b9c12afae5366a

commit 8670bc8a28d1d79efe9affc576b9c12afae5366a
Author: Lisa Suzuki <lisabelle@google.com>
Date: Wed Sep 13 08:15:12 2017

idl_parser: Support annotated types in MaplikeRest

This CL's intention is to adjust to the change of WebIDL's specification.

Before this CL, MaplikeRest's types cannot be annotated.

After this CL, however, MaplikeRest's types can be annotated types.

In order to check if ASTs are dumped correctly and if the code generator works correctly,
I also added pattern match based tests and code generator's tests.

Bug:  714866 
Change-Id: I0cf998e609f635f1a9068ae8904e536bf9e6caa4
Reviewed-on: https://chromium-review.googlesource.com/664497
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Cr-Commit-Position: refs/heads/master@{#501570}
[modify] https://crrev.com/8670bc8a28d1d79efe9affc576b9c12afae5366a/third_party/WebKit/Source/bindings/tests/idls/core/TestObject.idl
[modify] https://crrev.com/8670bc8a28d1d79efe9affc576b9c12afae5366a/third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp
[modify] https://crrev.com/8670bc8a28d1d79efe9affc576b9c12afae5366a/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/8670bc8a28d1d79efe9affc576b9c12afae5366a/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 13 by bugdroid1@chromium.org, Sep 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5dfaafeeff11eac62962578f6cd91d4fef4a1f30

commit 5dfaafeeff11eac62962578f6cd91d4fef4a1f30
Author: Lisa Suzuki <lisabelle@google.com>
Date: Thu Sep 14 01:39:21 2017

idl_parser: Support annotated types in SetlikeRest

This CL's intention is to adjust to the change of WebIDL's specification.

Before this CL, SetlikeRest's types cannot be annotated.

After this CL, however, SetlikeRest's types can be annotated types.

In order to check if ASTs are dumped correctly and if the code generator works correctly,
I also added pattern match based tests and code generator's tests.

Bug:  714866 
Change-Id: I477cb6e0875f1230625b32b74a9a0245b0e3edd3
Reviewed-on: https://chromium-review.googlesource.com/664325
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Cr-Commit-Position: refs/heads/master@{#501833}
[modify] https://crrev.com/5dfaafeeff11eac62962578f6cd91d4fef4a1f30/third_party/WebKit/Source/bindings/tests/idls/core/TestInterfaceGarbageCollected.idl
[modify] https://crrev.com/5dfaafeeff11eac62962578f6cd91d4fef4a1f30/third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.cpp
[modify] https://crrev.com/5dfaafeeff11eac62962578f6cd91d4fef4a1f30/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/5dfaafeeff11eac62962578f6cd91d4fef4a1f30/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 14 by bugdroid1@chromium.org, Sep 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cfa96c6592e71c7849851b9ad2ad78bbbc0557ed

commit cfa96c6592e71c7849851b9ad2ad78bbbc0557ed
Author: Lisa Suzuki <lisabelle@google.com>
Date: Thu Sep 14 10:56:08 2017

idl_parser: Support annotated types in RecordType

This CL's intention is to adjust to the change of WebIDL's specifications.

Before this CL, RecordType's types cannot be annotated.

After this CL, however, RecordType's types can be annotated types.

In order to check if ASTs are dumped correctly,
I also added pattern match based tests.

Bug:  714866 
Change-Id: Icedef75f4e2ef6388fd59192f6b1a3680d01c6f4
Reviewed-on: https://chromium-review.googlesource.com/665638
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501919}
[modify] https://crrev.com/cfa96c6592e71c7849851b9ad2ad78bbbc0557ed/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/cfa96c6592e71c7849851b9ad2ad78bbbc0557ed/tools/idl_parser/test_parser/interface_web.idl

Project Member

Comment 15 by bugdroid1@chromium.org, Sep 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/16b6872f38d70af4103b23cd54b3ef8c7697b341

commit 16b6872f38d70af4103b23cd54b3ef8c7697b341
Author: Lisa Suzuki <lisabelle@google.com>
Date: Tue Sep 19 09:39:02 2017

idl_parser: Support annotated types in Typedef and NonAnyType

This CL's intention is to adjust to the change of WebIDL's specifications.

This CL enables types to be annotated types in Typedef and NonAnyType.

In order to check if ASTs are dumped correctly and if the code generator works correctly, I also added pattern match based tests and code generator's tests.

Bug:  714866 
Change-Id: I3f04365eca44a646a92796028479744d9bd4dce8
Reviewed-on: https://chromium-review.googlesource.com/668353
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502815}
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/idls/core/TestDictionary.idl
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/idls/core/TestTypedefs.idl
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/results/core/TestDictionary.cpp
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/results/core/TestDictionary.h
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/results/core/V8TestDictionary.cpp
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.cpp
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.h
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/tools/idl_parser/idl_parser.py
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/tools/idl_parser/test_parser/dictionary_web.idl
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/tools/idl_parser/test_parser/interface_web.idl
[modify] https://crrev.com/16b6872f38d70af4103b23cd54b3ef8c7697b341/tools/idl_parser/test_parser/typedef_web.idl

Project Member

Comment 16 by bugdroid1@chromium.org, Sep 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ad383610ec12139656280c979881a821d0df92c9

commit ad383610ec12139656280c979881a821d0df92c9
Author: Lisa Suzuki <lisabelle@google.com>
Date: Thu Sep 21 02:35:57 2017

idl_parser: Support annotated types in IDL files

This CL's intention is to adapt IDL files to the change of WebIDL's
specifications, to support annotated types.

Before this CL, sometimes types which are applicable to types ([Clamp],
 [EnforceRange], [TreatNullAs]) applied to non-types, even when
 specifications say otherwise.
After this CL, however, such types got to apply to types.

Actually there are still types in specifications which are applicable to types but apply to
non-types, and we'll report those bugs to the specifications.

Bug:  714866 
Change-Id: I1c8a234f6ffc0c8b02681c46b32867d9f30f2097
Reviewed-on: https://chromium-review.googlesource.com/674473
Commit-Queue: Lisa Suzuki <lisabelle@google.com>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#503327}
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/LayoutTests/external/wpt/interfaces/dom.idl
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/Source/bindings/tests/idls/core/TestObject.idl
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/Source/core/dom/CharacterData.idl
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/Source/core/html/HTMLDocument.idl
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/Source/core/html/HTMLElement.idl
[modify] https://crrev.com/ad383610ec12139656280c979881a821d0df92c9/third_party/WebKit/Source/modules/websockets/WebSocket.idl


I supported annotated types if they are supported by specifications in the CL above.
However, actually there are still types in Blink's IDL files whose extended attributes are applicable to types but apply to non-types, because the specifications has not changed:

in interface Node : EventTarget
https://cs.chromium.org/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/bindings/testdata/test_interface.idl?q=Clamp+file:%5C.idl&sq=package:chromium&dr=C&l=5

in interface IDBFactory
https://cs.chromium.org/chromium/src/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl?type=cs&q=EnforceRange+file:%5C.idl&sq=package:chromium&l=26

in interface IDBIndex
https://cs.chromium.org/chromium/src/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl?type=cs&q=EnforceRange+file:%5C.idl&sq=package:chromium&l=26

Comment 18 by bashi@chromium.org, Sep 21 2017

Status: Fixed (was: Assigned)
Thank you lisabelle@ for the work!

Let me close this as Fixed because our parser was updated and the binding generator supports annotated types. We can update EventTarget, IDBFactory and IDBIndex when the corresponding specs are updated.
Congrats!

Amazing work!!

https://cs.chromium.org/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/bindings/testdata/test_interface.idl?q=Clamp+file:%5C.idl&sq=package:chromium&dr=C&l=5 is not part of a spec; it appears to be a test interface named similarly to a spec. So it can be fixed easily without worrying about spec syncing.
Project Member

Comment 21 by bugdroid1@chromium.org, Sep 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/58efe2ac18c82f5de51e20baf922a0af26dfea03

commit 58efe2ac18c82f5de51e20baf922a0af26dfea03
Author: Kenichi Ishibashi <bashi@chromium.org>
Date: Fri Sep 22 03:52:24 2017

Update testing IDL file to use annotated types

Our parser now supports annotated types and [Clamp] should be associated
with types.

Bug:  714866 
Change-Id: I6956e5efcd072a477fb39f0dc6b1c2793bba103a
Reviewed-on: https://chromium-review.googlesource.com/677896
Reviewed-by: Kent Tamura <tkent@chromium.org>
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#503649}
[modify] https://crrev.com/58efe2ac18c82f5de51e20baf922a0af26dfea03/third_party/WebKit/Tools/Scripts/webkitpy/bindings/testdata/test_interface.idl

Comment 22 by bashi@chromium.org, Sep 22 2017

Thanks Dominic for letting us the leftover. Updated :)

Sign in to add a comment