This CL splits the giant chrome_test_java target into multiple targets
based on the package, so that a change to a single test file will not
cause all test files to be recompiled, so that the build time will be
much shorter if we make some changes to a single test file.
For changes to a single test file, the build time went down from
50 seconds to 30 seconds. Note that this time saving only applies
when we are modifying the public functions of tests or test utils.
A followup CL will do the same thing to chrome_unit_test_java.
Bug: 40286190
Change-Id: I682c9d992771478f7b086b35e3e31a4fcb6d1f70
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6168523
Owners-Override: Sam Maier <smaier@chromium.org>
Commit-Queue: Martin Kong <martinkong@google.com>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1407558}
In this part updating files that are either owned by everyone or I
have ownership.
This option is no longer respected by Grit, as of crrev.com/c/786121
(~7 years ago), but it is still present in a lot of grd files.
Bug: 389466679
Change-Id: I50608a355313dcb2adb372b01b1d6cbd9a7aaf12
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6170774
Auto-Submit: Demetrios Papadopoulos <dpapad@chromium.org>
Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
Reviewed-by: Rebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1405965}
JNI_POSSIBLE_BOUNDARY_EXPORT -> JNI_ZERO_MUXED_ENTRYPOINT
JNI_BOUNDARY_EXPORT -> JNI_ZERO_BOUNDARY_EXPORT
Removes the need for a public config that adds defines.
Bug: None
Change-Id: I2e49c11fb700e2fb667676f74a00189d310dded8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6044104
Reviewed-by: Sam Maier <smaier@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1387691}
This file was split into per-feature files a few years back, removing
it now as it still frequently comes up in CodeSearch which is
unhelpful.
This removes all references I found, other than the many comment-only
references in C++ code.
Bug: 348373378
Change-Id: I7c3e4968ced5c5ff57d9c24f69ebcdfd448c1a74
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5636403
Commit-Queue: James Lee <ljjlee@google.com>
Reviewed-by: Luc Nguyen <lucnguyen@google.com>
Reviewed-by: Stephanie Kim <kimstephanie@google.com>
Auto-Submit: James Lee <ljjlee@google.com>
Cr-Commit-Position: refs/heads/main@{#1317804}
This is a reland of commit 126fae8049
Locally tested failing robolectric tests, they now pass.
Original change's description:
> Removing concept of MainDex/non-MainDex native
>
> With automatic registration being the default now, there is no need to
> differentiate MainDex/non-MainDex as automatic registration is lazy
> anyways.
>
> Low-Coverage-Reason: Just a deletion of code
> Bug: 1371542
> Change-Id: I85cc1f72e71eb4b2ed36a06bd8b0a25a484ce3fe
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4385433
> Owners-Override: Andrew Grieve <agrieve@chromium.org>
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Commit-Queue: Sam Maier <smaier@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1124766}
Bug: 1371542
Change-Id: Ic54ae392db54e0da6b6dc0cf48867a1b96dc87c7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4389822
Auto-Submit: Sam Maier <smaier@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1126519}
With automatic registration being the default now, there is no need to
differentiate MainDex/non-MainDex as automatic registration is lazy
anyways.
Low-Coverage-Reason: Just a deletion of code
Bug: 1371542
Change-Id: I85cc1f72e71eb4b2ed36a06bd8b0a25a484ce3fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4385433
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1124766}
This is a reland of commit c0e6688032
Reland because revert was mistaken.
Original change's description:
> JNI: Give each DFM its own registration file
>
> This is accomplished by giving every global registration file (GEN_JNI
> and J/N) a unique prefix for each module - so vr_GEN_JNI or J/vr_N.
>
> In order to detect this, we've changed @NativeMethods to optionally
> accept a parameter, which would be the module's name. So, now any
> module using JNI should look like @NativeMethods("vr").
>
> This helps unblock multiplexing.
>
> Bug: 1371542
> Change-Id: I91e426d208a205c10bf34c6493a170e9af879dbc
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4067606
> Commit-Queue: Andrew Grieve <agrieve@chromium.org>
> Auto-Submit: Sam Maier <smaier@chromium.org>
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Owners-Override: Andrew Grieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1097772}
Bug: 1371542
Change-Id: I26ad36682ed37761fffa32a7d07e0dea50b747d4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4200036
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Auto-Submit: Sam Maier <smaier@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1097965}
This is accomplished by giving every global registration file (GEN_JNI
and J/N) a unique prefix for each module - so vr_GEN_JNI or J/vr_N.
In order to detect this, we've changed @NativeMethods to optionally
accept a parameter, which would be the module's name. So, now any
module using JNI should look like @NativeMethods("vr").
This helps unblock multiplexing.
Bug: 1371542
Change-Id: I91e426d208a205c10bf34c6493a170e9af879dbc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4067606
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Sam Maier <smaier@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1097772}
My goal is to document all the bugs / quirks with respect to isolated splits.
The audience is Chrome devs looking to write an isolated split, or devs
that are considering adopting isolated splits in other apps.
Bug: None
Change-Id: Id0b332b90ad90f81b93f73ebc7aa3b36218cf2d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3608556
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Clark DuVall <cduvall@chromium.org>
Cr-Commit-Position: refs/heads/main@{#996661}
The bundletool jar path containing version is listed in a few places in
the build system. Remove the version from the jar path (autoroller
cannot update all these places with the new version number). Also adds
the bundletool jar path as a input to a few actions to avoid stale
builds from cls just updating bundletool.
Change-Id: I8d497bb882008ad4e34a5a0aa795ee4df5625e3f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3200346
Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
Auto-Submit: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#927801}
This reverts commit 0dd7b07d2b.
Reason for revert: Broke compile (Reference in app_bundle_utils.py)
Original change's description:
> Remove version from bundletool filepath references in build
>
> The bundletool jar path containing the version is listed in a few places
> in the build system. Remove the version from the jar path (autoroller
> cannot update all these places with the new version number). Also adds
> the bundletool jar path as a input to a few actions to avoid stale
> builds from cls just updating bundletool.
>
> Change-Id: I41cbe7d45e9f31b64b7f3148687004aa2dbe48e7
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3166930
> Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
> Reviewed-by: Andrew Grieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#927311}
Change-Id: I0e95fd40165b3b695d66f9a8b846a0ef5b0c2b6a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3198541
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Peter Kotwicz <pkotwicz@google.com>
Commit-Queue: Peter Kotwicz <pkotwicz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#927461}
The bundletool jar path containing the version is listed in a few places
in the build system. Remove the version from the jar path (autoroller
cannot update all these places with the new version number). Also adds
the bundletool jar path as a input to a few actions to avoid stale
builds from cls just updating bundletool.
Change-Id: I41cbe7d45e9f31b64b7f3148687004aa2dbe48e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3166930
Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#927311}
* De-dupe some "why care" text between optimzation_advice.md
and binary_size_explainer.md
* Replace @RemovableInRelease with BuildConfig.ENABLE_ASSERTS
* Link to DFM doc from optimizing java code
Change-Id: I4111da3b6e56ac5144b8b26c7e780ee788cf399f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2893903
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#882626}
Previously, many packages marked their strings to not allow pseudolocale
translation for no particular reason (I suspect they were just copying
other packages).
BUG=chromium:1173812
TEST=Built chrome, ran it, and checked that it ran successfully with
pseudolocales, and that more strings were translated than before.
Change-Id: I95e3985b3f62eeaef49f9dc4bd090fcf27b3af85
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2672626
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Auto-Submit: Matt Stark <msta@google.com>
Reviewed-by: Trevor Perrier <perrier@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#854053}
Replace in documentation, comments and a tool the old location:
chrome/android/java/strings/android_chrome_strings.grd
with the new location:
chrome/browser/ui/android/strings/android_chrome_strings.grd
Change-Id: I4751c5941ac689a2b5e6b6445a2e62266aa84d8e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2654266
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: Andrew Luo <aluo@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Cr-Commit-Position: refs/heads/master@{#848782}
Bundle wrapper test scripts calls such as
/out/Debug/bin/monochrome_public_bundle install
/out/Debug/bin/trichrome_chrome_google_bundle run
use the '-m' flag to include DFMs. In particular, the switch for the
DevUI DFM is '-m dev_ui' (and '-f dev_ui' for fake install).
However, most developers who use these test scripts don't care about
this detail. This CL makes the DevUI DFM installed by default when
these build scripts are used, to simplify development. The master list
|default_modules_for_testing| is in chrome_bundle_tmpl.gni, and
currently on has "dev_ui".
To make it still possible to test install flows of DevUI DFM, this CL
also adds the new flag '--no-module' to exclude non-base DFMs that are
installed by default (currently only {dev_ui}). Fake installs, e.g.,
'-f dev_ui', also excludes the default install.
Bug: 1081812, 987040
Change-Id: Icf87515382cc6d0b3d52fc3fa1914c7a4830b6cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2197339
Reviewed-by: Egor Pasko <pasko@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#768784}
Use of java_files is being deprecated in favor of sources.
Update documentation that still references java_files.
TBR=aluo,bialpio,dpranke,pasko
Bug: 1035082
Change-Id: Ibcab73a9d90e010cdffd3018d3fd238662945f97
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1980981
Reviewed-by: Natalie Chouinard <chouinard@chromium.org>
Commit-Queue: Natalie Chouinard <chouinard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#727284}
The intrinsic dependencies encountered along the way made it difficult
(less effective) to break up this CL into multiple smaller CLs
(apologies to the reviewers in advance).
To simplify its understanding, please refer to the following doc:
https://docs.google.com/document/d/1ClZglFQroV53zSYEGIZ7yca8KIsPHGBmzMCbtreu5lg
The following are the major points to review:
- refactoring of the infra into builder, installer, logger, observer, util
- new design (IoC driven) for installers to enable for easy testability
- new design for emitted modules (cross-package communication)
Out-of-scope (following CLs):
- removal of bytecode processing for third-party activities (no longer needed)
- move code from ModuleInstallerConfig.java into BuildConfig.java
- unit tests for the remaining module_installer classes
Testing: this change was verified with vr, ar, autofill_assistant, dev_ui,
and test_dummy modules. It was tested with both -m and -f command line args.
Bug: 1005802
Change-Id: Icf357c06c4b71a96ed9fa0584f6322d6dc6143d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1813520
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Peter Wen <wnwen@chromium.org>
Commit-Queue: Fred Mello <fredmello@chromium.org>
Cr-Commit-Position: refs/heads/master@{#702165}