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

Test new WebIDL mixin syntax #8053

Open
1 of 5 tasks
tobie opened this issue Nov 3, 2017 · 8 comments
Open
1 of 5 tasks

Test new WebIDL mixin syntax #8053

tobie opened this issue Nov 3, 2017 · 8 comments
Labels

Comments

@tobie
Copy link
Contributor

tobie commented Nov 3, 2017

WebIDL recently introduced dedicated syntax for mixins.

This syntax replaces the [NoInterfaceObject] extended attribute and implements statement which have been deprecated (except for a few legacy uses cases explicitely mentioned in the spec).

You can read more about it here.

Todo:

  • Remove any tests for implements statements.
  • Remove any tests for non-legacy usage of the [NoInterfaceObject] extended attribute.
  • Add tests for includes statements and interface mixins.
  • Test [SecureContext] for interface mixin members.
  • Test [Exposed] for interface mixin members.

Tracked in: whatwg/webidl#472 | Original pull-request: whatwg/webidl#433

@marcoscaceres
Copy link
Contributor

marcoscaceres commented May 21, 2018

@tobie, @foolip, I saw recently that IDL from specs was being periodically automagically imported into the appropriate files in the /interfaces/ folder.

Given all specs were fixed to no longer use implements (except this one, which hopefully will be fixed soon!), does that mean all of the above tasks are implicitly done also?

@marcoscaceres
Copy link
Contributor

fixed link above.

@tobie
Copy link
Contributor Author

tobie commented May 21, 2018

@foolip knows the details of this. I don’t.

@foolip
Copy link
Member

foolip commented May 21, 2018

That's an effort that @lukebjerring has been driving, but is now in a bit of a hiatus as we figure out what the source of IDL snippets should really be, see w3c/webref#3.

@marcoscaceres
Copy link
Contributor

ok great! will wait for an update from @lukebjerring.

@lukebjerring
Copy link
Contributor

I can basically try and sync all of the pending PRs up to current crawled spec's state, and we can go from there for updating implements offenders. Will post when I've taken some action.

@marcoscaceres
Copy link
Contributor

Sounds great, @lukebjerring. let us know if we can help in some way.

@lukebjerring
Copy link
Contributor

lukebjerring commented Jul 23, 2018

Update: It looks like the add_dependency_idls function isn't detecting mixin items correctly.
When Foo implements Bar and we're defining or extending Bar, Foo should be added as untested.

e.g.
partial interface mixin WindowOrWorkerGlobalScope {
[Replaceable] readonly attribute Performance performance;
};

Should be adding Window and WorkerGlobalScope which include the mixin.

EDIT: Addressed by #12165

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants