For popular modules used by many DevTools add-ons, add shim files which wrap the
modules and make them available at their previous location.
Each shim includes a deprecation warning to make devs and users aware of the
issue.
Break DevTools theme files out of browser.jar and move to a new DevTools
specific jar. Update all paths of the form:
chrome://browser/skin/devtools/<X>
to
chrome://devtools/skin/<Y>
where <Y> is the source tree path that comes after /devtools/client.
Move DevTools themes to a new directory using the following step:
hg mv browser/themes/shared/devtools devtools/client/themes
No other changes are made.
In a following patch, all DevTools moz.build files will use DevToolsModules to
install JS modules at a path that corresponds directly to their source tree
location. Here we rewrite all require and import calls to match the new
location that these files are installed to.
Break DevTools content files out of browser.jar and move to a new DevTools
specific jar. Update all paths of the form:
chrome://browser/content/devtools/<X>
to
chrome://devtools/content/<Y>
where <Y> is the source tree path that comes after /devtools/client.
Move major DevTools files to new directories using the following steps:
hg mv browser/devtools devtools/client
hg mv toolkit/devtools/server devtools/server
hg mv toolkit/devtools devtools/shared
No other changes are made.
This enables the use of ubi::Node in situations where a JSContext* is not
available, and paves the way for debugging utilities to dump shortest paths from
GC roots to a given ubi::Node that can be used while paused in a debugger.