Introduce the concept of "." lines that pass names of checks into
the plugin. Then always activate the unsafe libc warnings and filter
them based on these values.
-- Remove switch replaced by this mechanism.
-- Pretty much accept any dot line format despite the stricter docs.
-- Default unsafe_buffers checks on (can remove once products are
updated to match).
Change-Id: I7808615abf3f1669401f2c676b8e5c06aa596bf5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6251213
Reviewed-by: Hans Wennborg <hans@chromium.org>
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1421495}
1. Change the Commit-Queue value from +1 to 0 in Gerrit UI.
2. Upload a new patchset which triggers a new dry run.
3. Code-Review -1. This prevents a CL from landing.
Change-Id: I8cd0659a83deb469631f180e8a1192ba87fe8f94
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6254918
Reviewed-by: Ben Pastene <bpastene@chromium.org>
Commit-Queue: Darryl James <dljames@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1419021}
Move some text from unsafe_buffers_paths.txt into the markdown file
so that it may be more easily discovered. Hidden benefit of not
reading and discarding so many comment lines in each compiler
invocation.
Re-arrange and re-write sections to make flow more natural.
Change-Id: I077cf0d91cdd52a36cde9bb7c882ce3cf1fd6785
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6251406
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418875}
Reland notes: This is the 2nd part of the reland of the reverted CL at
crrev.com/c/6253018. The CL was incorrectly reverted, since the problem
was limited in the local dev environment of the person that was having
the issue, where third_party/node/ for some reason was stuck in v16 (a
very old version) instead of v22.
Enabling `enable_type_aware_eslint_checks` by default in build_webui().
Bug: 394634491
Change-Id: I35f77e4d3aef7af08ad06f1881d079e184c8153d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6254799
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418856}
It took me some time to figure this out, both to learn if the version
number mismatch was important, and how to apply the patches by hand.
Change-Id: I3312435a0dcdddb0f4e04e199da5c334e80248ac
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6249083
Commit-Queue: Dustin Mitchell <djmitche@chromium.org>
Reviewed-by: Łukasz Anforowicz <lukasza@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418829}
Add instructions on how to use the compile-size builder and fix
issues. This is necessary before we block CLs in CQ that have
large increases.
Bug: 370594503
Change-Id: I035ea17a6687457dac0060ce28f843319a564687
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6246737
Commit-Queue: Erik Staab <estaab@chromium.org>
Reviewed-by: Junji Watanabe <jwata@google.com>
Reviewed-by: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418813}
This reverts commit 32867d045f.
Reason for revert: Breaks the build.
FAILED: gen/ui/webui/resources/cr_components/cr_shortcut_input/eslint.config.mjs
python3 ../../ui/webui/resources/tools/eslint_ts.py --in_folder gen/ui/webui/resources/cr_components/cr_shortcut_input/preprocessed --out_folder gen/ui/webui/resources/cr_components/cr_shortcut_input --config_base ../../../../../../../../ui/webui/resources/tools/eslint_ts.config_base.mjs --tsconfig tsconfig_build_ts.json --in_files cr_shortcut_input.ts cr_shortcut_input.html.ts cr_shortcut_util.ts
Traceback (most recent call last):
File "/usr/local/google/home/sesse/chromium/src/out/Default/../../ui/webui/resources/tools/eslint_ts.py", line 78, in <module>
main(sys.argv[1:])
File "/usr/local/google/home/sesse/chromium/src/out/Default/../../ui/webui/resources/tools/eslint_ts.py", line 67, in main
node.RunNode([
File "/usr/local/google/home/sesse/chromium/src/third_party/node/node.py", line 38, in RunNode
raise RuntimeError('Command \'%s\' failed\n%s' % (' '.join(cmd), err))
RuntimeError: Command '/usr/local/google/home/sesse/chromium/src/third_party/node/linux/node-linux-x64/bin/node /usr/local/google/home/sesse/chromium/src/third_party/node/node_modules/eslint/bin/eslint --color --quiet --config gen/ui/webui/resources/cr_components/cr_shortcut_input/eslint.config.mjs gen/ui/webui/resources/cr_components/cr_shortcut_input/preprocessed/cr_shortcut_input.ts gen/ui/webui/resources/cr_components/cr_shortcut_input/preprocessed/cr_shortcut_input.html.ts gen/ui/webui/resources/cr_components/cr_shortcut_input/preprocessed/cr_shortcut_util.ts' failed
Oops! Something went wrong! :(
ESLint: 9.10.0
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
at new NodeError (node:internal/errors:371:5)
at validateString (node:internal/validators:119:11)
at Object.join (node:path:1172:7)
at file:///usr/local/google/home/sesse/chromium/src/out/Default/gen/ui/webui/resources/cr_components/cr_shortcut_input/eslint.config.mjs?mtime=1739278158700:10:26
at ModuleJob.run (node:internal/modules/esm/module_job:185:25)
at async Promise.all (index 0)
at async ESMLoader.import (node:internal/modules/esm/loader:281:24)
at async importModuleDynamicallyWrapper (node:internal/vm/module:437:15)
at async loadFlatConfigFile (/usr/local/google/home/sesse/chromium/src/third_party/node/node_modules/eslint/lib/eslint/eslint.js:390:21)
at async calculateConfigArray (/usr/local/google/home/sesse/chromium/src/third_party/node/node_modules/eslint/lib/eslint/eslint.js:473:28)
Original change's description:
> WebUI: Enable @typescript-eslint/require-await check in build_webui().
>
> - Enabling `enable_type_aware_eslint_checks` by default in build_webui().
> - Fixing a few remaining violations that were not already fixed in
> precursor CLs.
> - Fix the dependnecies of the ":lint" target for the case of
> `use_javascript_coverage=true`
> - Add a new "ESLint checks" section in styleguide/web/web.md explaining
> the two different types of ESLint checks.
> - Update Chromium styleguide additions to include what will be
> enfroced by @typescript-eslint/require-await as part of this CL,
> and @typescript-eslint/no-unnecessary-type-assertion in upcoming
> CLs.
>
> Bug: 394634491
> Change-Id: I59a07d4e76339449c3e5ff79608b57154a3e32cb
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6250398
> Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
> Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1418375}
Bug: 394634491
Change-Id: Iccfa9b2c94f608e193f95a7fe454abbec3c3f3b4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6253018
Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org>
Auto-Submit: Steinar H Gunderson <sesse@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Vasilii Sukhanov <vasilii@chromium.org>
Owners-Override: Vasilii Sukhanov <vasilii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418592}
- Enabling `enable_type_aware_eslint_checks` by default in build_webui().
- Fixing a few remaining violations that were not already fixed in
precursor CLs.
- Fix the dependnecies of the ":lint" target for the case of
`use_javascript_coverage=true`
- Add a new "ESLint checks" section in styleguide/web/web.md explaining
the two different types of ESLint checks.
- Update Chromium styleguide additions to include what will be
enfroced by @typescript-eslint/require-await as part of this CL,
and @typescript-eslint/no-unnecessary-type-assertion in upcoming
CLs.
Bug: 394634491
Change-Id: I59a07d4e76339449c3e5ff79608b57154a3e32cb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6250398
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418375}
Previously, the IID would always be cleared on
the first update check, which is usually the
update-check-to-install. To avoid continuously
retransmitting a unique identifier for inactive
clients, the install ID is not sent for
non-active updatechecks, nor for non-install
pings.
Also, update the install ID on an overinstall.
This helps terminate the install funnel
telemetry for installers used in an overinstall
context.
Bug: 343239826
Change-Id: Ifb216019179fc307e2ac13e2a7abc4005f62dccd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6249219
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418371}
Type-aware ESLint checks (see [1], [2]) can do more sophisticated checks
compared to non type-aware checks which run during presubmit.
- Implement a new `eslint_ts()` GN rule along with corresponding
tests.
- Hook it up to `build_webui()`.
- Guard it with a new `enable_type_aware_eslint_checks` flag that
defaults to `false`.
The new flag will be enabled on a target-by-target basis or as a whole
once existing violations are fixed. Initially applying only
@typescript-eslint/require-await when the flag is enabled. More checks
will be added eventually.
[1] https://typescript-eslint.io/rules/?=typeInformation
[2] https://typescript-eslint.io/getting-started/typed-linting/
Bug: 394634491
Change-Id: Id2255656786fc144f95801f399bc34520c910cca
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5252273
Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1417633}
This CL enables explicit clang modules for libc++ and clang's builtin
headers.
There are still many compile errors even if we build `base`, but we'll
fix them one by one.
I also leave implicit modules build with use_implicit_libcxx_modules.
Bug: 40440396
Change-Id: Ie23087ff69e2ab9892625400f2cd182955cc098b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6188686
Reviewed-by: Erik Staab <estaab@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1416006}
Adding in information about GPL/LGPL licences that are allowed for non-shipped dependencies and chromium. This info comes from Dash (CC'd).
Change-Id: Icf00b57d8f204b751f6ace69a0bdcd33bada989c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6229210
Reviewed-by: Jiewei Qian <qjw@chromium.org>
Commit-Queue: Jordan Brown <rop@google.com>
Reviewed-by: Rachael Newitt <renewitt@google.com>
Cr-Commit-Position: refs/heads/main@{#1415972}
* The file extensions for the compressed tarballs are .tar.xz, not .tgz
* Update the clang-format diff script so that xargs spawns one
clang-format process per file in parallel instead of spawning one
clang-format process that formats all files. This considerably speeds
things up.
Note that the fetch and upload script is still broken for the following
reasons that I haven't fixed yet because this is difficult to debug
(upload_to_google_storage.py can only be run once per object for
example.)
* upload_to_google_storage_first_class.py prints a line that goes
"Uploading {filename} as gs://{path}" before printing out JSON. This
makes jq unhappy.
* upload_to_google_storage_first_class.py prints the wrong object_name
in the JSON; the object name printed is the same as the sha256sum.
There does exist an object with that name and it contains the right
data, but it doesn't have the executable bit set. We want another
object that does.
Change-Id: I6cd5faa0432b71098664e4e79bc7c22140d48545
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6226772
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Alan Zhao <ayzhao@google.com>
Cr-Commit-Position: refs/heads/main@{#1415760}
We are switching to v4 metrics for startup. Adjust the description of
the metric in histograms.xml to match the fact that it is the primary
one. Rewrite the descriptions of the previous versions to focus only on
the differences. This will allow readers to avoid doing the diff
themselves.
Bug: 384084655
Change-Id: Ief23b69bb15586737186a450c58bb0eceee2f2a8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6197642
Reviewed-by: Sean Maher <spvw@chromium.org>
Commit-Queue: Egor Pasko <pasko@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1414348}
Lists like PSL and HSTS preload are incorporated into Chrome, but
the status of additions/removals in Chrome are not security bugs.
Change-Id: I7bdcabf711606c9896f97ccddf7a96686a4bf5e0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6216082
Reviewed-by: Alex Gough <ajgo@chromium.org>
Commit-Queue: Chris Thompson <cthomp@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1413519}