Commit Graph
20 Commits
Author SHA1 Message Date
Paul Lewis 6fde1272c9 TypeScriptify JavaScriptREPL.js
R=szuend@chromium.org

Bug: 1011811
Change-Id: I95d1947bee78b2651031a99de1b6c16b9dffeed4
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2512240
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
2020-11-02 14:36:10 +00:00
Alfonso Castaño 20d22cd2dc Improve displaying of Trusted Type objects in the console
Backend changes:
https://chromium-review.googlesource.com/c/chromium/src/+/2494761
https://chromium-review.googlesource.com/c/v8/v8/+/2494706

Screenshot: https://i.imgur.com/WFua1Mi.png
Bug: chromium:1048143
Change-Id: I60d02b98e0609751359c5dfa87665d9a9151931d
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2494803
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Commit-Queue: Alfonso Castaño <alcastano@google.com>
2020-10-28 19:39:48 +00:00
Tim van der Lippe d1a00aacb9 [globals] self.UI.context
R=jacktfranklin@chromium.org

Bug: 1058320
Change-Id: Icc1d806782e7624fff02e719670a2cca59070ddd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2364594
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2020-08-19 16:24:38 +00:00
Jan Scheffler f1f45a8c14 Migrate front_end/object_ui to devtools_entrypoint
R=aerotwist@chromium.org, jacktfranklin@chromium.org

Bug: 1101738
Change-Id: I32e970380fc80fd25233639242a05bbad63cb120
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2324587
Commit-Queue: Jan Scheffler <janscheffler@chromium.org>
Auto-Submit: Jan Scheffler <janscheffler@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-07-29 14:29:44 +00:00
Paul Lewis d990734442 [Global] Update refs to UI.context
Bug: 1006759
Change-Id: I4a405fb1d80f6a384a311a3482c37f943238b73f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2019137
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2020-01-24 14:25:48 +00:00
Tim van der Lippe 64a94d8105 Migrate object_ui/ to import cross-module
Bug: 1006759
Change-Id: Ic6a53e6183e3621771c019c4c9692c072f812736
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2019123
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-01-24 12:13:48 +00:00
Simon Zünd 89e4a30824 Eager console evaluation that builds the preview must use REPL mode
A recent V8 change moves the name clash detection for let/const
variables when script contexts are created earlier in time. This
uncovered a bug in DevTools eager evaluation logic. Eager evaluation
should also use REPL mode, otherwise the side-effect detection that
prevents the declaratin from the preview to actually go through is
broken.

A follow-up CL will add a regression test case. This is a quick fix
to unbreak console.

Tbr: petermarshall@chromium.org
Bug: chromium:1043151
Change-Id: I1416d6e765676116cebdea8f406cfbbcc9a15048
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2009107
Reviewed-by: Simon Zünd <szuend@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
2020-01-20 08:38:57 +00:00
Paul Lewis d85dc3874a Migrates object_ui/ to ESM internally
Bug: 1006759
Change-Id: I958134ba20988888e9fd1377c30eec5bd9cac2ed
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1994973
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2020-01-14 18:34:58 +00:00
Yang Guo b2ab7ff465 Reland "Reland "Remove top-level await pre-processing""
This reverts commit 149d99e7f5.

Reason for revert: https://ci.chromium.org/p/chromium/builders/try/linux-rel/259684

Original change's description:
> Revert "Reland "Remove top-level await pre-processing""
> 
> This reverts commit 1e3659a463.
> 
> Reason for revert: Preparatory revert in case the corresponding
> V8 CL gets reverted as well.
> 
> Original change's description:
> > Reland "Remove top-level await pre-processing"
> > 
> > This is a reland of d4092e36af
> > 
> > The CL was speculatively reverted due to a deterministic bot failure
> > (https://ci.chromium.org/p/chromium/builders/ci/Deterministic%20Linux/25924)
> > 
> > The bot has since turned green without the revert beeing rolled into chromium.
> > Relanding this CL, to potentially fix the current red tree.
> > 
> > Original change's description:
> > > Remove top-level await pre-processing
> > >
> > > This CL removes the wrapping of code in async arrow functions, should
> > > the code contain 'await'. Support for top-level is implemented as part
> > > of V8's native REPL mode.
> > >
> > > R=petermarshall@chromium.org
> > >
> > > Bug: chromium:1021921
> > > Change-Id: I0a601dd9a469a108f39d2ea3abcf8700726a1d8e
> > > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928927
> > > Commit-Queue: Simon Zünd <szuend@chromium.org>
> > > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
> > > Reviewed-by: Mathias Bynens <mathias@chromium.org>
> > 
> > TBR: petermarshall@chromium.org
> > Bug: chromium:1021921
> > Change-Id: If7be71cabc6a41c5433636132d9c9f222162747f
> > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1947524
> > Reviewed-by: Simon Zünd <szuend@chromium.org>
> > Commit-Queue: Simon Zünd <szuend@chromium.org>
> 
> TBR=petermarshall@chromium.org,mathias@chromium.org,szuend@chromium.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: chromium:1021921
> Change-Id: I6643c1ed8336a96362be06b4c60d57cb12f760f9
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1950304
> Reviewed-by: Simon Zünd <szuend@chromium.org>
> Commit-Queue: Simon Zünd <szuend@chromium.org>

TBR=petermarshall@chromium.org,mathias@chromium.org,szuend@chromium.org

Change-Id: I994aa44882fb27bc7e36b0baf70f7f1bb9d90184
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1021921
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1953609
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
2019-12-05 21:37:03 +00:00
Simon Zünd 149d99e7f5 Revert "Reland "Remove top-level await pre-processing""
This reverts commit 1e3659a463.

Reason for revert: Preparatory revert in case the corresponding
V8 CL gets reverted as well.

Original change's description:
> Reland "Remove top-level await pre-processing"
> 
> This is a reland of d4092e36af
> 
> The CL was speculatively reverted due to a deterministic bot failure
> (https://ci.chromium.org/p/chromium/builders/ci/Deterministic%20Linux/25924)
> 
> The bot has since turned green without the revert beeing rolled into chromium.
> Relanding this CL, to potentially fix the current red tree.
> 
> Original change's description:
> > Remove top-level await pre-processing
> >
> > This CL removes the wrapping of code in async arrow functions, should
> > the code contain 'await'. Support for top-level is implemented as part
> > of V8's native REPL mode.
> >
> > R=petermarshall@chromium.org
> >
> > Bug: chromium:1021921
> > Change-Id: I0a601dd9a469a108f39d2ea3abcf8700726a1d8e
> > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928927
> > Commit-Queue: Simon Zünd <szuend@chromium.org>
> > Reviewed-by: Peter Marshall <petermarshall@chromium.org>
> > Reviewed-by: Mathias Bynens <mathias@chromium.org>
> 
> TBR: petermarshall@chromium.org
> Bug: chromium:1021921
> Change-Id: If7be71cabc6a41c5433636132d9c9f222162747f
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1947524
> Reviewed-by: Simon Zünd <szuend@chromium.org>
> Commit-Queue: Simon Zünd <szuend@chromium.org>

TBR=petermarshall@chromium.org,mathias@chromium.org,szuend@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: chromium:1021921
Change-Id: I6643c1ed8336a96362be06b4c60d57cb12f760f9
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1950304
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
2019-12-05 07:33:40 +00:00
Simon Zünd 1e3659a463 Reland "Remove top-level await pre-processing"
This is a reland of d4092e36af

The CL was speculatively reverted due to a deterministic bot failure
(https://ci.chromium.org/p/chromium/builders/ci/Deterministic%20Linux/25924)

The bot has since turned green without the revert beeing rolled into chromium.
Relanding this CL, to potentially fix the current red tree.

Original change's description:
> Remove top-level await pre-processing
>
> This CL removes the wrapping of code in async arrow functions, should
> the code contain 'await'. Support for top-level is implemented as part
> of V8's native REPL mode.
>
> R=petermarshall@chromium.org
>
> Bug: chromium:1021921
> Change-Id: I0a601dd9a469a108f39d2ea3abcf8700726a1d8e
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928927
> Commit-Queue: Simon Zünd <szuend@chromium.org>
> Reviewed-by: Peter Marshall <petermarshall@chromium.org>
> Reviewed-by: Mathias Bynens <mathias@chromium.org>

TBR: petermarshall@chromium.org
Bug: chromium:1021921
Change-Id: If7be71cabc6a41c5433636132d9c9f222162747f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1947524
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
2019-12-03 07:51:56 +00:00
Etienne Pierre-Doray ad4b05908e Revert "Remove top-level await pre-processing"
This reverts commit d4092e36af.

Reason for revert: Causing failure on compare_build_artifacts

Original change's description:
> Remove top-level await pre-processing
> 
> This CL removes the wrapping of code in async arrow functions, should
> the code contain 'await'. Support for top-level is implemented as part
> of V8's native REPL mode.
> 
> R=​petermarshall@chromium.org
> 
> Bug: chromium:1021921
> Change-Id: I0a601dd9a469a108f39d2ea3abcf8700726a1d8e
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928927
> Commit-Queue: Simon Zünd <szuend@chromium.org>
> Reviewed-by: Peter Marshall <petermarshall@chromium.org>
> Reviewed-by: Mathias Bynens <mathias@chromium.org>

TBR=petermarshall@chromium.org,mathias@chromium.org,szuend@chromium.org

Change-Id: I10ca48bd419e1517c0b1ebadf02cf484d54d914f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1021921,1029863
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1945281
Reviewed-by: Etienne Pierre-Doray <etiennep@chromium.org>
Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org>
2019-12-02 21:17:50 +00:00
Simon Zünd d4092e36af Remove top-level await pre-processing
This CL removes the wrapping of code in async arrow functions, should
the code contain 'await'. Support for top-level is implemented as part
of V8's native REPL mode.

R=petermarshall@chromium.org

Bug: chromium:1021921
Change-Id: I0a601dd9a469a108f39d2ea3abcf8700726a1d8e
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928927
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
2019-12-02 10:52:14 +00:00
Tim van der Lippe 3574172dc4 Migrate object_ui/ to ESM
Bug:1006759
Change-Id: Ib6726f32d5424dc615055ea7ea2b1658fc44b2c4
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1928920
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2019-11-21 15:49:14 +00:00
Tim van der Lippe 1d6e57a0e3 Always add braces to single-line if-statements
The Chromium/Google style guides does not enforce curly braces for
single-line if-statements, but does strongly recommend doing so. Adding
braces will improve code readability, by visually separating code
blocks. This will also prevent issues where accidental additions are
pushed to the "else"-clause instead of in the if-block.

This CL also updates the presubmit `eslint` to run the fix with the
correct configuration. It will now fix all issues it can fix.

Change-Id: I4b616f21a99393f168dec743c0bcbdc7f5db04a9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1821526
Commit-Queue: Tim Van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Jeff Fisher <jeffish@microsoft.com>
Cr-Original-Commit-Position: refs/heads/master@{#701070}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 7e0bdbe2d7f9fc2386bfaefda3cc29c66ccc18f9
2019-09-30 11:55:34 +00:00
Benedikt Meurer 9278806591 [devtools] Disable debug breaks for live expressions.
For live expressions it doesn't make sense to trigger break points, as
that doesn't match the users expectation of the feature. This commit
uses the newly introduced "disableBreaks" parameters for
"Runtime.evaluate" to suppress break points and explicit `debugger`
statements for live expressions.

Bug: chromium:1001216
Change-Id: Ie331761ca66afb813816c7d31e77085a5637ea8a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1831798
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#701066}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4078092d5b1faccb2dc7ac0c47c078d7a97f179a
2019-09-30 11:42:14 +00:00
Tim van der Lippe ffa7862d4e Update Closure compiler to v20190729
The new compiler caught a lot of pre-existing issues in the codebase.
Sadly, the old compiler version was not smart enough to understand the
new changes. Therefore, the changes have be included in the same CL as
the compiler update.

Most of the changes are related to better handling of prototype and
class inheritance, as well as handling of null/undefined tracking.

Change-Id: I3941a3a240a4d09c4945e1e20d2521090ef837c9
Bug: 991710
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1762081
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@google.com>
Auto-Submit: Tim van der Lippe <tvanderlippe@google.com>
Cr-Original-Commit-Position: refs/heads/master@{#696761}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ca93474213278e32e36d6ace1474c56884030757
2019-09-16 12:07:12 +00:00
Erik Luo c75946e020 DevTools: highlight live expression node previews on hover
Hovering nodes that are results of Live expressions will
highlight it in the page.

Bug: 886596
Change-Id: Ia6d90217a72867cbe831a8bdfc608c983b642317
Reviewed-on: https://chromium-review.googlesource.com/c/1249277
Commit-Queue: Erik Luo <luoe@chromium.org>
Reviewed-by: Joel Einbinder <einbinder@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#597691}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ba904a798c86d5b876fc0ad19ccce834f04d2ce7
2018-10-08 21:44:25 +00:00
Erik Luo 66bcf105f5 DevTools: iterate on console pin interaction UX
- Console prompt is cleared when text is pinned
- Pins persist across refresh
- Newly created pin runs with side effects until text differs
  or new expression is committed (on blur)
- Ctrl-Enter moves focus from Pin to Console prompt
- Added command menu option to create new pin
- Pressing Tab indents, moves focus iff pin is empty
  (same logic as Console prompt)
- Pins producing errors show error message on red background
- Pin text is trimmed upon blur/commit

Bug: 849875
Change-Id: I641abb6b5e19a84c17b1a6cd3e50ca7b459f2015
Reviewed-on: https://chromium-review.googlesource.com/1141096
Commit-Queue: Erik Luo <luoe@chromium.org>
Reviewed-by: Andrey Lushnikov <lushnikov@chromium.org>
Reviewed-by: Joel Einbinder <einbinder@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#586108}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 811a4303b8b973d61567d61372ec8e1d692037c0
2018-08-25 02:15:37 +00:00
Erik Luo 157299825a DevTools: generalize preview without side effect builder
Introduces JavaScriptREPL, a utility that includes
- Logic used by EagerEval for building side-effect-free previews
- Console prompt's preprocessing logic
  (object literal wrapping and top level await)

Bug: 849875
Change-Id: Ie8146435fced9ebf440b43c225d25ef145416247
Reviewed-on: https://chromium-review.googlesource.com/1145911
Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
Commit-Queue: Erik Luo <luoe@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#577341}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f8ffab5d79243cb7de978d17669e8decdb9141df
2018-07-23 23:48:44 +00:00