The protocol Monitor needs to know the type of array parameters. To do this, the CL will add type reference to registerType inside the InspectorBackendCommands.js file. It is then possible to know what type of parameters array parameters accept.
DISABLE_THIRD_PARTY_CHECK=needed to build
Bug: 1462096
Change-Id: I623ef4fef1f49f7618f2a874490a515ce22ce1cd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4660370
Commit-Queue: Hadrien Jaubert <hadrienjaubert@google.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
This CL adds the ability to have access to a map enabling the user to have access to all the keys of object parameters. To do that, this CL modifies code_generator_frontend.py to generate a new command called RegisterType.
DISABLE_THIRD_PARTY_CHECK=make build work
Bug: 1458788
Change-Id: I28bf0baf3841cf3120d103e40925698d3c8114b2
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4650362
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Hadrien Jaubert <hadrienjaubert@google.com>
DevTools has two ways to build release builds:
* tsc + rollup + terser
* and esbuild.
THe GN arg "devtools_skip_typecheck" decides which of the two
toolchains is used, as the esbuild one is much faster and enough
for the average Chromium developer.
Until now, the "devtools_release_sourcemaps" only works with the
rollup toolchain. This CL implements sourcemaps also for esbuild.
This means that "devtools_release_sourcemaps" now works
independently of "devtools_skip_typecheck".
This is convinient for dogfooding our own source map support in
DevTools: Now we can test against both rollup and esbuild with
DevTools-on-DevTools.
R=jacktfranklin@chromium.org
Bug: 1430396
Change-Id: I54849764a26f3fb539535eccdde7a79f9fd00d5f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4654605
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
- puppeteer replaced with puppeteer-core (20.7.3). DevTools does not actually need puppeteer as it downloads the browsers on its own. PUPPETEER_SKIP_CHROMIUM_DOWNLOAD is not needed too.
- @puppeteer/replay upgraded to 2.11.2
DISABLE_THIRD_PARTY_CHECK=requires code updates for puppeteer-core
Bug: none
Change-Id: I173c228d766681a1a8a9ada3fcf17525cd191726
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4640022
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Randolf Jung <jrandolf@chromium.org>
This adds two scripts: one that divides the E2E tests command into
multiple ones that can be run separately, and another script that runs
these commands in parallel Python processes. This will allow us to run
the E2E tests locally but it is also necessary for running tests in
parallel on the builders. We also remove skipOnParallel since it is
not needed anymore.
Bug: 1419802
Change-Id: I7e4c2a6f1847c3a63cab1cc2365ddaa69b77f2fb
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4543009
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Commit-Queue: Almothana Athamneh <almuthanna@chromium.org>
We need to retain the metadata for deprecations past the point where
they are no longer dispatched on stable. This provides a way to turn
codegen off at the same time as we note the milestone when the metadata
can be safely removed.
Bug: 1451772
Change-Id: I9fb9ef4b8fbecaa2fb8d14ad65016102387bf722
DISABLE_THIRD_PARTY_CHECK=Testing codegen changes
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4594037
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
This CL introduces a basic ESLint rule for tracking the calls to
context.save and context.restore.
It does this by using two stacks, one to track scopes, and another to
track save() and restore() calls within those scopes. If when we exit a
scope we have an unbalanced stack of calls, we know the user has not
properly ensured that every save() call is restore()'d properly.
Bug: 1450569
Change-Id: I5d632a0e0cd17b6f755e3b725146314db408b3bd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4580487
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Andres Olivares <andoli@chromium.org>
- `ensure_symlink.py` now actually _ensures_ the symlink is correct.
- `os.symlink` is supported in Windows since 3.8, so the compat function was removed.
- Some debugging information has also been added w.r.t. the gclient hooks.
- Some attributes in the gclient file are not relevant.
Bug: 1095624
Change-Id: I7272da7980a1706ee624362ec0d5a3f71f9a6f04
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4533035
Commit-Queue: Randolf Jung <jrandolf@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
This CL adds a new GN flag "devtools_release_sourcemaps" (off by
default.. When set, we'll instruct rollup to generate source maps for
the bundles. This means that every entrypoint, e.g. 'common.js', now
has a corresponding source map ('common.js.map').
We also use 'rollup-plugin-sourcemap'. It is responsible for consuming
the source maps generated by the TypeScript compiler and merge them
with the source map produced by rollup. This allows us to still
debug on the level of TypeScript files even for minified release
builds.
R=jacktfranklin@chromium.org
Fixed: 1430396
Change-Id: I3a0f94dc722f19d066725aef3544652c6a19c95a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4402891
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
For convenience, since the bots will still use the JSON file.
Also, an option to define the folders on which coverage will be
calculated is added to the interaction tests. The flag works
identically to the COVERAGE_FOLDERS of unit tests, i.e. a pattern is
provided to define the included folders. For example: the flag can be
set like COVERAGE_FOLDERS=
front_end/{models/trace,models/timeline_model,panels/timeline}
These two changes should help to calculate the total OPP coverage in
go/opp-test-coverage
Bug: 1424729
Change-Id: Ie982f62dfac0014c05075e53173a8e7710d3b9e0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4345493
Commit-Queue: Andres Olivares <andoli@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Currently roll_deps.py only works in a standalone DevTools checkout.
That is because we resolve the Node.js binary in the DevTools
directory. In a Chromium checkout that binary does not exist as
we don't do transitive deps for `gclient sync`.
This CL changes roll_deps.py to use the Node.js binary of the
Chromium repository instead. It's guarnateed to be there since we
run `gclient sync` in the Chromium directory as part of the script.
So now the script works both with a standalone and an integrated
checkout.
R=alexrudenko@chromium.org
Bug: None
Change-Id: I39e7f0d27dad1d1c820ebeb9261619b57a65ae0f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4341504
Auto-Submit: Simon Zünd <szuend@chromium.org>
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
This improves the process of updating screenshots in Interaction tests by collecting the screenshots already generated when devtools_frontend* builders fail.
Deprecates scripts/tools/update_goldens.py (v1) which need to be kept here until we update other impacted projects.
Bug: chromium:1413723
Change-Id: I37ba934d37d2287f105c76fe5bca5018078a9031
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4286875
Commit-Queue: Liviu Rau <liviurau@google.com>
Reviewed-by: Andres Olivares <andoli@chromium.org>
The issue here was that in SDK we have an actual class called Event,
which was messing with the rule which assumed that any extending of
Event was extending the built in HTML Event class. The rule is now
updated to detect locally declared Event classes, and not run the rule
in this instance.
Bug: none
Change-Id: Ib90054728566cb55d367a241130d70b81aeb1e79
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4262676
Reviewed-by: Andres Olivares <andoli@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
This is the first step in differentiating between events that map 1-1
onto a trace event payload and those that we construct.
Also includes a drive-by fix to the ESLint custom naming rule to fix an
error when the class it is trying to lint does not have a constructor
and does not call super(). A further fix for the fact that this custom
events rule flags false positives in this file is implemented in
crrev.com/c/4259791, at which point we will not have to disable the rule
in this file.
Bug: 1416836
Change-Id: Ia943fa95aeed74b6dc5e51d240a92cc945d02a89
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4259796
Reviewed-by: Andres Olivares <andoli@chromium.org>
Commit-Queue: Andres Olivares <andoli@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>