Commit 52f53335 authored by Weilun Shi's avatar Weilun Shi Committed by Commit Bot

Re-add --inputs to generate_expired_histograms_array

Add back --inputs to the generate_expired_histograms_array script. A
follow up cl will add an assertion in the _GenerateFile function to
make sure that the input always keeps in sync the most updated list
of metadata description.

TBR=rohitrao

Bug: 1133102
Change-Id: Ic4a28adf60f9a5cf9331414defedb5bd91e99d8f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2444449
Commit-Queue: Nico Weber <thakis@chromium.org>
Commit-Queue: Weilun Shi <sweilun@chromium.org>
Reviewed-by: default avatarSteven Holte <holte@chromium.org>
Reviewed-by: default avatarDirk Pranke <dpranke@google.com>
Reviewed-by: default avatarNico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813014}
parent 2c52efb8
...@@ -29,6 +29,123 @@ source_set("test_support") { ...@@ -29,6 +29,123 @@ source_set("test_support") {
} }
generate_expired_histograms_array("expired_histograms_array") { generate_expired_histograms_array("expired_histograms_array") {
inputs = [
"//tools/metrics/histograms/histograms.xml",
"//tools/metrics/histograms/histograms_xml/accessibility/histograms.xml",
"//tools/metrics/histograms/histograms_xml/android/histograms.xml",
"//tools/metrics/histograms/histograms_xml/apps/histograms.xml",
"//tools/metrics/histograms/histograms_xml/arc/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ash/histograms.xml",
"//tools/metrics/histograms/histograms_xml/assistant/histograms.xml",
"//tools/metrics/histograms/histograms_xml/auth/histograms.xml",
"//tools/metrics/histograms/histograms_xml/auto/histograms.xml",
"//tools/metrics/histograms/histograms_xml/autofill/histograms.xml",
"//tools/metrics/histograms/histograms_xml/back_forward_cache/histograms.xml",
"//tools/metrics/histograms/histograms_xml/background/histograms.xml",
"//tools/metrics/histograms/histograms_xml/blink/histograms.xml",
"//tools/metrics/histograms/histograms_xml/bluetooth/histograms.xml",
"//tools/metrics/histograms/histograms_xml/browser/histograms.xml",
"//tools/metrics/histograms/histograms_xml/chrome/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cloud/histograms.xml",
"//tools/metrics/histograms/histograms_xml/compositing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/content/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cookie/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cras/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cros/histograms.xml",
"//tools/metrics/histograms/histograms_xml/crostini/histograms.xml",
"//tools/metrics/histograms/histograms_xml/crypt/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cryptohome/histograms.xml",
"//tools/metrics/histograms/histograms_xml/custom_tabs/histograms.xml",
"//tools/metrics/histograms/histograms_xml/data_reduction_proxy/histograms.xml",
"//tools/metrics/histograms/histograms_xml/dev/histograms.xml",
"//tools/metrics/histograms/histograms_xml/diagnostics/histograms.xml",
"//tools/metrics/histograms/histograms_xml/direct/histograms.xml",
"//tools/metrics/histograms/histograms_xml/disk/histograms.xml",
"//tools/metrics/histograms/histograms_xml/dom/histograms.xml",
"//tools/metrics/histograms/histograms_xml/download/histograms.xml",
"//tools/metrics/histograms/histograms_xml/enterprise/histograms.xml",
"//tools/metrics/histograms/histograms_xml/event/histograms.xml",
"//tools/metrics/histograms/histograms_xml/extension/histograms.xml",
"//tools/metrics/histograms/histograms_xml/extensions/histograms.xml",
"//tools/metrics/histograms/histograms_xml/file/histograms.xml",
"//tools/metrics/histograms/histograms_xml/fingerprint/histograms.xml",
"//tools/metrics/histograms/histograms_xml/gcm/histograms.xml",
"//tools/metrics/histograms/histograms_xml/geolocation/histograms.xml",
"//tools/metrics/histograms/histograms_xml/google/histograms.xml",
"//tools/metrics/histograms/histograms_xml/gpu/histograms.xml",
"//tools/metrics/histograms/histograms_xml/histogram_suffixes_list.xml",
"//tools/metrics/histograms/histograms_xml/history/histograms.xml",
"//tools/metrics/histograms/histograms_xml/holding_space/histograms.xml",
"//tools/metrics/histograms/histograms_xml/image/histograms.xml",
"//tools/metrics/histograms/histograms_xml/input/histograms.xml",
"//tools/metrics/histograms/histograms_xml/installer/histograms.xml",
"//tools/metrics/histograms/histograms_xml/instant/histograms.xml",
"//tools/metrics/histograms/histograms_xml/interstitial/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ios/histograms.xml",
"//tools/metrics/histograms/histograms_xml/local/histograms.xml",
"//tools/metrics/histograms/histograms_xml/login/histograms.xml",
"//tools/metrics/histograms/histograms_xml/media/histograms.xml",
"//tools/metrics/histograms/histograms_xml/memory/histograms.xml",
"//tools/metrics/histograms/histograms_xml/mobile/histograms.xml",
"//tools/metrics/histograms/histograms_xml/multi_device/histograms.xml",
"//tools/metrics/histograms/histograms_xml/na_cl/histograms.xml",
"//tools/metrics/histograms/histograms_xml/navigation/histograms.xml",
"//tools/metrics/histograms/histograms_xml/net/histograms.xml",
"//tools/metrics/histograms/histograms_xml/network/histograms.xml",
"//tools/metrics/histograms/histograms_xml/new_tab_page/histograms.xml",
"//tools/metrics/histograms/histograms_xml/notifications/histograms.xml",
"//tools/metrics/histograms/histograms_xml/offline/histograms.xml",
"//tools/metrics/histograms/histograms_xml/omnibox/histograms.xml",
"//tools/metrics/histograms/histograms_xml/oobe/histograms.xml",
"//tools/metrics/histograms/histograms_xml/optimization/histograms.xml",
"//tools/metrics/histograms/histograms_xml/others/histograms.xml",
"//tools/metrics/histograms/histograms_xml/page/histograms.xml",
"//tools/metrics/histograms/histograms_xml/password/histograms.xml",
"//tools/metrics/histograms/histograms_xml/payment/histograms.xml",
"//tools/metrics/histograms/histograms_xml/permissions/histograms.xml",
"//tools/metrics/histograms/histograms_xml/platform/histograms.xml",
"//tools/metrics/histograms/histograms_xml/plugin/histograms.xml",
"//tools/metrics/histograms/histograms_xml/power/histograms.xml",
"//tools/metrics/histograms/histograms_xml/print/histograms.xml",
"//tools/metrics/histograms/histograms_xml/printing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/profile/histograms.xml",
"//tools/metrics/histograms/histograms_xml/quickoffice/histograms.xml",
"//tools/metrics/histograms/histograms_xml/quota/histograms.xml",
"//tools/metrics/histograms/histograms_xml/renderer/histograms.xml",
"//tools/metrics/histograms/histograms_xml/renderer4/histograms.xml",
"//tools/metrics/histograms/histograms_xml/safe_browsing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sb_client/histograms.xml",
"//tools/metrics/histograms/histograms_xml/search/histograms.xml",
"//tools/metrics/histograms/histograms_xml/security/histograms.xml",
"//tools/metrics/histograms/histograms_xml/service/histograms.xml",
"//tools/metrics/histograms/histograms_xml/session/histograms.xml",
"//tools/metrics/histograms/histograms_xml/settings/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sharing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/signin/histograms.xml",
"//tools/metrics/histograms/histograms_xml/simple/histograms.xml",
"//tools/metrics/histograms/histograms_xml/smart/histograms.xml",
"//tools/metrics/histograms/histograms_xml/software/histograms.xml",
"//tools/metrics/histograms/histograms_xml/stability/histograms.xml",
"//tools/metrics/histograms/histograms_xml/startup/histograms.xml",
"//tools/metrics/histograms/histograms_xml/storage/histograms.xml",
"//tools/metrics/histograms/histograms_xml/subresource/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sync/histograms.xml",
"//tools/metrics/histograms/histograms_xml/tab/histograms.xml",
"//tools/metrics/histograms/histograms_xml/translate/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ukm/histograms.xml",
"//tools/metrics/histograms/histograms_xml/uma/histograms.xml",
"//tools/metrics/histograms/histograms_xml/update_engine/histograms.xml",
"//tools/metrics/histograms/histograms_xml/v8/histograms.xml",
"//tools/metrics/histograms/histograms_xml/variations/histograms.xml",
"//tools/metrics/histograms/histograms_xml/video_tutorials/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_apk/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_audio/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_core/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_rtc/histograms.xml",
"//tools/metrics/histograms/histograms_xml/windows/histograms.xml",
"//tools/metrics/histograms/histograms_xml/obsolete_histograms.xml",
"//tools/metrics/histograms/enums.xml",
]
namespace = "chrome_metrics" namespace = "chrome_metrics"
header_filename = "expired_histograms_array.h" header_filename = "expired_histograms_array.h"
major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE" major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE"
......
...@@ -6,6 +6,9 @@ ...@@ -6,6 +6,9 @@
# produce an output file and a source_set to build it. # produce an output file and a source_set to build it.
# #
# Parameters: # Parameters:
# inputs:
# List of file name to read. Each file should be a .xml file with
# histogram descriptions.
# #
# namespace (optional): # namespace (optional):
# Namespace in which the generated code should be scoped. If left empty, # Namespace in which the generated code should be scoped. If left empty,
...@@ -27,6 +30,8 @@ template("generate_expired_histograms_array") { ...@@ -27,6 +30,8 @@ template("generate_expired_histograms_array") {
script = "//tools/metrics/histograms/generate_expired_histograms_array.py" script = "//tools/metrics/histograms/generate_expired_histograms_array.py"
outputs = [ header_filename ] outputs = [ header_filename ]
inputs = invoker.inputs
major_branch_date_filepath = invoker.major_branch_date_filepath major_branch_date_filepath = invoker.major_branch_date_filepath
milestone_filepath = invoker.milestone_filepath milestone_filepath = invoker.milestone_filepath
...@@ -41,6 +46,6 @@ template("generate_expired_histograms_array") { ...@@ -41,6 +46,6 @@ template("generate_expired_histograms_array") {
"-H" + rebase_path(header_filename, root_gen_dir), "-H" + rebase_path(header_filename, root_gen_dir),
"-d" + rebase_path(major_branch_date_filepath, root_build_dir), "-d" + rebase_path(major_branch_date_filepath, root_build_dir),
"-m" + rebase_path(milestone_filepath, root_build_dir), "-m" + rebase_path(milestone_filepath, root_build_dir),
] ] + rebase_path(inputs, root_build_dir)
} }
} }
...@@ -282,6 +282,123 @@ source_set("eg2_tests") { ...@@ -282,6 +282,123 @@ source_set("eg2_tests") {
import("//components/metrics/generate_expired_histograms_array.gni") import("//components/metrics/generate_expired_histograms_array.gni")
generate_expired_histograms_array("expired_histograms_array") { generate_expired_histograms_array("expired_histograms_array") {
inputs = [
"//tools/metrics/histograms/histograms.xml",
"//tools/metrics/histograms/histograms_xml/accessibility/histograms.xml",
"//tools/metrics/histograms/histograms_xml/android/histograms.xml",
"//tools/metrics/histograms/histograms_xml/apps/histograms.xml",
"//tools/metrics/histograms/histograms_xml/arc/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ash/histograms.xml",
"//tools/metrics/histograms/histograms_xml/assistant/histograms.xml",
"//tools/metrics/histograms/histograms_xml/auth/histograms.xml",
"//tools/metrics/histograms/histograms_xml/auto/histograms.xml",
"//tools/metrics/histograms/histograms_xml/autofill/histograms.xml",
"//tools/metrics/histograms/histograms_xml/back_forward_cache/histograms.xml",
"//tools/metrics/histograms/histograms_xml/background/histograms.xml",
"//tools/metrics/histograms/histograms_xml/blink/histograms.xml",
"//tools/metrics/histograms/histograms_xml/bluetooth/histograms.xml",
"//tools/metrics/histograms/histograms_xml/browser/histograms.xml",
"//tools/metrics/histograms/histograms_xml/chrome/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cloud/histograms.xml",
"//tools/metrics/histograms/histograms_xml/compositing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/content/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cookie/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cras/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cros/histograms.xml",
"//tools/metrics/histograms/histograms_xml/crostini/histograms.xml",
"//tools/metrics/histograms/histograms_xml/crypt/histograms.xml",
"//tools/metrics/histograms/histograms_xml/cryptohome/histograms.xml",
"//tools/metrics/histograms/histograms_xml/custom_tabs/histograms.xml",
"//tools/metrics/histograms/histograms_xml/data_reduction_proxy/histograms.xml",
"//tools/metrics/histograms/histograms_xml/dev/histograms.xml",
"//tools/metrics/histograms/histograms_xml/diagnostics/histograms.xml",
"//tools/metrics/histograms/histograms_xml/direct/histograms.xml",
"//tools/metrics/histograms/histograms_xml/disk/histograms.xml",
"//tools/metrics/histograms/histograms_xml/dom/histograms.xml",
"//tools/metrics/histograms/histograms_xml/download/histograms.xml",
"//tools/metrics/histograms/histograms_xml/enterprise/histograms.xml",
"//tools/metrics/histograms/histograms_xml/event/histograms.xml",
"//tools/metrics/histograms/histograms_xml/extension/histograms.xml",
"//tools/metrics/histograms/histograms_xml/extensions/histograms.xml",
"//tools/metrics/histograms/histograms_xml/file/histograms.xml",
"//tools/metrics/histograms/histograms_xml/fingerprint/histograms.xml",
"//tools/metrics/histograms/histograms_xml/gcm/histograms.xml",
"//tools/metrics/histograms/histograms_xml/geolocation/histograms.xml",
"//tools/metrics/histograms/histograms_xml/google/histograms.xml",
"//tools/metrics/histograms/histograms_xml/gpu/histograms.xml",
"//tools/metrics/histograms/histograms_xml/histogram_suffixes_list.xml",
"//tools/metrics/histograms/histograms_xml/history/histograms.xml",
"//tools/metrics/histograms/histograms_xml/holding_space/histograms.xml",
"//tools/metrics/histograms/histograms_xml/image/histograms.xml",
"//tools/metrics/histograms/histograms_xml/input/histograms.xml",
"//tools/metrics/histograms/histograms_xml/installer/histograms.xml",
"//tools/metrics/histograms/histograms_xml/instant/histograms.xml",
"//tools/metrics/histograms/histograms_xml/interstitial/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ios/histograms.xml",
"//tools/metrics/histograms/histograms_xml/local/histograms.xml",
"//tools/metrics/histograms/histograms_xml/login/histograms.xml",
"//tools/metrics/histograms/histograms_xml/media/histograms.xml",
"//tools/metrics/histograms/histograms_xml/memory/histograms.xml",
"//tools/metrics/histograms/histograms_xml/mobile/histograms.xml",
"//tools/metrics/histograms/histograms_xml/multi_device/histograms.xml",
"//tools/metrics/histograms/histograms_xml/na_cl/histograms.xml",
"//tools/metrics/histograms/histograms_xml/navigation/histograms.xml",
"//tools/metrics/histograms/histograms_xml/net/histograms.xml",
"//tools/metrics/histograms/histograms_xml/network/histograms.xml",
"//tools/metrics/histograms/histograms_xml/new_tab_page/histograms.xml",
"//tools/metrics/histograms/histograms_xml/notifications/histograms.xml",
"//tools/metrics/histograms/histograms_xml/offline/histograms.xml",
"//tools/metrics/histograms/histograms_xml/omnibox/histograms.xml",
"//tools/metrics/histograms/histograms_xml/oobe/histograms.xml",
"//tools/metrics/histograms/histograms_xml/optimization/histograms.xml",
"//tools/metrics/histograms/histograms_xml/others/histograms.xml",
"//tools/metrics/histograms/histograms_xml/page/histograms.xml",
"//tools/metrics/histograms/histograms_xml/password/histograms.xml",
"//tools/metrics/histograms/histograms_xml/payment/histograms.xml",
"//tools/metrics/histograms/histograms_xml/permissions/histograms.xml",
"//tools/metrics/histograms/histograms_xml/platform/histograms.xml",
"//tools/metrics/histograms/histograms_xml/plugin/histograms.xml",
"//tools/metrics/histograms/histograms_xml/power/histograms.xml",
"//tools/metrics/histograms/histograms_xml/print/histograms.xml",
"//tools/metrics/histograms/histograms_xml/printing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/profile/histograms.xml",
"//tools/metrics/histograms/histograms_xml/quickoffice/histograms.xml",
"//tools/metrics/histograms/histograms_xml/quota/histograms.xml",
"//tools/metrics/histograms/histograms_xml/renderer/histograms.xml",
"//tools/metrics/histograms/histograms_xml/renderer4/histograms.xml",
"//tools/metrics/histograms/histograms_xml/safe_browsing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sb_client/histograms.xml",
"//tools/metrics/histograms/histograms_xml/search/histograms.xml",
"//tools/metrics/histograms/histograms_xml/security/histograms.xml",
"//tools/metrics/histograms/histograms_xml/service/histograms.xml",
"//tools/metrics/histograms/histograms_xml/session/histograms.xml",
"//tools/metrics/histograms/histograms_xml/settings/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sharing/histograms.xml",
"//tools/metrics/histograms/histograms_xml/signin/histograms.xml",
"//tools/metrics/histograms/histograms_xml/simple/histograms.xml",
"//tools/metrics/histograms/histograms_xml/smart/histograms.xml",
"//tools/metrics/histograms/histograms_xml/software/histograms.xml",
"//tools/metrics/histograms/histograms_xml/stability/histograms.xml",
"//tools/metrics/histograms/histograms_xml/startup/histograms.xml",
"//tools/metrics/histograms/histograms_xml/storage/histograms.xml",
"//tools/metrics/histograms/histograms_xml/subresource/histograms.xml",
"//tools/metrics/histograms/histograms_xml/sync/histograms.xml",
"//tools/metrics/histograms/histograms_xml/tab/histograms.xml",
"//tools/metrics/histograms/histograms_xml/translate/histograms.xml",
"//tools/metrics/histograms/histograms_xml/ukm/histograms.xml",
"//tools/metrics/histograms/histograms_xml/uma/histograms.xml",
"//tools/metrics/histograms/histograms_xml/update_engine/histograms.xml",
"//tools/metrics/histograms/histograms_xml/v8/histograms.xml",
"//tools/metrics/histograms/histograms_xml/variations/histograms.xml",
"//tools/metrics/histograms/histograms_xml/video_tutorials/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_apk/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_audio/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_core/histograms.xml",
"//tools/metrics/histograms/histograms_xml/web_rtc/histograms.xml",
"//tools/metrics/histograms/histograms_xml/windows/histograms.xml",
"//tools/metrics/histograms/histograms_xml/obsolete_histograms.xml",
"//tools/metrics/histograms/enums.xml",
]
namespace = "" namespace = ""
header_filename = "ios_expired_histograms_array.h" header_filename = "ios_expired_histograms_array.h"
major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE" major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE"
......
...@@ -233,7 +233,15 @@ def _GenerateFile(arguments): ...@@ -233,7 +233,15 @@ def _GenerateFile(arguments):
arguments.major_branch_date_filepath: File path for base date. arguments.major_branch_date_filepath: File path for base date.
arguments.milestone_filepath: File path for milestone information. arguments.milestone_filepath: File path for milestone information.
""" """
descriptions = merge_xml.MergeFiles(histogram_paths.ALL_XMLS) # TODO(sweilun): Assert that the |--inputs| is the same as
# |histogram_paths.ALL_XMLS| to make sure we have the most updated list of
# histogram descriptions. Otherwise, inform the cl owner to update the
# --inputs.
# assert histogram_paths.ALL_XMLS == arguments.inputs, "The --inputs is not "
# "sync with the most updated list of xmls. Please update the inputs in "
# "chrome/browser/metrics/BUILD.gn and ios/chrome/browser/metrics/BUILD.gn."
descriptions = merge_xml.MergeFiles(arguments.inputs)
with open(arguments.major_branch_date_filepath, "r") as date_file: with open(arguments.major_branch_date_filepath, "r") as date_file:
branch_file_content = date_file.read() branch_file_content = date_file.read()
with open(arguments.milestone_filepath, "r") as milestone_file: with open(arguments.milestone_filepath, "r") as milestone_file:
...@@ -278,6 +286,10 @@ def _ParseArguments(): ...@@ -278,6 +286,10 @@ def _ParseArguments():
"-m", "-m",
required=True, required=True,
help="A path to the file with the milestone information.") help="A path to the file with the milestone information.")
arg_parser.add_argument(
"inputs",
nargs="+",
help="Paths to .xml files with histogram descriptions.")
return arg_parser.parse_args() return arg_parser.parse_args()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment