This CL makes two changes:
1. Make use_xvfb imply use_ash_chrome.
2. Mark test targets to use xvfb and ash_chrome if needed.
Bug: 1104318
Change-Id: I7128b31b83e2389e92e5507093396aaf537dfdf6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2324765
Reviewed-by: Sven Zheng <svenzheng@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Reviewed-by: Stephen Martinis <martiniss@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792730}
GitOrigin-RevId: f540c742b6ebfb559778fc9610b59b8c9e69c65a
Lint is no longer implicitly run as part of an apk or bundle target. If
a specific apk or bundle wants to turn on its own lint and have that run
automatically on every build, the enable_lint flag can be used. See:
"boundary_interface_example_apk".
A new target //chrome/android:android_lint (or simply "android_lint")
has been added. This currently runs either monochrome_public_bundle's
lint task or a list of default targets if such a list is defined.
For chrome apk/bundle targets based on chrome_public_apk_tmpl.gni, they
will automatically get a data_dep added on the new unified lint target
so most devs' workflow will not need to change.
APKs in for {remoting,cronet,cast} have enable_lint added explicitly in
this CL to preserve their existing behaviour.
NewApi and VisibleForTests checks have been disabled for test apks, with
a TODO for turning at least NewApi back on.
Bug: 1108791
Fixed: 1108791
Change-Id: I6534fcd6dc7af1d7a12720a98f8d0d09bee8f161
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2318549
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: Paul Jensen <pauljensen@chromium.org>
Reviewed-by: Lambros Lambrou <lambroslambrou@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792728}
GitOrigin-RevId: f40e2d02801df0a75a88a63e76ede485739e2d22
Explain that chromeos_is_browser_only is set on ChromeOS when using Wayland.
Change-Id: I7649ef51b8c7759f4dfed0021bf32bcc2c8f6886
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2324663
Reviewed-by: Dirk Pranke <dpranke@google.com>
Commit-Queue: Darwin Huang <huangdarwin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792502}
GitOrigin-RevId: 7f808575665c9b601f35412343af5a404786350c
- Exposes material design's deps to be public so that the external
version of material design could depend on its deps from
//third_party/android_deps.
- Replace all usages of the material design target to be a variable.
TBR=just mechanical renaming of material design target
Change-Id: I12e0e6f534aab3fdc0d5f868373f8687d3e41e8e
Bug: 1110346
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2321748
Reviewed-by: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792354}
GitOrigin-RevId: 838cba5d3a6baddc16f3dd76949bf48f6bd31df4
Enables on the fly code coverage and then appends those results to the
end of the instrumented code coverage report.
Bug: 1107004
Change-Id: I68b4d78fb6d04d0e9348601663526c21e7c73b49
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315930
Commit-Queue: benjamin joyce <bjoyce@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792331}
GitOrigin-RevId: 10944e134ecd2cf04ec59545c104514b34a2cc0b
Switch to the R SDK and system SDK, and add the WebView code to support
WebView R APIs.
Bug: 1106471
Change-Id: I4fa349ff6b79983730bca609b95532b019e3e05d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2310800
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Anna Malova <amalova@chromium.org>
Commit-Queue: Richard Coles <torne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792225}
GitOrigin-RevId: 63a24caef73eec3e24845bbcc3fecbb70f18507f
* Suppress a lint warning that is expected.
* For methods whose visibility is relaxed not only for the reason of
testing, remove the @VisibleForTesting annotation.
Bug: 1108022
Change-Id: I3f8004e3b27cfbbc82a8061c19e57e1662a0691a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315926
Reviewed-by: Wei-Yin Chen (陳威尹) <wychen@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Commit-Queue: Yue Zhang <yuezhanggg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791974}
GitOrigin-RevId: 89f4148d6386ee7d0cf69316492e5ee88f84fd76
This fixes some lint warnings, so we can remove the suppressions.
Bug: 1107950
Change-Id: Idbe53038d4595fb571d374f04665671dd68e4d93
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2310789
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Reviewed-by: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791931}
GitOrigin-RevId: 95f84e2e1dcee8f71749f08415d063cfd226cbb4
Allow linting with a minSdkVersion that is different that the current
APK/Bundle's min_sdk_version. This paves the way for using a single
unified target for most lint runs.
e.g. monochrome_public_bundle can set lint_min_sdk_version to 21 so that
it lints against a lower minSdkVersion than its min_sdk_version (24).
Bug: 1108791
Change-Id: I703d1ef19f7fc9182f52bc6ef0ae8535c024b10f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2316334
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791925}
GitOrigin-RevId: 623263d6782306905fb384d1688b6d8798784c39
Use vpython for `generate_gradle.py` and `list_java_targets.py`
Change-Id: I39bb601add8cc1c019a3aab9bca60bee0e341084
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315400
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791917}
GitOrigin-RevId: 6663ed030f5d4fd0851c9bc7ba16fcd46db148e9
Add -C as well for --output-directory to match ninja's syntax. Make it
clear in the help text that there are easier ways to permanently specify
a default output directory.
Remove some unused fields and use f-strings.
Bug: None
Change-Id: I0a9ba8329095a5c6d8c46ddb63966f31d3307754
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315093
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791834}
GitOrigin-RevId: a57817c79cba8338ddeab7392797ceb800324167
As https://crrev.com/c/2299189 adds `OS_MAC` & `OS_APPLE`, add a gn
variable `is_apple` that is true when `OS_APPLE` is defined. This
allow an easy mapping between gn variables and cpp macros.
Convert all usages of `is_ios || is_mac` or `is_mac || is_ios` to
use the new variable instead.
Bug: 1105907
Change-Id: I4cef55496a0ccf0a6162e60409ff3b7996f633dd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315695
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791803}
GitOrigin-RevId: fafffe8843d5dac1ef479ae2e9058e0f93faf82d
Fix after https://crrev.com/c/2315691, which references
mac_xcode_version without importing gclient_args.gni where it gets
defined. It only worked in the Chromium project since the import
is in Chromium's build overrides.
Bug: 1109624
Change-Id: I575c7b87dbb96c3a79b8243bfe63c33b2427479d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2317871
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Hans Wennborg <hans@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791796}
GitOrigin-RevId: 328bb410d024acb7ef8af0b0620ef130e76316d8
The token limits are set after the default version (used on the CQ) and may not
be appropriate for the headers in other versions.
Bug: 1049569
Change-Id: I6230efe9d7e56459fbae0355751bf81e6e5c5dfc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315691
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791583}
GitOrigin-RevId: b8ef479e3beffe43c63d565aa3f9786f645a4a8b
A temporary solution to allow different downloading behaviors when
building and testing on bots until version is pinned to chromium/src.
Bug: 1104318
Change-Id: I945a8be7f39a3762107791f70ff48cd09410b8d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315424
Reviewed-by: Sven Zheng <svenzheng@chromium.org>
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791537}
GitOrigin-RevId: c8bdb69570e0ffbc1c4cfbd0b61f80e48c0a0091
In the spirit of macOS Big Sur, which is labeled as macOS 11.0,
introduce OS_MAC and OS_APPLE. OS_MACOSX implicitly included OS_IOS,
which was confusing, so OS_APPLE is the new replacement for "macOS +
iOS" and OS_MAC is the new replacement for "just macOS, not iOS".
Bug: 1105907
Change-Id: I0f24ff5a74f07eaf2fe7b7fa17bdef7e82a514fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2299189
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Leonard Grey <lgrey@chromium.org>
Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
Auto-Submit: Avi Drissman <avi@chromium.org>
Commit-Queue: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791353}
GitOrigin-RevId: 34594e90b34d8eb2e03998489cf083b3f94753bb
* Refactors more common logic for the three expectation file types
into diff_utils.py
* Changes sort order for proguard expectations so that they diff better
* Output "actual_data" rather than .stamp files for expectation targets
* Stop writing out .proguard_configs for all proguard runs
* I don't think these files have been referenced for a long time, and
the expectations file largely serves their purpose in a more
discoverable way.
* Don't define validate_expectations GN group unless it will
have deps (to prevent thinking your GN args are correct when
they are not).
Bug: 1064151
Change-Id: I5394471e7defd2c2f7e2f2173097a11d830cde65
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314265
Reviewed-by: Mohamed Heikal <mheikal@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791342}
GitOrigin-RevId: 5b72f4a35e83cd3ad7358128d79b6ac3245bf138
Remove allowlist for bypassing turbine direct deps since the last items
in the allowlist (cronet and modules) have been removed.
Bundle feature modules require the base module in their classpath.
Previously they were able to get by since the base module was added to
their transitive classpath, but the base module should be in their
direct classpath as it is used directly in R.java via inheritance.
Fix in reland:
- Add missing dep on base module java
Tbr: agrieve@chromium.org for reland
Fixed: 1082904
Bug: 1082904
Change-Id: I4b2d6a173ad207efcc9730589b1322a02071a2c2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314938
Commit-Queue: Peter Wen <wnwen@chromium.org>
Auto-Submit: Peter Wen <wnwen@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791258}
GitOrigin-RevId: 85f7ce53467938a068a0a670db400eec1090a739
The version of dexdump in build-tools 30.0.1 includes more information
than previous versions in its output, which has revealed that it doesn't
encode its output as valid XML in all cases; Java strings with control
characters or nulls end up emitted literally in the XML output, which
breaks ElementTree's parser. b/161925303 has been filed internally to
track fixing this in dexdump itself.
Since we only need to be able to extract a few specific things from the
dexdump output in our tooling, just replace invalid characters in the
output with the Unicode replacement character (as Python does when using
the 'replace' error handler in encoding) before parsing it.
Bug: 1106471
Change-Id: Id1c3a40e5ce91125dbee9fdf1923383d02314f55
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314986
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Richard Coles <torne@chromium.org>
Commit-Queue: Richard Coles <torne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791232}
GitOrigin-RevId: 24c982a78f2d7f9f537abc762a7a2e73d7810c6b
This CL adds documentation with example usages for the test runner.
Bug: 1104318
Change-Id: Ibae86ebe4dd893b5eef01db5699d6310fad4cb53
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315478
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791143}
GitOrigin-RevId: 35a99eef8896276f3ebc53cae3e989ea1f790529
This CL handles SIGINT and SIGTERM to make sure that the spawned
processes are terminated properly to avoid process leaking.
Bug: 1104318
Change-Id: I56584b8375a2530e92f07bc07354fb96bd1bb553
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314791
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791139}
GitOrigin-RevId: d0effefbaf6eb38972fb683192f954b463d959ec
This reverts commit 660b593306570c04200321f99aaac34831c3d490.
Reason for revert: Broke android-archive-rel
https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8874020961794812528/+/steps/compile/0/stdout
Original change's description:
> Android: Use direct deps for cronet and modules
>
> Remove allowlist for bypassing turbine direct deps since the last items
> in the allowlist (cronet and modules) have been removed.
>
> Bundle feature modules require the base module in their classpath.
> Previously they were able to get by since the base module was added to
> their transitive classpath, but the base module should be in their
> direct classpath as it is used directly in R.java via inheritance.
>
> Fixed: 1082904
> Bug: 1082904
> Change-Id: I75d89815de894c64581b98e35243aca5bc8d4e93
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314757
> Commit-Queue: Andrew Grieve <agrieve@chromium.org>
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Auto-Submit: Peter Wen <wnwen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#791117}
TBR=wnwen@chromium.org,agrieve@chromium.org
Change-Id: Iac0700e90845d2e1b85ed860abbff4c6c942df42
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1082904
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315009
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791126}
GitOrigin-RevId: 349aba7e7c58ed797dd134987b8c74f1f6018ce9
Remove allowlist for bypassing turbine direct deps since the last items
in the allowlist (cronet and modules) have been removed.
Bundle feature modules require the base module in their classpath.
Previously they were able to get by since the base module was added to
their transitive classpath, but the base module should be in their
direct classpath as it is used directly in R.java via inheritance.
Fixed: 1082904
Bug: 1082904
Change-Id: I75d89815de894c64581b98e35243aca5bc8d4e93
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2314757
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791117}
GitOrigin-RevId: 660b593306570c04200321f99aaac34831c3d490
Add more logging into test runner.
Bug: 1060399
Change-Id: I4bdc9ac8413f8ea04433ae927106f73d94788330
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2253083
Commit-Queue: Arthur Wang <wuwang@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791091}
GitOrigin-RevId: 3ab9a142091516aa57f10feebc46dee649ae4589