-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Comments
Added Fixed label. |
dart-bot
pushed a commit
that referenced
this issue
Apr 7, 2021
2021-04-07 [email protected] Fixes #535: more nnbd tests for constant evaluation added. 2021-04-07 [email protected] Fixes #1068. Remove excessive - in a SharedOptions 2021-04-05 [email protected] Fixes #535: more nnbd tests for constant evaluation added. 2021-04-05 [email protected] Fixes #996: more tests added. 2021-04-05 [email protected] Fixes #996: more tests added. 2021-04-05 [email protected] Fixes #1067: added checks for old and new dart versions. 2021-04-05 [email protected] Fixes #1066: added @Dart=2.12 to the initial version of the test, new test which checks recent dart behavior added. 2021-04-05 [email protected] Fixes #1057: Expected result doe the tests with mailformed types updated. 2021-04-02 [email protected] Fixes #1062. Remove unnecessary assignment 2021-04-01 [email protected] Fixes #1057: Expected result doe the tests with mailformed types updated. 2021-04-01 [email protected] Expected error code is fixed for Windows 2021-04-01 [email protected] Fixes #1060. Expected error message position updated 2021-04-01 [email protected] Fixes #1059. Expected error message updated 2021-04-01 [email protected] Fixes #1024. Adjust expected results for web platforms 2021-04-01 [email protected] #993. More Array tests added 2021-03-31 [email protected] Update LICENSE 2021-03-31 [email protected] #993. Array tests added 2021-03-31 [email protected] Issue #1053: Missing Issue tag added, test expectation updated. 2021-03-30 [email protected] Fixes #1054: Updated expectations for mailformed raw type variables. 2021-03-30 [email protected] Fixes #1050: Updated expectations for mailformed raw type variables. 2021-03-30 [email protected] Fixes #1050: Got rid of mailformed row type variable usage in i-2-b- tests. 2021-03-29 [email protected] Fixes #1043. Remove static warning as an expected result 2021-03-29 [email protected] Fixes #1049: Correct expectation adjusted 2021-03-29 [email protected] Fixes #1048. Move tests to correct folder and change the description 2021-03-29 [email protected] Fixes #1046: Test adjusted to work with the generic metadata feature enabled. 2021-03-29 [email protected] Fixes #1047. Change expected result to not to fail on JavaScript configurations 2021-03-29 [email protected] Fixes #1044. Change expected result to not to fail on JavaScript configurations 2021-03-26 [email protected] Fixes #1029: Missing Issue tag added to the test. 2021-03-26 [email protected] Fixes #1042. Add check that produces different results for triple and double shifts 2021-03-26 [email protected] Fixes #1042. Fix built-in_types_t11.dart to expect correct results 2021-03-25 [email protected] Fixes #1019. Don't use type aliases in legacy libraries 2021-03-25 [email protected] Fixes #1039: Old-style aliases corrected. 2021-03-25 [email protected] Fixes #988. Expect static type warning in a right way 2021-03-24 [email protected] Issues #1029: Static expectation corrected. 2021-03-24 [email protected] Issues #1035: Issue tag for the bug 45443 added. 2021-03-24 [email protected] Merge branch 'master' of https://github.com/dart-lang/co19 2021-03-24 [email protected] #1023. Change SplayTreeMap and SplayTreeSet tests according to the new behavior 2021-03-23 [email protected] #1021. Remove expecting errors on web configurations for some negative numbers 2021-03-23 [email protected] Fixes #1034. Missed experimental flag added 2021-03-23 [email protected] #1033. Perform runtime check on big values for non-JavaScript configurations only 2021-03-23 [email protected] 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 <[email protected]>
This issue was closed.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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).
The text was updated successfully, but these errors were encountered: