Closed Ahrotahn closed 3 weeks ago
Google's tarball builder is still behind, so the tarball won't be available for a while: https://luci-scheduler.appspot.com/jobs/infra/publish_tarball
@tsuliwaensis You should be able to swap back to the main repo after this is merged if you still had my repo set up in your build.
The updated patch for gsutil.py
does not work on windows:
Traceback (most recent call last):
File "c:\ucw\build\src\uc_staging\depot_tools\metrics.py", line 302, in print_notice_and_exit
yield
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 4649, in <module>
sys.exit(main(sys.argv[1:]))
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 4635, in main
return dispatcher.execute(OptionParser(), argv)
File "c:\ucw\build\src\uc_staging\depot_tools\subcommand.py", line 254, in execute
return command(parser, args[1:])
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 3988, in CMDsync
ret = client.RunOnDeps('update', args)
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2446, in RunOnDeps
work_queue.flush(revision_overrides,
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 1026, in flush
reraise(e[0], e[1], e[2])
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 53, in reraise
raise value
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 1105, in run
self.item.run(*self.args, **self.kwargs)
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2732, in run
self.DownloadGoogleStorage()
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2837, in DownloadGoogleStorage
raise Exception(f'{code}: {err}')
Exception: 1: File "c:\ucw\build\src\uc_staging\depot_tools\gsutil.py", line 143
""" % (VERSION, VERSION) + """
^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 17-19: truncated \uXXXX escape
The patched section looks like this:
subprocess.run(['git', 'apply'], input="""\
--- a/build\src\uc_staging/depot_tools/external_bin/gsutil/gsutil_%s/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py
+++ b/build\src\uc_staging/depot_tools/external_bin/gsutil/gsutil_%s/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py
@@ -143,7 +143,7 @@ def __str__(self):
# Attributes that are reserved by a class definition that
# may not be used by either Enum or Message class definitions.
_RESERVED_ATTRIBUTE_NAMES = frozenset(
- ['__module__', '__doc__', '__qualname__'])
+ ['__module__', '__doc__', '__qualname__', '__static_attributes__', '__firstlineno__'])
""" % (VERSION, VERSION) + """
_POST_INIT_FIELD_ATTRIBUTE_NAMES = frozenset(
['name',
""", check=True, universal_newlines=True)
I think the problem is caused by the backslashes in the file path and I think we had a similar problem when initially introducing the clone script.
I manually fixed the backslashes before gsync executes the patch, but the patch did not apply:
Traceback (most recent call last):
File "c:\ucw\build\src\uc_staging\depot_tools\metrics.py", line 302, in print_notice_and_exit
yield
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 4649, in <module>
sys.exit(main(sys.argv[1:]))
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 4635, in main
return dispatcher.execute(OptionParser(), argv)
File "c:\ucw\build\src\uc_staging\depot_tools\subcommand.py", line 254, in execute
return command(parser, args[1:])
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 3988, in CMDsync
ret = client.RunOnDeps('update', args)
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2446, in RunOnDeps
work_queue.flush(revision_overrides,
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 1026, in flush
reraise(e[0], e[1], e[2])
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 53, in reraise
raise value
File "c:\ucw\build\src\uc_staging\depot_tools\gclient_utils.py", line 1105, in run
self.item.run(*self.args, **self.kwargs)
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2732, in run
self.DownloadGoogleStorage()
File "c:\ucw\build\src\uc_staging\depot_tools\gclient.py", line 2837, in DownloadGoogleStorage
raise Exception(f'{code}: {err}')
Exception: 1: error: patch failed: build/src/uc_staging/depot_tools/external_bin/gsutil/gsutil_5.28/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py:143
error: build/src/uc_staging/depot_tools/external_bin/gsutil/gsutil_5.28/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py: patch does not apply
Traceback (most recent call last):
File "c:\ucw\build\src\uc_staging\depot_tools\gsutil.py", line 332, in <module>
sys.exit(main())
File "c:\ucw\build\src\uc_staging\depot_tools\gsutil.py", line 328, in main
return run_gsutil(args.target, args.args, clean=args.clean)
File "c:\ucw\build\src\uc_staging\depot_tools\gsutil.py", line 236, in run_gsutil
gsutil_bin = ensure_gsutil(VERSION, target, clean)
File "c:\ucw\build\src\uc_staging\depot_tools\gsutil.py", line 134, in ensure_gsutil
subprocess.run(['git', 'apply'], input="""\
File "C:\Program Files\Python310\lib\subprocess.py", line 526, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['git', 'apply']' returned non-zero exit status 1.
I manually patched the file which results in the following patch:
--- a/messages.py
+++ b/messages.py
@@ -143,7 +143,7 @@ class ValidationError(Error):
# Attributes that are reserved by a class definition that
# may not be used by either Enum or Message class definitions.
_RESERVED_ATTRIBUTE_NAMES = frozenset(
- ['__module__', '__doc__', '__qualname__'])
+ ['__module__', '__doc__', '__qualname__', '__static_attributes__', '__firstlineno__'])
_POST_INIT_FIELD_ATTRIBUTE_NAMES = frozenset(
['name',
The first line of the patch differs from the one executed by gsutil.py
=> @@ -143,7 +143,7 @@ class ValidationError(Error):
vs @@ -143,7 +143,7 @@ def __str__(self):
others noticed that (iranian people mostly ;-) ) and the solutions i found included installing very special fonts and configure them locally. That's why i asked, thanks fpr your answer :-) btw: https://fonts.google.com/noto/fonts?query=persian shows up only arabic fonts
@teeminus Does it apply if the backslashes are substituted in the clone script?:
--- a/utils/clone.py
+++ b/utils/clone.py
@@ -109,7 +109,8 @@ def clone(args): # pylint: disable=too-many-branches, too-many-statements
# Apply changes to gclient
run(['git', 'apply'],
input=Path(__file__).with_name('depot_tools.patch').read_text().replace(
- 'UC_OUT', str(args.output)).replace('UC_STAGING', str(ucstaging)),
+ 'UC_OUT', str(args.output)).replace('UC_STAGING',
+ str(ucstaging).replace("\\", "/")),
cwd=dtpath,
check=True,
universal_newlines=True)
If not then it might be a better idea to see if we can make the clone script manually set up the gsutils and apitools directories instead of patching them.
I'll check when compiling has succeeded and will report back 👍
portable linux build: the depot_tools.patch
lets the following line in my build.sh
fail (this is where the gn command is built):
./tools/gn/bootstrap/bootstrap.py -o out/Default/gn --skip-generate-buildfiles
with error message
/usr/bin/python3: can't open file '/repo/build/src/tools/gn/build/gen.py': [Errno 2] No such file or directory Traceback (most recent call last): File "/repo/build/src/./tools/gn/bootstrap/bootstrap.py", line 142, in <module> sys.exit(main(sys.argv[1:])) File "/repo/build/src/./tools/gn/bootstrap/bootstrap.py", line 121, in main subprocess.check_call(cmd) File "/usr/lib/python3.9/subprocess.py", line 373, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['/usr/bin/python3', '/repo/build/src/tools/gn/build/gen.py', '--no-last-commit-position', '--out-path=/repo/build/src/out/Release/gn_build']' returned non-zero exit status 2.
this does not happen when i revert the latest changes on depot_tools.patch
.
can that even be an aftereffect of the patched clone.py or so since there seems to be files in submodules missing?
Ok, I've removed the commit for that change so it doesn't hold up the update.
I'll make a separate PR with a different approach that might work out better.
@clickot That might be something else, this would only affect creating a clone not the build process afterwards (unless the clone failed and you tried to build with a partial clone?).
@Ahrotahn the portable linux build now starts properly. i still suspect that your patch did "something" to the gn tool handling but i saw no errors when clone.py executed.
clones, builds and runs fine for portable linux
What version of Python should one use to run the clone script, since version 3.13 causes errors
@tsuliwaensis I'll put up a new PR soon that should get 3.13 working using a different approach, but any version between 3.9 and 3.12 inclusive should work for now.
I am trying to move to git clone to get Chromium source, however issue mentioned in https://github.com/ungoogled-software/ungoogled-chromium/pull/2954#issuecomment-2241453278 came back, which is:
Unable to find libclang: "couldn't find any valid shared libraries matching: ['libclang.dylib'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [])"
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Is there any difference between tarball and the cloned source that may cause this?
I ran diff -qr
on the tarball and checkout to see the differences:
There's test data we don't clone and leftover Google internal directories, but the most interesting differences I put at the top. It seems that generating last_commit_position.h syncs the gn in uc_staging with the one in the source directory. See if making this change to the clone script creates a clone that you can build with:
--- a/utils/clone.py
+++ b/utils/clone.py
@@ -116,12 +116,17 @@
# gn requires full history to be able to generate last_commit_position.h
get_logger().info('Cloning gn')
+ gn_commit = re.search(r"gn_version': 'git_revision:([^']+)',",
+ Path(args.output / 'DEPS').read_text()).group(1)
+ if not gn_commit:
+ get_logger().error('Unable to obtain commit for gn checkout')
+ sys.exit(1)
if gnpath.exists():
run(['git', 'fetch'], cwd=gnpath, check=True)
- run(['git', 'reset', '--hard', 'FETCH_HEAD'], cwd=gnpath, check=True)
- run(['git', 'clean', '-ffdx'], cwd=gnpath, check=True)
else:
run(['git', 'clone', "https://gn.googlesource.com/gn", str(gnpath)], check=True)
+ run(['git', 'reset', '--hard', gn_commit], cwd=gnpath, check=True)
+ run(['git', 'clean', '-ffdx'], cwd=gnpath, check=True)
get_logger().info('Running gsync')
if args.custom_config:
That's the most obvious thing that stands out to me, so if that doesn't help then maybe there's a path difference I'm overlooking.
I ran
diff -qr
on the tarball and checkout to see the differences:output
Files tarball/gpu/config/gpu_lists_version.h and checkout/gpu/config/gpu_lists_version.h differ Files tarball/skia/ext/skia_commit_hash.h and checkout/skia/ext/skia_commit_hash.h differ Files tarball/tools/gn/bootstrap/last_commit_position.h and checkout/tools/gn/bootstrap/last_commit_position.h differ Files tarball/tools/gn/src/gn/function_toolchain.cc and checkout/tools/gn/src/gn/function_toolchain.cc differ Files tarball/tools/gn/src/gn/functions.cc and checkout/tools/gn/src/gn/functions.cc differ Files tarball/tools/gn/src/gn/rust_project_writer.cc and checkout/tools/gn/src/gn/rust_project_writer.cc differ Files tarball/tools/gn/src/gn/rust_project_writer_helpers_unittest.cc and checkout/tools/gn/src/gn/rust_project_writer_helpers_unittest.cc differ Files tarball/tools/gn/src/gn/scope.cc and checkout/tools/gn/src/gn/scope.cc differ Files tarball/tools/gn/src/gn/scope.h and checkout/tools/gn/src/gn/scope.h differ Files tarball/tools/gn/src/gn/scope_unittest.cc and checkout/tools/gn/src/gn/scope_unittest.cc differ Files tarball/tools/gn/src/gn/setup.cc and checkout/tools/gn/src/gn/setup.cc differ Files tarball/tools/gn/src/gn/target_generator.cc and checkout/tools/gn/src/gn/target_generator.cc differ Files tarball/tools/gn/src/gn/template.cc and checkout/tools/gn/src/gn/template.cc differ Files tarball/tools/gn/src/gn/value_extractors.cc and checkout/tools/gn/src/gn/value_extractors.cc differ Only in tarball/: clank Only in tarball/: internal Only in tarball/: ios_internal Only in tarball/: native_client Only in tarball/: signing_keys Only in tarball/: webkit Only in tarball/build/fuchsia: internal Only in tarball/chrome/app/theme/default_100_percent: google_chrome Only in tarball/chrome/app/theme/default_200_percent: google_chrome Only in tarball/chrome/app/theme: google_chrome Only in tarball/chrome/browser/enterprise/connectors: internal Only in tarball/chrome/browser/google: linkdoctor_internal Only in tarball/chrome/browser/media: engagement_internal Only in tarball/chrome/browser/nearby_sharing: internal Only in tarball/chrome/browser/request_header_integrity: internal Only in tarball/chrome/browser/resources/downloads: internal Only in tarball/chrome/browser/resources/preinstalled_web_apps: internal Only in tarball/chrome/browser/resources/settings: internal Only in tarball/chrome/browser/spellchecker: internal Only in tarball/chrome/browser: internal Only in tarball/chrome/browser: platform_experience Only in tarball/chrome/elevation_service: internal Only in tarball/chrome/installer/mac/third_party/xz: xz Only in tarball/chrome/installer/mac: internal Only in tarball/chrome/services/speech: internal Only in tarball/chrome/test/data/cast: cast_remoting_connector_fuzz_corpus Only in tarball/chrome/test/data/chromeos/app_mode/webstore/itemsnippet: icons Only in tarball/chrome/test/data/chromeos/app_mode/webstore: downloads Only in tarball/chrome/test/data/chromeos/app_mode/webstore: inlineinstall Only in tarball/chrome/test/data/chromeos/app_mode/webstore: update_check Only in tarball/chrome/test/data/chromeos/app_mode: apps_and_extensions Only in tarball/chrome/test/data/chromeos: 3p_diagnostics Only in tarball/chrome/test/data/chromeos: avatars Only in tarball/chrome/test/data/chromeos: demo_app Only in tarball/chrome/test/data/chromeos: drive Only in tarball/chrome/test/data/chromeos: enterprise Only in tarball/chrome/test/data/chromeos: file_manager Only in tarball/chrome/test/data/chromeos: liblouis_wasm Only in tarball/chrome/test/data/chromeos: screensaver Only in tarball/chrome/test/data/chromeos: virtual_keyboard Only in tarball/chrome/test/data/chromeos: wallpapers Only in tarball/chrome/test/data/chromeos: web_handwriting Only in tarball/chrome/test/data/media: html Only in tarball/chrome/test/data/media: media_preview Only in tarball/chrome/test/data/media: picture-in-picture Only in tarball/chrome/test/data/media: router Only in tarball/chrome/test/data/media: session Only in tarball/chrome/test/data/nacl: bad Only in tarball/chrome/test/data/nacl: crash Only in tarball/chrome/test/data/nacl: cross_origin Only in tarball/chrome/test/data/nacl: exit_status Only in tarball/chrome/test/data/nacl: extension_mime_handler Only in tarball/chrome/test/data/nacl: extension_validation_cache Only in tarball/chrome/test/data/nacl: irt_exception Only in tarball/chrome/test/data/nacl: manifest Only in tarball/chrome/test/data/nacl: manifest_file Only in tarball/chrome/test/data/nacl: pnacl_debug_url Only in tarball/chrome/test/data/nacl: pnacl_dyncode_syscall_disabled Only in tarball/chrome/test/data/nacl: pnacl_error_handling Only in tarball/chrome/test/data/nacl: pnacl_hw_eh_disabled Only in tarball/chrome/test/data/nacl: pnacl_nmf_options Only in tarball/chrome/test/data/nacl: pnacl_request_header Only in tarball/chrome/test/data/nacl: pnacl_url_loader Only in tarball/chrome/test/data/nacl: ppapi Only in tarball/chrome/test/data/nacl: ppapi_test_lib Only in tarball/chrome/test/data/nacl: progress_events Only in tarball/chrome/test/data/nacl: sysconf_nprocessors_onln Only in tarball/chrome/test/data/pdf: accessibility Only in tarball/chrome/test/data/pdf: extension_injects_iframe Only in tarball/chrome/test/data/pdf: extension_with_pdf Only in tarball/chrome/test/data/webui/chromeos/ash_common: post_message_api Only in tarball/chrome/test/data/webui/chromeos/ash_common: typescript_utils Only in tarball/chrome/test/data/webui/chromeos/nearby_share: shared Only in tarball/chrome/test/data/webui/chromeos/settings: app_management Only in tarball/chrome/test/data/webui/chromeos/settings: common Only in tarball/chrome/test/data/webui/chromeos/settings: controls Only in tarball/chrome/test/data/webui/chromeos/settings: crostini_page Only in tarball/chrome/test/data/webui/chromeos/settings: date_time_page Only in tarball/chrome/test/data/webui/chromeos/settings: device_page Only in tarball/chrome/test/data/webui/chromeos/settings: guest_os Only in tarball/chrome/test/data/webui/chromeos/settings: internet_page Only in tarball/chrome/test/data/webui/chromeos/settings: kerberos_page Only in tarball/chrome/test/data/webui/chromeos/settings: keyboard_shortcut_banner Only in tarball/chrome/test/data/webui/chromeos/settings: main_page_container Only in tarball/chrome/test/data/webui/chromeos/settings: multidevice_page Only in tarball/chrome/test/data/webui/chromeos/settings: nearby_share_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_a11y_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_about_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_apps_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_bluetooth_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_files_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_languages_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_people_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_printing_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_privacy_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_reset_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_search_page Only in tarball/chrome/test/data/webui/chromeos/settings: os_settings_main Only in tarball/chrome/test/data/webui/chromeos/settings: os_settings_menu Only in tarball/chrome/test/data/webui/chromeos/settings: os_settings_search_box Only in tarball/chrome/test/data/webui/chromeos/settings: os_settings_ui Only in tarball/chrome/test/data/webui/chromeos/settings: parental_controls_page Only in tarball/chrome/test/data/webui/chromeos/settings: personalization_page Only in tarball/chrome/test/data/webui/chromeos/settings: settings_scheduler_slider Only in tarball/chrome/test/data/webui/chromeos/settings: system_preferences_page Only in tarball/chrome/test/data/webui/chromeos: set_time_dialog Only in tarball/chrome/test/data/webui/chromeos: sys_internals Only in tarball/chrome/test/data/webui/cr_components/chromeos: bluetooth Only in tarball/chrome/test/data/webui/cr_components/chromeos: cellular_setup Only in tarball/chrome/test/data/webui/cr_components/chromeos: network_health Only in tarball/chrome/test/data/webui/cr_components/chromeos: traffic_counters Only in tarball/chrome/test/data/webui/history: history_clusters Only in tarball/chrome/test/data/webui/js: metrics_reporter Only in tarball/chrome/test/data/webui/lens: overlay Only in tarball/chrome/test/data/webui/lens: side_panel Only in tarball/chrome/test/data/webui/lens: utils Only in tarball/chrome/test/data/webui/side_panel/customize_chrome: wallpaper_search Only in tarball/chrome/test/data/webui/side_panel/read_anything: html Only in tarball/chrome/test/data/webui/side_panel: bookmarks Only in tarball/chrome/test/data/webui/side_panel: commerce Only in tarball/chrome/test/data/webui/side_panel: history_clusters Only in tarball/chrome/test/data/webui/side_panel: reading_list Only in tarball/chrome/test/data/webui: i18n_process_css_test.html Only in tarball/chrome/test/data: History Only in tarball/chrome/test/data: accessibility Only in tarball/chrome/test/data: android Only in tarball/chrome/test/data: app_deduplication_service Only in tarball/chrome/test/data: app_discovery_service Only in tarball/chrome/test/data: app_shim Only in tarball/chrome/test/data: apptest Only in tarball/chrome/test/data: arc_board_default_apps Only in tarball/chrome/test/data: arc_default_apps Only in tarball/chrome/test/data: arc_non_adaptive_default_apps Only in tarball/chrome/test/data: arc_overview_tracing Only in tarball/chrome/test/data: ash Only in tarball/chrome/test/data: autofill Only in tarball/chrome/test/data: automation Only in tarball/chrome/test/data: automation_proxy_snapshot Only in tarball/chrome/test/data: back_forward_cache Only in tarball/chrome/test/data: background_fetch Only in tarball/chrome/test/data: background_sync Only in tarball/chrome/test/data: banners Only in tarball/chrome/test/data: bookmark_html_reader Only in tarball/chrome/test/data: bookmarks Only in tarball/chrome/test/data: browsing_data Only in tarball/chrome/test/data: browsing_topics Only in tarball/chrome/test/data: bruschetta Only in tarball/chrome/test/data: capability_delegation Only in tarball/chrome/test/data: captive_portal Only in tarball/chrome/test/data: cart Only in tarball/chrome/test/data: chrome_endure Only in tarball/chrome/test/data: chromedriver Only in tarball/chrome/test/data: click_modifier Only in tarball/chrome/test/data: client_hints Only in tarball/chrome/test/data: companion_visual_query Only in tarball/chrome/test/data: components Only in tarball/chrome/test/data: compose Only in tarball/chrome/test/data: constrained_files Only in tarball/chrome/test/data: content Only in tarball/chrome/test/data: content_index Only in tarball/chrome/test/data: content_language Only in tarball/chrome/test/data: content_setting_bubble Only in tarball/chrome/test/data: continuous_search Only in tarball/chrome/test/data: controlled_frame Only in tarball/chrome/test/data: convert_dict Only in tarball/chrome/test/data: data_saver Only in tarball/chrome/test/data: data_use_measurement Only in tarball/chrome/test/data: device_id Only in tarball/chrome/test/data: devtools Only in tarball/chrome/test/data: diagnostics Only in tarball/chrome/test/data: dips Only in tarball/chrome/test/data: dlp Only in tarball/chrome/test/data: dom_automation Only in tarball/chrome/test/data: dom_checker Only in tarball/chrome/test/data: dom_distiller Only in tarball/chrome/test/data: downloads Only in tarball/chrome/test/data: drag_and_drop Only in tarball/chrome/test/data: dromaeo Only in tarball/chrome/test/data: durable Only in tarball/chrome/test/data: edge_database_reader Only in tarball/chrome/test/data: edge_profile Only in tarball/chrome/test/data: encoding_tests Only in tarball/chrome/test/data: enterprise Only in tarball/chrome/test/data: errorpage Only in tarball/chrome/test/data: extensions Only in tarball/chrome/test/data: fast_shutdown Only in tarball/chrome/test/data: fast_tab_close Only in tarball/chrome/test/data: favicon Only in tarball/chrome/test/data: feeds Only in tarball/chrome/test/data: fenced_frames Only in tarball/chrome/test/data: file_select_helper Only in tarball/chrome/test/data: find_in_page Only in tarball/chrome/test/data: firefox3_profile Only in tarball/chrome/test/data: firefox3_searchplugins Only in tarball/chrome/test/data: first_run Only in tarball/chrome/test/data: focus Only in tarball/chrome/test/data: focus_rings Only in tarball/chrome/test/data: frame_dom_access Only in tarball/chrome/test/data: frame_tree Only in tarball/chrome/test/data: fullscreen_keyboardlock Only in tarball/chrome/test/data: fullscreen_pointerlock Only in tarball/chrome/test/data: geolocation Only in tarball/chrome/test/data: google Only in tarball/chrome/test/data: gpu Only in tarball/chrome/test/data: hats Only in tarball/chrome/test/data: image_decoding Only in tarball/chrome/test/data: image_search Only in tarball/chrome/test/data: image_writer_private Only in tarball/chrome/test/data: import Only in tarball/chrome/test/data: indexeddb Only in tarball/chrome/test/data: inner_text Only in tarball/chrome/test/data: inspector Only in tarball/chrome/test/data: installer Only in tarball/chrome/test/data: intent_picker Only in tarball/chrome/test/data: interest_group Only in tarball/chrome/test/data: interstitial_page Only in tarball/chrome/test/data: lazyload Only in tarball/chrome/test/data: lens Only in tarball/chrome/test/data: load_image Only in tarball/chrome/test/data: login Only in tarball/chrome/test/data: mac_installer Only in tarball/chrome/test/data: magic_boost Only in tarball/chrome/test/data: mahi Only in tarball/chrome/test/data: main_content_extraction Only in tarball/chrome/test/data: mirror_request_header Only in tarball/chrome/test/data: native_messaging Only in tarball/chrome/test/data: navigation_interception Only in tarball/chrome/test/data: navigation_predictor Only in tarball/chrome/test/data: notifications Only in tarball/chrome/test/data: ocr Only in tarball/chrome/test/data: offline_pages Only in tarball/chrome/test/data: optimization_guide Only in tarball/chrome/test/data: osdd Only in tarball/chrome/test/data: page_cycler Only in tarball/chrome/test/data: page_load_metrics Only in tarball/chrome/test/data: password Only in tarball/chrome/test/data: pdf_private Only in tarball/chrome/test/data: pepper Only in tarball/chrome/test/data: perf Only in tarball/chrome/test/data: permissions Only in tarball/chrome/test/data: plugin_power_saver Only in tarball/chrome/test/data: policy Only in tarball/chrome/test/data: popup_blocker Only in tarball/chrome/test/data: predictor Only in tarball/chrome/test/data: predictors Only in tarball/chrome/test/data: pref_service Only in tarball/chrome/test/data: prefs Only in tarball/chrome/test/data: preload Only in tarball/chrome/test/data: prerender Only in tarball/chrome/test/data: previews Only in tarball/chrome/test/data: print_to_pdf Only in tarball/chrome/test/data: printing Only in tarball/chrome/test/data: privacy_budget Only in tarball/chrome/test/data: private_network_access Only in tarball/chrome/test/data: profiles Only in tarball/chrome/test/data: public_offline_pages Only in tarball/chrome/test/data: push_messaging Only in tarball/chrome/test/data: pwa Only in tarball/chrome/test/data: reduce_accept_language Only in tarball/chrome/test/data: referrer_policy Only in tarball/chrome/test/data: resource_coordinator Only in tarball/chrome/test/data: safe_browsing Only in tarball/chrome/test/data: save_page Only in tarball/chrome/test/data: scanning Only in tarball/chrome/test/data: scroll Only in tarball/chrome/test/data: security Only in tarball/chrome/test/data: service_worker Only in tarball/chrome/test/data: session_history Only in tarball/chrome/test/data: session_restore Only in tarball/chrome/test/data: sessions Only in tarball/chrome/test/data: settings Only in tarball/chrome/test/data: shared_storage Only in tarball/chrome/test/data: sharing Only in tarball/chrome/test/data: shortcuts Only in tarball/chrome/test/data: signin Only in tarball/chrome/test/data: speech Only in tarball/chrome/test/data: ssl Only in tarball/chrome/test/data: subresource_loading Only in tarball/chrome/test/data: sunspider Only in tarball/chrome/test/data: supervised_user Only in tarball/chrome/test/data: sync Only in tarball/chrome/test/data: template_url_scraper Only in tarball/chrome/test/data: textinput Only in tarball/chrome/test/data: third_party Only in tarball/chrome/test/data: thumbnail_capture Only in tarball/chrome/test/data: top_controls_scroll Only in tarball/chrome/test/data: top_sites Only in tarball/chrome/test/data: tpcd Only in tarball/chrome/test/data: translate Only in tarball/chrome/test/data: updater Only in tarball/chrome/test/data: variations Only in tarball/chrome/test/data: viewsource Only in tarball/chrome/test/data: wasm Only in tarball/chrome/test/data: web_app_badging Only in tarball/chrome/test/data: web_app_default_apps Only in tarball/chrome/test/data: web_app_file_handling Only in tarball/chrome/test/data: web_app_info Only in tarball/chrome/test/data: web_app_notifications Only in tarball/chrome/test/data: web_app_shortcuts Only in tarball/chrome/test/data: web_apps Only in tarball/chrome/test/data: web_page_replay_go_helper_scripts Only in tarball/chrome/test/data: web_share_target Only in tarball/chrome/test/data: webapks Only in tarball/chrome/test/data: webapps_integration Only in tarball/chrome/test/data: webaudio Only in tarball/chrome/test/data: webauthn Only in tarball/chrome/test/data: webrtc Only in tarball/chrome/test/data: webshare Only in tarball/chrome/test/data: websocket Only in tarball/chrome/test/data: workers Only in tarball/chrome/test/data: xr Only in tarball/chrome/test/media_router: internal Only in tarball/chrome/tools: memory Only in tarball/chrome/updater: internal Only in tarball/chromeos/ash/resources: internal Only in tarball/chromeos/assistant: internal Only in tarball/components/accessibility: internal Only in tarball/components/autofill/core/browser/form_parsing: internal_resources Only in tarball/components/crash/core/app: internal Only in tarball/components/metrics: internal Only in tarball/components/ntp_tiles/resources: internal Only in tarball/components/optimization_guide: internal Only in tarball/components/plus_addresses/resources: internal Only in tarball/components/resources/default_100_percent: google_chrome Only in tarball/components/resources/default_200_percent: google_chrome Only in tarball/components/resources/default_300_percent: google_chrome Only in tarball/components/site_isolation: internal Only in tarball/components/test/data/autofill/heuristics-json: internal Only in tarball/components/vector_icons: google_chrome Only in tarball/content/test/data/file_chooser: dir_with_symlink Only in tarball/content/test/data/file_chooser: linked_dir Only in tarball/content/test/data: accessibility Only in tarball/content/test/data: aggregation_service Only in tarball/content/test/data: android Only in tarball/content/test/data: attribution_reporting Only in tarball/content/test/data: autofill Only in tarball/content/test/data: back_forward_cache Only in tarball/content/test/data: background_resource_fetch Only in tarball/content/test/data: background_sync Only in tarball/content/test/data: battery_monitor Only in tarball/content/test/data: blob_storage Only in tarball/content/test/data: browsing_data Only in tarball/content/test/data: browsing_topics Only in tarball/content/test/data: cache_storage Only in tarball/content/test/data: clipboard Only in tarball/content/test/data: compute_pressure Only in tarball/content/test/data: content_index Only in tarball/content/test/data: cookies Only in tarball/content/test/data: cross_site_document_blocking Only in tarball/content/test/data: device_posture Only in tarball/content/test/data: device_sensors Only in tarball/content/test/data: devtools Only in tarball/content/test/data: direct_sockets Only in tarball/content/test/data: dom_serializer Only in tarball/content/test/data: dom_storage Only in tarball/content/test/data: download Only in tarball/content/test/data: fedcm Only in tarball/content/test/data: fenced_frames Only in tarball/content/test/data: fileapi Only in tarball/content/test/data: first_party_sets Only in tarball/content/test/data: font Only in tarball/content/test/data: forms Only in tarball/content/test/data: frame_tree Only in tarball/content/test/data: fuzzer_corpus Only in tarball/content/test/data: fuzzer_dictionaries Only in tarball/content/test/data: generic_sensor Only in tarball/content/test/data: gpu Only in tarball/content/test/data: indexeddb Only in tarball/content/test/data: interest_group Only in tarball/content/test/data: loader Only in tarball/content/test/data: lock_screen Only in tarball/content/test/data: locks Only in tarball/content/test/data: mac Only in tarball/content/test/data: manifest Only in tarball/content/test/data: media Only in tarball/content/test/data: midi Only in tarball/content/test/data: mixed-content Only in tarball/content/test/data: navigation_controller Only in tarball/content/test/data: net Only in tarball/content/test/data: origin_trials Only in tarball/content/test/data: payments Only in tarball/content/test/data: performance_timeline Only in tarball/content/test/data: plugin Only in tarball/content/test/data: preloading Only in tarball/content/test/data: prerender Only in tarball/content/test/data: private_aggregation Only in tarball/content/test/data: render_frame_host Only in tarball/content/test/data: resource_loading Only in tarball/content/test/data: screen_orientation Only in tarball/content/test/data: service_worker Only in tarball/content/test/data: session_history Only in tarball/content/test/data: shared_dictionary Only in tarball/content/test/data: shared_storage Only in tarball/content/test/data: site_isolation Only in tarball/content/test/data: speech Only in tarball/content/test/data: storage Only in tarball/content/test/data: sxg Only in tarball/content/test/data: textinput Only in tarball/content/test/data: view_transitions Only in tarball/content/test/data: web_bundle Only in tarball/content/test/data: webkit Only in tarball/content/test/data: workers Only in tarball/extensions/test: data Only in tarball/google_apis: internal Only in tarball/ios/third_party/earl_grey2: src Only in tarball/ios/third_party/edo: src Only in tarball/ios/third_party/gtx: src Only in tarball/ios/third_party/lottie: src Only in tarball/ios/third_party/material_components_ios: src Only in tarball/ios/third_party/material_font_disk_loader_ios: src Only in tarball/ios/third_party/material_internationalization_ios: src Only in tarball/ios/third_party/material_roboto_font_loader_ios: src Only in tarball/ios/third_party/material_sprited_animation_view_ios: src Only in tarball/ios/third_party/material_text_accessibility_ios: src Only in tarball/ios/third_party/motion_animator_objc: src Only in tarball/ios/third_party/motion_interchange_objc: src Only in tarball/ios/third_party/motion_transitioning_objc: src Only in tarball/ios/third_party/ochamcrest: src Only in tarball/ios/third_party/webkit: src Only in tarball/media/test: data Only in tarball/native_client_sdk/src/gonacl_appengine/static: css Only in tarball/remoting/host/installer/linux: internal Only in tarball/remoting/test: internal Only in tarball/remoting/tools: internal Only in tarball/remoting: internal Only in tarball/skia/tools: clusterfuzz-data Only in tarball/third_party/android_prebuilts: build_tools Only in tarball/third_party/androidx_javascriptengine: src Only in tarball/third_party/angle/third_party/EGL-Registry: src Only in tarball/third_party/angle/third_party/OpenCL-CTS: src Only in tarball/third_party/angle/third_party/OpenCL-Docs: src Only in tarball/third_party/angle/third_party/OpenCL-ICD-Loader: src Only in tarball/third_party/angle/third_party/OpenGL-Registry: src Only in tarball/third_party/angle/third_party/astc-encoder: src Only in tarball/third_party/angle/third_party/clspv: src Only in tarball/third_party/angle/third_party/colorama: src Only in tarball/third_party/angle/third_party/cpu_features: src Only in tarball/third_party/angle/third_party/flatbuffers: src Only in tarball/third_party/angle/third_party/glslang: src Only in tarball/third_party/angle/third_party/libpng: src Only in tarball/third_party/angle/third_party/llvm: src Only in tarball/third_party/angle/third_party/lunarg-vulkantools: src Only in tarball/third_party/angle/third_party/mesa: src Only in tarball/third_party/angle/third_party/rapidjson/src: thirdparty Only in tarball/third_party/angle/third_party/spirv-cross: src Only in tarball/third_party/angle/third_party/spirv-headers: src Only in tarball/third_party/angle/third_party/spirv-tools: src Only in tarball/third_party/angle/third_party/vulkan-headers: src Only in tarball/third_party/angle/third_party/vulkan-loader: src Only in tarball/third_party/angle/third_party/vulkan-tools: src Only in tarball/third_party/angle/third_party/vulkan-utility-libraries: src Only in tarball/third_party/angle/third_party/vulkan-validation-layers: src Only in tarball/third_party/angle/third_party: Python-Markdown Only in tarball/third_party/angle/third_party: SwiftShader Only in tarball/third_party/angle/third_party: abseil-cpp Only in tarball/third_party/angle/third_party: android_build_tools Only in tarball/third_party/angle/third_party: android_deps Only in tarball/third_party/angle/third_party: android_platform Only in tarball/third_party/angle/third_party: android_sdk Only in tarball/third_party/angle/third_party: catapult Only in tarball/third_party/angle/third_party: cherry Only in tarball/third_party/angle/third_party: clang-format Only in tarball/third_party/angle/third_party: dawn Only in tarball/third_party/angle/third_party: depot_tools Only in tarball/third_party/angle/third_party: gles1_conform Only in tarball/third_party/angle/third_party: googletest Only in tarball/third_party/angle/third_party: ijar Only in tarball/third_party/angle/third_party: jinja2 Only in tarball/third_party/angle/third_party: jsoncpp Only in tarball/third_party/angle/third_party: libc++ Only in tarball/third_party/angle/third_party: libc++abi Only in tarball/third_party/angle/third_party: libdrm Only in tarball/third_party/angle/third_party: libjpeg_turbo Only in tarball/third_party/angle/third_party: libunwind Only in tarball/third_party/angle/third_party: markupsafe Only in tarball/third_party/angle/third_party: meson Only in tarball/third_party/angle/third_party: nasm Only in tarball/third_party/angle/third_party: perfetto Only in tarball/third_party/angle/third_party: protobuf Only in tarball/third_party/angle/third_party: requests Only in tarball/third_party/angle/third_party: six Only in tarball/third_party/angle/third_party: vulkan-deps Only in tarball/third_party/angle/third_party: vulkan_memory_allocator Only in tarball/third_party/angle/third_party: wayland Only in tarball/third_party/angle/third_party: zlib Only in tarball/third_party/angle/tools: android Only in tarball/third_party/angle/tools: clang Only in tarball/third_party/angle/tools: mb Only in tarball/third_party/angle/tools: md_browser Only in tarball/third_party/angle/tools: memory Only in tarball/third_party/angle/tools: perf Only in tarball/third_party/angle/tools: protoc_wrapper Only in tarball/third_party/angle/tools: python Only in tarball/third_party/angle/tools: rust Only in tarball/third_party/angle/tools: valgrind Only in tarball/third_party/angle: build Only in tarball/third_party/angle: buildtools Only in tarball/third_party/angle: testing Only in tarball/third_party/apache-portable-runtime: src Only in tarball/third_party/arcore-android-sdk: src Only in tarball/third_party/beto-core/src/third_party: abseil-cpp Only in tarball/third_party/beto-core/src/third_party: benchmark Only in tarball/third_party/beto-core/src/third_party: boringssl Only in tarball/third_party/beto-core/src/third_party: fuzztest Only in tarball/third_party/blink/tools/blinkpy/web_tests: breakpad Only in tarball/third_party/blink/tools/blinkpy/web_tests: controllers Only in tarball/third_party/blink/tools/blinkpy/web_tests: flake_suppressor Only in tarball/third_party/blink/tools/blinkpy/web_tests: layout_package Only in tarball/third_party/blink/tools/blinkpy/web_tests: models Only in tarball/third_party/blink/tools/blinkpy/web_tests: port Only in tarball/third_party/blink/tools/blinkpy/web_tests: servers Only in tarball/third_party/blink/tools/blinkpy/web_tests: stale_expectation_removal Only in tarball/third_party/blink/tools/blinkpy/web_tests: views Only in tarball/third_party/blink/tools/blinkpy/web_tests: web_test_analyzers Only in tarball/third_party/blink/tools/blinkpy: common Only in tarball/third_party/blink/tools/blinkpy: presubmit Only in tarball/third_party/blink/tools/blinkpy: style Only in tarball/third_party/blink/tools/blinkpy: tool Only in tarball/third_party/blink/tools/blinkpy: w3c Only in tarball/third_party/blink/tools/blinkpy: wpt_tests Only in tarball/third_party/blink/tools: apache_config Only in tarball/third_party/blink/tools: commit_stats Only in tarball/third_party/blink/tools: gdb Only in tarball/third_party/blink/tools: lldb Only in tarball/third_party/blink: web_tests Only in tarball/third_party/breakpad/breakpad/src/processor: testdata Only in tarball/third_party/cardboard: src Only in tarball/third_party/catapult/tracing: test_data Only in tarball/third_party/chromevox/third_party/sre: src Only in tarball/third_party/crc32c/src: third_party Only in tarball/third_party/crubit: src Only in tarball/third_party/dawn/third_party/dxc/external: DirectX-Headers Only in tarball/third_party/dawn/third_party/dxc/external: SPIRV-Headers Only in tarball/third_party/dawn/third_party/dxc/external: SPIRV-Tools Only in tarball/third_party/dawn/third_party/glslang: src Only in tarball/third_party/dawn/third_party/google_benchmark: src Only in tarball/third_party/dawn/third_party/libFuzzer: src Only in tarball/third_party/dawn/third_party/libprotobuf-mutator: src Only in tarball/third_party/dawn/third_party/spirv-cross: src Only in tarball/third_party/dawn/third_party/spirv-headers: src Only in tarball/third_party/dawn/third_party/spirv-tools: src Only in tarball/third_party/dawn/third_party/vulkan-headers: src Only in tarball/third_party/dawn/third_party/vulkan-loader: src Only in tarball/third_party/dawn/third_party/vulkan-tools: src Only in tarball/third_party/dawn/third_party/vulkan-utility-libraries: src Only in tarball/third_party/dawn/third_party/vulkan-validation-layers: src Only in tarball/third_party/dawn/third_party: abseil-cpp Only in tarball/third_party/dawn/third_party: angle Only in tarball/third_party/dawn/third_party: catapult Only in tarball/third_party/dawn/third_party: clang-format Only in tarball/third_party/dawn/third_party: depot_tools Only in tarball/third_party/dawn/third_party: googletest Only in tarball/third_party/dawn/third_party: gpuweb Only in tarball/third_party/dawn/third_party: jinja2 Only in tarball/third_party/dawn/third_party: jsoncpp Only in tarball/third_party/dawn/third_party: langsvr Only in tarball/third_party/dawn/third_party: libc++ Only in tarball/third_party/dawn/third_party: libc++abi Only in tarball/third_party/dawn/third_party: markupsafe Only in tarball/third_party/dawn/third_party: node-addon-api Only in tarball/third_party/dawn/third_party: node-api-headers Only in tarball/third_party/dawn/third_party: partition_alloc Only in tarball/third_party/dawn/third_party: protobuf Only in tarball/third_party/dawn/third_party: swiftshader Only in tarball/third_party/dawn/third_party: vulkan-deps Only in tarball/third_party/dawn/third_party: vulkan_memory_allocator Only in tarball/third_party/dawn/third_party: zlib Only in tarball/third_party/dawn/tools: clang Only in tarball/third_party/dawn/tools: protoc_wrapper Only in tarball/third_party/dawn/tools: rust Only in tarball/third_party/dawn: build Only in tarball/third_party/dawn: buildtools Only in tarball/third_party/dawn: testing Only in tarball/third_party/devtools-frontend/src/extensions/cxx_debugging/third_party/lldb-eval: src Only in tarball/third_party/devtools-frontend/src/extensions/cxx_debugging/third_party/llvm: src Only in tarball/third_party/devtools-frontend/src/third_party: clang-format Only in tarball/third_party/devtools-frontend/src/third_party: depot_tools Only in tarball/third_party/devtools-frontend/src/third_party: inspector_protocol Only in tarball/third_party/devtools-frontend/src: build Only in tarball/third_party/devtools-frontend/src: buildtools Only in tarball/third_party/emoji-metadata: src Only in tarball/third_party/freetype-testing/src: external Only in tarball/third_party/freetype/src/docs: oldlogs Only in tarball/third_party/freetype/src/subprojects: dlg Only in tarball/third_party/google-truth: src Only in tarball/third_party/google_toolbox_for_mac: src Only in tarball/third_party/grpc/src/third_party/cares: cares Only in tarball/third_party/grpc/src/third_party: abseil-cpp Only in tarball/third_party/grpc/src/third_party: benchmark Only in tarball/third_party/grpc/src/third_party: bloaty Only in tarball/third_party/grpc/src/third_party: boringssl-with-bazel Only in tarball/third_party/grpc/src/third_party: envoy-api Only in tarball/third_party/grpc/src/third_party: googleapis Only in tarball/third_party/grpc/src/third_party: googletest Only in tarball/third_party/grpc/src/third_party: libuv Only in tarball/third_party/grpc/src/third_party: opencensus-proto Only in tarball/third_party/grpc/src/third_party: opentelemetry Only in tarball/third_party/grpc/src/third_party: protobuf Only in tarball/third_party/grpc/src/third_party: re2 Only in tarball/third_party/grpc/src/third_party: xds Only in tarball/third_party/grpc/src/third_party: zlib Only in tarball/third_party/hunspell: tests Only in tarball/third_party/javalang: src Only in tarball/third_party/jdk: current Only in tarball/third_party/jszip: src Only in tarball/third_party/junit: src Only in tarball/third_party/leveldatabase/src: third_party Only in tarball/third_party/libaddressinput/src: externals Only in tarball/third_party/liblouis/src/tests: braille-specs Only in tarball/third_party/material_design_icons: src Only in tarball/third_party/microsoft_dxheaders: src Only in tarball/third_party/nearby/src/third_party/google-toolbox-for-mac: google-toolbox-for-mac Only in tarball/third_party/nearby/src/third_party/json: json Only in tarball/third_party/nearby/src/third_party/securemessage: securemessage Only in tarball/third_party/nearby/src/third_party/smhasher: smhasher Only in tarball/third_party/nearby/src/third_party/ukey2: ukey2 Only in tarball/third_party/nearby/src/third_party: absl Only in tarball/third_party/nearby/src/third_party: depot_tools Only in tarball/third_party/nearby/src/third_party: gtest Only in tarball/third_party/nearby/src/third_party: mbedtls Only in tarball/third_party/nearby/src/third_party: micro-ecc Only in tarball/third_party/nearby/src/third_party: protobuf Only in tarball/third_party/netty-tcnative: src Only in tarball/third_party/netty4: src Only in tarball/third_party/openscreen/src/buildtools/linux64: format Only in tarball/third_party/openscreen/src/third_party/abseil: src Only in tarball/third_party/openscreen/src/third_party/boringssl: src Only in tarball/third_party/openscreen/src/third_party/googletest: src Only in tarball/third_party/openscreen/src/third_party/googleurl: src Only in tarball/third_party/openscreen/src/third_party/jsoncpp: src Only in tarball/third_party/openscreen/src/third_party/libc++: src Only in tarball/third_party/openscreen/src/third_party/libc++abi: src Only in tarball/third_party/openscreen/src/third_party/libfuzzer: src Only in tarball/third_party/openscreen/src/third_party/libprotobuf-mutator: src Only in tarball/third_party/openscreen/src/third_party/quiche: src Only in tarball/third_party/openscreen/src/third_party/valijson: src Only in tarball/third_party/openscreen/src/third_party/zlib: src Only in tarball/third_party/openscreen/src/third_party: clang-format Only in tarball/third_party/openscreen/src/third_party: instrumented_libs Only in tarball/third_party/openscreen/src/third_party: modp_b64 Only in tarball/third_party/openscreen/src: build Only in tarball/third_party/openxr: src Only in tarball/third_party/requests: src Only in tarball/third_party/ruy/src/third_party: cpuinfo Only in tarball/third_party/ruy/src/third_party: googletest Only in tarball/third_party/securemessage/src: third_party Only in tarball/third_party/snappy/src: third_party Only in tarball/third_party/subresource-filter-ruleset: data Only in tarball/third_party/swiftshader/third_party/libbacktrace: src Only in tarball/third_party/swiftshader/third_party: PowerVR_Examples Only in tarball/third_party/swiftshader/third_party: benchmark Only in tarball/third_party/swiftshader/third_party: cppdap Only in tarball/third_party/swiftshader/third_party: git-hooks Only in tarball/third_party/swiftshader/third_party: glslang Only in tarball/third_party/swiftshader/third_party: googletest Only in tarball/third_party/swiftshader/third_party: json Only in tarball/third_party/swiftshader/third_party: llvm-project Only in tarball/third_party/ukey2/src: third_party Only in tarball/third_party/vulkan-deps/glslang: src Only in tarball/third_party/vulkan-deps/lunarg-vulkantools: src Only in tarball/third_party/vulkan-deps/spirv-cross: src Only in tarball/third_party/vulkan-deps/spirv-headers: src Only in tarball/third_party/vulkan-deps/spirv-tools: src Only in tarball/third_party/vulkan-deps/vulkan-headers: src Only in tarball/third_party/vulkan-deps/vulkan-loader: src Only in tarball/third_party/vulkan-deps/vulkan-tools: src Only in tarball/third_party/vulkan-deps/vulkan-utility-libraries: src Only in tarball/third_party/vulkan-deps/vulkan-validation-layers: src Only in tarball/third_party/webgl/src/sdk: devtools Only in tarball/third_party/widevine/cdm: chromeos Only in tarball/third_party/widevine/cdm: linux Only in tarball/third_party/widevine/cdm: mac Only in tarball/third_party/widevine/cdm: win Only in tarball/third_party/widevine: scripts Only in tarball/third_party/widevine: test Only in tarball/third_party/wlcs: src Only in tarball/third_party/xdg-utils: tests Only in tarball/third_party: amd Only in tarball/third_party: android_tools_internal Only in tarball/third_party: barhopper Only in tarball/third_party: chromite Only in tarball/third_party: devtools-frontend-internal Only in tarball/third_party: gperf Only in tarball/third_party: hunspell_dictionaries Only in tarball/third_party: libunwindstack Only in tarball/third_party: lighttpd Only in tarball/third_party: perl Only in tarball/third_party: wix Only in tarball/tools/perf/page_sets/maps_perf_test: dataset Only in tarball/tools/perf: data Only in tarball/ui/file_manager: internal Only in tarball/ui/webui: internal Only in tarball/v8/test/benchmarks: csuite Only in tarball/v8/test/cctest: compiler Only in tarball/v8/test/cctest: heap Only in tarball/v8/test/cctest: torque Only in tarball/v8/test/cctest: wasm Only in tarball/v8/test/debugger: bugs Only in tarball/v8/test/debugger: debug Only in tarball/v8/test/debugger: protocol Only in tarball/v8/test/debugger: regress Only in tarball/v8/test/debugger: wrapper Only in tarball/v8/test/fuzzer: inspector Only in tarball/v8/test/fuzzer: json Only in tarball/v8/test/fuzzer: multi_return Only in tarball/v8/test/fuzzer: parser Only in tarball/v8/test/fuzzer: regexp Only in tarball/v8/test/fuzzer: wasm Only in tarball/v8/test/fuzzer: wasm_async Only in tarball/v8/test/fuzzer: wasm_code Only in tarball/v8/test/fuzzer: wasm_compile Only in tarball/v8/test/fuzzer: wasm_streaming Only in tarball/v8/test/fuzzilli: test Only in tarball/v8/test/inspector: console Only in tarball/v8/test/inspector: cpu-profiler Only in tarball/v8/test/inspector: debugger Only in tarball/v8/test/inspector: heap-profiler Only in tarball/v8/test/inspector: regress Only in tarball/v8/test/inspector: runtime Only in tarball/v8/test/inspector: sessions Only in tarball/v8/test/intl: bigint Only in tarball/v8/test/intl: break-iterator Only in tarball/v8/test/intl: collator Only in tarball/v8/test/intl: date-format Only in tarball/v8/test/intl: displaynames Only in tarball/v8/test/intl: duration-format Only in tarball/v8/test/intl: enumeration Only in tarball/v8/test/intl: general Only in tarball/v8/test/intl: list-format Only in tarball/v8/test/intl: locale Only in tarball/v8/test/intl: localematcher Only in tarball/v8/test/intl: number-format Only in tarball/v8/test/intl: overrides Only in tarball/v8/test/intl: plural-rules Only in tarball/v8/test/intl: relative-time-format Only in tarball/v8/test/intl: segmenter Only in tarball/v8/test/intl: string Only in tarball/v8/test/intl: temporal Only in tarball/v8/test/message: fail Only in tarball/v8/test/message: mjsunit Only in tarball/v8/test/message: regress Only in tarball/v8/test/mjsunit: asm Only in tarball/v8/test/mjsunit: async-hooks Only in tarball/v8/test/mjsunit: baseline Only in tarball/v8/test/mjsunit: bugs Only in tarball/v8/test/mjsunit: compiler Only in tarball/v8/test/mjsunit: d8 Only in tarball/v8/test/mjsunit: decorators Only in tarball/v8/test/mjsunit: es6 Only in tarball/v8/test/mjsunit: es7 Only in tarball/v8/test/mjsunit: es8 Only in tarball/v8/test/mjsunit: es9 Only in tarball/v8/test/mjsunit: extinction Only in tarball/v8/test/mjsunit: harmony Only in tarball/v8/test/mjsunit: ignition Only in tarball/v8/test/mjsunit: lithium Only in tarball/v8/test/mjsunit: maglev Only in tarball/v8/test/mjsunit: protector-cell Only in tarball/v8/test/mjsunit: regress Only in tarball/v8/test/mjsunit: sandbox Only in tarball/v8/test/mjsunit: shared-memory Only in tarball/v8/test/mjsunit: temporal Only in tarball/v8/test/mjsunit: third_party Only in tarball/v8/test/mjsunit: tools Only in tarball/v8/test/mjsunit: turboshaft Only in tarball/v8/test/mjsunit: type-profile Only in tarball/v8/test/mjsunit: wasm Only in tarball/v8/test/test262: local-tests Only in tarball/v8/test/test262: tools Only in tarball/v8/test/unittests: api Only in tarball/v8/test/unittests: asmjs Only in tarball/v8/test/unittests: assembler Only in tarball/v8/test/unittests: base Only in tarball/v8/test/unittests: codegen Only in tarball/v8/test/unittests: common Only in tarball/v8/test/unittests: compiler Only in tarball/v8/test/unittests: compiler-dispatcher Only in tarball/v8/test/unittests: date Only in tarball/v8/test/unittests: debug Only in tarball/v8/test/unittests: deoptimizer Only in tarball/v8/test/unittests: diagnostics Only in tarball/v8/test/unittests: execution Only in tarball/v8/test/unittests: flags Only in tarball/v8/test/unittests: heap Only in tarball/v8/test/unittests: inspector Only in tarball/v8/test/unittests: interpreter Only in tarball/v8/test/unittests: js-atomics Only in tarball/v8/test/unittests: json Only in tarball/v8/test/unittests: libplatform Only in tarball/v8/test/unittests: libsampler Only in tarball/v8/test/unittests: logging Only in tarball/v8/test/unittests: maglev Only in tarball/v8/test/unittests: numbers Only in tarball/v8/test/unittests: objects Only in tarball/v8/test/unittests: parser Only in tarball/v8/test/unittests: profiler Only in tarball/v8/test/unittests: regexp Only in tarball/v8/test/unittests: regress Only in tarball/v8/test/unittests: runtime Only in tarball/v8/test/unittests: sandbox Only in tarball/v8/test/unittests: strings Only in tarball/v8/test/unittests: tasks Only in tarball/v8/test/unittests: temporal Only in tarball/v8/test/unittests: torque Only in tarball/v8/test/unittests: tracing Only in tarball/v8/test/unittests: utils Only in tarball/v8/test/unittests: wasm Only in tarball/v8/test/unittests: zone Only in tarball/v8/test/wasm-js: third_party Only in tarball/v8/test/webkit: fast Only in tarball/v8/test/webkit: resources Only in tarball/v8/test: common Only in tarball/v8/test: debugging Only in tarball/v8/test: js-perf-test Only in tarball/v8/test: memory Only in tarball/v8/tools/testrunner/testdata: testroot4 Only in tarball/v8/tools/unittests/testdata: builddirs Only in checkout/: uc_staging Only in checkout/v8/testing/gmock/include/gmock: gmock-actions.h Only in checkout/v8/testing/gmock/include/gmock: gmock-matchers.h Only in checkout/v8/testing/gmock/include/gmock: gmock.h Only in checkout/v8/testing/gmock/include: DEPS Only in checkout/v8/testing/gmock: OWNERS Only in checkout/v8/testing/gtest/include/gtest: gtest-death-test.h Only in checkout/v8/testing/gtest/include/gtest: gtest-message.h Only in checkout/v8/testing/gtest/include/gtest: gtest-param-test.h Only in checkout/v8/testing/gtest/include/gtest: gtest-spi.h Only in checkout/v8/testing/gtest/include/gtest: gtest.h Only in checkout/v8/testing/gtest/include/gtest: gtest_prod.h Only in checkout/v8/testing/gtest/include: DEPS Only in checkout/v8/testing/gtest: OWNERS Only in checkout/v8/testing/gtest: empty.cc Only in checkout/v8/testing: OWNERS Only in checkout/v8/testing: gmock-support.h Only in checkout/v8/testing: gtest-support.h
There's test data we don't clone and leftover Google internal directories, but the most interesting differences I put at the top. It seems that generating last_commit_position.h syncs the gn in uc_staging with the one in the source directory. See if making this change to the clone script creates a clone that you can build with:
--- a/utils/clone.py +++ b/utils/clone.py @@ -116,12 +116,17 @@ # gn requires full history to be able to generate last_commit_position.h get_logger().info('Cloning gn') + gn_commit = re.search(r"gn_version': 'git_revision:([^']+)',", + Path(args.output / 'DEPS').read_text()).group(1) + if not gn_commit: + get_logger().error('Unable to obtain commit for gn checkout') + sys.exit(1) if gnpath.exists(): run(['git', 'fetch'], cwd=gnpath, check=True) - run(['git', 'reset', '--hard', 'FETCH_HEAD'], cwd=gnpath, check=True) - run(['git', 'clean', '-ffdx'], cwd=gnpath, check=True) else: run(['git', 'clone', "https://gn.googlesource.com/gn", str(gnpath)], check=True) + run(['git', 'reset', '--hard', gn_commit], cwd=gnpath, check=True) + run(['git', 'clean', '-ffdx'], cwd=gnpath, check=True) get_logger().info('Running gsync') if args.custom_config:
That's the most obvious thing that stands out to me, so if that doesn't help then maybe there's a path difference I'm overlooking.
Didn't fix the issue...
On windows, we manually clone the correct version of gn because having the incorrect version lead to problems before. Having the clone script handle that automatically would be great.
I recently noticed that there is an indirect dependency between clang and the rust toolchain. On windows, we setup the rust toolchain manually (using the downloads.ini and some python code) so that we can use the CI for compiling and publishing the releases. On each major version bump of chromium there is a bump of the rust toolchain dependency as well. Previously we used clang 18 on windows which worked fine. After the last rust update compiling on windows failed as the rust toolchain seems to be compiled with clang 19 now and that lead to compiling errors. Only after updating to clang 19 for windows compiling was succeeding again.
On windows, we manually clone the correct version of gn because having the incorrect version lead to problems before. Having the clone script handle that automatically would be great.
I am looking into the gn clone script... Just to make sure, an incorrect gn version do lead to the mentioned libclang
issue?
I recently noticed that there is an indirect dependency between clang and the rust toolchain. On windows, we setup the rust toolchain manually (using the downloads.ini and some python code) so that we can use the CI for compiling and publishing the releases. On each major version bump of chromium there is a bump of the rust toolchain dependency as well. Previously we used clang 18 on windows which worked fine. After the last rust update compiling on windows failed as the rust toolchain seems to be compiled with clang 19 now and that lead to compiling errors. Only after updating to clang 19 for windows compiling was succeeding again.
macOS switched to LLVM 19 quite a bit before and always try to build with the latest Clang available, and we do also bump the Rust (to what src/tools/rust/update_rust.py
tells us to use and fetch it using download.ini) when there's a major version, I think for now it's just the issue of keeping Clang up-to-date.
/cc @teeminus
On windows, we manually clone the correct version of gn because having the incorrect version lead to problems before. Having the clone script handle that automatically would be great.
It seems to me that @Ahrotahn's script does the job of cloning the right gn version... I even tried to replace the fetched gn_commit
to a hard-coded string to test it and still have no luck. Did I overlook something?
Currently, the clone script uses the latest head version of gn instead of the version specified in the DEPS file - if I remember correctly...
However, for me the build usually failed before compilation started when using the wrong version of gn. So I think this is not the problem here. Have you started all over after applying Ahrotahns changes for the clone script?
Which version of clang and rust are you using?
I'll add the change to set the gn commit on the next update then. Hopefully that makes things easier for your builds.
@Cubik65536 I just remembered that you build with --keep-contingent-paths
so I bet the difference is one of those paths, they wouldn't have shown up in that diff since I wasn't using the flag. I'll do some digging later today and see what stands out.
Currently, the clone script uses the latest head version of gn instead of the version specified in the DEPS file - if I remember correctly...
However, for me the build usually failed before compilation started when using the wrong version of gn. So I think this is not the problem here. Have you started all over after applying Ahrotahns changes for the clone script?
I did start over the entire process after changing the clone script, so I think I am getting the correct gn version now.
Which version of clang and rust are you using?
clang 19.1.0 and Rust always fetched according to the update_rust.py
(it's a step of our update process).
I'll add the change to set the gn commit on the next update then. Hopefully that makes things easier for your builds.
@Cubik65536 I just remembered that you build with
--keep-contingent-paths
so I bet the difference is one of those paths, they wouldn't have shown up in that diff since I wasn't using the flag. I'll do some digging later today and see what stands out.
Got it, thanks!
@Cubik65536 See if making this change to your retrieve_and_unpack_resource.sh
script works:
--- a/retrieve_and_unpack_resource.sh
+++ b/retrieve_and_unpack_resource.sh
@@ -50,6 +50,7 @@
echo "rustc 1.83.0-nightly (d6c8169c1 2024-09-03)" > "$_rust_flag_file"
mkdir $_rust_bin_dir
+ mkdir "$_rust_dir/lib"
ln -s "$_rust_dir/rustc/bin/rustc" "$_rust_bin_dir/rustc"
ln -s "$_rust_dir/cargo/bin/cargo" "$_rust_bin_dir/cargo"
ln -s "$_rust_lib_dir" "$_rustc_lib_dir"
I forgot that you were building bindgen since the tarball contains the linux binaries. There's a section near the end of the script that copies the missing file to third_party/rust-toolchain/lib
but the path doesn't exist in the clone and that script doesn't throw an error if the copy fails.
Edit: An alternative that might work would be edit build-bindgen.patch
to make that section copy the file into _rustc_lib_dir
@Cubik65536 See if making this change to your
retrieve_and_unpack_resource.sh
script works:--- a/retrieve_and_unpack_resource.sh +++ b/retrieve_and_unpack_resource.sh @@ -50,6 +50,7 @@ echo "rustc 1.83.0-nightly (d6c8169c1 2024-09-03)" > "$_rust_flag_file" mkdir $_rust_bin_dir + mkdir "$_rust_dir/lib" ln -s "$_rust_dir/rustc/bin/rustc" "$_rust_bin_dir/rustc" ln -s "$_rust_dir/cargo/bin/cargo" "$_rust_bin_dir/cargo" ln -s "$_rust_lib_dir" "$_rustc_lib_dir"
I forgot that you were building bindgen since the tarball contains the linux binaries. There's a section near the end of the script that copies the missing file to
third_party/rust-toolchain/lib
but the path doesn't exist in the clone and that script doesn't throw an error if the copy fails.Edit: An alternative that might work would be edit
build-bindgen.patch
to make that section copy the file into_rustc_lib_dir
Ok, this approach works...
A couple next-day thoughts:
mkdir -p
so you can swap freely between sources without having to change the script. --keep-contingent-paths
flag then you may now be able to remove it to save some time and space.
This PR updates to Chromium 130.0.6723.91
I've included a commit with a new change in the depot_tools patch which allows gsync to function correctly when using Python 3.13+Change log Blog post