Commit Graph
52 Commits
Author SHA1 Message Date
Hubert B Manilla 6c0d6e099d Bug 2043924 - [devtools] Improve the error message for a method which expect bulk response but return a value r=devtools-reviewers,ochameau
Differential Revision: https://phabricator.services.mozilla.com/D303667
2026-06-02 09:18:10 +00:00
Atila Butkovits b58730abd8 Revert "Bug 2043924 - [devtools] Assert that a method which expects a bulk response throws when a value is returned r=devtools-reviewers,ochameau" for causing failures at test_bulk_error.js.
This reverts commit cc333d322a.

Revert "Bug 2043924 - [devtools] Improve the error message for a method which expect bulk response but return a value r=devtools-reviewers,ochameau"

This reverts commit 19e0d76011.
2026-06-01 18:20:21 +00:00
Hubert B Manilla 19e0d76011 Bug 2043924 - [devtools] Improve the error message for a method which expect bulk response but return a value r=devtools-reviewers,ochameau
Differential Revision: https://phabricator.services.mozilla.com/D303667
2026-06-01 16:00:38 +00:00
Antonette Caldwell 4c36030555 Bug 2031735 - Throw Error instead of Actor for invalid bulk response return value in protocol Actor. r=devtools-reviewers,bomsy
Differential Revision: https://phabricator.services.mozilla.com/D302684
2026-05-31 20:11:15 +00:00
Alexandre Poirot 59149c9a82 Bug 2019873 - [devtools] Transfer stack to the parent process for content process exceptions. r=devtools-reviewers,jdescottes
When any exception happens from the DevToolsProcess's JSProcessActor,
the stacktrace is lost when the exception reaches the parent process.
Manually transfer the exception payload between processes
so that RDP server can send the full stack to the client.

Using callbacks was losing async stack trace, so I moved super.sendQuery
into an inline async function to be able to use await and preserve async
stacks in case of errors.

Differential Revision: https://phabricator.services.mozilla.com/D298390
2026-05-14 00:42:17 +00:00
Alexandre Poirot a0c5761e78 Bug 1990493 - [devtools] Show out of memory stack from server exceptions. r=devtools-reviewers,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D277899
2026-01-06 16:07:04 +00:00
Mark Banner fd62657728 Bug 2004680 - Fix ESLint rule jsdoc/check-tag-names issues in devtools. r=devtools-reviewers,devtools-backward-compat-reviewers,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D275754
2025-12-22 12:41:26 +00:00
Mark Banner 88ea51175c Bug 2004680 - Automatically fix issues raised by jsdoc/check-tag-names. r=frontend-codestyle-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D275753
2025-12-22 12:41:23 +00:00
Mark Banner b38cd3110b Bug 1999554 - Automatically fix ESLint rule jsdoc/check-types for devtools/. r=devtools-reviewers,devtools-backward-compat-reviewers,profiler-reviewers,canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D272173
2025-11-21 16:16:08 +00:00
Mark Banner 2542790f53 Bug 1998787 - Automatic fixes for enabling ESLint jsdoc/tag-line rule everywhere. r=frontend-codestyle-reviewers,mtigley,perftest-reviewers,nchevobbe,home-newtab-reviewers,Gijs,mconley,sparky
Differential Revision: https://phabricator.services.mozilla.com/D271745
2025-11-10 21:27:12 +00:00
Florian Quèze c6561de6fe Bug 1982887 - add the ChromeUtils.now API to use it in ChromeUtils.addProfilerMarker, r=canaltinova,webdriver-reviewers,perftest-reviewers,geckoview-reviewers,extension-reviewers,settings-reviewer-rotation,search-reviewers,devtools-reviewers,places-reviewers,profiler-reviewers,translations-reviewers,firefox-desktop-core-reviewers ,home-newtab-reviewers,toolkit-telemetry-reviewers,scunnane,robwu,owlish,nchevobbe,Gijs,sparky,mconley.
Differential Revision: https://phabricator.services.mozilla.com/D261007
2025-08-18 21:59:08 +00:00
Alexandre Poirot a7b0d37072 Bug 949595 - [devtools] Implement bulk requests in protocol.js. r=devtools-reviewers,nchevobbe
This mimic what was only supported via legacy DevToolsClient.request() method (bug 797639).

Differential Revision: https://phabricator.services.mozilla.com/D245922
2025-05-16 00:38:46 +00:00
Alexandre Poirot 055ade3146 Bug 1941886 - [devtools] Prompt user to fill bug with details on early exception during toolbox opening. r=devtools-reviewers,nchevobbe
Also add a tweak to protocol.js in order to transfer the server side stack trace to the client.

Differential Revision: https://phabricator.services.mozilla.com/D234890
2025-01-30 21:21:34 +00:00
Dave Townsend 2af4d349f3 Bug 1864896: Autofix unused function arguments (devtools). r=profiler-reviewers,devtools-reviewers,nchevobbe,julienw
Differential Revision: https://phabricator.services.mozilla.com/D202959
2024-03-05 14:21:15 +00:00
Mark Banner 91fde42f7b Bug 1826062 - Automatic fixes for Prettier 2.0.5 upgrade. r=mossop,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,denschub,devtools-reviewers,sparky,owlish
Differential Revision: https://phabricator.services.mozilla.com/D177025
2023-05-20 12:26:49 +00:00
Alexandre Poirot fe2edc6770 Bug 1817729 - [devtools] Ensure computing Actor's requestTypes only once. r=jdescottes
This complex object used to be computed only once per Class,
but this regressed to be computed once per Class instance.

Differential Revision: https://phabricator.services.mozilla.com/D170412
2023-02-21 10:48:35 +00:00
Alexandre Poirot 8ae9b24f22 Bug 1816635 - [devtools] Move conn nullification to Pool. r=jdescottes
So that it isn't only done for Actors, but also for all Fronts.

Differential Revision: https://phabricator.services.mozilla.com/D169800
2023-02-14 14:47:17 +00:00
Alexandre Poirot 44e5012d2c Bug 1813648 - [devtools] Remove ActorClassWithSpec and all its dependencies. r=devtools-reviewers,jdescottes
Some actors weren't using any specification. They now have to pass a bare minimal spec object.
Unifying them to the regular Actor interface helps merging constructor with initialize
and instantiate all the actors without any code branch.

Differential Revision: https://phabricator.services.mozilla.com/D169359
2023-02-14 10:34:19 +00:00
Alexandre Poirot 05088dca10 Bug 1813995 - [devtools] Nullify conn for all Actors on destruction. r=jdescottes,devtools-reviewers
A few classes weren't passing the conn object to Actor's constructor
and instead manually defining it.

Some others were having a duplicated `_conn` alias.

Differential Revision: https://phabricator.services.mozilla.com/D168351
2023-02-07 10:36:59 +00:00
Alexandre Poirot 6dae3789b4 Bug 1813475 - [devtools] Convert a first Actor to ES Class, the web console actor. r=devtools-reviewers,nchevobbe
* Note that "conn" attribute is now managed by Actor.

* We might want to finally remove "requestTypes".
This isn't used by the frontend... may be third party use it?
This allows to list all available RDP methods of all actors.

* All actors now have to be instantiated via "new ".

Differential Revision: https://phabricator.services.mozilla.com/D168254
2023-01-30 19:36:06 +00:00
Alexandre Poirot 07e6ce0083 Bug 1792848 - [devtools] Use absolute URLs to import modules in devtools/shared. r=Honza,devtools-backward-compat-reviewers,bomsy
Differential Revision: https://phabricator.services.mozilla.com/D158643
2022-10-12 15:56:22 +00:00
Alexandre Poirot 0c4e317914 Bug 1789980 - [devtools] Migrate all callsites using require("chrome") to use Components.* global symbols. r=jdescottes,perftest-reviewers,AlexandruIonescu
This will help transition to ES Modules as we won't be able to expose a magic "chrome" ESM.
Also, most of these symbols are exposed as global already.
All but:
* `components` which is `Components`,
* `CC` which is `Components.Constructor`,
* `Cm` which is `Components.manager`.

$ sed -ie "/require(.chrome.)/d" $(git grep -l 'require("chrome")' devtools/)
+ manual edits for all three exceptions

Differential Revision: https://phabricator.services.mozilla.com/D156936
2022-09-20 12:52:27 +00:00
Alexandre Poirot 86c7a14e62 Bug 1789202 - [devtools] Expose ChromeUtils as a global to all DevTools modules. r=perftest-reviewers,nchevobbe,AlexandruIonescu
This will help transition to ES Modules as this symbol is exposed to them.

$ sed -ie "/require(.ChromeUtils.)/d" $(git grep -l 'require("ChromeUtils")' devtools/)
$ sed -ie "/loader.lazyRequireGetter(this, .ChromeUtils./d" $(git grep -l 'loader.lazyRequireGetter(this, "ChromeUtils"' devtools/)
+ the edition of builtin-modules.js + eslintrc.js + manual eslint fixes

Differential Revision: https://phabricator.services.mozilla.com/D156402
2022-09-09 07:22:51 +00:00
Alexandre Poirot 0f32f335e3 Bug 1789201 - [devtools] Expose Services as a global to all DevTools modules. r=perftest-reviewers,nchevobbe,julienw,AlexandruIonescu
This will help transition to ES Modules as this symbol is exposed to them.

$ sed -ie "/require(.Services.)/d" $(git grep -l 'require("Services")' devtools/)
$ sed -ie "/loader.lazyRequireGetter(this, .Services./d" $(git grep -l 'loader.lazyRequireGetter(this, "Services"' devtools/)
+ the edition of builtin-modules.js + eslintrc.js
+ manual eslint fixes
+ removal of devtools-services in the debugger, except for jest tests

Differential Revision: https://phabricator.services.mozilla.com/D156401
2022-09-09 07:22:51 +00:00
Julian Descottes b235c423a0 Bug 1778432 - [devtools] Guard against missing Services.profiler in Actor:_sendEvent r=nchevobbe
The Services object is replaced by a mock in the worker loader so Services.profiler might be undefined.

Differential Revision: https://phabricator.services.mozilla.com/D151211
2022-07-07 13:43:56 +00:00
Julian Descottes 4ec563c420 Bug 1775071 - [devtools] Guard profiler markers for DevTools actor events behind a profiler.IsActive check r=ochameau
DevTools actor events can be a very hot path and we should avoid computing the marker label if possible.

Differential Revision: https://phabricator.services.mozilla.com/D150996
2022-07-06 09:38:53 +00:00
Alexandre Poirot 9b75e905d1 Bug 1773284 - [devtools] Add tracing marking for RDP fronts and actors. r=jdescottes
This should allow better highlight slow request/event on both server and client sides.

Differential Revision: https://phabricator.services.mozilla.com/D148660
2022-06-13 11:48:25 +00:00
Butkovits Atila 80598b951a Backed out changeset 46c9d33f30a7 (bug 1773284) for causing devtools failures. CLOSED TREE 2022-06-09 17:15:41 +03:00
Alexandre Poirot 1aea566c1b Bug 1773284 - [devtools] Add tracing marking for RDP fronts and actors. r=jdescottes
This should allow better highlight slow request/event on both server and client sides.

Differential Revision: https://phabricator.services.mozilla.com/D148660
2022-06-09 13:31:29 +00:00
Julian Descottes b4379f28ba Bug 1717580 - [devtools] Actor/Front isDestroyed should not return true for uninitialized objects r=ochameau
Differential Revision: https://phabricator.services.mozilla.com/D118469
2021-06-23 15:28:33 +00:00
Alexandre Poirot bb5f9e77f7 Bug 1698554 - [devtools] Improve error logging when a request fails with a custom exception. r=nchevobbe
Like BrowsingContextTargetActor.detach which was throwing { error: wrongState }
and we were logging "(void 0)" because error.message was undefined,
while error was the thrown JS object.

Differential Revision: https://phabricator.services.mozilla.com/D107986
2021-03-19 10:04:48 +00:00
Alexandre Poirot 8c02f52bc2 Bug 1682780 - [devtools] Remove special hack around ThreadActor.attach from protocol.js internals. r=nchevobbe,jdescottes
This is no longer necessary as attach is no longer entering in a nested event loop.
And so we can have attach to complete and return its value as any other request.

Differential Revision: https://phabricator.services.mozilla.com/D100045
2021-01-07 13:32:41 +00:00
Alexandre Poirot d7ab26a858 Bug 1673328 - [devtools] Stop using requestTypes in ThreadActor. r=nchevobbe
This was hacking the internals of RDP/protocol.js in order to provide
different names to the actor prototype.
I had to rename existing `skipBreakpoints` getter in order to avoid
name collision with the RDP method of the same name.
I also had to tweak a few method arguments as they weren't following protocol.js spec.
They were called without protocol.js automatic marshalling of values.
Finally, hack something in protocol.js in order to avoid duplicated response for ThreadActor.attach.

Differential Revision: https://phabricator.services.mozilla.com/D94958
2020-10-29 18:58:33 +00:00
Alexandre Poirot df4fa409ba Bug 1616381 - Do not try to emit error packets when the actor is destoyed. r=jdescottes
I also added another early return in order to avoid trying to send a method response
if the actor is destroyed, as it isn't really useful and would also throw.
Both ifs added by this changeset fixes the test failure independently of the other one.
But I think we would benefit from both.
The one in writeError would avoid throwing exception in the last change catch handler
and so avoid unhandled promise rejections.
The one in sendReturn probably helps having more meaningful error report!

Differential Revision: https://phabricator.services.mozilla.com/D89682
2020-09-10 09:14:47 +00:00
Julian Descottes 96670683c4 Bug 1629890 - Use Front/Actor::isDestroyed to replace actorID checks r=nchevobbe
Depends on D86325

Differential Revision: https://phabricator.services.mozilla.com/D86356
2020-08-12 11:33:44 +00:00
Julian Descottes 349b9472c0 Bug 1629890 - Add isDestroyed helper on DevTools Actor base class r=nchevobbe
Depends on D86323

Differential Revision: https://phabricator.services.mozilla.com/D86324
2020-08-07 13:21:40 +00:00
Julian Descottes 426d65e820 Bug 1639111 - Show the filename, line and column for DevTools actor errors r=davidwalsh,ochameau
Depends on D75902

Differential Revision: https://phabricator.services.mozilla.com/D75904
2020-05-25 17:13:59 +00:00
Julian Descottes b6adea56dd Bug 1639111 - Fallback on error.name in DevTools actor error handling r=davidwalsh,ochameau
Differential Revision: https://phabricator.services.mozilla.com/D75902
2020-05-25 16:29:24 +00:00
Mihai Alexandru Michis bccddea946 Backed out 2 changesets (bug 1639111) for causing failures in browser_actor_error.js
CLOSED TREE

Backed out changeset 2964f445c2f5 (bug 1639111)
Backed out changeset 84be772b9ac4 (bug 1639111)
2020-05-25 16:34:55 +03:00
Julian Descottes de114fa0c1 Bug 1639111 - Show the filename, line and column for DevTools actor errors r=davidwalsh,ochameau
Depends on D75902

Differential Revision: https://phabricator.services.mozilla.com/D75904
2020-05-25 12:49:10 +00:00
Julian Descottes c8bee1c5ea Bug 1639111 - Fallback on error.name in DevTools actor error handling r=davidwalsh,ochameau
Differential Revision: https://phabricator.services.mozilla.com/D75902
2020-05-25 12:48:32 +00:00
Narcis Beleuzu f6fe1c7aa6 Backed out 2 changesets (bug 1639111) for mochitest failures on test_preference.html . CLOSED TREE
Backed out changeset 7ca3266213e7 (bug 1639111)
Backed out changeset 55df4479027c (bug 1639111)
2020-05-25 13:54:06 +03:00
Julian Descottes c85c003b74 Bug 1639111 - Show the filename, line and column for DevTools actor errors r=davidwalsh,ochameau
Depends on D75902

Differential Revision: https://phabricator.services.mozilla.com/D75904
2020-05-25 09:47:23 +00:00
Julian Descottes 71c4388fe4 Bug 1639111 - Fallback on error.name in DevTools actor error handling r=davidwalsh,ochameau
Differential Revision: https://phabricator.services.mozilla.com/D75902
2020-05-25 09:46:57 +00:00
Alexandre Poirot 35634f4f44 Bug 1614792 - Rename DebuggerClient to DevToolsClient. r=jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D62495
2020-02-17 13:39:25 +00:00
Alexandre Poirot 1ea1a546f1 Bug 1614791 - Rename DebuggerServer to DevToolsServer. r=jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D61363
2020-02-17 10:28:24 +00:00
Julian Descottes 150349d1c5 Bug 1596686 - Use absolute paths for require calls r=gl
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D58243
2019-12-27 12:23:47 +00:00
Razvan Maries 0f5ce38e4c Backed out changeset 14698fa06ab8 (bug 1596686) for causing perma fails on browser_json_refresh.js. 2019-12-27 14:01:24 +02:00
Julian Descottes 3fa1b45876 Bug 1596686 - Use absolute paths for require calls r=gl
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D58243
2019-12-27 09:09:51 +00:00
Victor Porof 435f7b056d Bug 1561435 - Format remaining devtools/, a=automatic-formatting, CLOSED TREE
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D35894
2019-07-05 11:29:32 +02:00