New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 702625 link

Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 3
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug

Blocked on:
issue 873043

Blocking:
issue 888857
issue 888863



Sign in to add a comment

Add a perf trybot that measures binary size impact.

Project Member Reported by agrieve@chromium.org, Mar 17 2017

Issue description

This would be an optional bot that you could run if you're worried about binary size.

It would need to:

1. Build without patch.
2. Run resource_sizes.py
3. Build with patch
4. Run resource_sizes.py
5. Print out the delta.


Once we have more tools for binary size diffing, we could hook these up as well (e.g. print delta of .so on a per-symbol basis, print java methods added/removed, print Android resources added / removed, print pak file IDs added / removed.
 
Cc: estevenson@chromium.org torne@chromium.org dpranke@chromium.org jbudorick@chromium.org
 Issue 642458  has been merged into this issue.
Labels: -binary-size Performance-Size
We should also have the script fail if the number of static initializers increase (and print the new ones). See  bug 729847 .

Also also - now that supersize is a thing, this bot should run "tools/binary_size/supersize diff" as well.
Another idea for this bot:

It should fail if the binary size increases by more that THRESHOLD (15kb is what we've been using for alerts, and seems to be working out), and doesn't have the word "BINARY_SIZE=justified" in it.

We'll likely need to also whitelist rolls.
Guidance from dpranke:

I'd add a builder to the build.chromium.org/p/chrome waterfall and a matching trybot.

We shouldn't need to set up a new master, you can follow the instructions in 

https://chromium.googlesource.com/chromium/tools/build.git/+/master/scripts/slave/recipe_modules/chromium_tests/chromium_recipe.md#Create-a-New-Trybot
Owner: agrieve@chromium.org
Status: Assigned (was: Available)
@agrieve, do you want to give this a shot, following the instructions? If not, can you punt this to jbudorick@?
I talked about this w/ Eric this afternoon. I think the double build is going to require some recipe changes, so those instructions alone may not be sufficient.
I'm willing to take this on, but not until after M61 branch (another month). John, if you or someone you know think you'll have time before that, then that's obviously music to my ears :)
Another idea for this bot: Prevent adding symbols with the name k[A-Z].* to the .data section (aka, check for constants missing the const qualifier).

We could accomplish this the same way as static initializers: count them before and after build. Can use supersize query:
size_info.symbols.WhereFullNameMatches(r'\bk[A-Z]').WhereInSection('d')

Just did an audit for existing ones and it wasn't *that* bad, but the false-positive was next to zero (was trivial to just add "const" to them). Only other case the variable should just be renamed.

https://chromium-review.googlesource.com/c/581908/

Comment 10 by pasko@chromium.org, Jul 24 2017

> Another idea for this bot: Prevent adding symbols with the name k[A-Z].* to
> the .data section (aka, check for constants missing the const qualifier).

I dunno, if there are less than 1K of these, then I would not bother maintaining
the extra step.. Also the style guide discourages multiple const in one type
decl AFAIR, so this may be non-trivial to push for?

I'm not too worried about people thinking this would be a bad idea. Basically all of the one's I found were real issues of forgetting to use "const". I've since discovered that we have a chrome clang plugin already though, so that would likely be a better spot to add in such a check.

Comment 12 by pasko@chromium.org, Jul 24 2017

Ah, adding const would make sense for dev productivity, but supporting the new functionality to the clang plugin may be tedious, YMMV.

Comment 13 by zpeng@chromium.org, Jul 28 2017

Cc: -torne@chromium.org agrieve@chromium.org
Owner: zpeng@chromium.org
Project Member

Comment 14 by bugdroid1@chromium.org, Sep 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/860b155ba75156bfeef4ee557d68e912602c5e8a

commit 860b155ba75156bfeef4ee557d68e912602c5e8a
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed Sep 06 14:50:06 2017

Android: Fail release trybots for new static initailizers

Also fails them if they are removed, but with clear instruction for
updating the expectations.

This also adds more docs about static initializers, and surfaces them
prominently in diagnoe_bloat.py.

Bug:  702625 
Change-Id: Ida397ebaebb914c5212c89dae932d19b97db1cfe
Reviewed-on: https://chromium-review.googlesource.com/647769
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499961}
[add] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/build/android/gyp/assert_static_initializers.py
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/build/android/resource_sizes.py
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/chrome/android/BUILD.gn
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/chrome/android/OWNERS
[add] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/chrome/android/static_initializers.gni
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/docs/speed/apk_size_regressions.md
[add] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/docs/static_initializers.md
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/testing/buildbot/chromium.android.json
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/testing/buildbot/chromium.linux.json
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/testing/buildbot/gn_isolate_map.pyl
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/tools/binary_size/libsupersize/console.py
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/tools/binary_size/libsupersize/describe.py
[modify] https://crrev.com/860b155ba75156bfeef4ee557d68e912602c5e8a/tools/binary_size/libsupersize/main.py

Cc: -agrieve@chromium.org
Owner: agrieve@chromium.org
> We should also have the script fail if the number of static initializers
> increase (and print the new ones). See   bug 729847  .

That would be good. tools\win\static_initializers (not currently part of the build but could be) was recently updated to support clang-cl binaries on Windows. It currently reports 33 translation units that have non-Microsoft static initializers. Most are presumably fixable but it's not clearly worthwhile without something to catch regressions.

Worth considering just doing what I did in #14 to check static initializers. So far it's been fairly effective I think, and there should be at most 33 commits that will need to update the expectations file :P.


Components: Infra>Client>Chrome
Moving Infra>Client>Android -> Infra>Client>Chrome+OS=Android
Components: -Infra>Client>Android
Project Member

Comment 20 by bugdroid1@chromium.org, Apr 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/44ca8b05993c40a81b0015a25fcaab81dff8c583

commit 44ca8b05993c40a81b0015a25fcaab81dff8c583
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue Apr 24 08:41:47 2018

diagnose_bloat.py: Add entrypoint for use by trybot

I'm sure this will need some iteration, but it's a start.

Bug:  702625 
Change-Id: Id9451eee9a39e589c3e126dc3b2b4dfbdab9ea46
Reviewed-on: https://chromium-review.googlesource.com/1024930
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553035}
[modify] https://crrev.com/44ca8b05993c40a81b0015a25fcaab81dff8c583/tools/binary_size/diagnose_bloat.py

Project Member

Comment 21 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/54aa34a7f4909aea617a61a25802be9ebf4ac97c

commit 54aa34a7f4909aea617a61a25802be9ebf4ac97c
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 11 04:17:35 2018

Add mb_config and cr-buildbucket entry for new trybot: android_binary_size

Bug:  702625 
Change-Id: I0e11b7f8d8490e92b8e6440b5363bb0b2f45d51a
Reviewed-on: https://chromium-review.googlesource.com/1025067
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557792}
[modify] https://crrev.com/54aa34a7f4909aea617a61a25802be9ebf4ac97c/infra/config/global/cr-buildbucket.cfg
[modify] https://crrev.com/54aa34a7f4909aea617a61a25802be9ebf4ac97c/tools/mb/mb_config.pyl

Cc: simonhatch@chromium.org agrieve@chromium.org perezju@chromium.org sullivan@chromium.org
 Issue 843929  has been merged into this issue.
Cc: alexclarke@chromium.org
Looking forward to this :)
Project Member

Comment 24 by bugdroid1@chromium.org, May 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7

commit a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 18 16:17:22 2018

GN: Add "python_library" template for group()s that use ".pydeps"

Also adds two new usages of it:
  //build/android:resource_sizes_py
  //tools/binary_size:binary_size_trybot_py

Bug:  702625 
Change-Id: Idc8113ca5e95ec9b5f5ff0cf22c14eeab95b78f8
Reviewed-on: https://chromium-review.googlesource.com/1058836
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Helen Li <xunjieli@chromium.org>
Reviewed-by: Peter Wen <wnwen@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559916}
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/BUILD.gn
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/OWNERS
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/PRESUBMIT.py
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/build/android/BUILD.gn
[add] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/build/android/resource_sizes.pydeps
[add] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/build/config/python.gni
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/build/secondary/third_party/android_platform/development/scripts/BUILD.gn
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/chrome/test/chromedriver/BUILD.gn
[modify] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/net/tools/testserver/BUILD.gn
[add] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/tools/binary_size/BUILD.gn
[add] https://crrev.com/a7f1ee90249c022de2b5d441bb1e1a3f8c0ecdd7/tools/binary_size/supersize.pydeps

Project Member

Comment 25 by bugdroid1@chromium.org, May 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/8d8612afb3866855b664a1cb9a457b8784a0efe3

commit 8d8612afb3866855b664a1cb9a457b8784a0efe3
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 18 19:39:44 2018

Create binary_size_trybot recipe

* Will initially be used only for Android binary size
* Does not yet fail due to undocumented size jumps
* Secondary goal of this trybot is to add coverage for
  is_official_build=true

Bug:  702625 
Recipe-Nontrivial-Roll: build_limited_scripts_slave
Change-Id: I59a18e19c854d5d5271e45bbaebd338dcf215fa7
Reviewed-on: https://chromium-review.googlesource.com/1025870
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>

[add] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/cronet.expected/android_cronet_x86_builder.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/cronet.expected/android_cronet_marshmallow_64bit_builder.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipe_modules/chromium_android/examples/full.expected/resource_size_builder_basic.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/cronet.expected/android_cronet_arm64_builder.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/android/builder.py
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipe_modules/chromium_android/examples/full.py
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/README.recipes.md
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/cronet.expected/android_cronet_kitkat_builder.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/android/builder.expected/full_chromium_perf_Android_Builder_Perf.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipe_modules/cronet/examples/full.expected/mb_test.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipe_modules/chromium_android/tests/resource_sizes.expected/basic.json
[add] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/binary_size_trybot.py
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipe_modules/chromium_android/api.py
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/cronet.expected/android_cronet_lollipop_builder.json
[modify] https://crrev.com/8d8612afb3866855b664a1cb9a457b8784a0efe3/scripts/slave/recipes/android/builder.expected/full_chromium_perf_Android_arm64_Builder_Perf.json

Cc: nednguyen@chromium.org
agrieve@, with this work, can we also make "Android Compile Perf" builders run binary size & remove  "Android Builder" bot (issue 807273)?
The trybot is unrelated afaict.

I had assumed the recent rename (which broke our graphs, and corrupted our size history) from "Android Builder" -> "Android Builder Perf" ( bug 831328 ) meant that it had been switched to luci, but perhaps not?
#27: they are not switched to LUCI yet. 
Project Member

Comment 29 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/3da72f0fba580e44ec6d5c2950efcf05a09d815c

commit 3da72f0fba580e44ec6d5c2950efcf05a09d815c
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed May 23 00:25:46 2018

Project Member

Comment 30 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eeaa32878b72bd278b78ca09cedb7a86b6b38747

commit eeaa32878b72bd278b78ca09cedb7a86b6b38747
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed May 23 04:23:40 2018

Add android-binary-size bot to luci-milu.cfg and luci-scheduler.cfg

Bug:  702625 , 844600
Change-Id: Ic58c39a4fe4890fad5841763f346b49e03bdabfa
Reviewed-on: https://chromium-review.googlesource.com/1069555
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560937}
[modify] https://crrev.com/eeaa32878b72bd278b78ca09cedb7a86b6b38747/infra/config/global/cr-buildbucket.cfg
[modify] https://crrev.com/eeaa32878b72bd278b78ca09cedb7a86b6b38747/infra/config/global/luci-milo.cfg
[modify] https://crrev.com/eeaa32878b72bd278b78ca09cedb7a86b6b38747/tools/mb/mb_config.pyl

Project Member

Comment 31 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a95d86932d4699067f3ef9c3a162d64f9c0e8898

commit a95d86932d4699067f3ef9c3a162d64f9c0e8898
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed May 23 19:45:02 2018

Fix android-binary-size "gn gen" failures

mb_config: Don't set is_chrome_branded for android-binary-size bot
The bot does not have src-internal, so can't use is_chrome_branded.

grit_rule.gni: Do not pass "-h" to grit_info.py (interprets as --help).

Bug:  702625 
Change-Id: I90b3b6743b08c34217eff18f46fc812521716473
Reviewed-on: https://chromium-review.googlesource.com/1069664
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561213}
[modify] https://crrev.com/a95d86932d4699067f3ef9c3a162d64f9c0e8898/tools/grit/grit_rule.gni
[modify] https://crrev.com/a95d86932d4699067f3ef9c3a162d64f9c0e8898/tools/mb/mb_config.pyl

Project Member

Comment 32 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/depot_tools/+/1f156687a2014f50548eacfffb825fb4f38c44d7

commit 1f156687a2014f50548eacfffb825fb4f38c44d7
Author: Andrew Grieve <agrieve@chromium.org>
Date: Thu May 24 02:35:19 2018

gerrit/api.py: Add get_revision() helper.

Allows easily getting at more than just the commit message.
I intend to look at the author to whitelist bots from binary size
checks (initially).

Bug:  702625 
Change-Id: I684fdfacc88635ec4849216c74183f63f9d54810
Reviewed-on: https://chromium-review.googlesource.com/1070483
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>

[modify] https://crrev.com/1f156687a2014f50548eacfffb825fb4f38c44d7/recipes/README.recipes.md
[modify] https://crrev.com/1f156687a2014f50548eacfffb825fb4f38c44d7/recipes/recipe_modules/gerrit/api.py

Project Member

Comment 33 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b42ff5f2efd9a88d7b3199deca5d0449399ffa5b

commit b42ff5f2efd9a88d7b3199deca5d0449399ffa5b
Author: depot-tools-chromium-autoroll <depot-tools-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Thu May 24 06:06:00 2018

Roll src/third_party/depot_tools/ ebdd0db49..1f156687a (1 commit)

https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/ebdd0db493b2..1f156687a201

$ git log ebdd0db49..1f156687a --date=short --no-merges --format='%ad %ae %s'
2018-05-23 agrieve gerrit/api.py: Add get_revision() helper.

Created with:
  roll-dep src/third_party/depot_tools
BUG= chromium:702625 


The AutoRoll server is located here: https://depot-tools-chromium-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


TBR=agable@chromium.org

Change-Id: I36402206ada18e96a8e50729e37fddb326127a03
Reviewed-on: https://chromium-review.googlesource.com/1071168
Reviewed-by: depot-tools-chromium-autoroll <depot-tools-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: depot-tools-chromium-autoroll <depot-tools-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#561396}
[modify] https://crrev.com/b42ff5f2efd9a88d7b3199deca5d0449399ffa5b/DEPS

Project Member

Comment 35 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/e78ea040ac650b427c7244c58ae6d0cde95e0095

commit e78ea040ac650b427c7244c58ae6d0cde95e0095
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 25 02:59:41 2018

binary_size_trybot.py: Fix resource_sizes.py step

Pass --output-dir and --chromium-output-directory

TBR=jbudorick
Bug:  702625 
Change-Id: I6857c1a83110daad8c6a1fd219b33a52a5d07feb
Reviewed-on: https://chromium-review.googlesource.com/1072695
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/e78ea040ac650b427c7244c58ae6d0cde95e0095/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/e78ea040ac650b427c7244c58ae6d0cde95e0095/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 36 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/78c2c6a16ec810ed25f7f8a0cfb5b8e2f37e4f35

commit 78c2c6a16ec810ed25f7f8a0cfb5b8e2f37e4f35
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 25 16:19:27 2018

binary_size_trybot.py: Add missing --chartjson to resource_sizes.py

TBR=jbudorick

Bug:  702625 
Change-Id: I4c45a2cde3b8ca50c221aabe620ce67b21a7fdd9
Reviewed-on: https://chromium-review.googlesource.com/1072450
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/78c2c6a16ec810ed25f7f8a0cfb5b8e2f37e4f35/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/78c2c6a16ec810ed25f7f8a0cfb5b8e2f37e4f35/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 37 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/13844f25a3331d9633b150867e3f84d88501c3fb

commit 13844f25a3331d9633b150867e3f84d88501c3fb
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri May 25 18:34:07 2018

binary_size_trybot.py: Run diff tool with patch applied

TBR=jbudorick
Bug:  702625 
Change-Id: Iad822357bb58e0361aec6ed17cee24884add82bb
Reviewed-on: https://chromium-review.googlesource.com/1073502
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/13844f25a3331d9633b150867e3f84d88501c3fb/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/13844f25a3331d9633b150867e3f84d88501c3fb/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 38 by bugdroid1@chromium.org, May 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/444930a40d735e1951f5d39813e4076d0fc56bc8

commit 444930a40d735e1951f5d39813e4076d0fc56bc8
Author: Andrew Grieve <agrieve@chromium.org>
Date: Sat May 26 01:12:19 2018

binary_size_trybot.py: presentation.logs[] takes a list of lines

TBR=jbudorick

Bug:  702625 
Change-Id: Id7bd57bf616b35d7489ce696c50bdc9c89739b85
Reviewed-on: https://chromium-review.googlesource.com/1074340
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/444930a40d735e1951f5d39813e4076d0fc56bc8/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 40 by bugdroid1@chromium.org, May 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d9bbf493b79ebee0835cbe8878943c17bee4c53a

commit d9bbf493b79ebee0835cbe8878943c17bee4c53a
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue May 29 19:47:25 2018

Add size checking script for android-binary-size trybot

And fix diagnose_bloat.py regexp that extracts summary
from supersize output

Bug:  702625 
Change-Id: Ib8941a2cb84c18d02dd980e4725f44ea6ed4fcb7
Reviewed-on: https://chromium-review.googlesource.com/1071708
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562557}
[modify] https://crrev.com/d9bbf493b79ebee0835cbe8878943c17bee4c53a/tools/binary_size/BUILD.gn
[modify] https://crrev.com/d9bbf493b79ebee0835cbe8878943c17bee4c53a/tools/binary_size/diagnose_bloat.py
[add] https://crrev.com/d9bbf493b79ebee0835cbe8878943c17bee4c53a/tools/binary_size/trybot_commit_size_checker.py

Project Member

Comment 41 by bugdroid1@chromium.org, Jun 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/943c22112f0d08b79befcbc50666622d74b0c054

commit 943c22112f0d08b79befcbc50666622d74b0c054
Author: Andrew Grieve <agrieve@chromium.org>
Date: Mon Jun 04 19:40:36 2018

Tweak whitespace of android-binary-size failure message

Bug:  702625 
Change-Id: I4abe16c769abad36613dd59b825fae69237814f2
Reviewed-on: https://chromium-review.googlesource.com/1085555
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564190}
[modify] https://crrev.com/943c22112f0d08b79befcbc50666622d74b0c054/tools/binary_size/trybot_commit_size_checker.py

It looks like android-binary-size bot doesn't correctly show size diff for resources.
Example CL: https://crrev.com/c/1105979. This CL removes some contentDescription attributes from XMLs, which should reduce resources and APK sizes, but android-binary-size reports that nothing has changed: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/android-binary-size/29.
Thanks for pointing this out! Looks to be a bug with our build logic.

The second compile (without patch) is here:
https://logs.chromium.org/v/?s=chromium%2Fbuildbucket%2Fcr-buildbucket.appspot.com%2F8943291619394465504%2F%2B%2Fsteps%2Fcompile__without_patch_%2F0%2Fstdout

It shows that library resources were recompiled (into a .zip), but the apk was not rebuilt. Filed this as  bug 854878 . 
Project Member

Comment 44 by bugdroid1@chromium.org, Jun 22 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/f6cf71b344fae5a757d9e4e1c83c447e5223668c

commit f6cf71b344fae5a757d9e4e1c83c447e5223668c
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri Jun 22 15:54:24 2018

Project Member

Comment 45 by bugdroid1@chromium.org, Jun 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c575d1386f354d1d9ac078d28fea6665dc103e45

commit c575d1386f354d1d9ac078d28fea6665dc103e45
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri Jun 22 18:54:21 2018

Enable android-binary-size trybot on CQ as a 10% experiment

Bug:  702625 
Change-Id: I68ff5c0b3e81da58ca85cd2a6b26ebe7ec80456e
Reviewed-on: https://chromium-review.googlesource.com/1112351
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569714}
[modify] https://crrev.com/c575d1386f354d1d9ac078d28fea6665dc103e45/infra/config/branch/cq.cfg

Project Member

Comment 46 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/f82b1a201498a191c76ceef89461aa69e922fc97

commit f82b1a201498a191c76ceef89461aa69e922fc97
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue Jun 26 00:49:36 2018

Project Member

Comment 47 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/49aa7c3ca384645e343717176af0972552fc0356

commit 49aa7c3ca384645e343717176af0972552fc0356
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue Jun 26 01:14:50 2018

Set android-binary-size bot to 100% experiment

So far seems to be working fine and not becoming overloaded.

Bug:  702625 
Change-Id: I1a83fc0594f1b1ac69ff0b70f9997b59c08db3c8
Reviewed-on: https://chromium-review.googlesource.com/1114318
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570280}
[modify] https://crrev.com/49aa7c3ca384645e343717176af0972552fc0356/infra/config/branch/cq.cfg

Project Member

Comment 48 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/1abea52636811a59e72c94e5cd60231d30a74136

commit 1abea52636811a59e72c94e5cd60231d30a74136
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue Jun 26 16:17:31 2018

Superficial tweaks to binary_size_trybot.py

* Make it more obvious where to click
* Show the normalized size on the last step
* Don't repeat reasons for short-circuiting

Bug:  702625 
Change-Id: Ic11da78a980058954041f3ef52ea9bae70dfd988
Reviewed-on: https://chromium-review.googlesource.com/1115095
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/1abea52636811a59e72c94e5cd60231d30a74136/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/1abea52636811a59e72c94e5cd60231d30a74136/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 49 by bugdroid1@chromium.org, Jun 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b5087d3b967ee8570cafb1c696f14ab258c2e47f

commit b5087d3b967ee8570cafb1c696f14ab258c2e47f
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed Jun 27 02:04:07 2018

diagnose_bloat.py: Make resource_sizes.py diffs a bit more readable

Example output:
    For an explanation of these metrics, see:
    https://chromium.googlesource.com/chromium/src/+/master/docs/speed/binary_size/metrics.md#Metrics-for-Android

    Specifics:
          +777,299 bytes normalized apk size
               -34 zip entries file count
    InstallSize:
        +3,324,232 bytes APK size
       +875,238.32 bytes Estimated installed size
    InstallBreakdown (+877,390.32 bytes):
           +14,290 bytes Native resources (no l10n) size
          -114,080 bytes ICU (i18n library) data size
        +1,984,772 bytes unwind_cfi (dev and canary only) size
           +13,250 bytes Non-compiled Android resources size
           +69,159 bytes V8 Snapshots size
    Dex:
              +996 entries fields
            +2,148 entries methods

    MonochromePublic.apk_Specifics normalized apk size=777299

Bug:  702625 
Change-Id: Ib48b2e35633ba9b11facc74b47aa927758afeac5
Reviewed-on: https://chromium-review.googlesource.com/1115463
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570631}
[modify] https://crrev.com/b5087d3b967ee8570cafb1c696f14ab258c2e47f/tools/binary_size/diagnose_bloat.py
[modify] https://crrev.com/b5087d3b967ee8570cafb1c696f14ab258c2e47f/tools/binary_size/trybot_commit_size_checker.py

Project Member

Comment 50 by bugdroid1@chromium.org, Jun 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f248c98b766e21597b584faef1dee3b6f66137f8

commit f248c98b766e21597b584faef1dee3b6f66137f8
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed Jun 27 19:39:24 2018

SuperSize: Sort padding-only symbols at the end for diffs

The "overhead" symbols are often larger than most other individual symbols in a
diff, but are completely unactionable. This moves them to the bottom of
a diff so that they draw less attention.

Bug:  702625 
Change-Id: Iddb4f2a75a8807cafce62e223a64a69886f1d0b2
Reviewed-on: https://chromium-review.googlesource.com/1116071
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570860}
[modify] https://crrev.com/f248c98b766e21597b584faef1dee3b6f66137f8/tools/binary_size/libsupersize/integration_test.py
[modify] https://crrev.com/f248c98b766e21597b584faef1dee3b6f66137f8/tools/binary_size/libsupersize/models.py
[modify] https://crrev.com/f248c98b766e21597b584faef1dee3b6f66137f8/tools/binary_size/libsupersize/testdata/Diff_Basic.golden

Blockedon: 860360
Blockedon: -860360
Project Member

Comment 53 by bugdroid1@chromium.org, Aug 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/388ad143e27333453092c76b46e940c30f12350e

commit 388ad143e27333453092c76b46e940c30f12350e
Author: Takuto Ikuta <tikuta@chromium.org>
Date: Thu Aug 02 18:29:11 2018

Use no_symbols config for android-binary-size builder

This improves link time of binaries.

Bug: 794423,  702625 
Change-Id: Ib82cd52851339936881c989282bb41a349e769bc
Reviewed-on: https://chromium-review.googlesource.com/1154771
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580256}
[modify] https://crrev.com/388ad143e27333453092c76b46e940c30f12350e/tools/mb/mb_config.pyl

Blockedon: 873043
Owner: estevenson@chromium.org
Status: Started (was: Assigned)
Going to take this over the finish line. Things to do before we make this non-experimental (the last two we can omit if they turn out to be difficult):

* Add static initializer target (done, https://chromium-review.googlesource.com/c/chromium/tools/build/+/1204792)
* Add a check for the .dex method count increase
* Add a check to ensure large, uncompressed .pak files aren't added
* Add a link in the trybot results to an archived supersize ui page
* Add a check for unused JNI
* Add a check for added non-.rodata kConstant 
Project Member

Comment 56 by bugdroid1@chromium.org, Sep 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0e9cb2681888d293a4a5e12cdd51e9bf4991a620

commit 0e9cb2681888d293a4a5e12cdd51e9bf4991a620
Author: Eric Stevenson <estevenson@chromium.org>
Date: Mon Sep 17 19:22:16 2018

[Supersize] Add a flag for uncompressed .pak files.

This CL adds a new flag for non-locale .pak files that aren't
compressed. This is exposed in the UI as a highlight option and will be
used by the size trybot.

This CL also changes the default unit selection to be KiB.

Bug:  702625 
Change-Id: I7385b2b0c6897bb8c79cfd93eaa446789fd515a9
Reviewed-on: https://chromium-review.googlesource.com/1225593
Reviewed-by: Peter Wen <wnwen@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591773}
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/archive.py
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/integration_test.py
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/models.py
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/static/index.html
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/static/infocard-ui.js
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/static/shared.js
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/static/state.js
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/static/tree-worker.js
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/testdata/Archive_Apk.golden
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/testdata/Archive_Pak_Files.golden
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/testdata/Diff_Basic.golden
[add] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/testdata/mock_apk/assets/resources.pak
[modify] https://crrev.com/0e9cb2681888d293a4a5e12cdd51e9bf4991a620/tools/binary_size/libsupersize/testdata/mock_source_directory/out/Release/size-info/test.apk.pak.info

Blockedon: 888863
Blockedon: 888857
Project Member

Comment 59 by bugdroid1@chromium.org, Sep 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6c1587f4b1b45fdb672867ec063b19b33edbc027

commit 6c1587f4b1b45fdb672867ec063b19b33edbc027
Author: Eric Stevenson <estevenson@chromium.org>
Date: Tue Sep 25 14:49:42 2018

[size trybot]: Add extra size regression checks and restructure file.

To avoid running Supersize diff twice, trybot_commit_size_checker.py
now performs all size analysis and outputs results to separate files
that can be read by bot steps.

This CL adds checks for uncompressed pak files and dex method counts,
and also adds support for generating Supersize HTML Reports.

Bug:  702625 
Change-Id: I791fe749123c7dbe338ea6dc957a3a387be0d5bf
Reviewed-on: https://chromium-review.googlesource.com/1232018
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#593928}
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/diagnose_bloat.py
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/libsupersize/canned_queries.py
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/libsupersize/console.py
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/libsupersize/diff.py
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/libsupersize/html_report.py
[modify] https://crrev.com/6c1587f4b1b45fdb672867ec063b19b33edbc027/tools/binary_size/trybot_commit_size_checker.py

Project Member

Comment 60 by bugdroid1@chromium.org, Sep 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4

commit 68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4
Author: Eric Stevenson <estevenson@chromium.org>
Date: Tue Sep 25 15:04:36 2018

binary_size_trybot.py: Add additional checks and results.

This CL changes the way the helper trybot script is used. Now, the
helper script is given diff output paths and is in charge of creating
all diffs. The recipe simply exposes these output files in separate
steps, and checks one of the output paths for expected text to
determine whether or not an undocumented size increase exists.

Additionally, the bot now shows added/removed dex method names and
includes a check for uncompressed pak files and big jumps in the dex
method count.

Lastly, the recipe also includes a step that archives the .ndjson
report created by the trybot helper script and includes a link to the
report.

Bug:  702625 
Change-Id: Ic855213224f2c122d752756d7394c5f9419942ed
Reviewed-on: https://chromium-review.googlesource.com/1239256
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>

[modify] https://crrev.com/68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4/scripts/slave/README.recipes.md
[add] https://crrev.com/68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4/scripts/slave/recipes/binary_size_trybot.expected/unexpected_increase.json
[modify] https://crrev.com/68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/68d8673b1b46a7b69b9e4b3fbbf9b7ed588506a4/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 62 by bugdroid1@chromium.org, Sep 27

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/0986398044ac722b668c1e19e02ba4963806ac85

commit 0986398044ac722b668c1e19e02ba4963806ac85
Author: Eric Stevenson <estevenson@chromium.org>
Date: Thu Sep 27 04:12:38 2018

binary_size_trybot.py: Fix upload path collisions.

Uploads fail when the trybot runs multiple times on the same CL since
the revision didn't change. This CL changes the recipe to use the
build number instead.

Additionally, the upload paths now have dates attached to make
deletion easier if necessary in the future.

Bug:  702625 
Change-Id: Ica27da3fc27c223f9a82b7a41b2a3c8f74e2d3f3
Reviewed-on: https://chromium-review.googlesource.com/1246996
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Eric Stevenson <estevenson@chromium.org>

[modify] https://crrev.com/0986398044ac722b668c1e19e02ba4963806ac85/scripts/slave/README.recipes.md
[modify] https://crrev.com/0986398044ac722b668c1e19e02ba4963806ac85/scripts/slave/recipes/binary_size_trybot.expected/unexpected_increase.json
[modify] https://crrev.com/0986398044ac722b668c1e19e02ba4963806ac85/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[modify] https://crrev.com/0986398044ac722b668c1e19e02ba4963806ac85/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 63 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/tools/build/+/89f534b2289b253beb4d742ed039a3a557eefc89

commit 89f534b2289b253beb4d742ed039a3a557eefc89
Author: Eric Stevenson <estevenson@chromium.org>
Date: Fri Sep 28 15:31:42 2018

binary_size_trybot.py: Tweak presentation of recipe results.

* Include the normalized apk size in step_text (good for at-a-glance)
* Change failure log to make it more obvious which log contains the
  regression summary
* Make the checking step fail as well so it's obvious which step failed

Bug:  702625 
Change-Id: I134478ff74b4a428954d8796b51f0bdc7ee6afd7
Reviewed-on: https://chromium-review.googlesource.com/1249684
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Eric Stevenson <estevenson@chromium.org>

[modify] https://crrev.com/89f534b2289b253beb4d742ed039a3a557eefc89/scripts/slave/recipes/binary_size_trybot.expected/unexpected_increase.json
[modify] https://crrev.com/89f534b2289b253beb4d742ed039a3a557eefc89/scripts/slave/recipes/binary_size_trybot.expected/normal_build.json
[add] https://crrev.com/89f534b2289b253beb4d742ed039a3a557eefc89/scripts/slave/recipes/binary_size_trybot.expected/malformed_results_json.json
[modify] https://crrev.com/89f534b2289b253beb4d742ed039a3a557eefc89/scripts/slave/recipes/binary_size_trybot.py

Project Member

Comment 64 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f4097091174e94e2b7f996147fbc49da49d3ada4

commit f4097091174e94e2b7f996147fbc49da49d3ada4
Author: Eric Stevenson <estevenson@chromium.org>
Date: Fri Sep 28 15:40:45 2018

[size trybot] Filter guidance for non-regressions.

This CL filters the output that explains dealing with size regressions
when no size regression occured.

Also adds normalized_apk_size to the output JSON.

Bug:  702625 
Change-Id: I38be87bdd6b4fb74e179043cabd42dfcbc93473f
Reviewed-on: https://chromium-review.googlesource.com/1249883
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595103}
[modify] https://crrev.com/f4097091174e94e2b7f996147fbc49da49d3ada4/tools/binary_size/trybot_commit_size_checker.py

Project Member

Comment 65 by bugdroid1@chromium.org, Oct 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d7bc2a5f0001eb38542cc0efee613c99069321a4

commit d7bc2a5f0001eb38542cc0efee613c99069321a4
Author: Eric Stevenson <estevenson@chromium.org>
Date: Mon Oct 01 15:53:03 2018

[Android CQ]: Enable binary size trybot.

The android-binary-size bot blocks CLs that do one of the following:
  * Increase normalized_apk_size > 16 kb
  * Add more than 50 Java methods
  * Add/increase the size of an uncompressed pak > 1 kb

The trybot emits useful debugging information as bot steps and
includes a link to an interactive Supersize HTML report.

These checks are skipped for autorollers and for CLs with
"Binary-Size:" in the commit message.

Bug:  702625 
Change-Id: I3e9dee26e96fd0d1cfe5f86ec1b8c717fa1abf2f
Reviewed-on: https://chromium-review.googlesource.com/1254502
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Eric Stevenson <estevenson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595460}
[modify] https://crrev.com/d7bc2a5f0001eb38542cc0efee613c99069321a4/infra/config/branch/cq.cfg

Status: Fixed (was: Started)
The bot has been enabled for a couple of days, so I think we're fine to mark this as fixed! Woohoo!
Blocking: 888863
Blockedon: -888863
Blocking: 888857
Blockedon: -888857

Sign in to add a comment