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

Rename all legacy extended attributes #870

Merged
merged 9 commits into from
Apr 20, 2020
Merged

Rename all legacy extended attributes #870

merged 9 commits into from
Apr 20, 2020

Conversation

domenic
Copy link
Member

@domenic domenic commented Apr 8, 2020

This pull request contains a series of commits that together close #350. I suggest we rebase-merge, instead of squash-merge, to better make the individual changes clear from the history.

I've updated #350 with a list of specifications that use these extended attributes, and will work on corresponding pull requests to them.


Preview | Diff

Closes #277. This includes renaming the extended attribute, which is part of #350.

Also, since we don't anticipate this being used again, we remove the zero-argument form, which has no current users.

As a bonus, this removes some leftover references to "constructor extended attributes".
Part of #350. Also removes some references to usages in other specs that have since been fixed, and removes the discussion of the previous usage of this extended attribute for mixin purposes, as all those usages have migrated.
This groups all the legacy extended attributes under a new section, that follows the general extended attributes section. (It also renames that section from "ECMAScript-specific extended attributes" to "Extended attributes", since we are already in the ECMAScript binding section.)

As part of this, it removes all the individual "do not use this" warnings, in favor of a blanket one at the start of the section. Some cases, namely [LegacyFactoryFunction], [LegacyLenientSetter], and [LegacyNamespace], contained advice or background information in those blocks; those have been preserved.
domenic added a commit to whatwg/fullscreen that referenced this pull request Apr 8, 2020
domenic added a commit to whatwg/dom that referenced this pull request Apr 8, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString] and [Unforgeable] →
[LegacyUnforgeable]. Follows whatwg/webidl#870.
domenic added a commit to whatwg/html that referenced this pull request Apr 8, 2020
Follows whatwg/webidl#870. Additionally, this
cross-links all of these extended attributes from their usage sites,
since I was updating them anyway.
domenic added a commit to w3c/DOM-Parsing that referenced this pull request Apr 8, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString], following whatwg/webidl#870.
domenic added a commit to domenic/csswg-drafts that referenced this pull request Apr 8, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString], per whatwg/webidl#870.
domenic added a commit to domenic/WebGL that referenced this pull request Apr 8, 2020
[NoInterfaceObject] → [LegacyNoInterfaceObject]. This follows whatwg/webidl#870.
domenic added a commit to domenic/WebGL that referenced this pull request Apr 8, 2020
[NoInterfaceObject] → [LegacyNoInterfaceObject]. This follows whatwg/webidl#870.

This also replaces a couple instances of [NoInterfaceObject] with the interface mixin concept, as was previously done in 2df151b and a6f9909.
@domenic
Copy link
Member Author

domenic commented Apr 8, 2020

All specs that use these now have pull requests to update.

@marcoscaceres
Copy link
Member

marcoscaceres commented Apr 9, 2020

Please make sure ReSpec and BikeShed are not using these also before merging... cc @sidvishnoi, just in case.

@annevk
Copy link
Member

annevk commented Apr 9, 2020

Do you think we can still switch to "builtin" everywhere? It seems that's what ECMAScript uses and I kind prefer to use the hyphen-less version whenever possible. I think it's mostly DOM and HTML, right? I could PR those.

@domenic
Copy link
Member Author

domenic commented Apr 9, 2020

I'm confused, in #350 you said we should switch to BuiltIn, which is what I did here. Which one do you want?

@annevk
Copy link
Member

annevk commented Apr 9, 2020

So earlier today I looked at ECMAScript again and found CreateBuiltinFunction. However, I now see it also has built-in, builtinTag, RegExpBuiltinExec, ... Sigh.

@domenic
Copy link
Member Author

domenic commented Apr 9, 2020

I was kind of under the impression that built-in was the adjective and builtin was the noun, but I can find no evidence for this on the internet.

Copy link
Member

@annevk annevk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not read through everything in detail, but I didn't spot any obvious mistakes either. Unfortunately TC39 didn't really settle the builtin thing yet so I guess we'll go with internal consistency for now.

@domenic domenic deleted the legacyxattrs branch April 20, 2020 17:26
domenic added a commit to whatwg/html that referenced this pull request Apr 20, 2020
Follows whatwg/webidl#870. Additionally, this
cross-links all of these extended attributes from their usage sites,
since I was updating them anyway.
annevk pushed a commit to whatwg/dom that referenced this pull request Apr 20, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString] and [Unforgeable] →
[LegacyUnforgeable]. Follows whatwg/webidl#870.
domenic added a commit to w3c/DOM-Parsing that referenced this pull request Apr 20, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString], following whatwg/webidl#870.
plinss added a commit to plinss/widlparser that referenced this pull request Apr 20, 2020
domenic added a commit to whatwg/fullscreen that referenced this pull request Apr 20, 2020
kenrussell pushed a commit to KhronosGroup/WebGL that referenced this pull request Apr 21, 2020
* Update for Web IDL extended attribute changes

[NoInterfaceObject] → [LegacyNoInterfaceObject]. This follows whatwg/webidl#870.

This also replaces a couple instances of [NoInterfaceObject] with the interface mixin concept, as was previously done in 2df151b and a6f9909.
tabatkins pushed a commit to w3c/csswg-drafts that referenced this pull request Apr 23, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString], per whatwg/webidl#870.
mfreed7 pushed a commit to mfreed7/dom that referenced this pull request Apr 27, 2020
[TreatNullAs=EmptyString] → [LegacyNullToEmptyString] and [Unforgeable] →
[LegacyUnforgeable]. Follows whatwg/webidl#870.
jugglinmike added a commit to bocoup/webappsec-trusted-types that referenced this pull request Aug 26, 2020
`[Unforgeable]` was renamed to `[LegacyUnforgeable]` in April of 2020:

whatwg/webidl#870
koto pushed a commit to w3c/trusted-types that referenced this pull request Aug 27, 2020
`[Unforgeable]` was renamed to `[LegacyUnforgeable]` in April of 2020:

whatwg/webidl#870
sagudev added a commit to sagudev/servo that referenced this pull request Feb 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Consider renaming all legacy extended attributes
3 participants