Skip to content
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

DOM generation: support WebKit [Supplemental=Foo] and [Supplemented] attributes #1047

Closed
rakudrama opened this issue Jan 4, 2012 · 2 comments

Comments

@rakudrama
Copy link
Member

There is a comment in WebCore/bindings/scripts/generate-bindings.pl that describes these new attributes.

This work item is to support the new attributes directly.

To support the attributes, databasebuilder.py needs to:

(1) Be able to rename the target in Supplemental=Target Remove members with a [Supplemented] attribute
(3) Apply existing supplementation logic to the 'target'
(4) Omit the supplemental idl from the database.

Only (4) is needed immediately.

From generate-bindings.pl:

FIXME(haraken): Remove this if-else statement.

This if-else statement is temporary and will be removed

after build scripts for all platforms support [Supplemental] IDL.

The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to

(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp

(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,

but changing all the build scripts all at once without any regression is too difficult:

- DerivedSources.make

- DerivedSources.pri

- GNUmakefile.am

- PlatformBlackBerry.cmake

- UseJSC.cmake

- UseV8.cmake

- WebCore.vcproj/MigrateScripts

- WebCore.vcproj/WebCore.vcproj

- bindings/gobject/GNUmakefile.am

- WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that

we need to allow the temporary state in which some build scripts support [Supplemental] IDL

but others do not. To accomplish this, we introduce a temporal IDL, [Supplemented].

The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]

in another IDL file somewhere, like this:

DOMWindowWebAudio.idl:

interface [

Supplemental=DOMWindow

] DOMWindowWebAudio {

attribute attr1;

attribute attr2;

};

DOMWindow.idl:

interface [

] DOMWindow {

attribute [Supplemented] attr1; // This line will be removed after all build scripts support the [SupplementalL.

attribute [Supplemented] attr2; // This line will be removed after all build scripts support the [SupplementalL.

attribute attr3;

attribute attr4;

};

Assuming these IDL files, the below code is doing the following logic:

- If a given build script supports the [Supplemental] IDL (i.e. --supplementalDependencyFile is specified),

we ignore all attributes with the [Supplemented] IDL.

- Otherwise (i.e. --supplementalDependencyFile is not specified),

we treat all attributes with the [Supplemented] IDL as normal attributes

and instead ignore all attributes with the [Supplemental] IDL

(i.e. we generate nothing from the idl file with the [Supplemental] IDL).

@vsmenon
Copy link
Member

vsmenon commented Apr 12, 2012

Removed Area-UI label.
Added Area-DOM label.

@vsmenon
Copy link
Member

vsmenon commented Jun 22, 2012

Added Fixed label.

dart-bot pushed a commit that referenced this issue Apr 7, 2021
2021-04-07 irina.arkhipets@gmail.com Fixes #535: more nnbd tests for constant evaluation added.
2021-04-07 sgrekhov@unipro.ru Fixes #1068. Remove excessive - in a SharedOptions
2021-04-05 irina.arkhipets@gmail.com Fixes #535: more nnbd tests for constant evaluation added.
2021-04-05 irina.arkhipets@gmail.com Fixes #996: more tests added.
2021-04-05 irina.arkhipets@gmail.com Fixes #996: more tests added.
2021-04-05 irina.arkhipets@gmail.com Fixes #1067: added checks for old and new dart versions.
2021-04-05 irina.arkhipets@gmail.com Fixes #1066: added @Dart=2.12 to the initial version of the test, new test which checks recent dart behavior added.
2021-04-05 irina.arkhipets@gmail.com Fixes #1057: Expected result doe the tests with mailformed types updated.
2021-04-02 sgrekhov@unipro.ru Fixes #1062. Remove unnecessary assignment
2021-04-01 irina.arkhipets@gmail.com Fixes #1057: Expected result doe the tests with mailformed types updated.
2021-04-01 sgrekhov@unipro.ru Expected error code is fixed for Windows
2021-04-01 sgrekhov@unipro.ru Fixes #1060. Expected error message position updated
2021-04-01 sgrekhov@unipro.ru Fixes #1059. Expected error message updated
2021-04-01 sgrekhov@unipro.ru Fixes #1024. Adjust expected results for web platforms
2021-04-01 sgrekhov@unipro.ru #993. More Array tests added
2021-03-31 58489007+franklinyow@users.noreply.github.com Update LICENSE
2021-03-31 sgrekhov@unipro.ru #993. Array tests added
2021-03-31 irina.arkhipets@gmail.com Issue #1053: Missing Issue tag added, test expectation updated.
2021-03-30 irina.arkhipets@gmail.com Fixes #1054: Updated expectations for mailformed raw type variables.
2021-03-30 irina.arkhipets@gmail.com Fixes #1050: Updated expectations for mailformed raw type variables.
2021-03-30 irina.arkhipets@gmail.com Fixes #1050: Got rid of mailformed row type variable usage in i-2-b- tests.
2021-03-29 sgrekhov@unipro.ru Fixes #1043. Remove static warning as an expected result
2021-03-29 irina.arkhipets@gmail.com Fixes #1049: Correct expectation adjusted
2021-03-29 sgrekhov@unipro.ru Fixes #1048. Move tests to correct folder and change the description
2021-03-29 irina.arkhipets@gmail.com Fixes #1046: Test adjusted to work with the generic metadata feature enabled.
2021-03-29 sgrekhov@unipro.ru Fixes #1047. Change expected result to not to fail on JavaScript configurations
2021-03-29 sgrekhov@unipro.ru Fixes #1044. Change expected result to not to fail on JavaScript configurations
2021-03-26 irina.arkhipets@gmail.com Fixes #1029: Missing Issue tag added to the test.
2021-03-26 sgrekhov@unipro.ru Fixes #1042. Add check that produces different results for triple and double shifts
2021-03-26 sgrekhov@unipro.ru Fixes #1042. Fix built-in_types_t11.dart to expect correct results
2021-03-25 sgrekhov@unipro.ru Fixes #1019. Don't use type aliases in legacy libraries
2021-03-25 irina.arkhipets@gmail.com Fixes #1039: Old-style aliases corrected.
2021-03-25 sgrekhov@unipro.ru Fixes #988. Expect static type warning in a right way
2021-03-24 irina.arkhipets@gmail.com Issues #1029: Static expectation corrected.
2021-03-24 irina.arkhipets@gmail.com Issues #1035: Issue tag for the bug 45443 added.
2021-03-24 irina.arkhipets@gmail.com Merge branch 'master' of https://github.com/dart-lang/co19
2021-03-24 sgrekhov@unipro.ru #1023. Change SplayTreeMap and SplayTreeSet tests according to the new behavior
2021-03-23 sgrekhov@unipro.ru #1021. Remove expecting errors on web configurations for some negative numbers
2021-03-23 sgrekhov@unipro.ru Fixes #1034. Missed experimental flag added
2021-03-23 sgrekhov@unipro.ru #1033. Perform runtime check on big values for non-JavaScript configurations only
2021-03-23 irina.arkhipets@gmail.com Issues #1029: co19/Language/Generics/Superbounded_types/typedef3_A01_t06/02 corrected and does not expect a compile error now.

Cq-Include-Trybots: dart/try:analyzer-nnbd-linux-release-try,dart2js-nnbd-linux-x64-chrome-try,ddc-nnbd-linux-release-chrome-try,front-end-nnbd-linux-release-x64-try,vm-kernel-nnbd-linux-debug-x64-try,vm-kernel-nnbd-linux-release-simarm64-try,vm-kernel-nnbd-linux-release-x64-try,vm-kernel-nnbd-mac-release-x64-try,vm-kernel-nnbd-win-release-x64-try,vm-kernel-precomp-nnbd-linux-debug-x64-try,vm-kernel-precomp-nnbd-linux-release-simarm64-try,vm-kernel-precomp-nnbd-linux-release-x64-try
Change-Id: I5fae01c7b48aba502da04638430f4f6de79ac745
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194241
Reviewed-by: William Hesse <whesse@google.com>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants