37 Commits
Author SHA1 Message Date
Nicola Corti 950f4a8e3f Bump vulnerable dev dependencies (#259) 2026-06-04 14:46:30 +01:00
Nikolay Vitkov 7099949310 [cleanup] Fix yargs type
Uses ParseSync else the result is Promise<T> | T.
This give IDE better types to work with.

Bug: none
Change-Id: I4d6014aeccd7428ec03bfde90c5d728c6182c1f7
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6387381
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2025-03-25 06:21:49 -07:00
Nikolay Vitkov de07efad99 [eslint] Update lint to include .mjs files
EsLint support .mjs file by default now. But we exclude them from
running previously in our script.

Disabled the `es-modules-import` rule for our script folder
as it's not relevant there.

Added types comment to the EsLint rules.
This should make it easier to build and understand the current rules.

Bug: none
Change-Id: I448efdb055c9cc107e3bced9b3febe5eb226bcf6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6177719
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
2025-01-17 06:45:29 -08:00
Yuan Kang d60d33e9f3 Add NPM Lockfiles:
Adds corresponding NPM lockfiles to package.json files. This enumerates dependencies, including transitive ones, and their versions, to avoid using vulnerable ones. For more details, see go/npm-lockfile-cl-guide

Bug: none
Change-Id: Ia1e5a33ef6adfe017b93e0fdb0265af04c22adfd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/5632127
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
2024-06-19 04:40:09 +00:00
Simon Zünd 9aba3dba8b [migration] Allow from/to to be equal but still add import
Small fix for the search&replace script for the case where the before
and after are the same but the import is still required to make it
work.

R=mathias@chromium.org

Bug: 1442410
Change-Id: I73f6bff57122b540e6726952970ecc7a483b2ab0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4798131
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
2023-08-21 16:29:03 +00:00
Mathias Bynens f6e705a749 Print suggested commit message in rename-legacy-global
Bug: chromium:1442410
Change-Id: I65387acdae1228f597874d977317841749ad0d5d
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4793588
Commit-Queue: Simon Zünd <szuend@chromium.org>
Auto-Submit: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
2023-08-18 12:08:52 +00:00
Simon Zünd ae9845e539 [scripts] Add new 'rename-legacy-global.mjs' migration utility
This CL is a temporary migration helper for the *-legacy.ts removal
effort. It's a slightly better search&replace that also adds the
necessary import statement if needed.

R=jacktfranklin@chromium.org

Bug: 1442410
Change-Id: Idcba121da6176f745db3e98d9e9ba0ac836d7b7b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4774939
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2023-08-14 11:18:52 +00:00
Tim van der Lippe c2675ef35a Update migration script for private class methods
R=jacktfranklin@chromium.org

Bug: 1222126
Change-Id: I27247553cfcb85e9980b217d7d55fb8c9bcf1238
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3341595
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>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
2021-12-15 12:16:27 +00:00
Tim van der Lippe 286bd5c44a Stop renaming properties in comments
This can break automation such as the localization collection script and
the license headers, as these are sensitive to specific references in
the comments themselves. It is probably safer to not change any of the
comments anyways.

R=jacktfranklin@chromium.org

Bug: 1222126
Change-Id: Ib5223559abc215dee0f4ac16b3a3269ee827702c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3219238
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-10-13 11:48:33 +00:00
Tim van der Lippe 7008714d9a Add bash script to automate more tasks
To make sure we always perform the replace and to format automatically,
as well as making sure that the build actually works.

R=jacktfranklin@chromium.org

Bug: 1222126
Change-Id: I83d44282024f9ffa33a345e05b8c1a5c48923068
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3219235
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-10-12 16:27:10 +00:00
Tim van der Lippe 0404c7edc0 Automatically replace delete statements for private class fields
Delete statements are disallowed for private class fields. Previously, I
used regexes to replace these, but we can implement it safely in the
migration script itself.

R=jacktfranklin@chromium.org

Bug: 1222126
Change-Id: Icab2cdaca290d40ea7d50710209cc84ea27208ba
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3219231
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-10-12 15:55:27 +00:00
Tim van der Lippe e2c9f764dd Add migration script for private class fields
To make sure we track it somewhere. I already tested the script
on `sdk/`, and the script is also based on the earlier scripts
that Jan used during the underscore migration.

R=aerotwist@chromium.org

Bug: 1222126
Change-Id: I50589f6ae4084322f04c49ef81d2bc88d2ca2544
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3201674
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2021-10-04 12:34:45 +00:00
Jack Franklin 41a717c58f Remove scripts/migration
The great ES Modules migration has long finished so we don't need these
scripts anymore :)

Bug: none
Change-Id: I30874c85c134527b235b0941573786439ffa3740
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2729039
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-03-02 12:35: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 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
Paul Lewis 839037fe83 [TypeScript] disallow explicit any
This CL explicitly disallows use of the `any` keyword via eslint. This
is to make sure we don't accidentally miss typing info. This CL also
adds eslint-ignore statements for existing uses of any (mostly in tests)
as well as fixing a few cases where the types were simple enough to add
quickly.

R=jacktfranklin@chromium.org

Change-Id: Ia913a30d63c1ae3d969785af332a8dde512cc275
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2308544
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
2020-07-21 14:31:32 +00:00
Tim van der Lippe 03fe3e7b0f Fix ESLint rule for full relative URL
Discovered in https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2193578/1/front_end/sdk/CSSProperty.js#5

R=jacktfranklin@chromium.org

Change-Id: I40225afb5b6018dc99f1d0d7af53ee9016c86e66
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2193953
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-05-11 15:52:50 +00:00
Tim van der Lippe 846c6a1466 Remove unused global references in workspace-legacy.js
These are not used in our layout tests or module.json files

R=aerotwist@chromium.org

Bug: 1064958
Change-Id: Ia80d231758e202de92daa2bf53ae9c0e5476f545
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2122141
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-03-27 12:21:11 +00:00
Simon Zünd 182134236e Rename namespace import for protocol_client to ProtocolClient
R=tvanderlippe@chromium.org

Bug: chromium:1011811
Change-Id: Idf3e9eb8f6d52db78f563de53b7576ec6c9b9cdc
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2107557
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-03-19 12:08:52 +00:00
Tim van der Lippe ba26b2b503 Run ESLint on the scripts directory
We weren't running ESLint on this directory and, as it turns out, there
are quite a few linter errors in this folder.

R=jacktfranklin@chromium.org

Change-Id: Ic6cb9f6ad4858f69114e0c433a954041215b49e2
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2096705
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2020-03-11 14:47:51 +00:00
Tim van der Lippe c53ba5018f Only consider module.json files for remove unused globals
This will allow us to cleanup all -legacy files with any unused globals
that are not referenced in both the layout tests or module.json files.

Bug: 1006759
Change-Id: I4884884529c4d08fd19a8e0db9edd758f6eacf03
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2055063
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
2020-02-14 15:31:44 +00:00
Tim van der Lippe 22a64d3fe4 Update replace-internal-references to accept multiple folders
This allows us to specify multiple folders at the same time, doing only
1 pass per folder.

Bug: 1006759
Change-Id: I522249c3490f36c7d856a56c992d0393cc9738e4
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2018945
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-01-24 13:46:38 +00:00
Tim van der Lippe ddbec81f2d Map imports to Protocol to ProtocolModule
There is a name-clash on the Closure type-defs generated from CDP, which
also use the Protocol namespace. Therefore, for es-imports we should use
`import * as ProtocolModule` instead.

Bug: 1006759
Change-Id: I1e7e92825fdafe56c4f5274e520650001789014c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2016755
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-01-23 13:22:20 +00:00
Tim van der Lippe 0cfd3dc2af Update remove global scripts to run on legacy files
Also make sure we take into account the layout tests

Bug: 1006759
Change-Id: I6b819876034aae7019e62b1b34ca6adeb50326b1
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2002606
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-01-16 10:35:44 +00:00
Paul Lewis b4e2a0741b Check for self.X = self.X || {} in migration script
Bug: 1006759
Change-Id: I741093c412e6ef47b0154b0202bda56ffd07328c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1993460
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
2020-01-09 17:11:01 +00:00
Tim van der Lippe 472675db85 Migrate data_grid/ to ESM internally
Bug: 1006759
Change-Id: Idb20304bcf3e72e4a0bba242e847e90ff9b8a8c8
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1993342
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-01-09 15:04:51 +00:00
Paul Lewis 26afc1e4f9 Adds migration script for refs
This script expects that -legacy.js files are in place for a
given module. So, for example, if migrating front_end/search
one would run move-side-effects-to-legacy for search, then follow
that with this script, replace-internal-references, which will
step through the files in front_end/search and update all globals
to refer to imports.

This script also supports cross-module rewrites, such that if a
namespace is passed through, the -legacy.js file for the namespace
will be loaded instead and used for the replacements.

Bug: 1006759
Change-Id: I7af5e1343a028aed82d5c3f536be886011cf9a2c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1958525
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2019-12-10 13:47:05 +00:00
Paul Lewis da0fab38e1 Adds migration script to moving side-effects to legacy file
TBR=tvanderlippe@chromium.org
Bug: 1006759
Change-Id: I145e029b427900995468e86a522085553cb5c1cf
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1953769
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
2019-12-09 10:59:22 +00:00
Tim van der Lippe 5e2f45a379 Add script to remove unused globals
It Traverses all expression statements that put stuff on the global
scope and checks if it is only used once (e.g. in that particular
assignment). Anything that is only exported but never used is deleted.

This works for extensions declared in the module.json as well.

Change-Id: Ie3d9759da8593f8c66f1c12ba2e8ee1724f240d6
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1942289
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2019-11-28 17:40:34 +00:00
Paul Lewis f16142c532 Migrate accessibility/ to esm
Bug: 1006759
Change-Id: I9544f28e103acf0869cd6b3d98681b5788498ae0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1893084
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2019-11-07 18:06:05 +00:00
Paul Lewis 3940ef25f1 Move data_grid over to ESM
Bug: 1006759
Change-Id: I02a7fc01bff612cf057c918df7449734bba241b7
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1893076
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2019-11-07 14:42:25 +00:00
Yang Guo 75beda900f Move test scripts to scripts/test
R=aerotwist@chromium.org, liviurau@chromium.org, machenbach@chromium.org

Bug: 1018122
Change-Id: I7cc3a1a9ab01c649b3c7fe8ba5d5254adc631634
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/1880033
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Liviu Rau <liviurau@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
2019-10-28 07:57:59 +00:00
Tim van der Lippe a4d448c312 Migrate console_counters/ to ESM
- Also upgrade the refactor script to automatically add the
extensionpoint to the BUILD.gn to save myself some typing.

Bug: 1006759
Change-Id: I3f789f96122569141194ce26ac288f01af68f6e2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1852209
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#704600}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e55e98bc0ca76229380e3bca5a78e15d953da0c5
2019-10-10 13:38:29 +00:00
Tim van der Lippe 50cfa9b19d Migrate host/ to ESM
Bug: 1006759
Change-Id: Ib72e0acbb20c4579e708cd79a67ffd0bc2073b70
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1829102
Commit-Queue: Tim Van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#701509}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b2641f7a9893b50ab7f74d8bc5b7ca7743b0a530
2019-10-01 10:40:58 +00:00
Tim van der Lippe 7ca9ec190d Copy individual symbols and comments for Closure
Closure was unhappy with the `Object.assign` solution. Instead, use
individual assignments and add the relevant comments, so that Closure
can understand what is going on.

Sample output:

```
/*Legacy exported object*/
self.UI = self.UI || {};

/*Legacy exported object*/
UI = UI || {};

//TODO(http://crbug.com/1006759): Add type information if necessary
UI.TextEditor = TextEditor;

//TODO(http://crbug.com/1006759): Add type information if necessary
UI.TextEditor.prototype = prototype;

/** @enum {symbol} */
UI.TextEditor.Events = Events;
```

Bug: 1006759
Change-Id: Ib0e571cc027f544b316a3e3ccf8c3d606273d887
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1819248
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Auto-Submit: Tim Van der Lippe <tvanderlippe@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#698878}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c1c9f965bfcf2dbcd8f868414874c085f4ff9515
2019-09-23 13:39:17 +00:00
Tim van der Lippe 64bc95bd4b Automatically generate module file with exports
Since we are reading the file names anyways, we can also generate the
actual module name. Also delete the UI.js, since we will be generating
that now (albeit lowercase).

Change-Id: I16730392aa49927ac32da939a88399cc6ac49340
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1810999
Commit-Queue: Tim Van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#698034}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e80d12cb681bcd49518ec50763ede737bc86a136
2019-09-19 15:35:50 +00:00
Tim van der Lippe 29011f8a88 Introduce migration script for JavaScript modules
Example invocation of the script:

./refactor-folder-to-es-modules.sh ui

It will consequently refactor all files in the ui folder to JavaScript
modules. It will also update the BUILD.gn variables to remove the
references from the old all_devtools_files into the new modules
variables.

Change-Id: I35ad6360b15d1aff250afffc8a28774c4e8cc1ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1808867
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@google.com>
Cr-Original-Commit-Position: refs/heads/master@{#697602}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6d48f36bc75c558ac1ee899ccb20877b800e9410
2019-09-18 14:33:56 +00:00