Bug 647621 - Implement document.charset and update document.inputEncoding to the latest spec. r=bz
authorMasatoshi Kimura <VYV03354@nifty.ne.jp>
Wed, 23 Sep 2015 09:32:29 +0900
changeset 263914 2343972473dad5ba7a1559b6b9c2300032f22c9a
parent 263913 731200b5ab4eb8de42f8fc803738849ba341a8ad
child 263915 21fdd0589e35c5f07992502f451e0e3947c899fd
push id29422
push usercbook@mozilla.com
push dateWed, 23 Sep 2015 10:32:35 +0000
treeherdermozilla-central@abe43c30d78d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbz
bugs647621
milestone44.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 647621 - Implement document.charset and update document.inputEncoding to the latest spec. r=bz
dom/base/nsDeprecatedOperationList.h
dom/base/nsDocument.cpp
dom/base/nsIDocument.h
dom/base/test/test_XHRSendData.html
dom/base/test/test_bug431701.html
dom/imptests/failures/html/dom/test_historical.html.json
dom/imptests/html/dom/test_historical.html
dom/locales/en-US/chrome/dom/dom.properties
dom/webidl/Document.webidl
dom/xul/XULDocument.cpp
testing/web-platform/meta/dom/historical.html.ini
testing/web-platform/meta/dom/interfaces.html.ini
testing/web-platform/meta/dom/nodes/DOMImplementation-createDocument.html.ini
testing/web-platform/meta/dom/nodes/DOMImplementation-createHTMLDocument.html.ini
testing/web-platform/meta/dom/nodes/Document-constructor.html.ini
testing/web-platform/meta/dom/nodes/Node-properties.html.ini
testing/web-platform/meta/domparsing/DOMParser-parseFromString-html.html.ini
testing/web-platform/meta/html/dom/interfaces.html.ini
webapprt/locales/en-US/webapprt/overrides/dom.properties
--- a/dom/base/nsDeprecatedOperationList.h
+++ b/dom/base/nsDeprecatedOperationList.h
@@ -16,17 +16,16 @@ DEPRECATED_OPERATION(GetAttributeNodeNS)
 DEPRECATED_OPERATION(SetAttributeNodeNS)
 DEPRECATED_OPERATION(RemoveAttributeNode)
 DEPRECATED_OPERATION(CreateAttribute)
 DEPRECATED_OPERATION(CreateAttributeNS)
 DEPRECATED_OPERATION(OwnerElement)
 DEPRECATED_OPERATION(NodeValue)
 DEPRECATED_OPERATION(TextContent)
 DEPRECATED_OPERATION(EnablePrivilege)
-DEPRECATED_OPERATION(InputEncoding)
 DEPRECATED_OPERATION(DOMExceptionCode)
 DEPRECATED_OPERATION(NoExposedProps)
 DEPRECATED_OPERATION(MutationEvent)
 DEPRECATED_OPERATION(Components)
 DEPRECATED_OPERATION(PrefixedVisibilityAPI)
 DEPRECATED_OPERATION(NodeIteratorDetach)
 DEPRECATED_OPERATION(LenientThis)
 DEPRECATED_OPERATION(GetPreventDefault)
--- a/dom/base/nsDocument.cpp
+++ b/dom/base/nsDocument.cpp
@@ -2622,18 +2622,16 @@ nsDocument::StartDocumentLoad(const char
     CSSLoader()->SetEnabled(false); // Do not load/process styles when loading as data
   } else if (nsCRT::strcmp("external-resource", aCommand) == 0) {
     // Allow CSS, but not scripts
     ScriptLoader()->SetEnabled(false);
   }
 
   mMayStartLayout = false;
 
-  mHaveInputEncoding = true;
-
   if (aReset) {
     Reset(aChannel, aLoadGroup);
   }
 
   nsAutoCString contentType;
   nsCOMPtr<nsIPropertyBag2> bag = do_QueryInterface(aChannel);
   if ((bag && NS_SUCCEEDED(bag->GetPropertyAsACString(
                 NS_LITERAL_STRING("contentType"), contentType))) ||
@@ -7483,29 +7481,18 @@ nsIDocument::SetDir(const nsAString& aDi
     rootElement->SetAttr(kNameSpaceID_None, nsGkAtoms::dir,
                          aDirection, true);
   }
 }
 
 NS_IMETHODIMP
 nsDocument::GetInputEncoding(nsAString& aInputEncoding)
 {
-  nsIDocument::GetInputEncoding(aInputEncoding);
-  return NS_OK;
-}
-
-void
-nsIDocument::GetInputEncoding(nsAString& aInputEncoding) const
-{
-  WarnOnceAbout(eInputEncoding);
-  if (mHaveInputEncoding) {
-    return GetCharacterSet(aInputEncoding);
-  }
-
-  SetDOMStringToNull(aInputEncoding);
+  nsIDocument::GetCharacterSet(aInputEncoding);
+  return NS_OK;
 }
 
 NS_IMETHODIMP
 nsDocument::GetMozSyntheticDocument(bool *aSyntheticDocument)
 {
   *aSyntheticDocument = mIsSyntheticDocument;
   return NS_OK;
 }
--- a/dom/base/nsIDocument.h
+++ b/dom/base/nsIDocument.h
@@ -2829,20 +2829,16 @@ protected:
   bool mHasTrackingContentBlocked : 1;
 
   // True if a document has loaded Tracking Content
   bool mHasTrackingContentLoaded : 1;
 
   // True if DisallowBFCaching has been called on this document.
   bool mBFCacheDisallowed : 1;
 
-  // If true, we have an input encoding.  If this is false, then the
-  // document was created entirely in memory
-  bool mHaveInputEncoding : 1;
-
   bool mHasHadDefaultView : 1;
 
   // Whether style sheet change events will be dispatched for this document
   bool mStyleSheetChangeEventsEnabled : 1;
 
   // Whether the document was created by a srcdoc iframe.
   bool mIsSrcdocDocument : 1;
 
--- a/dom/base/test/test_XHRSendData.html
+++ b/dom/base/test/test_XHRSendData.html
@@ -31,17 +31,17 @@ xhr.open("GET", "file_XHRSendData_doc.xm
 xhr.send();
 testDoc1 = xhr.responseXML;
 is(testDoc1.inputEncoding, "windows-1252", "wrong encoding");
 
 testDoc2 = document.implementation.createDocument("", "", null);
 testDoc2.appendChild(testDoc2.createComment(" doc 2 "));
 testDoc2.appendChild(testDoc2.createElement("res"));
 testDoc2.documentElement.appendChild(testDoc2.createTextNode("text"));
-is(testDoc2.inputEncoding, null, "wrong encoding");
+is(testDoc2.inputEncoding, "UTF-8", "wrong encoding");
 
 var testData = "blahblahblahblahblahblahblaaaaaaaah. blah.";
 var extensions = [".txt",".png",".jpg",".gif",".xml", "noext"];
 var fileTypes = ["text/plain", "image/png", "image/jpeg", "image/gif", "text/xml", null];
 var testFiles = new Array;
 var testDOMFiles = new Array;
 
 // arraybuffer test objects
--- a/dom/base/test/test_bug431701.html
+++ b/dom/base/test/test_bug431701.html
@@ -58,37 +58,36 @@ function xhrDoc(idx) {
     return xhr.responseXML;
   };
 }
 
 // Each row has the document getter function, then the characterSet,
 // inputEncoding expected for that document.
 
 var tests = [
- [ frameDoc("one"), "windows-1252", "windows-1252" ],
- [ frameDoc("two"), "UTF-8", "UTF-8" ],
- [ frameDoc("three"), "windows-1252", "windows-1252" ],
- [ frameDoc("four"), "UTF-8", "UTF-8" ],
- [ frameDoc("five"), "UTF-8", "UTF-8" ],
- [ frameDoc("six"), "UTF-8", "UTF-8" ],
- [ frameDoc("seven"), "windows-1252", "windows-1252" ],
- [ createDoc, "UTF-8", null ],
- [ xhrDoc(4), "UTF-8", "UTF-8" ],
- [ xhrDoc(5), "UTF-8", "UTF-8" ],
- [ xhrDoc(6), "windows-1252", "windows-1252" ],
+ [ frameDoc("one"), "windows-1252" ],
+ [ frameDoc("two"), "UTF-8" ],
+ [ frameDoc("three"), "windows-1252" ],
+ [ frameDoc("four"), "UTF-8" ],
+ [ frameDoc("five"), "UTF-8" ],
+ [ frameDoc("six"), "UTF-8" ],
+ [ frameDoc("seven"), "windows-1252" ],
+ [ createDoc, "UTF-8" ],
+ [ xhrDoc(4), "UTF-8" ],
+ [ xhrDoc(5), "UTF-8" ],
+ [ xhrDoc(6), "windows-1252" ],
 ];
 
 function doTest(idx) {
-  var [docGetter, expectedCharacterSet,
-       expectedInputEncoding] = tests[idx];
+  var [docGetter, expectedCharacterSet] = tests[idx];
   var doc = docGetter();
 
   // Have to be careful here to catch null vs ""
   is(doc.characterSet, expectedCharacterSet, "Test " + idx + " characterSet");
-  is(doc.inputEncoding, expectedInputEncoding,
+  is(doc.inputEncoding, expectedCharacterSet,
      "Test " + idx + " inputEncoding");
 }
 
 addLoadEvent(function() {
    SpecialPowers.pushPermissions([{'type': 'systemXHR', 'allow': true, 'context': document}], startTest);
 });
 
 function startTest() {
--- a/dom/imptests/failures/html/dom/test_historical.html.json
+++ b/dom/imptests/failures/html/dom/test_historical.html.json
@@ -1,12 +1,11 @@
 {
   "Historical DOM features must be removed: CDATASection": true,
   "Historical DOM features must be removed: createCDATASection": true,
   "Historical DOM features must be removed: createAttribute": true,
   "Historical DOM features must be removed: createAttributeNS": true,
-  "Historical DOM features must be removed: inputEncoding": true,
   "Historical DOM features must be removed: getAttributeNode": true,
   "Historical DOM features must be removed: getAttributeNodeNS": true,
   "Historical DOM features must be removed: setAttributeNode": true,
   "Historical DOM features must be removed: removeAttributeNode": true,
   "DocumentType member must be nuked: internalSubset": true
 }
--- a/dom/imptests/html/dom/test_historical.html
+++ b/dom/imptests/html/dom/test_historical.html
@@ -36,25 +36,23 @@ function isNukedFromDocument(name) {
     assert_equals(doc[name], undefined)
   }, "Historical DOM features must be removed: " + name)
 }
 var documentNuked = [
   "createCDATASection",
   "createAttribute",
   "createAttributeNS",
   "createEntityReference",
-  "inputEncoding",
   "xmlEncoding",
   "xmlStandalone",
   "xmlVersion",
   "strictErrorChecking",
   "domConfig",
   "normalizeDocument",
   "renameNode",
-  "charset",
   "defaultCharset",
   "height",
   "width"
 ]
 documentNuked.forEach(isNukedFromDocument)
 
 test(function() {
   assert_equals(document.implementation["getFeature"], undefined)
--- a/dom/locales/en-US/chrome/dom/dom.properties
+++ b/dom/locales/en-US/chrome/dom/dom.properties
@@ -59,17 +59,16 @@ CreateAttributeWarning=Use of document.c
 CreateAttributeNSWarning=Use of document.createAttributeNS() is deprecated. Use element.setAttributeNS() instead.
 OwnerElementWarning=Use of attributes' ownerElement attribute is deprecated.
 NodeValueWarning=Use of attributes' nodeValue attribute is deprecated. Use value instead.
 TextContentWarning=Use of attributes' textContent attribute is deprecated. Use value instead.
 EnablePrivilegeWarning=Use of enablePrivilege is deprecated.  Please use code that runs with the system principal (e.g. an extension) instead.
 nsIJSONDecodeDeprecatedWarning=nsIJSON.decode is deprecated.  Please use JSON.parse instead.
 nsIJSONEncodeDeprecatedWarning=nsIJSON.encode is deprecated.  Please use JSON.stringify instead.
 nsIDOMWindowInternalWarning=Use of nsIDOMWindowInternal is deprecated. Use nsIDOMWindow instead.
-InputEncodingWarning=Use of inputEncoding is deprecated.
 FullScreenDeniedDisabled=Request for full-screen was denied because full-screen API is disabled by user preference.
 FullScreenDeniedFocusedPlugin=Request for full-screen was denied because a windowed plugin is focused.
 FullScreenDeniedHidden=Request for full-screen was denied because the document is no longer visible.
 FullScreenDeniedIframeNotAllowed=Request for full-screen was denied because at least one of the document's containing iframes does not have an "allowfullscreen" attribute.
 FullScreenDeniedNotInputDriven=Request for full-screen was denied because Element.mozRequestFullScreen() was not called from inside a short running user-generated event handler.
 FullScreenDeniedNotInDocument=Request for full-screen was denied because requesting element is no longer in its document.
 FullScreenDeniedMovedDocument=Request for full-screen was denied because requesting element has moved document.
 FullScreenDeniedLostWindow=Request for full-screen was denied because we no longer have a window.
--- a/dom/webidl/Document.webidl
+++ b/dom/webidl/Document.webidl
@@ -22,16 +22,20 @@ interface Document : Node {
   [Pure]
   readonly attribute DOMString URL;
   [Pure]
   readonly attribute DOMString documentURI;
   [Pure]
   readonly attribute DOMString compatMode;
   [Pure]
   readonly attribute DOMString characterSet;
+  [Pure,BinaryName="characterSet"]
+  readonly attribute DOMString charset; // legacy alias of .characterSet
+  [Pure,BinaryName="characterSet"]
+  readonly attribute DOMString inputEncoding; // legacy alias of .characterSet
   [Pure]
   readonly attribute DOMString contentType;
 
   [Pure]
   readonly attribute DocumentType? doctype;
   [Pure]
   readonly attribute Element? documentElement;
   [Pure]
@@ -81,18 +85,16 @@ interface Document : Node {
   // These are not in the spec, but leave them for now for backwards compat.
   // So sort of like Gecko extensions
   [NewObject, Throws]
   CDATASection createCDATASection(DOMString data);
   [NewObject, Throws]
   Attr createAttribute(DOMString name);
   [NewObject, Throws]
   Attr createAttributeNS(DOMString? namespace, DOMString name);
-  [Pure]
-  readonly attribute DOMString? inputEncoding;
 };
 
 // http://www.whatwg.org/specs/web-apps/current-work/#the-document-object
 partial interface Document {
   [PutForwards=href, Unforgeable] readonly attribute Location? location;
   //(HTML only)         attribute DOMString domain;
   readonly attribute DOMString referrer;
   //(HTML only)         attribute DOMString cookie;
--- a/dom/xul/XULDocument.cpp
+++ b/dom/xul/XULDocument.cpp
@@ -388,18 +388,16 @@ XULDocument::StartDocumentLoad(const cha
     // NOTE: If this ever starts calling nsDocument::StartDocumentLoad
     // we'll possibly need to reset our content type afterwards.
     mStillWalking = true;
     mMayStartLayout = false;
     mDocumentLoadGroup = do_GetWeakReference(aLoadGroup);
 
     mChannel = aChannel;
 
-    mHaveInputEncoding = true;
-
     // Get the URI.  Note that this should match nsDocShell::OnLoadingSite
     nsresult rv =
         NS_GetFinalChannelURI(aChannel, getter_AddRefs(mDocumentURI));
     NS_ENSURE_SUCCESS(rv, rv);
     
     ResetStylesheetsToURI(mDocumentURI);
 
     RetrieveRelevantHeaders(aChannel);
--- a/testing/web-platform/meta/dom/historical.html.ini
+++ b/testing/web-platform/meta/dom/historical.html.ini
@@ -4,16 +4,19 @@
     expected: FAIL
 
   [Historical DOM features must be removed: DOMError]
     expected: FAIL
 
   [Historical DOM features must be removed: createCDATASection]
     expected: FAIL
 
+  [Historical DOM features must be removed: charset]
+    expected: FAIL
+
   [DocumentType member must be nuked: internalSubset]
     expected: FAIL
 
   [Node member must be nuked: namespaceURI]
     expected: FAIL
 
   [Node member must be nuked: prefix]
     expected: FAIL
--- a/testing/web-platform/meta/dom/interfaces.html.ini
+++ b/testing/web-platform/meta/dom/interfaces.html.ini
@@ -16,19 +16,16 @@
     expected: FAIL
 
   [Document interface: operation queryAll(DOMString)]
     expected: FAIL
 
   [Document interface: xmlDoc must inherit property "origin" with the proper type (3)]
     expected: FAIL
 
-  [Document interface: xmlDoc must inherit property "inputEncoding" with the proper type (6)]
-    expected: FAIL
-
   [Document interface: xmlDoc must inherit property "prepend" with the proper type (32)]
     expected: FAIL
 
   [Document interface: calling prepend([object Object\],[object Object\]) on xmlDoc with too few arguments must throw TypeError]
     expected: FAIL
 
   [Document interface: xmlDoc must inherit property "append" with the proper type (33)]
     expected: FAIL
--- a/testing/web-platform/meta/dom/nodes/DOMImplementation-createDocument.html.ini
+++ b/testing/web-platform/meta/dom/nodes/DOMImplementation-createDocument.html.ini
@@ -1,242 +1,8 @@
 [DOMImplementation-createDocument.html]
   type: testharness
-  [createDocument test 0: metadata for null,undefined,null]
-    expected: FAIL
-
-  [createDocument test 1: metadata for null,"foo",null]
-    expected: FAIL
-
-  [createDocument test 3: metadata for null,"f1oo",null]
-    expected: FAIL
-
-  [createDocument test 4: metadata for null,"foo1",null]
-    expected: FAIL
-
   [createDocument test 6: null,"̀foo",null,"INVALID_CHARACTER_ERR"]
     expected: FAIL
 
-  [createDocument test 22: metadata for null,"xml",null]
-    expected: FAIL
-
-  [createDocument test 24: metadata for null,"xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 32: metadata for undefined,undefined,null]
-    expected: FAIL
-
-  [createDocument test 33: metadata for undefined,"foo",null]
-    expected: FAIL
-
-  [createDocument test 35: metadata for undefined,"f1oo",null]
-    expected: FAIL
-
-  [createDocument test 36: metadata for undefined,"foo1",null]
-    expected: FAIL
-
-  [createDocument test 40: metadata for undefined,"xml",null]
-    expected: FAIL
-
-  [createDocument test 42: metadata for undefined,"xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 46: metadata for "http://example.com/","foo",null]
-    expected: FAIL
-
-  [createDocument test 48: metadata for "http://example.com/","f1oo",null]
-    expected: FAIL
-
-  [createDocument test 49: metadata for "http://example.com/","foo1",null]
-    expected: FAIL
-
-  [createDocument test 51: metadata for "http://example.com/","f:oo",null]
-    expected: FAIL
-
-  [createDocument test 53: metadata for "http://example.com/","_:_",null]
-    expected: FAIL
-
-  [createDocument test 54: metadata for "http://example.com/","_:h0",null]
-    expected: FAIL
-
-  [createDocument test 55: metadata for "http://example.com/","_:test",null]
-    expected: FAIL
-
-  [createDocument test 56: metadata for "http://example.com/","l_:_",null]
-    expected: FAIL
-
-  [createDocument test 57: metadata for "http://example.com/","ns:_0",null]
-    expected: FAIL
-
-  [createDocument test 58: metadata for "http://example.com/","ns:a0",null]
-    expected: FAIL
-
-  [createDocument test 59: metadata for "http://example.com/","ns0:test",null]
-    expected: FAIL
-
-  [createDocument test 60: metadata for "http://example.com/","a.b:c",null]
-    expected: FAIL
-
-  [createDocument test 61: metadata for "http://example.com/","a-b:c",null]
-    expected: FAIL
-
-  [createDocument test 62: metadata for "http://example.com/","a-b:c",null]
-    expected: FAIL
-
-  [createDocument test 63: metadata for "http://example.com/","xml",null]
-    expected: FAIL
-
-  [createDocument test 65: metadata for "http://example.com/","XMLNS",null]
-    expected: FAIL
-
-  [createDocument test 66: metadata for "http://example.com/","xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 68: metadata for "http://example.com/","XML:foo",null]
-    expected: FAIL
-
-  [createDocument test 70: metadata for "http://example.com/","XMLNS:foo",null]
-    expected: FAIL
-
-  [createDocument test 71: metadata for "http://example.com/","xmlfoo:bar",null]
-    expected: FAIL
-
-  [createDocument test 100: metadata for "/","foo",null]
-    expected: FAIL
-
-  [createDocument test 102: metadata for "/","f1oo",null]
-    expected: FAIL
-
-  [createDocument test 103: metadata for "/","foo1",null]
-    expected: FAIL
-
-  [createDocument test 105: metadata for "/","f:oo",null]
-    expected: FAIL
-
-  [createDocument test 107: metadata for "/","xml",null]
-    expected: FAIL
-
-  [createDocument test 109: metadata for "/","xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 112: metadata for "/","xmlfoo:bar",null]
-    expected: FAIL
-
-  [createDocument test 113: metadata for "http://www.w3.org/XML/1998/namespace","foo",null]
-    expected: FAIL
-
-  [createDocument test 115: metadata for "http://www.w3.org/XML/1998/namespace","f1oo",null]
-    expected: FAIL
-
-  [createDocument test 116: metadata for "http://www.w3.org/XML/1998/namespace","foo1",null]
-    expected: FAIL
-
-  [createDocument test 118: metadata for "http://www.w3.org/XML/1998/namespace","f:oo",null]
-    expected: FAIL
-
-  [createDocument test 120: metadata for "http://www.w3.org/XML/1998/namespace","xml",null]
-    expected: FAIL
-
-  [createDocument test 122: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 123: metadata for "http://www.w3.org/XML/1998/namespace","xml:foo",null]
-    expected: FAIL
-
-  [createDocument test 125: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo:bar",null]
-    expected: FAIL
-
-  [createDocument test 136: metadata for "http://www.w3.org/2000/xmlns/","xmlns",null]
-    expected: FAIL
-
-  [createDocument test 139: metadata for "http://www.w3.org/2000/xmlns/","xmlns:foo",null]
-    expected: FAIL
-
-  [createDocument test 142: metadata for "foo:","foo",null]
-    expected: FAIL
-
-  [createDocument test 144: metadata for "foo:","f1oo",null]
-    expected: FAIL
-
-  [createDocument test 145: metadata for "foo:","foo1",null]
-    expected: FAIL
-
-  [createDocument test 147: metadata for "foo:","f:oo",null]
-    expected: FAIL
-
-  [createDocument test 149: metadata for "foo:","xml",null]
-    expected: FAIL
-
-  [createDocument test 151: metadata for "foo:","xmlfoo",null]
-    expected: FAIL
-
-  [createDocument test 154: metadata for "foo:","xmlfoo:bar",null]
-    expected: FAIL
-
-  [createDocument test 156: metadata for null,null,null]
-    expected: FAIL
-
-  [createDocument test 157: metadata for null,"",null]
-    expected: FAIL
-
-  [createDocument test 158: metadata for undefined,null,undefined]
-    expected: FAIL
-
-  [createDocument test 159: metadata for undefined,undefined,undefined]
-    expected: FAIL
-
-  [createDocument test 160: metadata for undefined,"",undefined]
-    expected: FAIL
-
-  [createDocument test 161: metadata for "http://example.com/",null,null]
-    expected: FAIL
-
-  [createDocument test 162: metadata for "http://example.com/","",null]
-    expected: FAIL
-
-  [createDocument test 163: metadata for "/",null,null]
-    expected: FAIL
-
-  [createDocument test 164: metadata for "/","",null]
-    expected: FAIL
-
-  [createDocument test 165: metadata for "http://www.w3.org/XML/1998/namespace",null,null]
-    expected: FAIL
-
-  [createDocument test 166: metadata for "http://www.w3.org/XML/1998/namespace","",null]
-    expected: FAIL
-
-  [createDocument test 167: metadata for "http://www.w3.org/2000/xmlns/",null,null]
-    expected: FAIL
-
-  [createDocument test 168: metadata for "http://www.w3.org/2000/xmlns/","",null]
-    expected: FAIL
-
-  [createDocument test 169: metadata for "foo:",null,null]
-    expected: FAIL
-
-  [createDocument test 170: metadata for "foo:","",null]
-    expected: FAIL
-
-  [createDocument test 171: metadata for null,null,DocumentType node]
-    expected: FAIL
-
   [createDocument test 172: metadata for null,null,DocumentType node]
     expected: FAIL
 
-  [createDocument test 173: metadata for null,null,DocumentType node]
-    expected: FAIL
-
-  [createDocument test 174: metadata for null,null,DocumentType node]
-    expected: FAIL
-
-  [createDocument test 175: metadata for null,null,DocumentType node]
-    expected: FAIL
-
-  [createDocument test 176: metadata for null,"foo",DocumentType node]
-    expected: FAIL
-
-  [createDocument test 177: metadata for "foo",null,DocumentType node]
-    expected: FAIL
-
-  [createDocument test 178: metadata for "foo","bar",DocumentType node]
-    expected: FAIL
-
deleted file mode 100644
--- a/testing/web-platform/meta/dom/nodes/DOMImplementation-createHTMLDocument.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[DOMImplementation-createHTMLDocument.html]
-  type: testharness
-  [createHTMLDocument(): metadata]
-    expected: FAIL
-
--- a/testing/web-platform/meta/dom/nodes/Document-constructor.html.ini
+++ b/testing/web-platform/meta/dom/nodes/Document-constructor.html.ini
@@ -1,8 +1,5 @@
 [Document-constructor.html]
   type: testharness
-  [new Document(): metadata]
-    expected: FAIL
-
   [new Document(): URL parsing]
     expected: FAIL
 
--- a/testing/web-platform/meta/dom/nodes/Node-properties.html.ini
+++ b/testing/web-platform/meta/dom/nodes/Node-properties.html.ini
@@ -1,14 +1,8 @@
 [Node-properties.html]
   type: testharness
-  [foreignDoc.inputEncoding]
-    expected: FAIL
-
-  [xmlDoc.inputEncoding]
-    expected: FAIL
-
   [xmlElement.namespaceURI]
     expected: FAIL
 
   [detachedXmlElement.namespaceURI]
     expected: FAIL
 
deleted file mode 100644
--- a/testing/web-platform/meta/domparsing/DOMParser-parseFromString-html.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[DOMParser-parseFromString-html.html]
-  type: testharness
-  [inputEncoding]
-    expected: FAIL
-
--- a/testing/web-platform/meta/html/dom/interfaces.html.ini
+++ b/testing/web-platform/meta/html/dom/interfaces.html.ini
@@ -206,19 +206,16 @@
     expected: FAIL
 
   [Document interface: iframe.contentDocument must inherit property "ontoggle" with the proper type (153)]
     expected: FAIL
 
   [Document interface: document.implementation.createDocument(null, "", null) must inherit property "origin" with the proper type (3)]
     expected: FAIL
 
-  [Document interface: document.implementation.createDocument(null, "", null) must inherit property "inputEncoding" with the proper type (6)]
-    expected: FAIL
-
   [Document interface: document.implementation.createDocument(null, "", null) must inherit property "styleSheetSets" with the proper type (31)]
     expected: FAIL
 
   [Document interface: document.implementation.createDocument(null, "", null) must inherit property "domain" with the proper type (34)]
     expected: FAIL
 
   [Document interface: document.implementation.createDocument(null, "", null) must inherit property "cookie" with the proper type (36)]
     expected: FAIL
--- a/webapprt/locales/en-US/webapprt/overrides/dom.properties
+++ b/webapprt/locales/en-US/webapprt/overrides/dom.properties
@@ -59,17 +59,16 @@ CreateAttributeWarning=Use of document.c
 CreateAttributeNSWarning=Use of document.createAttributeNS() is deprecated. Use element.setAttributeNS() instead.
 OwnerElementWarning=Use of attributes' ownerElement attribute is deprecated.
 NodeValueWarning=Use of attributes' nodeValue attribute is deprecated. Use value instead.
 TextContentWarning=Use of attributes' textContent attribute is deprecated. Use value instead.
 EnablePrivilegeWarning=Use of enablePrivilege is deprecated. Please use code that runs with the system principal (e.g. an extension) instead.
 nsIJSONDecodeDeprecatedWarning=nsIJSON.decode is deprecated. Please use JSON.parse instead.
 nsIJSONEncodeDeprecatedWarning=nsIJSON.encode is deprecated. Please use JSON.stringify instead.
 nsIDOMWindowInternalWarning=Use of nsIDOMWindowInternal is deprecated. Use nsIDOMWindow instead.
-InputEncodingWarning=Use of inputEncoding is deprecated.
 FullScreenDeniedDisabled=Request for full-screen was denied because full-screen API is disabled by user preference.
 FullScreenDeniedFocusedPlugin=Request for full-screen was denied because a windowed plugin is focused.
 FullScreenDeniedHidden=Request for full-screen was denied because the document is no longer visible.
 FullScreenDeniedIframeNotAllowed=Request for full-screen was denied because at least one of the document's containing iframes does not have an "allowfullscreen" attribute.
 FullScreenDeniedNotInputDriven=Request for full-screen was denied because Element.mozRequestFullScreen() was not called from inside a short running user-generated event handler.
 FullScreenDeniedNotInDocument=Request for full-screen was denied because requesting element is no longer in its document.
 FullScreenDeniedMovedDocument=Request for full-screen was denied because requesting element has moved document.
 FullScreenDeniedLostWindow=Request for full-screen was denied because we no longer have a window.