Commit Graph
733 Commits
Author SHA1 Message Date
Tim van der Lippe 28a79aace9 Move assertNotNull into platform
R=jacktfranklin@chromium.org

Fixed: 1154208
Change-Id: I3729d0f06577a3bb065ea362dec9e83d096965b1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2618318
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-01-11 17:14:27 +00:00
Jack Franklin cac69b4441 [Dark mode]: generate dark styles for cmdevtools.css
Uses the new script to generate the dark mode styles for cmdevtools so save us
manually processing it. Tested by clicking around the sources panel in light and
dark mode and verifying that things look as expected.

Also fixed some bugs in the generator script to ensure we generate the
right selectors.

Bug: 1152736
Change-Id: If3491651be116033be7248e695ceab1de5f3fc5c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2593129
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-01-11 16:10:06 +00:00
Jack Franklin 7a75e4617c Workflow improvements to component docs
* Add links back to the index page when viewing an example
* On a component's example page, each individual example is in a details tag, so you don't see all the iframes when you load the page. You can click the arrow to expand an individual example.

Note: should land after https://crrev.com/c/2617796 lands else it'll cause some conflicts.
Change-Id: Icd4e3e8b1e836fede9ba00cedb12794691a94138
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2617797
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-01-08 16:55:37 +00:00
Tim van der Lippe 677a98d1c4 Remove component_docs from GRD
These files are not intended to be included in the DevTools release
bundle and therefore should be treated as testonly. This also means
that we should be using `ts_library` instead of `devtools_module`,
as we don't intend to copy these files into `resources/inspector`.

R=jacktfranklin@chromium.org

Fixed: 1152777
Change-Id: Id23d403c64445dd1c0ea59e36117dfc667f7e8e5
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2617796
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-01-08 16:09:47 +00:00
Tim van der Lippe f78841938e Fix lit_html_data_as_type to handle multiple data setters
R=jacktfranklin@chromium.org

Fixed: 1164372
Change-Id: Idcf5419de6a7d3fa9ae816c9b9e73b6a853cbf0d
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2617793
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-01-08 14:46:57 +00:00
Tim van der Lippe 9264487850 Convert UIString.js to TypeScript-authored
This allows us to make follow-up changes to use TypeScript-specific
features.

R=jacktfranklin@chromium.org

Change-Id: Ie17a8e1101ca6e9800fab49bc560cce8001b58ca
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2612859
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-01-07 16:33:36 +00:00
Mathias Bynens 2e8ddd343b Include .avif and .webp images in *.grd files
Otherwise, AVIF and WebP images get silently excluded.

Bug: chromium:1161667
Change-Id: Id5cc515a532d1d6033f4bc417b98ff9840a2c741
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2612852
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
2021-01-07 15:12:16 +00:00
Tim van der Lippe 40755599ae Enable no-implicit-coercion for all files
R=mathias@chromium.org,jacktfranklin@chromium.org

Fixed: 1082789
Change-Id: I2cf3c221e748654c296f35c3f149b1f76684f4a3
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2612903
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2021-01-07 14:54:36 +00:00
Jack Franklin 51ffa992c9 Migrate component docs data grid example to TS file
Writing the component docs example inline makes it easier to quickly
through an example together but means we lose any type checking on the
examples.

This CL migrates one example to TS and updates the ES Modules Import
lint rule to allow component docs files to import the test helpers -
which we do to allow them to emulate a full DevTools environment if
required.

This change caught some invalid config in the component doc example so I
think if we can make this migration across all the component doc
examples it will help ensure our examples are up to date and valid.

Bug: 1144106
Change-Id: I32cf0e09bfe158ae5ba9b57dbc535e14a9985a5f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2613206
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-01-07 10:05:36 +00:00
Tim van der Lippe 1fe7f95b0e Add eslint-plugin-lit-a11y to manage_node_deps
This also adds the MPL-2.0 license as valid license to our allowed
licenses list.

R=jacktfranklin@chromium.org
DISABLE_THIRD_PARTY_CHECK=NPM update

Change-Id: I2a3bee2ffc0b328a0579ab62ab27f938bdc876c8
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2593130
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
2021-01-05 13:13:19 +00:00
Jack Franklin 90b6613019 Reland "Add header context menu to data grid"
This reverts commit c2ad98d783.

Reason for revert: fixed flakey test

Original change's description:
> Revert "Add header context menu to data grid"
>
> This reverts commit 6bdb3622bd.
>
> Reason for revert: Interaction tests started failing on mac.
>
> https://ci.chromium.org/ui/p/devtools-frontend/builders/ci/Stand-alone%20Mac/2514/overview
>
> Original change's description:
> > Add header context menu to data grid
> >
> > This CL adds a default header context menu to the data grid that lists visible
> > and sortable columns much like the legacy data grid.
> >
> > Bug: 1150793
> > Change-Id: I84a8a9cc511d6be9fee1f89ba41a6e8649df54ec
> > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2600723
> > Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
> > Reviewed-by: Paul Lewis <aerotwist@chromium.org>
>
> TBR=aerotwist@chromium.org,jacktfranklin@chromium.org
>
> Change-Id: Ic8ef16044716d922d3a37b6a8fb32e13a75dee72
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 1150793
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2601962
> Reviewed-by: Jan Scheffler <janscheffler@chromium.org>
> Commit-Queue: Jan Scheffler <janscheffler@chromium.org>

TBR=aerotwist@chromium.org,szuend@chromium.org,janscheffler@chromium.org,jacktfranklin@chromium.org

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

Bug: 1150793
Change-Id: Ibd352be261d2cefee6fccc4b18b438faaad57631
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2610596
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Jan Scheffler <janscheffler@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
2021-01-05 11:56:39 +00:00
Christy Chen 9d7f897b22 [Loc] Migrate recorder to localization V2
Migrate recorder tool
Tested with en-XL: https://imgur.com/a/LcyPbpt

Bug: 1136655
Change-Id: I308e11313d5be94a59f9a9b8df3d38e5ca81597d
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2597799
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2021-01-04 22:06:09 +00:00
Mathias Bynens c38abd4da4 Support AVIF in component server
Bug: chromium:1161661
Change-Id: I9d67209b299ebfb852d706543ae544b03108a6e2
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2602987
Auto-Submit: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-24 08:38:45 +00:00
Mathias Bynens ff4b4eb89b Support AVIF in hosted mode
Bug: chromium:1161661
Change-Id: I021605672f93642d2f02c595266fd44ddce24293
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2602986
Auto-Submit: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-24 08:37:36 +00:00
Jan Scheffler c2ad98d783 Revert "Add header context menu to data grid"
This reverts commit 6bdb3622bd.

Reason for revert: Interaction tests started failing on mac.

https://ci.chromium.org/ui/p/devtools-frontend/builders/ci/Stand-alone%20Mac/2514/overview

Original change's description:
> Add header context menu to data grid
>
> This CL adds a default header context menu to the data grid that lists visible
> and sortable columns much like the legacy data grid.
>
> Bug: 1150793
> Change-Id: I84a8a9cc511d6be9fee1f89ba41a6e8649df54ec
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2600723
> Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
> Reviewed-by: Paul Lewis <aerotwist@chromium.org>

TBR=aerotwist@chromium.org,jacktfranklin@chromium.org

Change-Id: Ic8ef16044716d922d3a37b6a8fb32e13a75dee72
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1150793
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2601962
Reviewed-by: Jan Scheffler <janscheffler@chromium.org>
Commit-Queue: Jan Scheffler <janscheffler@chromium.org>
2020-12-23 07:27:30 +00:00
Jack Franklin 6bdb3622bd Add header context menu to data grid
This CL adds a default header context menu to the data grid that lists visible
and sortable columns much like the legacy data grid.

Bug: 1150793
Change-Id: I84a8a9cc511d6be9fee1f89ba41a6e8649df54ec
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2600723
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-22 15:43:47 +00:00
Jack Franklin e02962c02f Fix double serving of files in component server
Now the server can serve from the tests directory, it will sometimes get
two requests for the same file, one prefixed with front_end and the
other not. If that happens the server now redirects the request such
that we only ever serve each file once and the browser doesn't
double-execute a module.

Change-Id: I14b44aad8b16d1c3f2f787082c70532a8f8776e9
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2599746
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-21 16:39:36 +00:00
Jack Franklin d034512dc4 Component docs can load test helpers
Most of the time we won't need this fully fledged environment, but for
some things (such as context menus, guess what I'm working on right now
:D) we do need a faked out environment to enable these features to run
when we run the component in isolation in the component docs.

Note: while this CL contains no component docs changes that take
advantage of it, I've tested locally with context menus in the data grid
and this change does work.

Fixed: 1148323
Change-Id: Ic8c508840a20b6d0f0e72fd7019a16271f04bea6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2597313
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-21 09:59:36 +00:00
Christy Chen ae8efc5c4e [Loc] Migrate persistence to localization V2
Migrate persistence
Tested with en-XL: https://imgur.com/a/nreUeRP


Bug: 1136655
Change-Id: I8eaf5d830a411d75182b5a7f642ad5ca559c781a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2591893
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-15 17:02:38 +00:00
Jack Franklin 81eb91a605 Script to generate dark mode stylesheets
This CL provides a script that generates a dark mode stylesheet for a
given sheet, just like the runtime color patching (in fact, it uses the
same code!).

The script loads up the given CSS file, imports `ThemeSupport`, and
patches it. It then takes the final CSS file and prefixes
`:host-context(.-theme-with-dark-background)` to each selector. We can
then load the lightmode and the dark mode stylesheet into DevTools.

This is non ideal because we end up loading two stylesheets, but the
alternative is to maintain the runtime color patching for ever, or
update all third party stylesheets to use our CSS variables, which is a
lot of work.

The script does rely on the hosted mode server running but I think this
is reasonable; it's only going to be run rarely on a few CSS files, so
we won't be running it automatically on CI or anything so we can keep
the process fairly manual.

Bug: 1152736
Change-Id: I707c53fbccb3e03c9fac6691f40df32bcdb17c1f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2587024
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
2020-12-14 10:47:31 +00:00
Christy Chen 3e5de8a135 [Loc] Migrate components to Localization V2
Bug: 1136655
Change-Id: I69678b0f06027cd0b4b3715d959a41fa592a60bb
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2585954
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-11 19:25:57 +00:00
Christy Chen 393c680774 [Loc] Migrate node_debugger to Localization V2
Bug: 1136655
Change-Id: I080bf2712871e5174873c418ad193bb82c4e543b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2580845
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-12-11 18:06:07 +00:00
Christy Chen a09a090c7a [Loc] Migrate js_profiler to Localization V2
Bug: 1136655
Change-Id: I4f1e47cc0aff903545187ea387c24af507e5e5e1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2583063
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-12-11 18:00:17 +00:00
Christy Chen b5da31f172 [Loc] Migrate cookie_table to Localization V2
Test with en-XL: https://imgur.com/a/Rzfcxzc

Bug: 1136655
Change-Id: Iad51c1ef4f6225c8600bfa722cb39ea50f265f7a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2582699
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-10 18:05:54 +00:00
Tim van der Lippe 59ff4e28de Move worker integration into entrypoint for wasmparser_worker
This allows us to test the wasmparser_worker implementation
in isolation in unit tests, while extracting out the worker
integration into a separate file. A follow-up CL will migrate
the wasmparser_worker to use URL-based worker construction,
which will allow us to remove the wasmparser_worker-entrypoint
in front_end/ and cleanup the RuntimeInstantiator.js logic.

R=jacktfranklin@chromium.org,bmeurer@chromium.org

Bug: 1009443
Change-Id: I77d04ab870b38ec9f9209c1a156c123c941d169b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2581927
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
2020-12-10 10:21:28 +00:00
vidorteg 3c56ca23d9 [Loc] Migrate node_main panel to Localization V2
- Migrate node_main to use Localization V2 APIs.
- Removed node_main grdps

Tested with en-XL.json
https://imgur.com/a/fky46TA

Bug: 1136655
Change-Id: I6fcb6328a8a053b084f094ac0c5b1f7e98449992
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2578185
Commit-Queue: Vidal Diazleal <vidorteg@microsoft.com>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-12-10 00:10:57 +00:00
vidorteg 768ced1d57 [Loc] Migrate mobile throttling setting panel to Localization V2
- Migrate mobile throttling setting panel to use Localization V2 APIs.
- Removed media grdps

Tested with en-XL.json
https://imgur.com/a/PfBEBxD

Bug: 1136655
Change-Id: Ic8729040a89baa7c0d860724e7e3b8146194160f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2572862
Commit-Queue: Vidal Diazleal <vidorteg@microsoft.com>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2020-12-09 22:32:37 +00:00
Christy Chen 87d9ffc323 [Loc] Migrate input to Localization V2
Bug: 1136655
Change-Id: I7d8b1c34aaea07b896ec913faf141381422c3bd6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2580848
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-09 17:59:07 +00:00
Jack Franklin 75b0efc9b9 Ban "front_end" imports from front_end directory.
If you're in the front_end directory and you mistakenly include
front_end in an import, e.g:

import * as UI from '../../front_end/ui/ui.js';

instead of:

import * as UI from '../ui/ui.js';

It will cause problems in a release build. This CL lands an ESLint rule
to ban these, but still allows it for unit tests.

Fixed: 1157057
Change-Id: Ia49279794616568f9e88241152e3412fcd9a8b36
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2581547
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2020-12-09 15:00:16 +00:00
Christy Chen 19739b881b [Loc] Migrate help to localization V2
migrate help directory

Bug: 1136655
Change-Id: Ib361747d53faa0a5cc860d331238e08d327031cc
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2577943
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-12-08 21:25:02 +00:00
Christy Chen cebafe7ed6 [Loc] Migrate workspace to localization V2
Bug: 1136655
Change-Id: Ia6a4ff1c043f1b02656a9d7edf640f04f2f1e9a1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2577936
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-08 20:19:22 +00:00
Sigurd Schneider c870c46ba4 Don't generate types for deprecated Console domain
The runtime definitions are explicitly skipped here:
https://source.chromium.org/chromium/chromium/src/+/master:third_party/devtools-frontend/src/scripts/build/code_generator_frontend.py;l=202;drc=8e12f92229028121fd0cfa1a3c39825a228f341c

This means that if someone tries to access the values at runtime,
an error occurs. Removing the definition altogether is the
safest option.

Bug: chromium:1153099
Change-Id: Icc17caa99ebc68e4466ea309bf2a06b4c8cd71fe
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2575092
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
2020-12-07 12:20:01 +00:00
Jack Franklin b36ad7e1d1 [Interaction tests] fix running in out/Release
On the bots these tests will run in out/Release but the component server
logic for figuring out the path to the gen directory was wrong; it
navigated up from its position into the root dir, and then back in to
`out/TARGET`. Rather than do that, we instead just walk up from the
scripts dir until we end up in the out/TARGET directory. That way
regardless of if we run in out/Default or out/Release, the script will
find the right directory.

Bug: 1153281
Change-Id: I1d369e47b9931ade60bc86ff52aea7105f10cefd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2575086
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-07 10:35:50 +00:00
Christy Chen b97d85b7ca [Loc] Migrate protocol monitor tool to localization V2
Migrate protocol monitor tool
Tested with en-XL: https://imgur.com/a/IPT8ly2


Bug: 1136655
Change-Id: I538590b76e8511cc539d3b4770790db34c2ec5f9
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2572872
Commit-Queue: Christy Chen <chrche@microsoft.com>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-12-04 22:22:17 +00:00
Tim van der Lippe e0596215e1 Fix permissions for test scripts
In https://crrev.com/c/2571462 we no longer invoke these scripts
with the locally installed Python version. However, on Unix systems,
this requires the scripts themselves to be executable.

Most of the scripts we have are already executable, but these specific
scripts were not and therefore the NPM run invocations would fail.

R=liviurau@chromium.org

Change-Id: I06bf6823aa12528ce85d9e25ba241c1cab80604a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2574459
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Jan Scheffler <janscheffler@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Jan Scheffler <janscheffler@chromium.org>
2020-12-04 16:02:34 +00:00
Tim van der Lippe 8e12f92229 Use Python version bundled with depot_tools for all scripts
depot_tools ships a "vpython" binary that is added to the $PATH
for all Chromium engineers. This binary is versioned by depot_tools
which we roll in ourselves as part of `gclient sync`.

By using `vpython` instead of `python`, we are no longer depended
on the Python version installed locally and instead use the version
we pull in from DEPS.

R=liviurau@chromium.org

Change-Id: If49a54c24b6cf129ff843cd9ca1140a723a78afb
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2571462
Reviewed-by: Liviu Rau <liviurau@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-12-04 14:08:59 +00:00
vidorteg d083f4ab10 [Loc] Migrate media panel to Localization V2
- Migrate media panel to use Localization V2 APIs.
- Removed media grdps

Tested with en-XL.json
https://imgur.com/a/j3MxnLu

Bug: 1136655
Change-Id: Iebcce7e991db19cda8477f75b180390e1e7f5a78
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2570496
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Vidal Diazleal <vidorteg@microsoft.com>
2020-12-03 17:28:01 +00:00
Tim van der Lippe d18c704c60 Cleanup devtools_module_entrypoints.gni
Both front_end_devtools_module_entrypoint_sources and
generated_devtools_module_entrypoint_sources were unused, since
the `devtools_entrypoint` migration has finished.

Secondly, we can rename generated_typescript_entrypoint_sources to
generated_module_entrypoint_sources, since we no longer need to
distinguish between JavaScript and TypeScript entrypoints.

Lastly, we can clean up the definition of
devtools_module_entrypoint_sources to no longer include the
$resources_out_dir line, which saves some duplication.

R=aerotwist@chromium.org

Change-Id: I1a327cf40cec6630b3be7ac53e2c87f7e179c895
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2566802
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-03 11:43:03 +00:00
Jack Franklin 92fe8ff0c7 Enforce readonly string[] over ReadonlyArray<string>
A stylistic choice we've made and now are enforcing.

Fixed: 1152710
Change-Id: If84b8adbc872d12517b7a6b38f0e5049b94f286e
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2571114
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
2020-12-03 11:26:43 +00:00
Jack Franklin 3b3a782f3a Enable interaction tests
This CL introduces the infrastructure and first test for what we're calling
"Interaction tests". These are tests that can be used to test component
behaviour that cannot be tested via Karma unit tests but don't require an e2e
test either.

The best example here is complex user interactions: clicking and dragging a
mouse, or doing multiple tabs to navigate through the UI.

Note that the one interaction test added here for theme_colors isn't the best
example of a complex test, but it's a test that's good enough for now whilst we
get everything set up on infrastructure and make sure it runs without flaking.

Bug: 1153281
Change-Id: Ifb37639a557c459974f703b8954ae68a93d5d368
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2566808
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-03 10:44:22 +00:00
Jack Franklin 01d09b0089 Ban underscored methods and properties in TS files
With one exception: if a class with private property _foo has a public
foo() method, we'll allow it.

Change-Id: Ie89ce5661e49e78abc0ab9f41db14743b1690aa0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2567956
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2020-12-03 10:07:33 +00:00
Jack Franklin fc495906c3 Enforce no TS non-null bang assertions
This CL bans the TS `!` operator which is used to assert not null.

Typically when we use this we are making errors harder to track down
should the value actually end up being null. Checking it takes more work
but will give nicer errors.

Fixed: 1154182
Change-Id: I11599541c199204e4ca21c9fd81a256614d70389
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2566804
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Alex Rudenko <alexrudenko@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-12-02 14:46:50 +00:00
Tim van der Lippe bfcaca046e Update remaining outdated packages
- Update yargs to 16.1.1
- Update @rollup/plugin-commonjs to 17.0.0
- Update @types/codemirror to 0.0.100
- Update Puppeteer to 5.5.0
- Update Rollup to 2.34.0

DISABLE_THIRD_PARTY_CHECK=NPM update
R=jacktfranklin@chromium.org

Change-Id: Ie3ed95b7c83ec615122643769ff5c53ac4111c09
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2567910
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2020-12-02 13:07:39 +00:00
Christy Chen 5d7848d54d Reland "[Loc] Migrate changes tool to localization V2"
This reverts commit 9e5ab71e50.

Reason for revert: The Cl was reverted due to devtools pak file limitation. That issue has been fixed in https://chromium-review.googlesource.com/c/chromium/src/+/2558341

Original change's description:
> Revert "[Loc] Migrate changes tool to localization V2"
>
> This reverts commit abcb8f7aa8.
>
> Reason for revert: Consistently causing autoroll issues when rolling devtools-frontend into Chromium - see https://chromium-review.googlesource.com/c/chromium/src/+/2554521 for an example.
>
> To recreate this, do a debug build of Chromium with this patch applied to DevTools. It's causing an issue with duplicate keys in the pak files. No DevTools Frontend builds do a debug build of Chromium with the DevTools frontend patch applied so our CQ will be green despite causing an issue.
>
> You can run this locally in Chromium to reproduce via:
>
> autoninja -C out/Default chrome:packed_resources_extra
>
> Which will show the error. 
>
> Original change's description:
> > [Loc] Migrate changes tool to localization V2
> >
> > Migrate changes tool
> > Tested with en-XL: https://imgur.com/a/hFDBjQV
> >
> >
> > Bug: 1136655
> > Change-Id: Ic434c3085b9e2f2cf44583cca7ee1ce8f1d412f2
> > Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2548688
> > Commit-Queue: Christy Chen <chrche@microsoft.com>
> > Reviewed-by: Simon Zünd <szuend@chromium.org>
>
> TBR=szuend@chromium.org,chrche@microsoft.com
>
> Change-Id: I94b27434562f6a6bff3be381ab8a5802bd8b03f9
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 1136655
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2557044
> Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
> Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>

TBR=szuend@chromium.org,chrche@microsoft.com,jacktfranklin@chromium.org

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

Bug: 1136655
Change-Id: I35166a6f4f38462073b933c01c169b3c8d14311b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2567344
Reviewed-by: Simon Zünd <szuend@chromium.org>
Reviewed-by: Christy Chen <chrche@microsoft.com>
Commit-Queue: Christy Chen <chrche@microsoft.com>
2020-12-02 06:13:17 +00:00
Kalon Hinds de5da1203d [Loc] Migrate snippets to Localization V2
Bug: 1136655
Change-Id: I724747d248b047ce85761b9ec7c6ae512c939ddb
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2548691
Commit-Queue: Kalon Hinds <kahinds@microsoft.com>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2020-12-01 21:54:27 +00:00
Tim van der Lippe efb716af67 Update linter packages
- Updates stylelint to 13.8.0
- Updates ESLint to 7.14.0
- Updates @typescript-eslint to 4.9.0

DISABLE_THIRD_PARTY_CHECK=NPM update
R=jacktfranklin@chromium.org

Change-Id: I207e204607ede782710e042c17d6510c7f696905
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2566806
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-12-01 16:04:40 +00:00
Tim van der Lippe e44bf09b3c Speed up running NPM analysis commands
Whenever we do NPM package upgrades, we run `npm run install-deps -- outdated`
or `npm run install-deps -- audit`. However, this would then always
reinstall all packages with `npm ci`, which is timeconsuming, yet
unnecessary as the analysis does not change the installation output.

Therefore, we check if the custom command starts with either outdated
or audit and bail out of unnecessarily reinstalling.

R=jacktfranklin@chromium.org

Change-Id: I475e74ebe626e1c1973399ea65a31ea57f4b6fb5
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2566805
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2020-12-01 12:47:56 +00:00
Jack Franklin c4492956ad Remove component bridges generation
Now Closure is gone we don't need bridges and this removes all the code
and tests for them.

All relevant checks we wanted to keep around have been moved to ESLint
rules (see attached bug).

Fixed: 1130536
Change-Id: I82a7b8e5e7b047b36f42c5c76ddb9dfbd0742d45
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2565377
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
2020-11-30 17:33:11 +00:00
Jack Franklin dd3be2e786 Enforce const enum via ESLint rule.
R=andoli@chromium.org

Bug: 1130536
Change-Id: I2304b32f1f0c9f4a6713156c9218ec9d0c9270ae
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2562854
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Andres Olivares <andoli@chromium.org>
2020-11-30 15:56:41 +00:00
Tim van der Lippe 03097b0349 Fix running layout tests
In crrev.com/c/2520088 the blink web_tests infrastructure started using
a module that is in Python 3, but not 2. This started crashing our `npm
run test`, since we force the python version. Based on the comments on
the original CL, we should call the Python script directly and then
everything works as expected.

R=aerotwist@chromium.org

Change-Id: Iafe123e6adf792da940d3ca605e2eddd49ee5eba
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2563820
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-11-30 13:55:39 +00:00