libv8 6.7.288.46.1 → 7.3.492.27.0beta1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +3 -0
- data/CHANGELOG.md +4 -0
- data/README.md +2 -0
- data/ext/libv8/builder.rb +6 -2
- data/lib/libv8/version.rb +1 -1
- data/vendor/depot_tools/.gitattributes +1 -0
- data/vendor/depot_tools/.gitignore +7 -0
- data/vendor/depot_tools/CROS_OWNERS +5 -0
- data/vendor/depot_tools/OWNERS +12 -1
- data/vendor/depot_tools/PRESUBMIT.py +16 -9
- data/vendor/depot_tools/README.md +9 -2
- data/vendor/depot_tools/autoninja +14 -6
- data/vendor/depot_tools/autoninja.bat +11 -1
- data/vendor/depot_tools/autoninja.py +40 -18
- data/vendor/depot_tools/bb +12 -0
- data/vendor/depot_tools/bb.bat +7 -0
- data/vendor/depot_tools/bootstrap/win/manifest.txt +1 -1
- data/vendor/depot_tools/bootstrap/win/manifest_bleeding_edge.txt +1 -1
- data/vendor/depot_tools/bootstrap/win/win_tools.py +2 -1
- data/vendor/depot_tools/buildbucket.py +57 -4
- data/vendor/depot_tools/cipd +157 -44
- data/vendor/depot_tools/cipd.bat +51 -14
- data/vendor/depot_tools/cipd.ps1 +104 -42
- data/vendor/depot_tools/cipd_client_version +1 -1
- data/vendor/depot_tools/cipd_client_version.digests +21 -0
- data/vendor/depot_tools/cipd_manifest.txt +19 -6
- data/vendor/depot_tools/cipd_manifest.versions +318 -0
- data/vendor/depot_tools/clang_format.py +4 -4
- data/vendor/depot_tools/cpplint.py +44 -199
- data/vendor/depot_tools/dart_format.py +2 -2
- data/vendor/depot_tools/detect_host_arch.py +8 -3
- data/vendor/depot_tools/download_from_google_storage.py +47 -39
- data/vendor/depot_tools/fetch.py +30 -18
- data/vendor/depot_tools/fetch_configs/android_internal.py +34 -0
- data/vendor/depot_tools/fetch_configs/chromium.py +18 -1
- data/vendor/depot_tools/fetch_configs/config_util.py +4 -2
- data/vendor/depot_tools/fetch_configs/inspector_protocol.py +40 -0
- data/vendor/depot_tools/fetch_configs/node-ci.py +41 -0
- data/vendor/depot_tools/fix_encoding.py +3 -3
- data/vendor/depot_tools/gclient +1 -1
- data/vendor/depot_tools/gclient.py +415 -198
- data/vendor/depot_tools/gclient_eval.py +220 -171
- data/vendor/depot_tools/gclient_paths.py +142 -0
- data/vendor/depot_tools/gclient_scm.py +200 -51
- data/vendor/depot_tools/gclient_utils.py +88 -191
- data/vendor/depot_tools/gerrit_client.py +13 -0
- data/vendor/depot_tools/gerrit_util.py +158 -23
- data/vendor/depot_tools/git-nav-upstream +1 -1
- data/vendor/depot_tools/git_cache.py +77 -24
- data/vendor/depot_tools/git_cl.py +705 -1099
- data/vendor/depot_tools/git_common.py +9 -6
- data/vendor/depot_tools/git_map_branches.py +19 -2
- data/vendor/depot_tools/git_nav_downstream.py +3 -4
- data/vendor/depot_tools/git_rebase_update.py +14 -0
- data/vendor/depot_tools/git_reparent_branch.py +8 -2
- data/vendor/depot_tools/gn.py +38 -3
- data/vendor/depot_tools/gsutil.py +8 -3
- data/vendor/depot_tools/gsutil.py.bat +15 -0
- data/vendor/depot_tools/gsutil.vpython +16 -0
- data/vendor/depot_tools/infra/config/OWNERS +0 -1
- data/vendor/depot_tools/infra/config/recipes.cfg +3 -2
- data/vendor/depot_tools/lucicfg +12 -0
- data/vendor/depot_tools/lucicfg.bat +7 -0
- data/vendor/depot_tools/man/html/git-map-branches.html +34 -2
- data/vendor/depot_tools/man/html/git-new-branch.html +40 -32
- data/vendor/depot_tools/man/man1/git-map-branches.1 +24 -5
- data/vendor/depot_tools/man/man1/git-new-branch.1 +35 -27
- data/vendor/depot_tools/man/src/git-map-branches.demo.1.sh +1 -0
- data/vendor/depot_tools/man/src/git-map-branches.txt +10 -0
- data/vendor/depot_tools/man/src/git-new-branch.demo.1.sh +9 -4
- data/vendor/depot_tools/man/src/git-new-branch.txt +1 -1
- data/vendor/depot_tools/metrics.README.md +98 -0
- data/vendor/depot_tools/metrics.py +296 -0
- data/vendor/depot_tools/metrics_utils.py +303 -0
- data/vendor/depot_tools/my_activity.py +91 -29
- data/vendor/depot_tools/ninja +1 -1
- data/vendor/depot_tools/ninjalog.README.md +64 -0
- data/vendor/depot_tools/ninjalog_uploader.py +232 -0
- data/vendor/depot_tools/ninjalog_uploader_wrapper.py +116 -0
- data/vendor/depot_tools/owners.py +30 -13
- data/vendor/depot_tools/owners_finder.py +5 -2
- data/vendor/depot_tools/presubmit_canned_checks.py +188 -29
- data/vendor/depot_tools/presubmit_support.py +18 -41
- data/vendor/depot_tools/pylintrc +23 -19
- data/vendor/depot_tools/recipes/OWNERS +2 -0
- data/vendor/depot_tools/recipes/README.recipes.md +344 -151
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/OWNERS +2 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/__init__.py +2 -16
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/api.py +141 -99
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic.json +5 -8
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic_luci.json +5 -8
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic_with_branch_heads.json +6 -98
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/clobber.json +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/deprecated_got_revision_mapping.json +45 -5
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_rebase_patch_ref.json +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_reset.json +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{tryjob.json → input_commit_with_id_without_repo.json} +6 -11
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{tryjob_empty_revision.json → multiple_patch_refs.json} +8 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_apply_patch_on_gclient.json +19 -29
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/{trychange.json → refs.json} +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/reset_root_solution_revision.json +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail.json +51 -6
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch.json +50 -6
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch_download.json +51 -6
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle.json +17 -25
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_branch_heads.json +17 -25
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_feature_branch.json +18 -26
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_v8_feature_branch.json +18 -26
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_webrtc.json +26 -28
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8.json +45 -5
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8_head_by_default.json +17 -25
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/unrecognized_commit_repo.json +13 -0
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_manifest_name.json +13 -152
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_tags.json +4 -9
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.py +185 -202
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/bot_update.py +52 -157
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/test_api.py +5 -14
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/tests/ensure_checkout.py +34 -0
- data/vendor/depot_tools/recipes/recipe_modules/cipd/api.py +14 -2
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/basic.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/basic_pkg.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/describe-failed.json +7 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/describe-many-instances.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/mac64.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_file.json +9 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_mode.json +9 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_verfile.json +9 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/win64.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk arch.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk bits.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_32.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_64.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_32.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_64.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_mips_64.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/mac_intel_64.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_32.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_64.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/depot_tools/api.py +13 -8
- data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/basic.json +18 -12
- data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/basic_luci.json +18 -12
- data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/win.json +18 -12
- data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.py +3 -0
- data/vendor/depot_tools/recipes/recipe_modules/gclient/__init__.py +1 -0
- data/vendor/depot_tools/recipes/recipe_modules/gclient/api.py +58 -46
- data/vendor/depot_tools/recipes/recipe_modules/gclient/config.py +65 -22
- data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/basic.json +20 -21
- data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/buildbot.json +20 -21
- data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/revision.json +20 -21
- data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/tryserver.json +20 -21
- data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.py +5 -2
- data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/patch_project.py +62 -14
- data/vendor/depot_tools/recipes/recipe_modules/gerrit/api.py +24 -38
- data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.expected/basic.json +56 -50
- data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.py +15 -9
- data/vendor/depot_tools/recipes/recipe_modules/git/__init__.py +4 -1
- data/vendor/depot_tools/recipes/recipe_modules/git/api.py +34 -22
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_branch.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_file_name.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_hash.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_luci.json +222 -0
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_ref.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_submodule_update_force.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_tags.json +224 -0
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/can_fail_build.json +10 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/cannot_fail_build.json +5 -7
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/cat-file_test.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_delta.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_failed.json +5 -7
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_with_bad_output.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_with_bad_output_fails_build.json +10 -5
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/curl_trace_file.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/git-cache-checkout.json +8 -9
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/platform_win.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/rebase_failed.json +12 -8
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/remote_not_origin.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/set_got_revision.json +5 -6
- data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.py +27 -11
- data/vendor/depot_tools/recipes/recipe_modules/git_cl/api.py +1 -1
- data/vendor/depot_tools/recipes/recipe_modules/git_cl/examples/full.expected/basic.json +12 -13
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/__init__.py +5 -0
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/api.py +120 -5
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/examples/full.expected/basic.json +45 -3
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/examples/full.py +25 -0
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/resources/gerrit_client.py +56 -4
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/tests/parse_repo_url.expected/basic.json +6 -0
- data/vendor/depot_tools/recipes/recipe_modules/gitiles/tests/parse_repo_url.py +49 -0
- data/vendor/depot_tools/recipes/recipe_modules/gsutil/api.py +24 -13
- data/vendor/depot_tools/recipes/recipe_modules/gsutil/examples/full.expected/basic.json +13 -14
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/basic.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_linux.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_mac.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_win.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_linux.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_mac.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_win.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_linux.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_mac.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_win.json +2 -3
- data/vendor/depot_tools/recipes/recipe_modules/infra_paths/path_config.py +1 -2
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/__init__.py +35 -0
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/api.py +116 -0
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/linux.json +22 -0
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/mac.json +82 -0
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/win.json +22 -0
- data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.py +23 -0
- data/vendor/depot_tools/recipes/recipe_modules/presubmit/__init__.py +1 -0
- data/vendor/depot_tools/recipes/recipe_modules/presubmit/api.py +2 -7
- data/vendor/depot_tools/recipes/recipe_modules/presubmit/examples/full.expected/basic.json +7 -6
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/__init__.py +1 -0
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/api.py +117 -8
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/basic_tags.json +4 -5
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/set_failure_hash_with_no_steps.json +7 -4
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_gerrit_patch.json +98 -7
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_gerrit_patch_and_target_ref.json +147 -0
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_git_patch.json +8 -5
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_git_patch_luci.json +8 -5
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch.json +9 -6
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch_new.json +9 -6
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.py +27 -2
- data/vendor/depot_tools/recipes/recipe_modules/tryserver/test_api.py +14 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/__init__.py +25 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/api.py +137 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/linux.json +22 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/mac.json +22 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/win.json +107 -0
- data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.py +26 -0
- data/vendor/depot_tools/recipes/recipes.py +37 -27
- data/vendor/depot_tools/recipes/recipes/fetch_end_to_end_test.expected/basic.json +7 -10
- data/vendor/depot_tools/repo +34 -8
- data/vendor/depot_tools/roll_dep.py +52 -49
- data/vendor/depot_tools/scm.py +38 -23
- data/vendor/depot_tools/setup_color.py +4 -2
- data/vendor/depot_tools/split_cl.py +32 -4
- data/vendor/depot_tools/subprocess2.py +22 -4
- data/vendor/depot_tools/third_party/httplib2/README.chromium +2 -2
- data/vendor/depot_tools/third_party/httplib2/__init__.py +242 -158
- data/vendor/depot_tools/third_party/httplib2/cacerts.txt +57 -44
- data/vendor/depot_tools/third_party/httplib2/socks.py +15 -5
- data/vendor/depot_tools/third_party/logilab/README.chromium +2 -4
- data/vendor/depot_tools/third_party/logilab/astroid/README.chromium +2 -1
- data/vendor/depot_tools/third_party/logilab/astroid/__init__.py +10 -5
- data/vendor/depot_tools/third_party/logilab/astroid/__pkginfo__.py +5 -5
- data/vendor/depot_tools/third_party/logilab/astroid/arguments.py +233 -0
- data/vendor/depot_tools/third_party/logilab/astroid/as_string.py +82 -33
- data/vendor/depot_tools/third_party/logilab/astroid/bases.py +137 -153
- data/vendor/depot_tools/third_party/logilab/astroid/brain/{builtin_inference.py → brain_builtin_inference.py} +117 -26
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_dateutil.py +15 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/{py2gi.py → brain_gi.py} +48 -8
- data/vendor/depot_tools/third_party/logilab/astroid/brain/{py2mechanize.py → brain_mechanize.py} +0 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/{pynose.py → brain_nose.py} +4 -1
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_numpy.py +62 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_pytest.py +76 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_qt.py +44 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/{pysix_moves.py → brain_six.py} +28 -1
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_ssl.py +65 -0
- data/vendor/depot_tools/third_party/logilab/astroid/brain/brain_stdlib.py +473 -0
- data/vendor/depot_tools/third_party/logilab/astroid/builder.py +104 -81
- data/vendor/depot_tools/third_party/logilab/astroid/context.py +81 -0
- data/vendor/depot_tools/third_party/logilab/astroid/decorators.py +75 -0
- data/vendor/depot_tools/third_party/logilab/astroid/exceptions.py +20 -0
- data/vendor/depot_tools/third_party/logilab/astroid/inference.py +137 -183
- data/vendor/depot_tools/third_party/logilab/astroid/manager.py +45 -169
- data/vendor/depot_tools/third_party/logilab/astroid/mixins.py +37 -14
- data/vendor/depot_tools/third_party/logilab/astroid/modutils.py +112 -41
- data/vendor/depot_tools/third_party/logilab/astroid/node_classes.py +243 -156
- data/vendor/depot_tools/third_party/logilab/astroid/nodes.py +35 -22
- data/vendor/depot_tools/third_party/logilab/astroid/objects.py +186 -0
- data/vendor/depot_tools/third_party/logilab/astroid/protocols.py +157 -102
- data/vendor/depot_tools/third_party/logilab/astroid/raw_building.py +32 -8
- data/vendor/depot_tools/third_party/logilab/astroid/rebuilder.py +372 -309
- data/vendor/depot_tools/third_party/logilab/astroid/scoped_nodes.py +652 -420
- data/vendor/depot_tools/third_party/logilab/astroid/test_utils.py +4 -21
- data/vendor/depot_tools/third_party/logilab/astroid/transforms.py +96 -0
- data/vendor/depot_tools/third_party/logilab/astroid/util.py +89 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/LICENSE +19 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/README.chromium +11 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/__init__.py +20 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/cext.c +1421 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/compat.py +9 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/simple.py +246 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/slots.py +414 -0
- data/vendor/depot_tools/third_party/logilab/lazy_object_proxy/utils.py +13 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/LICENSE +24 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/README.chromium +11 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/__init__.py +19 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/_wrappers.c +2729 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/arguments.py +96 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/decorators.py +512 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/importer.py +228 -0
- data/vendor/depot_tools/third_party/logilab/wrapt/wrappers.py +901 -0
- data/vendor/depot_tools/third_party/pylint/README.chromium +2 -25
- data/vendor/depot_tools/third_party/pylint/__pkginfo__.py +13 -3
- data/vendor/depot_tools/third_party/pylint/checkers/__init__.py +1 -2
- data/vendor/depot_tools/third_party/pylint/checkers/async.py +82 -0
- data/vendor/depot_tools/third_party/pylint/checkers/base.py +893 -119
- data/vendor/depot_tools/third_party/pylint/checkers/classes.py +342 -204
- data/vendor/depot_tools/third_party/pylint/checkers/design_analysis.py +51 -34
- data/vendor/depot_tools/third_party/pylint/checkers/exceptions.py +84 -47
- data/vendor/depot_tools/third_party/pylint/checkers/format.py +55 -30
- data/vendor/depot_tools/third_party/pylint/checkers/imports.py +314 -73
- data/vendor/depot_tools/third_party/pylint/checkers/logging.py +10 -8
- data/vendor/depot_tools/third_party/pylint/checkers/misc.py +2 -1
- data/vendor/depot_tools/third_party/pylint/checkers/newstyle.py +45 -48
- data/vendor/depot_tools/third_party/pylint/checkers/python3.py +31 -21
- data/vendor/depot_tools/third_party/pylint/checkers/raw_metrics.py +3 -3
- data/vendor/depot_tools/third_party/pylint/checkers/similar.py +4 -5
- data/vendor/depot_tools/third_party/pylint/checkers/spelling.py +24 -10
- data/vendor/depot_tools/third_party/pylint/checkers/stdlib.py +120 -56
- data/vendor/depot_tools/third_party/pylint/checkers/strings.py +38 -35
- data/vendor/depot_tools/third_party/pylint/checkers/typecheck.py +485 -138
- data/vendor/depot_tools/third_party/pylint/checkers/utils.py +319 -142
- data/vendor/depot_tools/third_party/pylint/checkers/variables.py +329 -207
- data/vendor/depot_tools/third_party/pylint/config.py +739 -76
- data/vendor/depot_tools/third_party/pylint/epylint.py +9 -5
- data/vendor/depot_tools/third_party/pylint/extensions/__init__.py +0 -0
- data/vendor/depot_tools/third_party/pylint/extensions/check_docs.py +311 -0
- data/vendor/depot_tools/third_party/pylint/extensions/check_elif.py +62 -0
- data/vendor/depot_tools/third_party/{logilab/common → pylint}/graph.py +30 -133
- data/vendor/depot_tools/third_party/pylint/gui.py +2 -2
- data/vendor/depot_tools/third_party/pylint/interfaces.py +21 -3
- data/vendor/depot_tools/third_party/pylint/lint.py +123 -140
- data/vendor/depot_tools/third_party/pylint/pyreverse/diadefslib.py +10 -13
- data/vendor/depot_tools/third_party/pylint/pyreverse/diagrams.py +15 -4
- data/vendor/depot_tools/third_party/pylint/pyreverse/inspector.py +372 -0
- data/vendor/depot_tools/third_party/pylint/pyreverse/main.py +30 -7
- data/vendor/depot_tools/third_party/pylint/pyreverse/utils.py +80 -2
- data/vendor/depot_tools/third_party/{logilab/common → pylint/pyreverse}/vcgutils.py +19 -37
- data/vendor/depot_tools/third_party/pylint/pyreverse/writer.py +3 -4
- data/vendor/depot_tools/third_party/pylint/reporters/__init__.py +34 -18
- data/vendor/depot_tools/third_party/pylint/reporters/guireporter.py +1 -1
- data/vendor/depot_tools/third_party/pylint/reporters/html.py +10 -3
- data/vendor/depot_tools/third_party/pylint/reporters/json.py +10 -4
- data/vendor/depot_tools/third_party/pylint/reporters/text.py +94 -3
- data/vendor/depot_tools/third_party/pylint/reporters/ureports/__init__.py +106 -0
- data/vendor/depot_tools/third_party/{logilab/common → pylint/reporters}/ureports/html_writer.py +17 -57
- data/vendor/depot_tools/third_party/{logilab/common → pylint/reporters}/ureports/nodes.py +52 -74
- data/vendor/depot_tools/third_party/{logilab/common → pylint/reporters}/ureports/text_writer.py +14 -60
- data/vendor/depot_tools/third_party/pylint/testutils.py +22 -20
- data/vendor/depot_tools/third_party/pylint/utils.py +268 -44
- data/vendor/depot_tools/third_party/repo/progress.py +42 -0
- data/vendor/depot_tools/update_depot_tools +1 -1
- data/vendor/depot_tools/upload_metrics.py +25 -0
- data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +45 -15
- data/vendor/depot_tools/win_toolchain/package_from_installed.py +71 -24
- data/vendor/depot_tools/yapf +1 -1
- data/vendor/depot_tools/yapf.bat +1 -1
- metadata +92 -77
- data/vendor/depot_tools/git-crsync +0 -3
- data/vendor/depot_tools/infra/config/cq.cfg +0 -32
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/apply_gerrit_ref.json +0 -29
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/apply_gerrit_ref_custom.json +0 -29
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/buildbot.json +0 -105
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/shallow.json +0 -195
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle_deprecated.json +0 -248
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_v8.json +0 -248
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_manifest_name_no_patch.json +0 -105
- data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/apply_gerrit.py +0 -33
- data/vendor/depot_tools/third_party/logilab/astroid/brain/py2pytest.py +0 -31
- data/vendor/depot_tools/third_party/logilab/astroid/brain/py2qt4.py +0 -22
- data/vendor/depot_tools/third_party/logilab/astroid/brain/py2stdlib.py +0 -334
- data/vendor/depot_tools/third_party/logilab/astroid/inspector.py +0 -273
- data/vendor/depot_tools/third_party/logilab/astroid/utils.py +0 -239
- data/vendor/depot_tools/third_party/logilab/common/LICENSE.txt +0 -339
- data/vendor/depot_tools/third_party/logilab/common/README.chromium +0 -11
- data/vendor/depot_tools/third_party/logilab/common/__init__.py +0 -175
- data/vendor/depot_tools/third_party/logilab/common/__pkginfo__.py +0 -57
- data/vendor/depot_tools/third_party/logilab/common/cache.py +0 -114
- data/vendor/depot_tools/third_party/logilab/common/changelog.py +0 -238
- data/vendor/depot_tools/third_party/logilab/common/clcommands.py +0 -334
- data/vendor/depot_tools/third_party/logilab/common/cli.py +0 -211
- data/vendor/depot_tools/third_party/logilab/common/compat.py +0 -78
- data/vendor/depot_tools/third_party/logilab/common/configuration.py +0 -1105
- data/vendor/depot_tools/third_party/logilab/common/contexts.py +0 -5
- data/vendor/depot_tools/third_party/logilab/common/corbautils.py +0 -117
- data/vendor/depot_tools/third_party/logilab/common/daemon.py +0 -101
- data/vendor/depot_tools/third_party/logilab/common/date.py +0 -335
- data/vendor/depot_tools/third_party/logilab/common/dbf.py +0 -231
- data/vendor/depot_tools/third_party/logilab/common/debugger.py +0 -214
- data/vendor/depot_tools/third_party/logilab/common/decorators.py +0 -281
- data/vendor/depot_tools/third_party/logilab/common/deprecation.py +0 -189
- data/vendor/depot_tools/third_party/logilab/common/fileutils.py +0 -404
- data/vendor/depot_tools/third_party/logilab/common/interface.py +0 -71
- data/vendor/depot_tools/third_party/logilab/common/logging_ext.py +0 -195
- data/vendor/depot_tools/third_party/logilab/common/modutils.py +0 -702
- data/vendor/depot_tools/third_party/logilab/common/optik_ext.py +0 -392
- data/vendor/depot_tools/third_party/logilab/common/optparser.py +0 -92
- data/vendor/depot_tools/third_party/logilab/common/proc.py +0 -277
- data/vendor/depot_tools/third_party/logilab/common/pyro_ext.py +0 -180
- data/vendor/depot_tools/third_party/logilab/common/pytest.py +0 -1199
- data/vendor/depot_tools/third_party/logilab/common/registry.py +0 -1119
- data/vendor/depot_tools/third_party/logilab/common/shellutils.py +0 -462
- data/vendor/depot_tools/third_party/logilab/common/sphinx_ext.py +0 -87
- data/vendor/depot_tools/third_party/logilab/common/sphinxutils.py +0 -122
- data/vendor/depot_tools/third_party/logilab/common/table.py +0 -929
- data/vendor/depot_tools/third_party/logilab/common/tasksqueue.py +0 -101
- data/vendor/depot_tools/third_party/logilab/common/testlib.py +0 -1392
- data/vendor/depot_tools/third_party/logilab/common/textutils.py +0 -537
- data/vendor/depot_tools/third_party/logilab/common/tree.py +0 -369
- data/vendor/depot_tools/third_party/logilab/common/umessage.py +0 -194
- data/vendor/depot_tools/third_party/logilab/common/ureports/__init__.py +0 -172
- data/vendor/depot_tools/third_party/logilab/common/ureports/docbook_writer.py +0 -140
- data/vendor/depot_tools/third_party/logilab/common/urllib2ext.py +0 -89
- data/vendor/depot_tools/third_party/logilab/common/visitor.py +0 -109
- data/vendor/depot_tools/third_party/logilab/common/xmlrpcutils.py +0 -131
- data/vendor/depot_tools/third_party/logilab/common/xmlutils.py +0 -61
@@ -55,9 +55,6 @@ COMMIT_ORIGINAL_POSITION_FOOTER_KEY = 'Cr-Original-Commit-Position'
|
|
55
55
|
# Regular expression to parse gclient's revinfo entries.
|
56
56
|
REVINFO_RE = re.compile(r'^([^:]+):\s+([^@]+)@(.+)$')
|
57
57
|
|
58
|
-
# Regular expression to match gclient's patch error message.
|
59
|
-
PATCH_ERROR_RE = re.compile('Failed to apply .* @ .* to .* at .*')
|
60
|
-
|
61
58
|
# Copied from scripts/recipes/chromium.py.
|
62
59
|
GOT_REVISION_MAPPINGS = {
|
63
60
|
CHROMIUM_SRC_URL: {
|
@@ -87,11 +84,6 @@ ATTEMPTS = 5
|
|
87
84
|
GIT_CACHE_PATH = path.join(DEPOT_TOOLS_DIR, 'git_cache.py')
|
88
85
|
GCLIENT_PATH = path.join(DEPOT_TOOLS_DIR, 'gclient.py')
|
89
86
|
|
90
|
-
# If there is less than 100GB of disk space on the system, then we do
|
91
|
-
# a shallow checkout.
|
92
|
-
SHALLOW_CLONE_THRESHOLD = 100 * 1024 * 1024 * 1024
|
93
|
-
|
94
|
-
|
95
87
|
class SubprocessFailed(Exception):
|
96
88
|
def __init__(self, message, code, output):
|
97
89
|
Exception.__init__(self, message)
|
@@ -351,22 +343,20 @@ def git_config_if_not_set(key, value):
|
|
351
343
|
|
352
344
|
|
353
345
|
def gclient_sync(
|
354
|
-
with_branch_heads, with_tags,
|
355
|
-
disable_syntax_validation,
|
356
|
-
gerrit_rebase_patch_ref
|
346
|
+
with_branch_heads, with_tags, revisions, break_repo_locks,
|
347
|
+
disable_syntax_validation, patch_refs, gerrit_reset,
|
348
|
+
gerrit_rebase_patch_ref):
|
357
349
|
# We just need to allocate a filename.
|
358
350
|
fd, gclient_output_file = tempfile.mkstemp(suffix='.json')
|
359
351
|
os.close(fd)
|
360
352
|
|
361
353
|
args = ['sync', '--verbose', '--reset', '--force',
|
362
|
-
|
363
|
-
|
354
|
+
'--ignore_locks', '--output-json', gclient_output_file,
|
355
|
+
'--nohooks', '--noprehooks', '--delete_unversioned_trees']
|
364
356
|
if with_branch_heads:
|
365
357
|
args += ['--with_branch_heads']
|
366
358
|
if with_tags:
|
367
359
|
args += ['--with_tags']
|
368
|
-
if shallow:
|
369
|
-
args += ['--shallow']
|
370
360
|
if break_repo_locks:
|
371
361
|
args += ['--break_repo_locks']
|
372
362
|
if disable_syntax_validation:
|
@@ -376,10 +366,9 @@ def gclient_sync(
|
|
376
366
|
revision = 'origin/master'
|
377
367
|
args.extend(['--revision', '%s@%s' % (name, revision)])
|
378
368
|
|
379
|
-
if
|
380
|
-
|
381
|
-
|
382
|
-
args.extend(['--patch-ref', gerrit_repo + '@' + gerrit_ref])
|
369
|
+
if patch_refs:
|
370
|
+
for patch_ref in patch_refs:
|
371
|
+
args.extend(['--patch-ref', patch_ref])
|
383
372
|
if not gerrit_reset:
|
384
373
|
args.append('--no-reset-patch-ref')
|
385
374
|
if not gerrit_rebase_patch_ref:
|
@@ -390,7 +379,7 @@ def gclient_sync(
|
|
390
379
|
except SubprocessFailed as e:
|
391
380
|
# If gclient sync is handling patching, parse the output for a patch error
|
392
381
|
# message.
|
393
|
-
if
|
382
|
+
if 'Failed to apply patch.' in e.output:
|
394
383
|
raise PatchFailed(e.message, e.code, e.output)
|
395
384
|
# Throw a GclientSyncFailed exception so we can catch this independently.
|
396
385
|
raise GclientSyncFailed(e.message, e.code, e.output)
|
@@ -446,7 +435,7 @@ def create_manifest_old():
|
|
446
435
|
|
447
436
|
|
448
437
|
# TODO(hinoka): Include patch revision.
|
449
|
-
def create_manifest(gclient_output, patch_root
|
438
|
+
def create_manifest(gclient_output, patch_root):
|
450
439
|
"""Return the JSONPB equivilent of the source manifest proto.
|
451
440
|
|
452
441
|
The source manifest proto is defined here:
|
@@ -483,8 +472,6 @@ def create_manifest(gclient_output, patch_root, gerrit_ref):
|
|
483
472
|
'revision': revision,
|
484
473
|
}
|
485
474
|
}
|
486
|
-
if patch_root == directory:
|
487
|
-
dirs[directory]['git_checkout']['patch_fetch_ref'] = gerrit_ref
|
488
475
|
|
489
476
|
manifest['directories'] = dirs
|
490
477
|
return manifest
|
@@ -560,7 +547,9 @@ def _get_target_branch_and_revision(solution_name, git_url, revisions):
|
|
560
547
|
if len(parts) == 2:
|
561
548
|
# Support for "branch:revision" syntax.
|
562
549
|
return parts
|
563
|
-
|
550
|
+
if COMMIT_HASH_RE.match(configured):
|
551
|
+
return 'master', configured
|
552
|
+
return configured, 'HEAD'
|
564
553
|
|
565
554
|
|
566
555
|
def get_target_pin(solution_name, git_url, revisions):
|
@@ -584,7 +573,10 @@ def force_solution_revision(solution_name, git_url, revisions, cwd):
|
|
584
573
|
# This will also not work if somebody passes a local refspec like
|
585
574
|
# refs/heads/master. It needs to translate to refs/remotes/origin/master
|
586
575
|
# first. See also https://crbug.com/740456 .
|
587
|
-
|
576
|
+
if branch.startswith(('refs/', 'origin/')):
|
577
|
+
treeish = branch
|
578
|
+
else:
|
579
|
+
treeish = 'origin/' + branch
|
588
580
|
|
589
581
|
# Note that -- argument is necessary to ensure that git treats `treeish`
|
590
582
|
# argument as revision or ref, and not as a file/directory which happens to
|
@@ -592,13 +584,15 @@ def force_solution_revision(solution_name, git_url, revisions, cwd):
|
|
592
584
|
git('checkout', '--force', treeish, '--', cwd=cwd)
|
593
585
|
|
594
586
|
|
595
|
-
def _has_in_git_cache(revision_sha1, git_cache_dir, url):
|
587
|
+
def _has_in_git_cache(revision_sha1, refs, git_cache_dir, url):
|
596
588
|
"""Returns whether given revision_sha1 is contained in cache of a given repo.
|
597
589
|
"""
|
598
590
|
try:
|
599
591
|
mirror_dir = git(
|
600
592
|
'cache', 'exists', '--quiet', '--cache-dir', git_cache_dir, url).strip()
|
601
593
|
git('cat-file', '-e', revision_sha1, cwd=mirror_dir)
|
594
|
+
for ref in refs:
|
595
|
+
git('cat-file', '-e', ref, cwd=mirror_dir)
|
602
596
|
return True
|
603
597
|
except SubprocessFailed:
|
604
598
|
return False
|
@@ -637,14 +631,12 @@ def _maybe_break_locks(checkout_path, tries=3):
|
|
637
631
|
|
638
632
|
|
639
633
|
|
640
|
-
def git_checkouts(solutions, revisions,
|
641
|
-
cleanup_dir):
|
634
|
+
def git_checkouts(solutions, revisions, refs, git_cache_dir, cleanup_dir):
|
642
635
|
build_dir = os.getcwd()
|
643
636
|
first_solution = True
|
644
637
|
for sln in solutions:
|
645
638
|
sln_dir = path.join(build_dir, sln['name'])
|
646
|
-
_git_checkout(sln, sln_dir, revisions,
|
647
|
-
cleanup_dir)
|
639
|
+
_git_checkout(sln, sln_dir, revisions, refs, git_cache_dir, cleanup_dir)
|
648
640
|
if first_solution:
|
649
641
|
git_ref = git('log', '--format=%H', '--max-count=1',
|
650
642
|
cwd=path.join(build_dir, sln['name'])
|
@@ -653,17 +645,11 @@ def git_checkouts(solutions, revisions, shallow, refs, git_cache_dir,
|
|
653
645
|
return git_ref
|
654
646
|
|
655
647
|
|
656
|
-
def _git_checkout(sln, sln_dir, revisions,
|
657
|
-
cleanup_dir):
|
648
|
+
def _git_checkout(sln, sln_dir, revisions, refs, git_cache_dir, cleanup_dir):
|
658
649
|
name = sln['name']
|
659
650
|
url = sln['url']
|
660
|
-
if url == CHROMIUM_SRC_URL or url + '.git' == CHROMIUM_SRC_URL:
|
661
|
-
# Experiments show there's little to be gained from
|
662
|
-
# a shallow clone of src.
|
663
|
-
shallow = False
|
664
|
-
s = ['--shallow'] if shallow else []
|
665
651
|
populate_cmd = (['cache', 'populate', '--ignore_locks', '-v',
|
666
|
-
'--cache-dir', git_cache_dir
|
652
|
+
'--cache-dir', git_cache_dir, url, '--reset-fetch-config'])
|
667
653
|
for ref in refs:
|
668
654
|
populate_cmd.extend(['--ref', ref])
|
669
655
|
|
@@ -680,7 +666,7 @@ def _git_checkout(sln, sln_dir, revisions, shallow, refs, git_cache_dir,
|
|
680
666
|
if not pin:
|
681
667
|
# Refresh only once.
|
682
668
|
git(*populate_cmd, env=env)
|
683
|
-
elif _has_in_git_cache(pin, git_cache_dir, url):
|
669
|
+
elif _has_in_git_cache(pin, refs, git_cache_dir, url):
|
684
670
|
# No need to fetch at all, because we already have needed revision.
|
685
671
|
pass
|
686
672
|
else:
|
@@ -694,7 +680,7 @@ def _git_checkout(sln, sln_dir, revisions, shallow, refs, git_cache_dir,
|
|
694
680
|
# maintainers of *.googlesource.com (workaround git server replication
|
695
681
|
# lag).
|
696
682
|
git(*populate_cmd, env=env)
|
697
|
-
if _has_in_git_cache(pin, git_cache_dir, url):
|
683
|
+
if _has_in_git_cache(pin, refs, git_cache_dir, url):
|
698
684
|
break
|
699
685
|
overrun = time.time() - soft_deadline
|
700
686
|
# Only kick in deadline after second attempt to ensure we retry at least
|
@@ -731,6 +717,7 @@ def _git_checkout(sln, sln_dir, revisions, shallow, refs, git_cache_dir,
|
|
731
717
|
_git_disable_gc(sln_dir)
|
732
718
|
git('remote', 'set-url', 'origin', mirror_dir, cwd=sln_dir)
|
733
719
|
git('fetch', 'origin', cwd=sln_dir)
|
720
|
+
git('remote', 'set-url', '--push', 'origin', url, cwd=sln_dir)
|
734
721
|
for ref in refs:
|
735
722
|
refspec = '%s:%s' % (ref, ref.lstrip('+'))
|
736
723
|
git('fetch', 'origin', refspec, cwd=sln_dir)
|
@@ -770,58 +757,6 @@ def _download(url):
|
|
770
757
|
raise
|
771
758
|
|
772
759
|
|
773
|
-
def apply_gerrit_ref(gerrit_repo, gerrit_ref, root, gerrit_reset,
|
774
|
-
gerrit_rebase_patch_ref):
|
775
|
-
gerrit_repo = gerrit_repo or 'origin'
|
776
|
-
assert gerrit_ref
|
777
|
-
base_rev = git('rev-parse', 'HEAD', cwd=root).strip()
|
778
|
-
|
779
|
-
print '===Applying gerrit ref==='
|
780
|
-
print 'Repo is %r @ %r, ref is %r, root is %r' % (
|
781
|
-
gerrit_repo, base_rev, gerrit_ref, root)
|
782
|
-
# TODO(tandrii): move the fix below to common gerrit codepath.
|
783
|
-
# Speculative fix: prior bot_update run with Rietveld patch may leave git
|
784
|
-
# index with unmerged paths. bot_update calls 'checkout --force xyz' thus
|
785
|
-
# ignoring such paths, but potentially never cleaning them up. The following
|
786
|
-
# command will do so. See http://crbug.com/692067.
|
787
|
-
git('reset', '--hard', cwd=root)
|
788
|
-
try:
|
789
|
-
git('fetch', gerrit_repo, gerrit_ref, cwd=root)
|
790
|
-
git('checkout', 'FETCH_HEAD', cwd=root)
|
791
|
-
|
792
|
-
if gerrit_rebase_patch_ref:
|
793
|
-
print '===Rebasing==='
|
794
|
-
# git rebase requires a branch to operate on.
|
795
|
-
temp_branch_name = 'tmp/' + uuid.uuid4().hex
|
796
|
-
try:
|
797
|
-
ok = False
|
798
|
-
git('checkout', '-b', temp_branch_name, cwd=root)
|
799
|
-
try:
|
800
|
-
git('-c', 'user.name=chrome-bot',
|
801
|
-
'-c', 'user.email=chrome-bot@chromium.org',
|
802
|
-
'rebase', base_rev, cwd=root)
|
803
|
-
except SubprocessFailed:
|
804
|
-
# Abort the rebase since there were failures.
|
805
|
-
git('rebase', '--abort', cwd=root)
|
806
|
-
raise
|
807
|
-
|
808
|
-
# Get off of the temporary branch since it can't be deleted otherwise.
|
809
|
-
cur_rev = git('rev-parse', 'HEAD', cwd=root).strip()
|
810
|
-
git('checkout', cur_rev, cwd=root)
|
811
|
-
git('branch', '-D', temp_branch_name, cwd=root)
|
812
|
-
ok = True
|
813
|
-
finally:
|
814
|
-
if not ok:
|
815
|
-
# Get off of the temporary branch since it can't be deleted otherwise.
|
816
|
-
git('checkout', base_rev, cwd=root)
|
817
|
-
git('branch', '-D', temp_branch_name, cwd=root)
|
818
|
-
|
819
|
-
if gerrit_reset:
|
820
|
-
git('reset', '--soft', base_rev, cwd=root)
|
821
|
-
except SubprocessFailed as e:
|
822
|
-
raise PatchFailed(e.message, e.code, e.output)
|
823
|
-
|
824
|
-
|
825
760
|
def get_commit_position(git_path, revision='HEAD'):
|
826
761
|
"""Dumps the 'git' log for a specific revision and parses out the commit
|
827
762
|
position.
|
@@ -881,33 +816,15 @@ def emit_json(out_file, did_run, gclient_output=None, **kwargs):
|
|
881
816
|
|
882
817
|
|
883
818
|
def ensure_checkout(solutions, revisions, first_sln, target_os, target_os_only,
|
884
|
-
target_cpu, patch_root,
|
885
|
-
gerrit_rebase_patch_ref,
|
886
|
-
cleanup_dir, gerrit_reset, disable_syntax_validation
|
887
|
-
apply_patch_on_gclient):
|
819
|
+
target_cpu, patch_root, patch_refs,
|
820
|
+
gerrit_rebase_patch_ref, refs, git_cache_dir,
|
821
|
+
cleanup_dir, gerrit_reset, disable_syntax_validation):
|
888
822
|
# Get a checkout of each solution, without DEPS or hooks.
|
889
823
|
# Calling git directly because there is no way to run Gclient without
|
890
824
|
# invoking DEPS.
|
891
825
|
print 'Fetching Git checkout'
|
892
826
|
|
893
|
-
git_checkouts(solutions, revisions,
|
894
|
-
|
895
|
-
applied_gerrit_patch = False
|
896
|
-
if not apply_patch_on_gclient:
|
897
|
-
print '===Processing patch solutions==='
|
898
|
-
patch_root = patch_root or ''
|
899
|
-
print 'Patch root is %r' % patch_root
|
900
|
-
for solution in solutions:
|
901
|
-
print 'Processing solution %r' % solution['name']
|
902
|
-
if (patch_root == solution['name'] or
|
903
|
-
solution['name'].startswith(patch_root + '/')):
|
904
|
-
relative_root = solution['name'][len(patch_root) + 1:]
|
905
|
-
target = '/'.join([relative_root, 'DEPS']).lstrip('/')
|
906
|
-
print ' relative root is %r, target is %r' % (relative_root, target)
|
907
|
-
if gerrit_ref:
|
908
|
-
apply_gerrit_ref(gerrit_repo, gerrit_ref, patch_root, gerrit_reset,
|
909
|
-
gerrit_rebase_patch_ref)
|
910
|
-
applied_gerrit_patch = True
|
827
|
+
git_checkouts(solutions, revisions, refs, git_cache_dir, cleanup_dir)
|
911
828
|
|
912
829
|
# Ensure our build/ directory is set up with the correct .gclient file.
|
913
830
|
gclient_configure(solutions, target_os, target_os_only, target_cpu,
|
@@ -935,29 +852,18 @@ def ensure_checkout(solutions, revisions, first_sln, target_os, target_os_only,
|
|
935
852
|
gclient_output = gclient_sync(
|
936
853
|
BRANCH_HEADS_REFSPEC in refs,
|
937
854
|
TAGS_REFSPEC in refs,
|
938
|
-
shallow,
|
939
855
|
gc_revisions,
|
940
856
|
break_repo_locks,
|
941
857
|
disable_syntax_validation,
|
942
|
-
|
943
|
-
gerrit_ref,
|
858
|
+
patch_refs,
|
944
859
|
gerrit_reset,
|
945
|
-
gerrit_rebase_patch_ref
|
946
|
-
apply_patch_on_gclient)
|
860
|
+
gerrit_rebase_patch_ref)
|
947
861
|
|
948
862
|
# Now that gclient_sync has finished, we should revert any .DEPS.git so that
|
949
863
|
# presubmit doesn't complain about it being modified.
|
950
864
|
if git('ls-files', '.DEPS.git', cwd=first_sln).strip():
|
951
865
|
git('checkout', 'HEAD', '--', '.DEPS.git', cwd=first_sln)
|
952
866
|
|
953
|
-
# Apply the rest of the patch here (sans DEPS)
|
954
|
-
if gerrit_ref and not applied_gerrit_patch and not apply_patch_on_gclient:
|
955
|
-
# If gerrit_ref was for solution's main repository, it has already been
|
956
|
-
# applied above. This chunk is executed only for patches to DEPS-ed in
|
957
|
-
# git repositories.
|
958
|
-
apply_gerrit_ref(gerrit_repo, gerrit_ref, patch_root, gerrit_reset,
|
959
|
-
gerrit_rebase_patch_ref)
|
960
|
-
|
961
867
|
# Reset the deps_file point in the solutions so that hooks get run properly.
|
962
868
|
for sln in solutions:
|
963
869
|
sln['deps_file'] = sln.get('deps_file', 'DEPS').replace('.DEPS.git', 'DEPS')
|
@@ -980,11 +886,11 @@ def parse_revisions(revisions, root):
|
|
980
886
|
# TODO(hinoka): Delete this when webkit switches to recipes.
|
981
887
|
expanded_revisions.extend(revision.split(','))
|
982
888
|
for revision in expanded_revisions:
|
983
|
-
split_revision = revision.split('@')
|
889
|
+
split_revision = revision.split('@', 1)
|
984
890
|
if len(split_revision) == 1:
|
985
891
|
# This is just a plain revision, set it as the revision for root.
|
986
892
|
results[root] = split_revision[0]
|
987
|
-
|
893
|
+
else:
|
988
894
|
# This is an alt_root@revision argument.
|
989
895
|
current_root, current_rev = split_revision
|
990
896
|
|
@@ -1002,9 +908,7 @@ def parse_revisions(revisions, root):
|
|
1002
908
|
normalized_root = current_root.strip('/')
|
1003
909
|
|
1004
910
|
results[normalized_root] = current_rev
|
1005
|
-
|
1006
|
-
print ('WARNING: %r is not recognized as a valid revision specification,'
|
1007
|
-
'skipping' % revision)
|
911
|
+
|
1008
912
|
return results
|
1009
913
|
|
1010
914
|
|
@@ -1014,9 +918,8 @@ def parse_args():
|
|
1014
918
|
parse.add_option('--root', dest='patch_root',
|
1015
919
|
help='DEPRECATED: Use --patch_root.')
|
1016
920
|
parse.add_option('--patch_root', help='Directory to patch on top of.')
|
1017
|
-
parse.add_option('--
|
1018
|
-
help='
|
1019
|
-
parse.add_option('--gerrit_ref', help='Gerrit ref to apply.')
|
921
|
+
parse.add_option('--patch_ref', dest='patch_refs', action='append', default=[],
|
922
|
+
help='Git repository & ref to apply, as REPO@REF.')
|
1020
923
|
parse.add_option('--gerrit_no_rebase_patch_ref', action='store_true',
|
1021
924
|
help='Bypass rebase of Gerrit patch ref after checkout.')
|
1022
925
|
parse.add_option('--gerrit_no_reset', action='store_true',
|
@@ -1038,9 +941,6 @@ def parse_args():
|
|
1038
941
|
help='Delete checkout first, always')
|
1039
942
|
parse.add_option('--output_json',
|
1040
943
|
help='Output JSON information into a specified file')
|
1041
|
-
parse.add_option('--maybe_shallow', action='store_true',
|
1042
|
-
help='Enables turning on shallow mode if total disk '
|
1043
|
-
'space is low.')
|
1044
944
|
parse.add_option('--refs', action='append',
|
1045
945
|
help='Also fetch this refspec for the main solution(s). '
|
1046
946
|
'Eg. +refs/branch-heads/*')
|
@@ -1057,10 +957,6 @@ def parse_args():
|
|
1057
957
|
parse.add_option(
|
1058
958
|
'--disable-syntax-validation', action='store_true',
|
1059
959
|
help='Disable validation of .gclient and DEPS syntax.')
|
1060
|
-
parse.add_option('--no-apply-patch-on-gclient',
|
1061
|
-
dest='apply_patch_on_gclient', action='store_false',
|
1062
|
-
default=True,
|
1063
|
-
help='Patch the gerrit ref in gclient instead of here.')
|
1064
960
|
|
1065
961
|
options, args = parse.parse_args()
|
1066
962
|
|
@@ -1116,7 +1012,6 @@ def prepare(options, git_slns, active):
|
|
1116
1012
|
# Make sure we tell recipes that we didn't run if the script exits here.
|
1117
1013
|
emit_json(options.output_json, did_run=active)
|
1118
1014
|
|
1119
|
-
# Do a shallow checkout if the disk is less than 100GB.
|
1120
1015
|
total_disk_space, free_disk_space = get_total_disk_space()
|
1121
1016
|
total_disk_space_gb = int(total_disk_space / (1024 * 1024 * 1024))
|
1122
1017
|
used_disk_space_gb = int((total_disk_space - free_disk_space)
|
@@ -1125,9 +1020,6 @@ def prepare(options, git_slns, active):
|
|
1125
1020
|
step_text = '[%dGB/%dGB used (%d%%)]' % (used_disk_space_gb,
|
1126
1021
|
total_disk_space_gb,
|
1127
1022
|
percent_used)
|
1128
|
-
shallow = (total_disk_space < SHALLOW_CLONE_THRESHOLD
|
1129
|
-
and options.maybe_shallow)
|
1130
|
-
|
1131
1023
|
# The first solution is where the primary DEPS file resides.
|
1132
1024
|
first_sln = dir_names[0]
|
1133
1025
|
|
@@ -1135,15 +1027,21 @@ def prepare(options, git_slns, active):
|
|
1135
1027
|
print 'Revisions: %s' % options.revision
|
1136
1028
|
revisions = parse_revisions(options.revision, first_sln)
|
1137
1029
|
print 'Fetching Git checkout at %s@%s' % (first_sln, revisions[first_sln])
|
1138
|
-
return revisions, step_text
|
1030
|
+
return revisions, step_text
|
1139
1031
|
|
1140
1032
|
|
1141
|
-
def checkout(options, git_slns, specs, revisions, step_text
|
1033
|
+
def checkout(options, git_slns, specs, revisions, step_text):
|
1142
1034
|
print 'Using Python version: %s' % (sys.version,)
|
1143
1035
|
print 'Checking git version...'
|
1144
1036
|
ver = git('version').strip()
|
1145
1037
|
print 'Using %s' % ver
|
1146
1038
|
|
1039
|
+
try:
|
1040
|
+
protocol = git('config', '--get', 'protocol.version')
|
1041
|
+
print 'Using git protocol version %s' % protocol
|
1042
|
+
except SubprocessFailed as e:
|
1043
|
+
print 'git protocol version is not specified.'
|
1044
|
+
|
1147
1045
|
first_sln = git_slns[0]['name']
|
1148
1046
|
dir_names = [sln.get('name') for sln in git_slns if 'name' in sln]
|
1149
1047
|
try:
|
@@ -1165,18 +1063,15 @@ def checkout(options, git_slns, specs, revisions, step_text, shallow):
|
|
1165
1063
|
|
1166
1064
|
# Then, pass in information about how to patch.
|
1167
1065
|
patch_root=options.patch_root,
|
1168
|
-
|
1169
|
-
gerrit_ref=options.gerrit_ref,
|
1066
|
+
patch_refs=options.patch_refs,
|
1170
1067
|
gerrit_rebase_patch_ref=not options.gerrit_no_rebase_patch_ref,
|
1171
1068
|
|
1172
|
-
# Finally, extra configurations
|
1173
|
-
shallow=shallow,
|
1069
|
+
# Finally, extra configurations cleanup dir location.
|
1174
1070
|
refs=options.refs,
|
1175
1071
|
git_cache_dir=options.git_cache_dir,
|
1176
1072
|
cleanup_dir=options.cleanup_dir,
|
1177
1073
|
gerrit_reset=not options.gerrit_no_reset,
|
1178
|
-
disable_syntax_validation=options.disable_syntax_validation
|
1179
|
-
apply_patch_on_gclient=options.apply_patch_on_gclient)
|
1074
|
+
disable_syntax_validation=options.disable_syntax_validation)
|
1180
1075
|
gclient_output = ensure_checkout(**checkout_parameters)
|
1181
1076
|
except GclientSyncFailed:
|
1182
1077
|
print 'We failed gclient sync, lets delete the checkout and retry.'
|
@@ -1225,7 +1120,7 @@ def checkout(options, git_slns, specs, revisions, step_text, shallow):
|
|
1225
1120
|
properties=got_revisions,
|
1226
1121
|
manifest=create_manifest_old(),
|
1227
1122
|
source_manifest=create_manifest(
|
1228
|
-
gclient_output, options.patch_root
|
1123
|
+
gclient_output, options.patch_root))
|
1229
1124
|
|
1230
1125
|
|
1231
1126
|
def print_debug_info():
|
@@ -1270,8 +1165,8 @@ def main():
|
|
1270
1165
|
|
1271
1166
|
try:
|
1272
1167
|
# Dun dun dun, the main part of bot_update.
|
1273
|
-
revisions, step_text
|
1274
|
-
checkout(options, git_slns, specs, revisions, step_text
|
1168
|
+
revisions, step_text = prepare(options, git_slns, active)
|
1169
|
+
checkout(options, git_slns, specs, revisions, step_text)
|
1275
1170
|
|
1276
1171
|
except PatchFailed as e:
|
1277
1172
|
# Return a specific non-zero exit code for patch failure (because it is
|
@@ -8,15 +8,6 @@ from recipe_engine import recipe_test_api
|
|
8
8
|
|
9
9
|
|
10
10
|
class BotUpdateTestApi(recipe_test_api.RecipeTestApi):
|
11
|
-
def properties(self, apply_patch_on_gclient):
|
12
|
-
ret = self.test(None)
|
13
|
-
ret.properties = {
|
14
|
-
'$depot_tools/bot_update': {
|
15
|
-
'apply_patch_on_gclient': apply_patch_on_gclient,
|
16
|
-
}
|
17
|
-
}
|
18
|
-
return ret
|
19
|
-
|
20
11
|
def output_json(self, root, first_sln, revision_mapping, fail_patch=False,
|
21
12
|
fixed_revisions=None):
|
22
13
|
"""Deterministically synthesize json.output test data for gclient's
|
@@ -45,11 +36,11 @@ class BotUpdateTestApi(recipe_test_api.RecipeTestApi):
|
|
45
36
|
})
|
46
37
|
output.update({
|
47
38
|
'manifest': {
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
39
|
+
project_name: {
|
40
|
+
'repository': 'https://fake.org/%s.git' % project_name,
|
41
|
+
'revision': self.gen_revision(project_name),
|
42
|
+
}
|
43
|
+
for project_name in set(revision_mapping.values())}})
|
53
44
|
|
54
45
|
output.update({
|
55
46
|
'source_manifest': {
|