DOM properties emit deprecation or other warnings when debugger tries to enumerate them
Categories
(DevTools :: Console, defect, P2)
Tracking
(firefox114 fixed)
Tracking | Status | |
---|---|---|
firefox114 | --- | fixed |
People
(Reporter: bj, Assigned: nchevobbe)
References
Details
Attachments
(4 files, 2 obsolete files)
Comment 1•12 years ago
|
||
Comment 2•11 years ago
|
||
Updated•11 years ago
|
Comment 4•11 years ago
|
||
Comment 5•11 years ago
|
||
Comment 6•11 years ago
|
||
Updated•10 years ago
|
Comment 8•9 years ago
|
||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Comment 11•5 years ago
|
||
Nicolas, could you help me understand if this would be on Console or Inspector?
Assignee | ||
Comment 14•4 years ago
|
||
For future reference:
This is the code that triggers the warnings: devtools/server/actors/object.js#463
We could fix this in two ways:
- maintain a list of deprecated properties in devtools code, and avoid calling the getter if it is in the list of deprecated properties
- find a way to get the information directly from the webidl files, since the warning mechanism is implemented there, by having a
[Deprecated
annotation above the property (see https://searchfox.org/mozilla-central/search?q=%5BDeprecated&path=&case=true®exp=false)
1.
is more straightforward, at the expense of having to manually update the list (and possibly miss new deprecation)
2.
seems to be the proper way to go, but the work might not be trivial
We've been talking in the past of using webidl files for other means in DevTools (e.g. autocompletion parameters hints in the console), so maybe we should dedicate some time to work on that. There's a already a webidl -> JS AST library in the tree (https://searchfox.org/mozilla-central/source/testing/web-platform/tests/resources/webidl2/lib/webidl2.js), so maybe we could take advantage of that.
Assignee | ||
Comment 15•4 years ago
|
||
This is the AST produced when parsing dom/webidl/EventHandler.webidl with webidl2.js
[
{
"type": "callback",
"name": "EventHandlerNonNull",
"idlType": {
"type": "return-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "any"
},
"arguments": [
{
"type": "argument",
"name": "event",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "Event"
},
"default": null,
"optional": false,
"variadic": false
}
],
"extAttrs": [
{
"type": "extended-attribute",
"name": "TreatNonObjectAsNull",
"rhs": null,
"arguments": []
}
]
},
{
"type": "typedef",
"name": "EventHandler",
"idlType": {
"type": "typedef-type",
"extAttrs": [],
"generic": "",
"nullable": true,
"union": false,
"idlType": "EventHandlerNonNull"
},
"extAttrs": []
},
{
"type": "callback",
"name": "OnBeforeUnloadEventHandlerNonNull",
"idlType": {
"type": "return-type",
"extAttrs": [],
"generic": "",
"nullable": true,
"union": false,
"idlType": "DOMString"
},
"arguments": [
{
"type": "argument",
"name": "event",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "Event"
},
"default": null,
"optional": false,
"variadic": false
}
],
"extAttrs": [
{
"type": "extended-attribute",
"name": "TreatNonObjectAsNull",
"rhs": null,
"arguments": []
}
]
},
{
"type": "typedef",
"name": "OnBeforeUnloadEventHandler",
"idlType": {
"type": "typedef-type",
"extAttrs": [],
"generic": "",
"nullable": true,
"union": false,
"idlType": "OnBeforeUnloadEventHandlerNonNull"
},
"extAttrs": []
},
{
"type": "callback",
"name": "OnErrorEventHandlerNonNull",
"idlType": {
"type": "return-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "any"
},
"arguments": [
{
"type": "argument",
"name": "event",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": true,
"idlType": [
{
"type": null,
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "Event"
},
{
"type": null,
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "DOMString"
}
]
},
"default": null,
"optional": false,
"variadic": false
},
{
"type": "argument",
"name": "source",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "DOMString"
},
"default": null,
"optional": true,
"variadic": false
},
{
"type": "argument",
"name": "lineno",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "unsigned long"
},
"default": null,
"optional": true,
"variadic": false
},
{
"type": "argument",
"name": "column",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "unsigned long"
},
"default": null,
"optional": true,
"variadic": false
},
{
"type": "argument",
"name": "error",
"extAttrs": [],
"idlType": {
"type": "argument-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "any"
},
"default": null,
"optional": true,
"variadic": false
}
],
"extAttrs": [
{
"type": "extended-attribute",
"name": "TreatNonObjectAsNull",
"rhs": null,
"arguments": []
}
]
},
{
"type": "typedef",
"name": "OnErrorEventHandler",
"idlType": {
"type": "typedef-type",
"extAttrs": [],
"generic": "",
"nullable": true,
"union": false,
"idlType": "OnErrorEventHandlerNonNull"
},
"extAttrs": []
},
{
"type": "interface mixin",
"name": "GlobalEventHandlers",
"inheritance": null,
"members": [
{
"type": "attribute",
"name": "onabort",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onblur",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onfocus",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onauxclick",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onbeforeinput",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.input_events.beforeinput.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oncanplay",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oncanplaythrough",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onchange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onclick",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onclose",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oncontextmenu",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oncuechange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondblclick",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondrag",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragenter",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragexit",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragleave",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragover",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondragstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondrop",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ondurationchange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onemptied",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onended",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onformdata",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.formdata.event.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oninput",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oninvalid",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onkeydown",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onkeypress",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onkeyup",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onload",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onloadeddata",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onloadedmetadata",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onloadend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onloadstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmousedown",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmouseenter",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "LenientThis",
"rhs": null,
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmouseleave",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "LenientThis",
"rhs": null,
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmousemove",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmouseout",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmouseover",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmouseup",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwheel",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpause",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onplay",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onplaying",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onprogress",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onratechange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onreset",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onresize",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onscroll",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onseeked",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onseeking",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onselect",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onshow",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onstalled",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onsubmit",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onsuspend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontimeupdate",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onvolumechange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwaiting",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onselectstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.select_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontoggle",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointercancel",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerdown",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerup",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointermove",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerout",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerover",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerenter",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpointerleave",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ongotpointercapture",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onlostpointercapture",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Pref",
"rhs": {
"type": "string",
"value": "\"dom.w3c_pointer_events.enabled\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmozfullscreenchange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Deprecated",
"rhs": {
"type": "string",
"value": "\"MozfullscreenchangeDeprecatedPrefix\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmozfullscreenerror",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Deprecated",
"rhs": {
"type": "string",
"value": "\"MozfullscreenerrorDeprecatedPrefix\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onanimationcancel",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onanimationend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onanimationiteration",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onanimationstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontransitioncancel",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontransitionend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontransitionrun",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ontransitionstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwebkitanimationend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "BinaryName",
"rhs": {
"type": "string",
"value": "\"onwebkitAnimationEnd\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwebkitanimationiteration",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "BinaryName",
"rhs": {
"type": "string",
"value": "\"onwebkitAnimationIteration\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwebkitanimationstart",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "BinaryName",
"rhs": {
"type": "string",
"value": "\"onwebkitAnimationStart\""
},
"arguments": []
}
],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onwebkittransitionend",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "BinaryName",
"rhs": {
"type": "string",
"value": "\"onwebkitTransitionEnd\""
},
"arguments": []
}
],
"special": "",
"readonly": false
}
],
"extAttrs": [],
"partial": false
},
{
"type": "interface mixin",
"name": "WindowEventHandlers",
"inheritance": null,
"members": [
{
"type": "attribute",
"name": "onafterprint",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onbeforeprint",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onbeforeunload",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "OnBeforeUnloadEventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onhashchange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onlanguagechange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmessage",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onmessageerror",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onoffline",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "ononline",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpagehide",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpageshow",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpopstate",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onrejectionhandled",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onstorage",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onunhandledrejection",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onunload",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
}
],
"extAttrs": [],
"partial": false
},
{
"type": "interface mixin",
"name": "DocumentAndElementEventHandlers",
"inheritance": null,
"members": [
{
"type": "attribute",
"name": "oncopy",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "oncut",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
},
{
"type": "attribute",
"name": "onpaste",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
}
],
"extAttrs": [],
"partial": false
},
{
"type": "interface mixin",
"name": "OnErrorEventHandlerForNodes",
"inheritance": null,
"members": [
{
"type": "attribute",
"name": "onerror",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
}
],
"extAttrs": [],
"partial": false
},
{
"type": "interface mixin",
"name": "OnErrorEventHandlerForWindow",
"inheritance": null,
"members": [
{
"type": "attribute",
"name": "onerror",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "OnErrorEventHandler"
},
"extAttrs": [],
"special": "",
"readonly": false
}
],
"extAttrs": [],
"partial": false
}
]
We could detect deprecated properties by checking the existence of an item with a name
of "Deprecated"
in extraAttrs
:
{
"type": "attribute",
"name": "onmozfullscreenchange",
"idlType": {
"type": "attribute-type",
"extAttrs": [],
"generic": "",
"nullable": false,
"union": false,
"idlType": "EventHandler"
},
"extAttrs": [
{
"type": "extended-attribute",
"name": "Deprecated",
"rhs": {
"type": "string",
"value": "\"MozfullscreenchangeDeprecatedPrefix\""
},
"arguments": []
}
],
"special": "",
"readonly": false
}
Assignee | ||
Comment 16•4 years ago
|
||
Updated•4 years ago
|
Comment 17•4 years ago
|
||
Comment on attachment 9158871 [details]
Bug 860312 - [devtools] Generate a list of deprecated DOM methods and attributes. r=ladybenko.
Revision D80864 was moved to bug 1686417. Setting attachment 9158871 [details] to obsolete.
Assignee | ||
Comment 18•4 years ago
|
||
Updated•2 years ago
|
Comment 19•2 years ago
|
||
The severity field for this bug is relatively low, S3. However, the bug has 5 duplicates.
:nchevobbe, could you consider increasing the bug severity?
For more information, please visit auto_nag documentation.
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Comment 21•2 years ago
|
||
Assignee | ||
Comment 22•2 years ago
|
||
As the drawback of not having the safeGetter evaluated is quite minimal, we taking
a very simple route and only check the getter name against the list of deprecated
getter names.
We didn't have test for deprecated warnings, so one is added where we check such
messages are not emitted when expanding an object inspector.
Depends on D174056
Updated•2 years ago
|
Assignee | ||
Comment 23•2 years ago
|
||
Getters with LegacyLenientThis attribute will trigger a warning in the console
if it's called with the unexpected this
.
We can't tell in DevTools if we have the "right" this
.
For example displaying an HTMLDivElementPrototype
object, we'll trigger the
warning because of the onmouseenter
getter, which is supposed to be called
with the HTMLElement
instance, which we don't have at this point.
For this reason, we exclude those from being safe getters, which will prevent
triggering the warning.
There are not a lot of properties with the [LegacyLenientThis] attribute,
so I feel like it's fine putting those into the deprecated list, but maybe
we could rename the file so it better conveys what it holds.
Depends on D174057
Updated•2 years ago
|
Updated•2 years ago
|
Comment 24•2 years ago
|
||
Comment 25•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/aa2d7ec51634
https://hg.mozilla.org/mozilla-central/rev/1bedc0cbd0cb
https://hg.mozilla.org/mozilla-central/rev/2470693a461a
Description
•