Bug 1335099 - add BUG_COMPONENT to many dom/* subdir files. r=overholt
☠☠ backed out by 28a778305665 ☠ ☠
authorJoel Maher <jmaher@mozilla.com>
Mon, 06 Feb 2017 09:45:55 -0500
changeset 479469 9a332af74af542d75061c693c9644a9aaec2876d
parent 479468 579e613faefe7aa5d6e948c01d63d314f0fdae96
child 479470 c7d4ac54e483f32e3b3bf9b18ac5889eca696186
push id44267
push usermaglione.k@gmail.com
push dateMon, 06 Feb 2017 19:37:49 +0000
reviewersoverholt
bugs1335099
milestone54.0a1
Bug 1335099 - add BUG_COMPONENT to many dom/* subdir files. r=overholt MozReview-Commit-ID: CyIIs98hnUI
dom/battery/moz.build
dom/bindings/moz.build
dom/broadcastchannel/moz.build
dom/browser-element/moz.build
dom/cache/moz.build
dom/commandhandler/moz.build
dom/console/moz.build
dom/crypto/moz.build
dom/devicestorage/moz.build
dom/flyweb/moz.build
dom/gamepad/moz.build
dom/geolocation/moz.build
dom/notification/moz.build
dom/storage/moz.build
dom/u2f/moz.build
dom/vr/moz.build
dom/webauthn/moz.build
dom/webidl/moz.build
dom/xbl/moz.build
dom/xhr/moz.build
dom/xml/moz.build
dom/xslt/moz.build
--- a/dom/battery/moz.build
+++ b/dom/battery/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
 EXPORTS.mozilla.dom.battery += [
     'Constants.h',
     'Types.h',
 ]
 
 SOURCES += [
     'BatteryManager.cpp',
 ]
--- a/dom/bindings/moz.build
+++ b/dom/bindings/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 TEST_DIRS += ['test']
 
 XPIDL_SOURCES += [
     'nsIScriptError.idl'
 ]
 
 XPIDL_MODULE = 'dom_bindings'
 
--- a/dom/broadcastchannel/moz.build
+++ b/dom/broadcastchannel/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 EXPORTS.mozilla.dom += [
     'BroadcastChannel.h',
 ]
 
 UNIFIED_SOURCES += [
     'BroadcastChannel.cpp',
     'BroadcastChannelChild.cpp',
     'BroadcastChannelParent.cpp',
--- a/dom/browser-element/moz.build
+++ b/dom/browser-element/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 EXPORTS.mozilla += [
     'BrowserElementParent.h',
 ]
 
 EXPORTS.mozilla.dom += [
     'BrowserElementAudioChannel.h',
 ]
 
--- a/dom/cache/moz.build
+++ b/dom/cache/moz.build
@@ -1,14 +1,18 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 EXPORTS.mozilla.dom.cache += [
     'Action.h',
     'ActorChild.h',
     'ActorUtils.h',
     'AutoUtils.h',
     'Cache.h',
     'CacheChild.h',
     'CacheOpChild.h',
--- a/dom/commandhandler/moz.build
+++ b/dom/commandhandler/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "Embedding: APIs")
+
 XPIDL_SOURCES += [
     'nsICommandManager.idl',
     'nsICommandParams.idl',
     'nsIControllerCommand.idl',
     'nsIControllerCommandTable.idl',
     'nsIControllerContext.idl',
     'nsPICommandUpdater.idl',
 ]
--- a/dom/console/moz.build
+++ b/dom/console/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 XPIDL_SOURCES += [
     'nsIConsoleAPIStorage.idl',
 ]
 
 XPIDL_MODULE = 'dom'
 
 EXPORTS += [
     'nsIConsoleReportCollector.h',
--- a/dom/crypto/moz.build
+++ b/dom/crypto/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Security")
+
 EXPORTS.mozilla.dom += [
     'CryptoBuffer.h',
     'CryptoKey.h',
     'KeyAlgorithmProxy.h',
     'WebCryptoCommon.h',
     'WebCryptoTask.h',
     'WebCryptoThreadPool.h'
 ]
--- a/dom/devicestorage/moz.build
+++ b/dom/devicestorage/moz.build
@@ -1,14 +1,18 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+
 EXPORTS += [
     'DeviceStorage.h',
     'DeviceStorageFileDescriptor.h',
     'nsDeviceStorage.h',
 ]
 
 EXPORTS.mozilla.dom += [
     'DeviceStorageAreaListener.h',
--- a/dom/flyweb/moz.build
+++ b/dom/flyweb/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Flyweb")
+
 EXPORTS.mozilla.dom += [
     'FlyWebDiscoveryManager.h',
     'FlyWebPublishedServer.h',
     'FlyWebPublishedServerIPC.h',
     'FlyWebPublishOptionsIPCSerializer.h',
     'FlyWebServerEvents.h',
     'FlyWebService.h',
     'HttpServer.h',
--- a/dom/gamepad/moz.build
+++ b/dom/gamepad/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
 IPDL_SOURCES += [
     'ipc/GamepadEventTypes.ipdlh',
     'ipc/PGamepadEventChannel.ipdl',
     'ipc/PGamepadTestChannel.ipdl'
 ]
 
 EXPORTS.mozilla.dom += [
     'Gamepad.h',
--- a/dom/geolocation/moz.build
+++ b/dom/geolocation/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "Geolocation")
+
 EXPORTS += [
     'nsGeoPosition.h',
     'nsGeoPositionIPCSerialiser.h',
 ]
 
 SOURCES += [
     'nsGeolocation.cpp',
 ]
--- a/dom/notification/moz.build
+++ b/dom/notification/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Toolkit", "Notifications and Alerts")
+
 EXTRA_COMPONENTS += [
     'NotificationStorage.js',
     'NotificationStorage.manifest',
 ]
 
 EXTRA_JS_MODULES += [
     'NotificationDB.jsm'
 ]
--- a/dom/storage/moz.build
+++ b/dom/storage/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 EXPORTS.mozilla.dom += [
     'Storage.h',
     'StorageIPC.h',
 ]
 
 UNIFIED_SOURCES += [
     'Storage.cpp',
     'StorageCache.cpp',
--- a/dom/u2f/moz.build
+++ b/dom/u2f/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
 EXPORTS.mozilla.dom += [
     'U2F.h',
     'U2FAuthenticator.h',
 ]
 
 UNIFIED_SOURCES += [
     'U2F.cpp',
 ]
--- a/dom/vr/moz.build
+++ b/dom/vr/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 EXPORTS.mozilla.dom += [
     'VRDisplay.h',
     'VRDisplayEvent.h',
     'VREventObserver.h',
     ]
 
 UNIFIED_SOURCES = [
     'VRDisplay.cpp',
--- a/dom/webauthn/moz.build
+++ b/dom/webauthn/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
 EXPORTS.mozilla.dom += [
     'NSSU2FTokenRemote.h',
     'ScopedCredential.h',
     'ScopedCredentialInfo.h',
     'WebAuthentication.h',
     'WebAuthnAssertion.h',
     'WebAuthnAttestation.h',
     'WebAuthnRequest.h',
--- a/dom/webidl/moz.build
+++ b/dom/webidl/moz.build
@@ -1,14 +1,377 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
+with Files("APZTestData.webidl"):
+    BUG_COMPONENT = ("Core", "Panning and Zooming")
+
+with Files("AccessibleNode.webidl"):
+    BUG_COMPONENT = ("Core", "Disability Access APIs")
+
+with Files("Addon*"):
+    BUG_COMPONENT = ("Toolkit", "Add-ons Manager")
+
+with Files("AnalyserNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Animat*"):
+    BUG_COMPONENT = ("Core", "DOM: Animation")
+
+with Files("*Audio*"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Autocomplete*"):
+    BUG_COMPONENT = ("Toolkit", "Autocomplete")
+
+with Files("BaseKeyframeTypes.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Animation")
+
+with Files("BatteryManager.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("BiquadFilterNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("BrowserElement*"):
+    BUG_COMPONENT = ("Core", "DOM")
+
+with Files("CSP*"):
+    BUG_COMPONENT = ("Core", "DOM: Security")
+
+with Files("CSS*"):
+    BUG_COMPONENT = ("Core", "CSS Parsing and Computation")
+
+with Files("Canvas*"):
+    BUG_COMPONENT = ("Core", "Canvas: 2D")
+
+with Files("Caret*"):
+    BUG_COMPONENT = ("Core", "Editor")
+
+with Files("Channel*"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Client*"):
+    BUG_COMPONENT = ("Core", "DOM: Service Workers")
+
+with Files("ClipboardEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("ConstantSourceNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("ContainerBoxObject"):
+    BUG_COMPONENT = ("Core", "DOM")
+
+with Files("ConvolverNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Coordinates.webidl"):
+    BUG_COMPONENT = ("Core", "Geolocation")
+
+with Files("Crypto.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Security")
+
+with Files("Device*"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("Directory.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("DataTransfer*"):
+    BUG_COMPONENT = ("Core", "Drag and Drop")
+
+with Files("DragEvent.webidl"):
+    BUG_COMPONENT = ("Core", "Drag and Drop")
+
+with Files("DecoderDoctorNotification.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+
+with Files("DelayNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("DynamicsCompressorNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("DesktopNotification.webidl"):
+    BUG_COMPONENT = ("Toolkit", "Notification and Alerts")
+
+with Files("FakePluginTagInit.webinit"):
+    BUG_COMPONENT = ("Core", "Plug-ins")
+
+with Files("FlyWeb*"):
+    BUG_COMPONENT = ("Core", "DOM: Flyweb")
+
+with Files("FocusEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("Font*"):
+    BUG_COMPONENT = ("Core", "CSS Parsing and Computation")
+
+with Files("FormData.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("Geolocation.webidl"):
+    BUG_COMPONENT = ("Core", "Geolocation")
+
+with Files("GainNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Gamepad*"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("GeometryUtils.webidl"):
+    BUG_COMPONENT = ("Core", "Layout")
+
+with Files("GetUserMediaRequest.webidl"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("Grid.webidl"):
+    BUG_COMPONENT = ("Core", "CSS Parsing and Computation")
+
+with Files("GroupedHistoryEvent.webidl"):
+    BUG_COMPONENT = ("Core", "Document Navigation")
+
+with Files("HTML*"):
+    BUG_COMPONENT = ("Core", "DOM: Core & HTML")
+
+with Files("HashChangeEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("HeapSnapshot.webidl"):
+    BUG_COMPONENT = ("Firefox", "Developer Tools: Memory")
+
+with Files("HiddenPluginEvent.webidl"):
+    BUG_COMPONENT = ("Core", "Plug-ins")
+
+with Files("IDB*"):
+    BUG_COMPONENT = ("Core", "DOM: IndexedDB")
+
+with Files("IIRFilterNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Image*"):
+    BUG_COMPONENT = ("Core", "DOM")
+
+with Files("ImageCapture*"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("InputEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("InstallTrigger.webidl"):
+    BUG_COMPONENT = ("Toolkit", "Add-ons Manager")
+
+with Files("InspectorUtils.webidl"):
+    BUG_COMPONENT = ("Firefox", "Developer Tools: Inspector")
+
+with Files("KeyAlgorithm.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Security")
+
+with Files("Key*Event*"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("KeyIdsInitData.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+
+with Files("Keyframe*"):
+    BUG_COMPONENT = ("Core", "DOM: Animation")
+
+with Files("LocalMediaStream.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("MediaDevice*"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("Media*Source*"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("MediaStream*"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("MediaStreamAudio*"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("MediaEncryptedEvent.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("MediaKey*"):
+    BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+
+with Files("Media*List*"):
+    BUG_COMPONENT = ("Core", "CSS Parsing and Computation")
+
+with Files("MediaStreamList.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("*Record*"):
+    BUG_COMPONENT = ("Core", "Audio/Video: Recording")
+
+with Files("Media*Track*"):
+    BUG_COMPONENT = ("Core", "WebRTC: Audio/Video")
+
+with Files("Mouse*"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("MozSelfSupport.webidl"):
+    BUG_COMPONENT = ("Firefox Health Report", "Client: Desktop")
+
+with Files("MozTimeManager.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("MutationEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("NativeOSFileInternals.webidl"):
+    BUG_COMPONENT = ("Toolkit", "OS.File")
+
+with Files("Net*"):
+    BUG_COMPONENT = ("Core", "Networking")
+
+with Files("OfflineAudio*"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("OffscreenCanvas.webidl"):
+    BUG_COMPONENT = ("Core", "Canvas 2D")
+
+with Files("OscillatorNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("PannerNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Peer*"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("PeriodicWave.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("PointerEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("PopStateEvent.webidl*"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("Position*"):
+    BUG_COMPONENT = ("Core", "Geolocation")
+
+with Files("ProfileTimelineMarker.webidl"):
+    BUG_COMPONENT = ("Firefox", "Developer Tools: Performance Tools (profiler/timeline)")
+
+with Files("ProgressEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("Push*"):
+    BUG_COMPONENT = ("Core", "DOM: Push Notifications")
+
+with Files("RTC*"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("SVG*"):
+    BUG_COMPONENT = ("Core", "SVG")
+
+with Files("ScriptProcessorNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+# TODO: SecureElement*, SettingChangeNotification
+# are FirefoxOS::*, leaving as Core::DOM
+
+with Files("Selection.webidl"):
+    BUG_COMPONENT = ("Core", "Selection")
+
+with Files("ServiceWorker*"):
+    BUG_COMPONENT = ("Core", "DOM: Service Workers")
+
+with Files("SimpleGestureEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("SocketCommon.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("SourceBuffer*"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("StereoPannerNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("Style*"):
+    BUG_COMPONENT = ("Core", "DOM: CSS Object Model")
+
+with Files("SubtleCrypto.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Security")
+
+with Files("TCP*"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("TextTrack*"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("ThreadSafeChromeUtils.webidl"):
+    BUG_COMPONENT = ("Firefox", "Developer Tools: Memory")
+
+with Files("TrackEvent.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("U2F.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("UDP*"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("UIEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("URL.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("UserProximityEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("VTT*"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("VRDisplay.webidl"):
+    BUG_COMPONENT = ("Core", "Graphics")
+
+with Files("Video*"):
+    BUG_COMPONENT = ("Core", "Audio/Video")
+
+with Files("WaveShaperNode.webidl"):
+    BUG_COMPONENT = ("Core", "Web Audio")
+
+with Files("WebAuthentication.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Device Interfaces")
+
+with Files("WebGL*"):
+    BUG_COMPONENT = ("Core", "Canvas: WebGL")
+
+with Files("WebKitCSSMatrix.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: CSS Object Model")
+
+with Files("Webrtc*"):
+    BUG_COMPONENT = ("Core", "WebRTC")
+
+with Files("WheelEvent.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Events")
+
+with Files("WidevineCDMManifest.webidl"):
+    BUG_COMPONENT = ("Core", "Audio/Video: Playback")
+
+with Files("WindowOrWorkerGlobalScope.webidl"):
+    BUG_COMPONENT = ("Core", "DOM: Workers")
+
+with Files("Worker*"):
+    BUG_COMPONENT = ("Core", "DOM: Workers")
+
 GENERATED_WEBIDL_FILES = [
     'CSS2Properties.webidl',
 ]
 
 PREPROCESSED_WEBIDL_FILES = [
     'Navigator.webidl',
     'Node.webidl',
     'Window.webidl',
--- a/dom/xbl/moz.build
+++ b/dom/xbl/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "XBL")
+
 DIRS += ['builtin']
 
 EXPORTS += [
     'nsBindingManager.h',
     'nsXBLBinding.h',
     'nsXBLService.h',
 ]
 
--- a/dom/xhr/moz.build
+++ b/dom/xhr/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "DOM")
+
 XPIDL_SOURCES += [
     'nsIXMLHttpRequest.idl',
 ]
 
 XPIDL_MODULE = 'dom_xhr'
 
 EXPORTS.mozilla.dom += [
     'XMLHttpRequest.h',
--- a/dom/xml/moz.build
+++ b/dom/xml/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "XML")
+
 DIRS += ['resources']
 
 MOCHITEST_MANIFESTS += ['test/mochitest.ini']
 
 EXPORTS += [
     'nsIXMLContentSink.h',
 ]
 
--- a/dom/xslt/moz.build
+++ b/dom/xslt/moz.build
@@ -1,14 +1,17 @@
 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+with Files("**"):
+    BUG_COMPONENT = ("Core", "XSLT")
+
 XPIDL_SOURCES += [
     'nsIXSLTProcessor.idl',
     'nsIXSLTProcessorPrivate.idl',
     'txIEXSLTRegExFunctions.idl',
     'txIFunctionEvaluationContext.idl',
     'txINodeSet.idl',
     'txIXPathObject.idl',
 ]