├── .travis.yml ├── README.md ├── build_aar.py ├── build_android.sh ├── build_env.sh ├── build_ios.sh ├── build_ios_libs.py ├── build_linux.sh ├── build_mac.sh ├── build_mac_libs.py └── depot_tools ├── .gitattributes ├── .gitignore ├── .style.yapf ├── CROS_OWNERS ├── LICENSE ├── OWNERS ├── PRESUBMIT.py ├── README.gclient.md ├── README.git-cl.md ├── README.md ├── README.testing ├── WATCHLISTS ├── annotated_gclient.py ├── appengine_mapper.py ├── auth.py ├── autoninja ├── autoninja.bat ├── autoninja.py ├── bb ├── bb.bat ├── bootstrap └── win │ ├── README.md │ ├── git-bash.template.sh │ ├── git.template.bat │ ├── manifest.txt │ ├── manifest_bleeding_edge.txt │ ├── profile.d.python.sh │ ├── pylint.new.bat │ ├── python27.bleeding_edge.bat │ ├── python27.new.bat │ ├── win_tools.bat │ └── win_tools.py ├── breakpad.py ├── buildbucket.py ├── cbuildbot ├── checkout.py ├── chrome_set_ver ├── cipd ├── cipd.bat ├── cipd.ps1 ├── cipd_bin_setup.bat ├── cipd_bin_setup.sh ├── cipd_client_version ├── cipd_client_version.digests ├── cipd_manifest.txt ├── cipd_manifest.versions ├── cit ├── cit.bat ├── cit.py ├── clang-format ├── clang-format.bat ├── clang_format.py ├── clang_format_merge_driver ├── clang_format_merge_driver.bat ├── clang_format_merge_driver.py ├── codereview.settings ├── compile_single_file ├── compile_single_file.bat ├── compile_single_file.py ├── cpplint.bat ├── cpplint.py ├── cpplint_chromium.py ├── cros ├── cros_sdk ├── dart_format.py ├── depot-tools-auth ├── depot-tools-auth.bat ├── depot-tools-auth.py ├── detect_host_arch.py ├── download_from_google_storage ├── download_from_google_storage.bat ├── download_from_google_storage.py ├── ensure_bootstrap ├── fetch ├── fetch.bat ├── fetch.py ├── fetch_configs ├── android.py ├── android_internal.py ├── breakpad.py ├── chromium.py ├── config_util.py ├── crashpad.py ├── dart.py ├── depot_tools.py ├── goma_client.py ├── gyp.py ├── infra.py ├── infra_internal.py ├── inspector_protocol.py ├── ios.py ├── ios_internal.py ├── nacl.py ├── naclports.py ├── node-ci.py ├── pdfium.py ├── skia.py ├── skia_buildbot.py ├── syzygy.py ├── v8.py ├── webrtc.py ├── webrtc_android.py └── webrtc_ios.py ├── fix_encoding.py ├── gclient ├── gclient-new-workdir.py ├── gclient.bat ├── gclient.py ├── gclient_completion.sh ├── gclient_eval.py ├── gclient_paths.py ├── gclient_scm.py ├── gclient_utils.py ├── gerrit_client.py ├── gerrit_util.py ├── git-cache ├── git-cl ├── git-crrev-parse ├── git-drover ├── git-find-releases ├── git-footers ├── git-freeze ├── git-gs ├── git-hyper-blame ├── git-map ├── git-map-branches ├── git-mark-merge-base ├── git-nav-downstream ├── git-nav-upstream ├── git-new-branch ├── git-number ├── git-rebase-update ├── git-rename-branch ├── git-reparent-branch ├── git-retry ├── git-runhooks ├── git-squash-branch ├── git-templates ├── description ├── hooks │ ├── applypatch-msg │ ├── post-applypatch │ ├── post-checkout │ ├── post-commit │ ├── post-merge │ ├── post-update │ ├── pre-applypatch │ ├── pre-auto-gc │ ├── pre-commit │ ├── pre-rebase │ └── prepare-commit-msg └── info │ └── exclude ├── git-thaw ├── git-upstream-diff ├── git_cache.py ├── git_cl.py ├── git_cl_completion.sh ├── git_common.py ├── git_dates.py ├── git_drover.py ├── git_find_releases.py ├── git_footers.py ├── git_freezer.py ├── git_hyper_blame.py ├── git_map.py ├── git_map_branches.py ├── git_mark_merge_base.py ├── git_nav_downstream.py ├── git_new_branch.py ├── git_number.py ├── git_rebase_update.py ├── git_rename_branch.py ├── git_reparent_branch.py ├── git_retry.py ├── git_squash_branch.py ├── git_upstream_diff.py ├── gn ├── gn.bat ├── gn.py ├── gsutil.py ├── gsutil.py.bat ├── gsutil.vpython ├── infra ├── README.md └── config │ ├── OWNERS │ ├── README.md │ └── recipes.cfg ├── led ├── led.bat ├── luci-auth ├── luci-auth.bat ├── lucicfg ├── lucicfg.bat ├── mac_toolchain ├── man ├── html │ ├── depot_tools.html │ ├── depot_tools_tutorial.html │ ├── git-cl.html │ ├── git-drover.html │ ├── git-footers.html │ ├── git-freeze.html │ ├── git-hyper-blame.html │ ├── git-map-branches.html │ ├── git-map.html │ ├── git-mark-merge-base.html │ ├── git-nav-downstream.html │ ├── git-nav-upstream.html │ ├── git-new-branch.html │ ├── git-rebase-update.html │ ├── git-rename-branch.html │ ├── git-reparent-branch.html │ ├── git-retry.html │ ├── git-squash-branch.html │ ├── git-thaw.html │ └── git-upstream-diff.html ├── man1 │ ├── git-cl.1 │ ├── git-drover.1 │ ├── git-footers.1 │ ├── git-freeze.1 │ ├── git-hyper-blame.1 │ ├── git-map-branches.1 │ ├── git-map.1 │ ├── git-mark-merge-base.1 │ ├── git-nav-downstream.1 │ ├── git-nav-upstream.1 │ ├── git-new-branch.1 │ ├── git-rebase-update.1 │ ├── git-rename-branch.1 │ ├── git-reparent-branch.1 │ ├── git-retry.1 │ ├── git-squash-branch.1 │ ├── git-thaw.1 │ └── git-upstream-diff.1 ├── man7 │ ├── depot_tools.7 │ └── depot_tools_tutorial.7 ├── push_to_gs.sh └── src │ ├── .gitignore │ ├── _aliases.txt │ ├── _footer.txt │ ├── _git-cl_desc.helper.txt │ ├── _git-drover_desc.helper.txt │ ├── _git-footers_desc.helper.txt │ ├── _git-freeze_desc.helper.txt │ ├── _git-hyper-blame_desc.helper.txt │ ├── _git-map-branches_desc.helper.txt │ ├── _git-map_desc.helper.txt │ ├── _git-mark-merge-base_desc.helper.txt │ ├── _git-nav-downstream_desc.helper.txt │ ├── _git-nav-upstream_desc.helper.txt │ ├── _git-new-branch_desc.helper.txt │ ├── _git-rebase-update_desc.helper.txt │ ├── _git-rename-branch_desc.helper.txt │ ├── _git-reparent-branch_desc.helper.txt │ ├── _git-retry_desc.helper.txt │ ├── _git-squash-branch_desc.helper.txt │ ├── _git-thaw_desc.helper.txt │ ├── _git-upstream-diff_desc.helper.txt │ ├── _helper_prefix.txt │ ├── asciidoc-override.css │ ├── common_demo_functions.sh │ ├── demo_repo.sh │ ├── depot_tools.txt │ ├── depot_tools_tutorial.demo.walkthrough.sh │ ├── depot_tools_tutorial.txt │ ├── filter_demo_output.py │ ├── git-cl.txt │ ├── git-drover.demo.1.sh │ ├── git-drover.demo.2.sh │ ├── git-drover.demo.3.sh │ ├── git-drover.demo.4.sh │ ├── git-drover.demo.common.sh │ ├── git-drover.txt │ ├── git-footers.demo.1.sh │ ├── git-footers.txt │ ├── git-freeze.demo.1.sh │ ├── git-freeze.txt │ ├── git-hyper-blame.demo.1.sh │ ├── git-hyper-blame.demo.2.sh │ ├── git-hyper-blame.demo.common.sh │ ├── git-hyper-blame.txt │ ├── git-map-branches.demo.1.sh │ ├── git-map-branches.txt │ ├── git-map.demo.1.sh │ ├── git-map.txt │ ├── git-mark-merge-base.txt │ ├── git-nav-downstream.demo.1.sh │ ├── git-nav-downstream.txt │ ├── git-nav-upstream.demo.1.sh │ ├── git-nav-upstream.txt │ ├── git-new-branch.demo.1.sh │ ├── git-new-branch.txt │ ├── git-rebase-update.txt │ ├── git-rename-branch.txt │ ├── git-reparent-branch.txt │ ├── git-retry.txt │ ├── git-squash-branch.demo.1.sh │ ├── git-squash-branch.txt │ ├── git-thaw.txt │ ├── git-upstream-diff.txt │ ├── make_docs.sh │ └── prep_demo_repo.sh ├── metrics.README.md ├── metrics.py ├── metrics_utils.py ├── my_activity.py ├── my_reviews.py ├── ninja ├── ninja-linux32 ├── ninja-linux64 ├── ninja-mac ├── ninja.exe ├── ninjalog.README.md ├── ninjalog_uploader.py ├── ninjalog_uploader_wrapper.py ├── owners.py ├── owners_finder.py ├── patch.py ├── post_build_ninja_summary.py ├── presubmit_canned_checks.py ├── presubmit_support.py ├── profile.xml ├── prpc ├── prpc.bat ├── pylint ├── pylint.py ├── pylintrc ├── python_runner.sh ├── recipes ├── OWNERS ├── README.recipes.md ├── recipe_modules │ ├── OWNERS │ ├── bot_update │ │ ├── OWNERS │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic.json │ │ │ │ ├── basic_luci.json │ │ │ │ ├── basic_with_branch_heads.json │ │ │ │ ├── clobber.json │ │ │ │ ├── deprecated_got_revision_mapping.json │ │ │ │ ├── gerrit_no_rebase_patch_ref.json │ │ │ │ ├── gerrit_no_reset.json │ │ │ │ ├── input_commit_with_id_without_repo.json │ │ │ │ ├── multiple_patch_refs.json │ │ │ │ ├── no_apply_patch_on_gclient.json │ │ │ │ ├── no_cp_checkout_HEAD.json │ │ │ │ ├── no_cp_checkout_a_branch_head.json │ │ │ │ ├── no_cp_checkout_a_specific_commit.json │ │ │ │ ├── no_cp_checkout_master.json │ │ │ │ ├── refs.json │ │ │ │ ├── reset_root_solution_revision.json │ │ │ │ ├── tryjob_fail.json │ │ │ │ ├── tryjob_fail_patch.json │ │ │ │ ├── tryjob_fail_patch_download.json │ │ │ │ ├── tryjob_gerrit_angle.json │ │ │ │ ├── tryjob_gerrit_branch_heads.json │ │ │ │ ├── tryjob_gerrit_feature_branch.json │ │ │ │ ├── tryjob_gerrit_v8_feature_branch.json │ │ │ │ ├── tryjob_gerrit_webrtc.json │ │ │ │ ├── tryjob_v8.json │ │ │ │ ├── tryjob_v8_head_by_default.json │ │ │ │ ├── unrecognized_commit_repo.json │ │ │ │ ├── with_manifest_name.json │ │ │ │ └── with_tags.json │ │ │ └── full.py │ │ ├── resources │ │ │ ├── __init__.py │ │ │ └── bot_update.py │ │ ├── test_api.py │ │ └── tests │ │ │ └── ensure_checkout.py │ ├── cipd │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic.json │ │ │ │ ├── basic_pkg.json │ │ │ │ ├── describe-failed.json │ │ │ │ ├── describe-many-instances.json │ │ │ │ ├── mac64.json │ │ │ │ ├── pkg_bad_file.json │ │ │ │ ├── pkg_bad_mode.json │ │ │ │ ├── pkg_bad_verfile.json │ │ │ │ └── win64.json │ │ │ ├── full.py │ │ │ ├── platform_suffix.expected │ │ │ │ ├── junk arch.json │ │ │ │ ├── junk bits.json │ │ │ │ ├── linux_arm_32.json │ │ │ │ ├── linux_arm_64.json │ │ │ │ ├── linux_intel_32.json │ │ │ │ ├── linux_intel_64.json │ │ │ │ ├── linux_mips_64.json │ │ │ │ ├── mac_intel_64.json │ │ │ │ ├── win_intel_32.json │ │ │ │ └── win_intel_64.json │ │ │ └── platform_suffix.py │ │ └── test_api.py │ ├── depot_tools │ │ ├── __init__.py │ │ ├── api.py │ │ └── examples │ │ │ ├── full.expected │ │ │ ├── basic.json │ │ │ ├── basic_luci.json │ │ │ └── win.json │ │ │ └── full.py │ ├── gclient │ │ ├── __init__.py │ │ ├── api.py │ │ ├── config.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic.json │ │ │ │ ├── buildbot.json │ │ │ │ ├── revision.json │ │ │ │ └── tryserver.json │ │ │ └── full.py │ │ ├── test_api.py │ │ └── tests │ │ │ └── patch_project.py │ ├── gerrit │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ └── basic.json │ │ │ └── full.py │ │ └── test_api.py │ ├── git │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic.json │ │ │ │ ├── basic_branch.json │ │ │ │ ├── basic_file_name.json │ │ │ │ ├── basic_hash.json │ │ │ │ ├── basic_luci.json │ │ │ │ ├── basic_ref.json │ │ │ │ ├── basic_submodule_update_force.json │ │ │ │ ├── basic_tags.json │ │ │ │ ├── can_fail_build.json │ │ │ │ ├── cannot_fail_build.json │ │ │ │ ├── cat-file_test.json │ │ │ │ ├── count-objects_delta.json │ │ │ │ ├── count-objects_failed.json │ │ │ │ ├── count-objects_with_bad_output.json │ │ │ │ ├── count-objects_with_bad_output_fails_build.json │ │ │ │ ├── curl_trace_file.json │ │ │ │ ├── git-cache-checkout.json │ │ │ │ ├── platform_win.json │ │ │ │ ├── rebase_failed.json │ │ │ │ ├── remote_not_origin.json │ │ │ │ └── set_got_revision.json │ │ │ └── full.py │ │ ├── resources │ │ │ └── git_setup.py │ │ └── test_api.py │ ├── git_cl │ │ ├── __init__.py │ │ ├── api.py │ │ ├── config.py │ │ └── examples │ │ │ ├── full.expected │ │ │ └── basic.json │ │ │ └── full.py │ ├── gitiles │ │ ├── OWNERS │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ └── basic.json │ │ │ └── full.py │ │ ├── resources │ │ │ └── gerrit_client.py │ │ ├── test_api.py │ │ └── tests │ │ │ ├── parse_repo_url.expected │ │ │ └── basic.json │ │ │ └── parse_repo_url.py │ ├── gsutil │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ └── basic.json │ │ │ └── full.py │ │ └── resources │ │ │ └── gsutil_smart_retry.py │ ├── infra_paths │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic.json │ │ │ │ ├── paths_buildbot_linux.json │ │ │ │ ├── paths_buildbot_mac.json │ │ │ │ ├── paths_buildbot_win.json │ │ │ │ ├── paths_generic_linux.json │ │ │ │ ├── paths_generic_mac.json │ │ │ │ ├── paths_generic_win.json │ │ │ │ ├── paths_kitchen_linux.json │ │ │ │ ├── paths_kitchen_mac.json │ │ │ │ └── paths_kitchen_win.json │ │ │ └── full.py │ │ └── path_config.py │ ├── osx_sdk │ │ ├── __init__.py │ │ ├── api.py │ │ └── examples │ │ │ ├── full.expected │ │ │ ├── linux.json │ │ │ ├── mac.json │ │ │ └── win.json │ │ │ └── full.py │ ├── presubmit │ │ ├── __init__.py │ │ ├── api.py │ │ └── examples │ │ │ ├── full.expected │ │ │ └── basic.json │ │ │ └── full.py │ ├── tryserver │ │ ├── __init__.py │ │ ├── api.py │ │ ├── examples │ │ │ ├── full.expected │ │ │ │ ├── basic_tags.json │ │ │ │ ├── set_failure_hash_with_no_steps.json │ │ │ │ ├── with_gerrit_patch.json │ │ │ │ ├── with_gerrit_patch_and_target_ref.json │ │ │ │ ├── with_git_patch.json │ │ │ │ ├── with_git_patch_luci.json │ │ │ │ ├── with_wrong_patch.json │ │ │ │ └── with_wrong_patch_new.json │ │ │ └── full.py │ │ ├── test_api.py │ │ └── tests │ │ │ └── gerrit_change_fetch_ref.py │ └── windows_sdk │ │ ├── __init__.py │ │ ├── api.py │ │ └── examples │ │ ├── full.expected │ │ ├── linux.json │ │ ├── mac.json │ │ └── win.json │ │ └── full.py ├── recipes.py ├── recipes │ ├── fetch_end_to_end_test.expected │ │ └── basic.json │ └── fetch_end_to_end_test.py └── trigger_recipe_roller.txt ├── repo ├── rietveld.py ├── roll-dep ├── roll-dep-svn ├── roll-dep-svn.bat ├── roll-dep.bat ├── roll_dep.py ├── roll_dep_svn.py ├── scm.py ├── setup_color.py ├── split_cl.py ├── subcommand.py ├── subprocess2.py ├── support └── chromite_wrapper ├── testing_support ├── __init__.py ├── auto_stub.py ├── cipd ├── cipd.bat ├── coverage_utils.py ├── fake_cipd.py ├── fake_repos.py ├── filesystem_mock.py ├── gerrit-init.sh ├── gerrit_test_case.py ├── git_test_utils.py ├── patches_data.py ├── super_mox.py └── trial_dir.py ├── tests ├── OWNERS ├── auth_test.py ├── bot_update_coverage_test.py ├── checkout_test.py ├── cipd_bootstrap_test.py ├── download_from_google_storage_unittest.py ├── fix_encoding_test.py ├── gclient_eval_unittest.py ├── gclient_scm_test.py ├── gclient_smoketest.py ├── gclient_test.py ├── gclient_utils_test.py ├── git_cache_test.py ├── git_cl_creds_check_report.txt ├── git_cl_test.py ├── git_common_test.py ├── git_dates_test.py ├── git_drover_test.py ├── git_footers_test.py ├── git_hyper_blame_test.py ├── git_number_test.py ├── git_rebase_update_test.py ├── gstools │ ├── download_test_data │ │ ├── rootfolder_text.txt │ │ ├── rootfolder_text.txt.sha1 │ │ ├── subfolder │ │ │ ├── subfolder_text.txt │ │ │ └── subfolder_text.txt.sha1 │ │ └── uploaded_lorem_ipsum.txt.sha1 │ ├── lorem_ipsum.txt │ ├── lorem_ipsum.txt.md5 │ └── lorem_ipsum2.txt ├── gsutil_test.py ├── metrics_test.py ├── ninjalog_uploader_test.py ├── owners_finder_test.py ├── owners_unittest.py ├── patch_test.py ├── presubmit_unittest.py ├── recipes_test.py ├── roll_dep_test.py ├── scm_unittest.py ├── subprocess2_test.py ├── upload_to_google_storage_unittest.py └── watchlists_unittest.py ├── third_party ├── __init__.py ├── boto │ ├── LICENSE │ ├── README.chromium │ ├── README.rst │ ├── __init__.py │ ├── auth.py │ ├── auth_handler.py │ ├── cacerts │ │ ├── __init__.py │ │ └── cacerts.txt │ ├── compat.py │ ├── connection.py │ ├── contrib │ │ ├── __init__.py │ │ └── ymlmessage.py │ ├── core │ │ ├── README │ │ ├── __init__.py │ │ ├── auth.py │ │ ├── credentials.py │ │ ├── dictresponse.py │ │ └── service.py │ ├── datapipeline │ │ ├── __init__.py │ │ ├── exceptions.py │ │ └── layer1.py │ ├── ecs │ │ ├── __init__.py │ │ └── item.py │ ├── exception.py │ ├── file │ │ ├── README │ │ ├── __init__.py │ │ ├── bucket.py │ │ ├── connection.py │ │ ├── key.py │ │ └── simpleresultset.py │ ├── fps │ │ ├── __init__.py │ │ ├── connection.py │ │ ├── exception.py │ │ └── response.py │ ├── gs │ │ ├── __init__.py │ │ ├── acl.py │ │ ├── bucket.py │ │ ├── bucketlistresultset.py │ │ ├── connection.py │ │ ├── cors.py │ │ ├── key.py │ │ ├── resumable_upload_handler.py │ │ └── user.py │ ├── handler.py │ ├── https_connection.py │ ├── jsonresponse.py │ ├── manage │ │ ├── __init__.py │ │ ├── cmdshell.py │ │ ├── propget.py │ │ ├── server.py │ │ ├── task.py │ │ ├── test_manage.py │ │ └── volume.py │ ├── mashups │ │ ├── __init__.py │ │ ├── interactive.py │ │ ├── iobject.py │ │ ├── order.py │ │ └── server.py │ ├── plugin.py │ ├── provider.py │ ├── pyami │ │ ├── __init__.py │ │ ├── bootstrap.py │ │ ├── config.py │ │ ├── copybot.cfg │ │ ├── copybot.py │ │ ├── helloworld.py │ │ ├── launch_ami.py │ │ ├── scriptbase.py │ │ └── startup.py │ ├── regioninfo.py │ ├── resultset.py │ ├── roboto │ │ ├── __init__.py │ │ ├── awsqueryrequest.py │ │ ├── awsqueryservice.py │ │ └── param.py │ ├── s3 │ │ ├── __init__.py │ │ ├── acl.py │ │ ├── bucket.py │ │ ├── bucketlistresultset.py │ │ ├── bucketlogging.py │ │ ├── connection.py │ │ ├── cors.py │ │ ├── deletemarker.py │ │ ├── key.py │ │ ├── keyfile.py │ │ ├── lifecycle.py │ │ ├── multidelete.py │ │ ├── multipart.py │ │ ├── prefix.py │ │ ├── resumable_download_handler.py │ │ ├── tagging.py │ │ ├── user.py │ │ └── website.py │ ├── services │ │ ├── __init__.py │ │ ├── bs.py │ │ ├── message.py │ │ ├── result.py │ │ ├── service.py │ │ ├── servicedef.py │ │ ├── sonofmmm.cfg │ │ ├── sonofmmm.py │ │ └── submit.py │ ├── ses │ │ ├── __init__.py │ │ ├── connection.py │ │ └── exceptions.py │ ├── storage_uri.py │ ├── sts │ │ ├── __init__.py │ │ ├── connection.py │ │ └── credentials.py │ └── utils.py ├── colorama │ ├── LICENSE.txt │ ├── README.chromium │ ├── README.rst │ ├── __init__.py │ ├── ansi.py │ ├── ansitowin32.py │ ├── initialise.py │ ├── win32.py │ └── winterm.py ├── coverage │ ├── AUTHORS.txt │ ├── PKG-INFO │ ├── README.chromium │ ├── __init__.py │ ├── __main__.py │ ├── annotate.py │ ├── backward.py │ ├── bytecode.py │ ├── cmdline.py │ ├── codeunit.py │ ├── collector.py │ ├── config.py │ ├── control.py │ ├── data.py │ ├── debug.py │ ├── execfile.py │ ├── files.py │ ├── fullcoverage │ │ └── encodings.py │ ├── html.py │ ├── htmlfiles │ │ ├── coverage_html.js │ │ ├── index.html │ │ ├── jquery-1.4.3.min.js │ │ ├── jquery.hotkeys.js │ │ ├── jquery.isonscreen.js │ │ ├── jquery.min.js │ │ ├── jquery.tablesorter.min.js │ │ ├── keybd_closed.png │ │ ├── keybd_open.png │ │ ├── pyfile.html │ │ └── style.css │ ├── misc.py │ ├── parser.py │ ├── phystokens.py │ ├── report.py │ ├── results.py │ ├── summary.py │ ├── templite.py │ ├── version.py │ └── xmlreport.py ├── fancy_urllib │ ├── README │ └── __init__.py ├── httplib2 │ ├── LICENSE │ ├── README.chromium │ ├── __init__.py │ ├── cacerts.txt │ ├── iri2uri.py │ └── socks.py ├── logilab │ ├── README.chromium │ ├── __init__.py │ ├── astroid │ │ ├── LICENSE.txt │ │ ├── README.chromium │ │ ├── __init__.py │ │ ├── __pkginfo__.py │ │ ├── arguments.py │ │ ├── as_string.py │ │ ├── astpeephole.py │ │ ├── bases.py │ │ ├── brain │ │ │ ├── brain_builtin_inference.py │ │ │ ├── brain_dateutil.py │ │ │ ├── brain_gi.py │ │ │ ├── brain_mechanize.py │ │ │ ├── brain_nose.py │ │ │ ├── brain_numpy.py │ │ │ ├── brain_pytest.py │ │ │ ├── brain_qt.py │ │ │ ├── brain_six.py │ │ │ ├── brain_ssl.py │ │ │ └── brain_stdlib.py │ │ ├── builder.py │ │ ├── context.py │ │ ├── decorators.py │ │ ├── exceptions.py │ │ ├── inference.py │ │ ├── manager.py │ │ ├── mixins.py │ │ ├── modutils.py │ │ ├── node_classes.py │ │ ├── nodes.py │ │ ├── objects.py │ │ ├── protocols.py │ │ ├── raw_building.py │ │ ├── rebuilder.py │ │ ├── scoped_nodes.py │ │ ├── test_utils.py │ │ ├── transforms.py │ │ └── util.py │ ├── lazy_object_proxy │ │ ├── LICENSE │ │ ├── README.chromium │ │ ├── __init__.py │ │ ├── cext.c │ │ ├── compat.py │ │ ├── simple.py │ │ ├── slots.py │ │ └── utils.py │ └── wrapt │ │ ├── LICENSE │ │ ├── README.chromium │ │ ├── __init__.py │ │ ├── _wrappers.c │ │ ├── arguments.py │ │ ├── decorators.py │ │ ├── importer.py │ │ └── wrappers.py ├── mock │ ├── LICENSE.txt │ ├── README.chromium │ └── __init__.py ├── oauth2client │ ├── LICENSE │ ├── MODIFICATIONS.diff │ ├── README.chromium │ ├── __init__.py │ ├── anyjson.py │ ├── appengine.py │ ├── client.py │ ├── clientsecrets.py │ ├── crypt.py │ ├── django_orm.py │ ├── file.py │ ├── gce.py │ ├── keyring_storage.py │ ├── locked_file.py │ ├── multistore_file.py │ ├── old_run.py │ ├── tools.py │ ├── util.py │ └── xsrfutil.py ├── protobuf26 │ ├── README.chromium │ ├── __init__.py │ ├── compiler │ │ ├── __init__.py │ │ └── plugin_pb2.py │ ├── descriptor.py │ ├── descriptor_database.py │ ├── descriptor_pb2.py │ ├── descriptor_pool.py │ ├── internal │ │ ├── __init__.py │ │ ├── api_implementation.py │ │ ├── containers.py │ │ ├── cpp_message.py │ │ ├── decoder.py │ │ ├── encoder.py │ │ ├── enum_type_wrapper.py │ │ ├── message_listener.py │ │ ├── python_message.py │ │ ├── type_checkers.py │ │ └── wire_format.py │ ├── message.py │ ├── message_factory.py │ ├── reflection.py │ ├── service.py │ ├── service_reflection.py │ ├── symbol_database.py │ ├── text_encoding.py │ └── text_format.py ├── pylint.py ├── pylint │ ├── LICENSE.txt │ ├── README.chromium │ ├── __init__.py │ ├── __main__.py │ ├── __pkginfo__.py │ ├── checkers │ │ ├── __init__.py │ │ ├── async.py │ │ ├── base.py │ │ ├── classes.py │ │ ├── design_analysis.py │ │ ├── exceptions.py │ │ ├── format.py │ │ ├── imports.py │ │ ├── logging.py │ │ ├── misc.py │ │ ├── newstyle.py │ │ ├── python3.py │ │ ├── raw_metrics.py │ │ ├── similar.py │ │ ├── spelling.py │ │ ├── stdlib.py │ │ ├── strings.py │ │ ├── typecheck.py │ │ ├── utils.py │ │ └── variables.py │ ├── config.py │ ├── epylint.py │ ├── extensions │ │ ├── __init__.py │ │ ├── check_docs.py │ │ └── check_elif.py │ ├── graph.py │ ├── gui.py │ ├── interfaces.py │ ├── lint.py │ ├── pyreverse │ │ ├── __init__.py │ │ ├── diadefslib.py │ │ ├── diagrams.py │ │ ├── inspector.py │ │ ├── main.py │ │ ├── utils.py │ │ ├── vcgutils.py │ │ └── writer.py │ ├── reporters │ │ ├── __init__.py │ │ ├── guireporter.py │ │ ├── html.py │ │ ├── json.py │ │ ├── text.py │ │ └── ureports │ │ │ ├── __init__.py │ │ │ ├── html_writer.py │ │ │ ├── nodes.py │ │ │ └── text_writer.py │ ├── testutils.py │ └── utils.py ├── pymox │ ├── COPYING │ ├── MANIFEST.in │ ├── README │ ├── __init__.py │ ├── mox.py │ ├── mox_test.py │ ├── mox_test_helper.py │ ├── setup.py │ ├── stubout.py │ ├── stubout_test.py │ └── stubout_testee.py ├── repo │ ├── COPYING │ ├── README.chromium │ ├── __init__.py │ └── progress.py ├── retry_decorator │ ├── LICENSE.google │ ├── __init__.py │ └── decorators.py ├── schema │ ├── .editorconfig │ ├── .gitignore │ ├── .travis.yml │ ├── LICENSE-MIT │ ├── MANIFEST.in │ ├── README.chromium │ ├── README.rst │ ├── __init__.py │ ├── schema.py │ ├── setup.cfg │ ├── setup.py │ ├── test_schema.py │ └── tox.ini ├── simplejson │ ├── LICENSE.txt │ ├── PKG-INFO │ ├── __init__.py │ ├── decoder.py │ ├── encoder.py │ ├── ordered_dict.py │ ├── scanner.py │ └── tool.py ├── six │ ├── LICENSE.txt │ ├── README.chromium │ └── __init__.py └── upload.py ├── update_depot_tools ├── update_depot_tools.bat ├── update_depot_tools_toggle.py ├── upload_metrics.py ├── upload_to_google_storage.py ├── vpython ├── vpython.bat ├── watchlists.py ├── weekly ├── win_toolchain ├── OWNERS ├── README.md ├── get_toolchain_if_necessary.py └── package_from_installed.py ├── wtf ├── yapf ├── yapf.bat └── zsh-goodies ├── README └── _gclient /README.md: -------------------------------------------------------------------------------- 1 | # webrtc-build 2 | webrtc ci build for mac/linux/android/ios 3 | 4 | 5 | 6 | 7 | ## WebRTC Repo 8 | 9 | 10 | This build script fetch webrtc source from https://github.com/notedit/webrtc-clone 11 | 12 | the latest build version is m76, other versions see the breanchs. 13 | 14 | 15 | 16 | 17 | ## WebRTC Libs 18 | 19 | This build script will push the builded libs to https://github.com/notedit/webrtc-build-release 20 | 21 | 22 | you can find the prebuild libs in release repo. 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /build_env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export BUILD_IOS="yes" 4 | export RELEASE_IOS="yes" 5 | 6 | 7 | export BUILD_OSX="yes" 8 | export RELEASE_OSX="yes" 9 | 10 | 11 | export BUILD_ANDROID="yes" 12 | export RELEASE_ANDROID="yes" 13 | 14 | 15 | export BUILD_LINUX="yes" 16 | export RELEASE_LINUX="yes" 17 | 18 | -------------------------------------------------------------------------------- /depot_tools/.style.yapf: -------------------------------------------------------------------------------- 1 | [style] 2 | based_on_style = chromium 3 | -------------------------------------------------------------------------------- /depot_tools/CROS_OWNERS: -------------------------------------------------------------------------------- 1 | # Chrome OS developers looking over Chrome OS related files. 2 | lamont@chromium.org 3 | nednguyen@chromium.org 4 | saklein@chromium.org 5 | vapier@chromium.org 6 | -------------------------------------------------------------------------------- /depot_tools/OWNERS: -------------------------------------------------------------------------------- 1 | set noparent 2 | 3 | agable@chromium.org 4 | dpranke@chromium.org 5 | ehmaldonado@chromium.org 6 | hinoka@chromium.org 7 | iannucci@chromium.org 8 | jochen@chromium.org 9 | maruel@chromium.org 10 | nodir@chromium.org 11 | tandrii@chromium.org 12 | 13 | per-file ninja*=thakis@chromium.org 14 | per-file ninja*=scottmg@chromium.org 15 | 16 | per-file autoninja*=brucedawson@chromium.org 17 | 18 | per-file ninjalog*=tikuta@chromium.org 19 | 20 | per-file cbuildbot=file://CROS_OWNERS 21 | per-file chrome_set_ver=file://CROS_OWNERS 22 | per-file cros=file://CROS_OWNERS 23 | per-file cros_sdk=file://CROS_OWNERS 24 | per-file repo=file://CROS_OWNERS 25 | -------------------------------------------------------------------------------- /depot_tools/README.testing: -------------------------------------------------------------------------------- 1 | Most of the tests require a local Rietveld server. 2 | 3 | To set this up: 4 | Method 1: Let the presubmit script do the work for you. 5 | $ git cl presubmit 6 | 7 | Method 2: Manual. 8 | 1) Check out a copy of Rietveld: 9 | $ svn checkout http://rietveld.googlecode.com/svn/trunk/ rietveld 10 | (Use git-svn if you must, but man is it slow.) 11 | 2) Get the Google App Engine SDK: 12 | http://code.google.com/appengine/downloads.html 13 | 3) To run Rietveld you will need Django 1.0, which is not included 14 | with the App Engine SDK. Go to http://www.djangoproject.com/download , 15 | download a Django from the 1.0 series (it's in the sidebar on the right), 16 | untar it, then 17 | $ export PYTHONPATH=`pwd`/Django-1.0.4 18 | 4) Run Rietveld: 19 | $ /path/to/appengine/sdk/dev_appserver.py /path/to/rietveld 20 | (If using one of the App Engine launchers, be sure to use port 8080 21 | for this project.) 22 | 23 | And then, finally, run the tests. 24 | -------------------------------------------------------------------------------- /depot_tools/WATCHLISTS: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | # Watchlist Rules 6 | # Refer: http://dev.chromium.org/developers/contributing-code/watchlists 7 | 8 | { 9 | 10 | 'WATCHLIST_DEFINITIONS': { 11 | 'this_file': { 12 | 'filepath': '^WATCHLISTS$', 13 | }, 14 | 'depot_tools': { 15 | 'filepath': '.+', 16 | }, 17 | }, 18 | 19 | 'WATCHLISTS': { 20 | 'this_file': [], 21 | 'depot_tools': [ 22 | 'iannucci+depot_tools@chromium.org', 23 | ], 24 | }, 25 | 26 | } 27 | -------------------------------------------------------------------------------- /depot_tools/appengine_mapper.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | """Ensures that all depot_tools talks directly to appengine to avoid SNI.""" 6 | 7 | import urlparse 8 | 9 | 10 | mapping = { 11 | 'codereview.chromium.org': 'chromiumcodereview.appspot.com', 12 | 'crashpad.chromium.org': 'crashpad-home.appspot.com', 13 | 'bugs.chromium.org': 'monorail-prod.appspot.com', 14 | 'bugs-staging.chromium.org': 'monorail-staging.appspot.com', 15 | } 16 | 17 | 18 | def MapUrl(url): 19 | parts = list(urlparse.urlsplit(url)) 20 | new_netloc = mapping.get(parts[1]) 21 | if new_netloc: 22 | parts[1] = new_netloc 23 | return urlparse.urlunsplit(parts) 24 | -------------------------------------------------------------------------------- /depot_tools/autoninja: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2017 Google Inc. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | # Set unique build ID. 8 | AUTONINJA_BUILD_ID="$(python -c "import uuid; print uuid.uuid4()")" 9 | export AUTONINJA_BUILD_ID 10 | 11 | if [ "$NINJA_SUMMARIZE_BUILD" == "1" ]; then 12 | export NINJA_STATUS="[%r processes, %f/%t @ %o/s : %es ] " 13 | fi 14 | 15 | # Execute whatever is printed by autoninja.py. 16 | # Also print it to reassure that the right settings are being used. 17 | command=$(python "$(dirname -- "$0")/autoninja.py" "$@") 18 | if [ "$NINJA_SUMMARIZE_BUILD" == "1" ]; then 19 | echo "$command" 20 | fi 21 | if eval "$command"; then 22 | if [ "$NINJA_SUMMARIZE_BUILD" == "1" ]; then 23 | python "$(dirname -- "$0")/post_build_ninja_summary.py" "$@" 24 | fi 25 | 26 | # Collect ninjalog from googler. 27 | "$(dirname -- "$0")/ninjalog_uploader_wrapper.py" --cmd $command 28 | exit 29 | fi 30 | 31 | # Collect ninjalog from googler. 32 | "$(dirname -- "$0")/ninjalog_uploader_wrapper.py" --cmd $command 33 | 34 | # Return an error code of 1 so that if a developer types: 35 | # "autoninja chrome && chrome" then chrome won't run if the build fails. 36 | exit 1 37 | -------------------------------------------------------------------------------- /depot_tools/bb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2019 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/bb" "$@" 13 | -------------------------------------------------------------------------------- /depot_tools/bb.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2019 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\bb.exe" %* 8 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/git-bash.template.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | export EDITOR=${EDITOR:=notepad} 3 | WIN_BASE=`dirname $0` 4 | UNIX_BASE=`cygpath "$WIN_BASE"` 5 | export PATH="$PATH:$UNIX_BASE/${PYTHON_BIN_RELDIR_UNIX}:$UNIX_BASE/${PYTHON_BIN_RELDIR_UNIX}/Scripts" 6 | export PYTHON_DIRECT=1 7 | export PYTHONUNBUFFERED=1 8 | if [[ $# > 0 ]]; then 9 | $UNIX_BASE/${GIT_BIN_RELDIR_UNIX}/bin/bash.exe "$@" 10 | else 11 | $UNIX_BASE/${GIT_BIN_RELDIR_UNIX}/git-bash.exe & 12 | fi 13 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/git.template.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | setlocal 3 | if not defined EDITOR set EDITOR=notepad 4 | set PATH=%~dp0${GIT_BIN_RELDIR}\cmd;%~dp0;%PATH% 5 | "%~dp0${GIT_BIN_RELDIR}\${GIT_PROGRAM}" %* 6 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/manifest.txt: -------------------------------------------------------------------------------- 1 | # CIPD manifest for Windows tools. 2 | # 3 | # We must install anything that we want included on PATH to a different 4 | # subdirectory than Git, as Git's msys bash strips its root directory 5 | # from PATH, hence the subdirs. 6 | # 7 | # If any paths or package layouts change, updates will be required in 8 | # "win_tools.bat" and "win_tools.py" templates. 9 | # 10 | # "win_tools.bat" has a hard requirement that the Python package contains the 11 | # string "cpython" and ends with the CIPD tag "version:VERSION". It uses this 12 | # to extract VERSION. 13 | 14 | $VerifiedPlatform windows-386 windows-amd64 15 | 16 | @Subdir python 17 | infra/python/cpython/${platform} version:2.7.13.chromium7 18 | 19 | @Subdir git 20 | infra/git/windows-${arch} version:2.21.0.chromium16 21 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/manifest_bleeding_edge.txt: -------------------------------------------------------------------------------- 1 | # CIPD manifest for Windows tools. 2 | # 3 | # We must install anything that we want included on PATH to a different 4 | # subdirectory than Git, as Git's msys bash strips its root directory 5 | # from PATH, hence the subdirs. 6 | # 7 | # If any paths or package layouts change, updates will be required in 8 | # "win_tools.bat" and "win_tools.py" templates. 9 | # 10 | # "win_tools.bat" has a hard requirement that the Python package contains the 11 | # string "cpython" and ends with the CIPD tag "version:VERSION". It uses this 12 | # to extract VERSION. 13 | 14 | $VerifiedPlatform windows-386 windows-amd64 15 | 16 | @Subdir python 17 | infra/python/cpython/${platform} version:2.7.15.chromium14 18 | 19 | @Subdir git 20 | infra/git/windows-${arch} version:2.21.0.chromium16 21 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/profile.d.python.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This alias allows invocations of `python` to work as expected under msys bash. 3 | # In particular, it detects if stdout+stdin are both attached to a pseudo-tty, 4 | # and if so, invokes python in interactive mode. If this is not the case, or 5 | # the user passes any arguments, python will be invoked unmodified. 6 | python() { 7 | if [[ $# > 0 ]]; then 8 | python.exe "$@" 9 | else 10 | readlink /proc/$$/fd/0 | grep pty > /dev/null 11 | TTY0=$? 12 | readlink /proc/$$/fd/1 | grep pty > /dev/null 13 | TTY1=$? 14 | if [ $TTY0 == 0 ] && [ $TTY1 == 0 ]; then 15 | python.exe -i 16 | else 17 | python.exe 18 | fi 19 | fi 20 | } 21 | -------------------------------------------------------------------------------- /depot_tools/bootstrap/win/pylint.new.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2013 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | setlocal 7 | call python "%~dp0pylint.py" %* 8 | -------------------------------------------------------------------------------- /depot_tools/breakpad.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | """This file remains here because of multiple find_depot_tools.py scripts 6 | that attempt to import it as a way to find depot_tools. 7 | 8 | See also: 9 | * http://crbug.com/585837 10 | * Example of find_depot_tools in build repo: 11 | https://chromium.googlesource.com/chromium/tools/build/+/2680bd4/scripts/common/find_depot_tools.py 12 | """ 13 | -------------------------------------------------------------------------------- /depot_tools/cbuildbot: -------------------------------------------------------------------------------- 1 | support/chromite_wrapper -------------------------------------------------------------------------------- /depot_tools/chrome_set_ver: -------------------------------------------------------------------------------- 1 | support/chromite_wrapper -------------------------------------------------------------------------------- /depot_tools/cipd_bin_setup.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2017 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | "%~dp0\cipd.bat" ensure -log-level warning -ensure-file "%~dp0\cipd_manifest.txt" -root "%~dp0\.cipd_bin" 7 | -------------------------------------------------------------------------------- /depot_tools/cipd_bin_setup.sh: -------------------------------------------------------------------------------- 1 | # Copyright 2017 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | function cipd_bin_setup { 6 | local MYPATH=$(dirname "${BASH_SOURCE[0]}") 7 | local ENSURE="$MYPATH/cipd_manifest.txt" 8 | local ROOT="$MYPATH/.cipd_bin" 9 | 10 | UNAME=`uname -s | tr '[:upper:]' '[:lower:]'` 11 | case $UNAME in 12 | cygwin*) 13 | ENSURE="$(cygpath -w $ENSURE)" 14 | ROOT="$(cygpath -w $ROOT)" 15 | ;; 16 | esac 17 | 18 | "$MYPATH/cipd" ensure \ 19 | -log-level warning \ 20 | -ensure-file "$ENSURE" \ 21 | -root "$ROOT" 22 | } 23 | -------------------------------------------------------------------------------- /depot_tools/cipd_client_version: -------------------------------------------------------------------------------- 1 | git_revision:bd09df254cc0d6ca4319f23c16b9039091be5b00 2 | -------------------------------------------------------------------------------- /depot_tools/cit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2015 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/cit.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/cit.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2015 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\cit.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/clang-format: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/clang_format.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/clang-format.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2014 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\clang_format.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/clang_format_merge_driver: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2016 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/clang_format_merge_driver.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/clang_format_merge_driver.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2016 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\clang_format_merge_driver.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/codereview.settings: -------------------------------------------------------------------------------- 1 | # This file is used by git cl to get repository specific information. 2 | CC_LIST: chromium-reviews@chromium.org 3 | CODE_REVIEW_SERVER: codereview.chromium.org 4 | GERRIT_HOST: True 5 | PROJECT: depot_tools 6 | VIEW_VC: https://chromium.googlesource.com/chromium/tools/depot_tools/+/ 7 | -------------------------------------------------------------------------------- /depot_tools/compile_single_file: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2017 The Chromium Authors. All rights reserved. 3 | # # Use of this source code is governed by a BSD-style license that can be 4 | # # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python -u "$base_dir/compile_single_file.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/compile_single_file.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2017 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | python -u "%~dp0compile_single_file.py" %* 12 | -------------------------------------------------------------------------------- /depot_tools/cpplint.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2016 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | python "%~dp0cpplint.py" %* 12 | -------------------------------------------------------------------------------- /depot_tools/cros: -------------------------------------------------------------------------------- 1 | support/chromite_wrapper -------------------------------------------------------------------------------- /depot_tools/cros_sdk: -------------------------------------------------------------------------------- 1 | support/chromite_wrapper -------------------------------------------------------------------------------- /depot_tools/depot-tools-auth: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2015 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/depot-tools-auth.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/depot-tools-auth.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2015 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\depot-tools-auth.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/download_from_google_storage: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/download_from_google_storage.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/download_from_google_storage.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\download_from_google_storage.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/ensure_bootstrap: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2017 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | # This is a shell script to ensure that all of the "depot_tools" bootstrap 8 | # programs are locally downloaded and ready for execution. 9 | # 10 | # Unlike "update_depot_tools", this script works with the current 11 | # checkout, and will not update/sync the "depot_tools" repository. 12 | # 13 | # TODO: This duplicates logic in "update_depot_tools". Update that script to 14 | # invoke this script instead of manually calling "cipd_bin_setup" and other 15 | # operations. 16 | 17 | # Test if this script is running under a MinGW install. If it is, we will 18 | # hardcode the paths to Git where possible. 19 | OUTPUT="$(uname | grep 'MINGW')" 20 | MINGW=$? 21 | 22 | if [ $MINGW = 0 ]; then 23 | base_dir="${0%/*}" 24 | else 25 | base_dir=$(dirname "${BASH_SOURCE[0]}") 26 | if [ -L "$base_dir" ]; then 27 | base_dir=`cd "$base_dir" && pwd -P` 28 | fi 29 | fi 30 | 31 | # Sync CIPD-boostrapped packages. 32 | source "$base_dir/cipd_bin_setup.sh" 33 | cipd_bin_setup 34 | 35 | # Sync "gsutil.py". 36 | python "$base_dir/gsutil.py" -- version 1> /dev/null 37 | 38 | # Cleanup. 39 | find "$base_dir" -iname "*.pyc" -delete || true 40 | -------------------------------------------------------------------------------- /depot_tools/fetch: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2013 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/fetch.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/fetch.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2013 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Synchronize the root directory before deferring control back to gclient.py. 8 | call "%~dp0\update_depot_tools.bat" 9 | 10 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 11 | :: standalone, but allow other PATH manipulations to take priority. 12 | set PATH=%PATH%;%~dp0 13 | 14 | :: Defer control. 15 | python "%~dp0\fetch.py" %* 16 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/android.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Android(config_util.Config): 13 | """Basic Config alias for Android -> Chromium.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'chromium', 20 | 'props': ['--target_os=android'], 21 | }, 22 | } 23 | 24 | @staticmethod 25 | def expected_root(_props): 26 | return '' 27 | 28 | 29 | def main(argv=None): 30 | return Android().handle_args(argv) 31 | 32 | 33 | if __name__ == '__main__': 34 | sys.exit(main(sys.argv)) 35 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/android_internal.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class AndroidInternal(config_util.Config): 13 | """Basic Config alias for AndroidInternal -> Chromium.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'chromium', 20 | 'props': ['--target_os=android', '--internal=True', '--flash=False'], 21 | }, 22 | } 23 | 24 | @staticmethod 25 | def expected_root(_props): 26 | return '' 27 | 28 | 29 | def main(argv=None): 30 | return AndroidInternal().handle_args(argv) 31 | 32 | 33 | if __name__ == '__main__': 34 | sys.exit(main(sys.argv)) 35 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/breakpad.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Breakpad(config_util.Config): 13 | @staticmethod 14 | def fetch_spec(props): 15 | url = 'https://chromium.googlesource.com/breakpad/breakpad.git' 16 | solution = { 17 | 'name': 'src', 18 | 'url': url, 19 | 'managed': False, 20 | 'custom_deps': {}, 21 | } 22 | spec = { 23 | 'solutions': [solution], 24 | } 25 | if props.get('target_os'): 26 | spec['target_os'] = props['target_os'].split(',') 27 | if props.get('target_os_only'): 28 | spec['target_os_only'] = props['target_os_only'] 29 | return { 30 | 'type': 'gclient_git', 31 | 'gclient_git_spec': spec, 32 | } 33 | 34 | @staticmethod 35 | def expected_root(_props): 36 | return 'src' 37 | 38 | 39 | def main(argv=None): 40 | return Breakpad().handle_args(argv) 41 | 42 | 43 | if __name__ == '__main__': 44 | sys.exit(main(sys.argv)) 45 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/crashpad.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class CrashpadConfig(config_util.Config): 13 | """Basic Config class for Crashpad.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | spec = { 18 | 'solutions': [ 19 | { 20 | 'name': 'crashpad', 21 | 'url': 'https://chromium.googlesource.com/crashpad/crashpad.git', 22 | 'managed': False, 23 | }, 24 | ], 25 | } 26 | return { 27 | 'type': 'gclient_git', 28 | 'gclient_git_spec': spec, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'crashpad' 34 | 35 | 36 | def main(argv=None): 37 | return CrashpadConfig().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/dart.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Dart(config_util.Config): 13 | """Basic Config class for Dart.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://dart.googlesource.com/sdk.git' 18 | solution = { 19 | 'name' :'sdk', 20 | 'url' : url, 21 | 'deps_file': 'DEPS', 22 | 'managed' : False, 23 | 'custom_deps': {}, 24 | } 25 | spec = { 26 | 'solutions': [solution], 27 | } 28 | if props.get('target_os'): 29 | spec['target_os'] = props['target_os'].split(',') 30 | return { 31 | 'type': 'gclient_git', 32 | 'gclient_git_spec': spec, 33 | } 34 | 35 | @staticmethod 36 | def expected_root(_props): 37 | return 'sdk' 38 | 39 | 40 | def main(argv=None): 41 | return Dart().handle_args(argv) 42 | 43 | 44 | if __name__ == '__main__': 45 | sys.exit(main(sys.argv)) 46 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/depot_tools.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class DepotTools(config_util.Config): 13 | """Basic Config class for DepotTools.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' 18 | solution = { 19 | 'name' : 'depot_tools', 20 | 'url' : url, 21 | 'deps_file' : 'DEPS', 22 | 'managed' : False, 23 | } 24 | spec = { 25 | 'solutions': [solution], 26 | } 27 | checkout_type = 'gclient_git' 28 | spec_type = '%s_spec' % checkout_type 29 | return { 30 | 'type': checkout_type, 31 | spec_type: spec, 32 | } 33 | 34 | @staticmethod 35 | def expected_root(_props): 36 | return 'depot_tools' 37 | 38 | 39 | def main(argv=None): 40 | return DepotTools().handle_args(argv) 41 | 42 | 43 | if __name__ == '__main__': 44 | sys.exit(main(sys.argv)) 45 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/goma_client.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class GomaClient(config_util.Config): 13 | """Basic Config class for Goma client.""" 14 | 15 | @staticmethod 16 | def fetch_spec(_props): 17 | return { 18 | 'type': 'gclient_git', 19 | 'gclient_git_spec': { 20 | 'solutions': [ 21 | { 22 | 'name' : 'client', 23 | 'url' : 'https://chromium.googlesource.com/infra/goma/client.git', 24 | 'deps_file': 'DEPS', 25 | 'managed' : False, 26 | } 27 | ], 28 | }, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'client' 34 | 35 | 36 | def main(argv=None): 37 | return GomaClient().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/gyp.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Chromium(config_util.Config): 13 | """Basic Config class for Chromium.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://chromium.googlesource.com/external/gyp.git' 18 | solution = { 'name' :'gyp', 19 | 'url' : url, 20 | 'managed' : False, 21 | 'custom_deps': {}, 22 | } 23 | spec = { 24 | 'solutions': [solution], 25 | } 26 | return { 27 | 'type': 'gclient_git', 28 | 'gclient_git_spec': spec, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'gyp' 34 | 35 | 36 | def main(argv=None): 37 | return Chromium().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/infra.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Infra(config_util.Config): 13 | """Basic Config class for the Infrastructure repositories.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'type': 'gclient_git', 19 | 'gclient_git_spec': { 20 | 'solutions': [ 21 | { 22 | 'name' : 'infra', 23 | 'url' : 'https://chromium.googlesource.com/infra/infra.git', 24 | 'managed' : False, 25 | } 26 | ], 27 | }, 28 | } 29 | 30 | @staticmethod 31 | def expected_root(_props): 32 | return 'infra' 33 | 34 | 35 | def main(argv=None): 36 | return Infra().handle_args(argv) 37 | 38 | 39 | if __name__ == '__main__': 40 | sys.exit(main(sys.argv)) 41 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/infra_internal.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class InfraInternal(config_util.Config): 13 | """Basic Config class for the whole set of Infrastructure repositories.""" 14 | 15 | @staticmethod 16 | def fetch_spec(_props): 17 | def url(host, repo): 18 | return 'https://%s.googlesource.com/%s.git' % (host, repo) 19 | 20 | spec = { 21 | 'solutions': [ 22 | { 23 | 'name': 'infra_internal', 24 | 'url': url('chrome-internal', 'infra/infra_internal'), 25 | 'managed': False 26 | }, 27 | ], 28 | } 29 | return { 30 | 'type': 'gclient_git', 31 | 'gclient_git_spec': spec, 32 | } 33 | 34 | @staticmethod 35 | def expected_root(_props): 36 | return 'infra_internal' 37 | 38 | 39 | def main(argv=None): 40 | return InfraInternal().handle_args(argv) 41 | 42 | 43 | if __name__ == '__main__': 44 | sys.exit(main(sys.argv)) 45 | 46 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/inspector_protocol.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class InspectorProtocol(config_util.Config): 13 | @staticmethod 14 | def fetch_spec(props): 15 | url = 'https://chromium.googlesource.com/deps/inspector_protocol.git' 16 | solution = { 17 | 'name': 'src', 18 | 'url': url, 19 | 'managed': False, 20 | 'custom_deps': {}, 21 | } 22 | spec = { 23 | 'solutions': [solution], 24 | } 25 | return { 26 | 'type': 'gclient_git', 27 | 'gclient_git_spec': spec, 28 | } 29 | 30 | @staticmethod 31 | def expected_root(_props): 32 | return 'src' 33 | 34 | 35 | def main(argv=None): 36 | return InspectorProtocol().handle_args(argv) 37 | 38 | 39 | if __name__ == '__main__': 40 | sys.exit(main(sys.argv)) 41 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/ios.py: -------------------------------------------------------------------------------- 1 | # Copyright 2013 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class IOS(config_util.Config): 13 | """Basic Config alias for iOS -> Chromium.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'chromium', 20 | 'props': ['--target_os=ios', '--target_os_only=True'], 21 | }, 22 | } 23 | 24 | @staticmethod 25 | def expected_root(_props): 26 | return '' 27 | 28 | 29 | def main(argv=None): 30 | return IOS().handle_args(argv) 31 | 32 | 33 | if __name__ == '__main__': 34 | sys.exit(main(sys.argv)) 35 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/ios_internal.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class IOSInternal(config_util.Config): 13 | """Basic Config class for Chrome on iOS.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'chromium', 20 | 'props': [ 21 | '--flash=False', 22 | '--internal=True', 23 | '--target_os=ios', 24 | '--target_os_only=True', 25 | ], 26 | }, 27 | } 28 | 29 | @staticmethod 30 | def expected_root(_props): 31 | return '' 32 | 33 | 34 | def main(argv=None): 35 | return IOSInternal().handle_args(argv) 36 | 37 | 38 | if __name__ == '__main__': 39 | sys.exit(main(sys.argv)) 40 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/nacl.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class NaCl(config_util.Config): 13 | """Basic Config class for NaCl.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = ('https://chromium.googlesource.com/native_client/' 18 | 'src/native_client.git') 19 | solution = { 20 | 'name' : 'native_client', 21 | 'url' : url, 22 | 'deps_file' : 'DEPS', 23 | 'managed' : False, 24 | 'custom_deps' : {}, 25 | } 26 | spec = { 27 | 'solutions': [solution], 28 | } 29 | if props.get('target_os'): 30 | spec['target_os'] = props['target_os'].split(',') 31 | if props.get('target_os_only'): 32 | spec['target_os_only'] = props['target_os_only'] 33 | return { 34 | 'type': 'gclient_git', 35 | 'gclient_git_spec': spec, 36 | } 37 | 38 | @staticmethod 39 | def expected_root(_props): 40 | return 'native_client' 41 | 42 | 43 | def main(argv=None): 44 | return NaCl().handle_args(argv) 45 | 46 | 47 | if __name__ == '__main__': 48 | sys.exit(main(sys.argv)) 49 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/naclports.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Naclports(config_util.Config): 13 | """Basic Config class for naclports.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://chromium.googlesource.com/external/naclports.git' 18 | solution = { 19 | 'name' : 'src', 20 | 'url' : url, 21 | 'deps_file' : 'DEPS', 22 | 'managed' : False, 23 | 'custom_deps' : {}, 24 | } 25 | spec = { 26 | 'solutions': [solution], 27 | } 28 | if props.get('target_os'): 29 | spec['target_os'] = props['target_os'].split(',') 30 | if props.get('target_os_only'): 31 | spec['target_os_only'] = props['target_os_only'] 32 | return { 33 | 'type': 'gclient_git', 34 | 'gclient_git_spec': spec, 35 | } 36 | 37 | @staticmethod 38 | def expected_root(_props): 39 | return 'src' 40 | 41 | 42 | def main(argv=None): 43 | return Naclports().handle_args(argv) 44 | 45 | 46 | if __name__ == '__main__': 47 | sys.exit(main(sys.argv)) 48 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/node-ci.py: -------------------------------------------------------------------------------- 1 | # Copyright 2019 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class NodeCI(config_util.Config): 13 | """Basic Config class for node-ci.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://chromium.googlesource.com/v8/node-ci.git' 18 | return { 19 | 'type': 'gclient_git', 20 | 'gclient_git_spec': { 21 | 'solutions': [{ 22 | 'name' : 'node-ci', 23 | 'url' : url, 24 | 'deps_file' : 'DEPS', 25 | 'managed' : False, 26 | 'custom_deps' : {}, 27 | }], 28 | }, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'node-ci' 34 | 35 | 36 | def main(argv=None): 37 | return NodeCI().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/pdfium.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class PdfiumConfig(config_util.Config): 13 | """Basic Config class for pdfium.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'type': 'gclient_git', 19 | 'gclient_git_spec': { 20 | 'solutions': [ 21 | { 22 | 'name': 'pdfium', 23 | 'url': 'https://pdfium.googlesource.com/pdfium.git', 24 | 'managed': False, 25 | }, 26 | ], 27 | }, 28 | } 29 | 30 | @staticmethod 31 | def expected_root(_props): 32 | return 'pdfium' 33 | 34 | 35 | def main(argv=None): 36 | return PdfiumConfig().handle_args(argv) 37 | 38 | 39 | if __name__ == '__main__': 40 | sys.exit(main(sys.argv)) 41 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/skia.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Skia(config_util.Config): 13 | """Basic Config class for the Skia repository.""" 14 | 15 | @staticmethod 16 | def fetch_spec(_props): 17 | solution = { 18 | 'name' : 'skia', 19 | 'url' : 'https://skia.googlesource.com/skia.git', 20 | 'deps_file': 'DEPS', 21 | 'managed' : False, 22 | } 23 | spec = { 24 | 'solutions': [solution] 25 | } 26 | return { 27 | 'type': 'gclient_git', 28 | 'gclient_git_spec': spec, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'skia' 34 | 35 | 36 | def main(argv=None): 37 | return Skia().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/skia_buildbot.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class SkiaBuildbot(config_util.Config): 13 | """Basic Config class for the Skia Buildbot repository.""" 14 | 15 | @staticmethod 16 | def fetch_spec(_props): 17 | solution = { 18 | 'name' : 'buildbot', 19 | 'url' : 'https://skia.googlesource.com/buildbot.git', 20 | 'deps_file': 'DEPS', 21 | 'managed' : False, 22 | } 23 | spec = { 24 | 'solutions': [solution] 25 | } 26 | return { 27 | 'type': 'gclient_git', 28 | 'gclient_git_spec': spec, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'buildbot' 34 | 35 | 36 | def main(argv=None): 37 | return SkiaBuildbot().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/syzygy.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class Syzygy(config_util.Config): 13 | """Basic Config class for Syzygy.""" 14 | 15 | @staticmethod 16 | def fetch_spec(_props): 17 | return { 18 | 'type': 'gclient_git', 19 | 'gclient_git_spec': { 20 | 'solutions': [ 21 | { 22 | 'name' : 'src', 23 | 'url' : 'https://chromium.googlesource.com/syzygy', 24 | 'deps_file': 'DEPS', 25 | 'managed' : False, 26 | } 27 | ], 28 | }, 29 | } 30 | 31 | @staticmethod 32 | def expected_root(_props): 33 | return 'src' 34 | 35 | 36 | def main(argv=None): 37 | return Syzygy().handle_args(argv) 38 | 39 | 40 | if __name__ == '__main__': 41 | sys.exit(main(sys.argv)) 42 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/v8.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class V8(config_util.Config): 13 | """Basic Config class for V8.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://chromium.googlesource.com/v8/v8.git' 18 | solution = { 19 | 'name' : 'v8', 20 | 'url' : url, 21 | 'deps_file' : 'DEPS', 22 | 'managed' : False, 23 | 'custom_deps' : {}, 24 | } 25 | spec = { 26 | 'solutions': [solution], 27 | 'with_branch_heads': True, 28 | } 29 | return { 30 | 'type': 'gclient_git', 31 | 'gclient_git_spec': spec, 32 | } 33 | 34 | @staticmethod 35 | def expected_root(_props): 36 | return 'v8' 37 | 38 | 39 | def main(argv=None): 40 | return V8().handle_args(argv) 41 | 42 | 43 | if __name__ == '__main__': 44 | sys.exit(main(sys.argv)) 45 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/webrtc.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class WebRTC(config_util.Config): 13 | """Basic Config class for WebRTC.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | url = 'https://webrtc.googlesource.com/src.git' 18 | spec = { 19 | 'solutions': [ 20 | { 21 | 'name': 'src', 22 | 'url': url, 23 | 'deps_file': 'DEPS', 24 | 'managed': False, 25 | 'custom_deps': {}, 26 | }, 27 | ], 28 | 'with_branch_heads': True, 29 | } 30 | 31 | if props.get('target_os'): 32 | spec['target_os'] = props['target_os'].split(',') 33 | 34 | if props.get('cache_dir'): 35 | spec['cache_dir'] = props['cache_dir'] 36 | 37 | return { 38 | 'type': 'gclient_git', 39 | 'gclient_git_spec': spec, 40 | } 41 | 42 | @staticmethod 43 | def expected_root(_props): 44 | return 'src' 45 | 46 | 47 | def main(argv=None): 48 | return WebRTC().handle_args(argv) 49 | 50 | 51 | if __name__ == '__main__': 52 | sys.exit(main(sys.argv)) 53 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/webrtc_android.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class WebRTCAndroid(config_util.Config): 13 | """Basic Config alias for Android -> WebRTC.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'webrtc', 20 | 'props': ['--target_os=android,unix'], 21 | }, 22 | } 23 | 24 | @staticmethod 25 | def expected_root(_props): 26 | return 'src' 27 | 28 | 29 | def main(argv=None): 30 | return WebRTCAndroid().handle_args(argv) 31 | 32 | 33 | if __name__ == '__main__': 34 | sys.exit(main(sys.argv)) 35 | -------------------------------------------------------------------------------- /depot_tools/fetch_configs/webrtc_ios.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import sys 6 | 7 | import config_util # pylint: disable=import-error 8 | 9 | 10 | # This class doesn't need an __init__ method, so we disable the warning 11 | # pylint: disable=no-init 12 | class WebRTCIOS(config_util.Config): 13 | """Basic Config alias for iOS -> WebRTC.""" 14 | 15 | @staticmethod 16 | def fetch_spec(props): 17 | return { 18 | 'alias': { 19 | 'config': 'webrtc', 20 | 'props': ['--target_os=ios,mac'], 21 | }, 22 | } 23 | 24 | @staticmethod 25 | def expected_root(_props): 26 | return 'src' 27 | 28 | 29 | def main(argv=None): 30 | return WebRTCIOS().handle_args(argv) 31 | 32 | 33 | if __name__ == '__main__': 34 | sys.exit(main(sys.argv)) 35 | -------------------------------------------------------------------------------- /depot_tools/gclient: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | if [[ "#grep#fetch#cleanup#diff#setdep#" != *"#$1#"* ]]; then 9 | "$base_dir"/update_depot_tools "$@" 10 | case $? in 11 | 123) 12 | # msys environment was upgraded, need to quit. 13 | exit 0 14 | ;; 15 | 0) 16 | ;; 17 | *) 18 | exit $? 19 | esac 20 | fi 21 | 22 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/gclient.py" "$@" 23 | -------------------------------------------------------------------------------- /depot_tools/gclient.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Synchronize the root directory before deferring control back to gclient.py. 8 | call "%~dp0update_depot_tools.bat" %* 9 | 10 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 11 | :: standalone, but allow other PATH manipulations to take priority. 12 | set PATH=%PATH%;%~dp0 13 | 14 | :: Defer control. 15 | python "%~dp0gclient.py" %* 16 | -------------------------------------------------------------------------------- /depot_tools/git-cache: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-cl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-drover: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2015 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-find-releases: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-footers: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-freeze: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | SCRIPT=git_freezer.py 7 | set -- freeze "$@" 8 | . $(type -P python_runner.sh) 9 | -------------------------------------------------------------------------------- /depot_tools/git-gs: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | git grep -n -e "$@" -- "*.h" "*.hpp" "*.cpp" "*.c" "*.cc" "*.cpp" "*.inl"\ 6 | "*.grd" "*.grdp" "*.idl" "*.m" "*.mm" "*.py" "*.sh" "*.cfg" "*.tac" "*.go"\ 7 | "*.vcproj" "*.vsprops" "*.make" "*.gyp" "*.gypi" "*.isolate" "*.java"\ 8 | "*.js" "*.html" "*.css" "*.ebuild" "*.pl" "*.pm" "*.yaml" "*.gn" "*.gni"\ 9 | "*.json" "DEPS" "*/DEPS" "*.mojom" "*.proto" 10 | -------------------------------------------------------------------------------- /depot_tools/git-hyper-blame: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2016 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-map: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) | less -R 7 | -------------------------------------------------------------------------------- /depot_tools/git-map-branches: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-mark-merge-base: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-nav-downstream: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-nav-upstream: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | git checkout "$(git rev-parse --abbrev-ref "@{u}")" 7 | -------------------------------------------------------------------------------- /depot_tools/git-new-branch: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-number: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2013 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-rebase-update: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-rename-branch: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-reparent-branch: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-retry: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | SCRIPT=git_retry.py 7 | set -- retry "$@" 8 | . $(type -P python_runner.sh) 9 | -------------------------------------------------------------------------------- /depot_tools/git-runhooks: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | while test "$PWD" != "/"; do 4 | if test -f "$PWD/src/.gitmodules"; then 5 | break 6 | fi 7 | cd .. 8 | done 9 | if ! test -f "$PWD/src/.gitmodules"; then 10 | echo "Could not find the root of your checkout; aborting." 1>&2 11 | exit 1 12 | fi 13 | 14 | gclient_spec="solutions=[{'name':'src','url':None,'deps_file':'.DEPS.git'}]" 15 | kernel_name=$(uname -s) 16 | if [ "${kernel_name:0:5}" = "MINGW" ]; then 17 | dir="${0%\\*}" 18 | cmd "/C ${dir}\\python.bat ${dir}\\gclient.py runhooks --spec=$gclient_spec" 19 | else 20 | dir="$(dirname $0)" 21 | PYTHONDONTWRITEBYTECODE=1 exec python "$dir/gclient.py" runhooks --spec="$gclient_spec" 22 | fi 23 | exit $? 24 | -------------------------------------------------------------------------------- /depot_tools/git-squash-branch: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | . $(type -P python_runner.sh) 7 | -------------------------------------------------------------------------------- /depot_tools/git-templates/description: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/applypatch-msg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/applypatch-msg" ] && exec sh "build/git-hooks/applypatch-msg" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/post-applypatch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/post-applypatch" ] && exec sh "build/git-hooks/post-applypatch" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/post-checkout: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/post-checkout" ] && exec sh "build/git-hooks/post-checkout" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/post-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/post-commit" ] && exec sh "build/git-hooks/post-commit" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/post-merge: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/post-merge" ] && exec sh "build/git-hooks/post-merge" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/post-update: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/post-update" ] && exec sh "build/git-hooks/post-update" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/pre-applypatch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/pre-applypatch" ] && exec sh "build/git-hooks/pre-applypatch" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/pre-auto-gc: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/pre-auto-gc" ] && exec sh "build/git-hooks/pre-auto-gc" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/pre-commit" ] && exec sh "build/git-hooks/pre-commit" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/pre-rebase: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/pre-rebase" ] && exec sh "build/git-hooks/pre-rebase" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/hooks/prepare-commit-msg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -e "build/git-hooks/prepare-commit-msg" ] && exec sh "build/git-hooks/prepare-commit-msg" "$@" 4 | exit 0 5 | -------------------------------------------------------------------------------- /depot_tools/git-templates/info/exclude: -------------------------------------------------------------------------------- 1 | # git ls-files --others --exclude-from=.git/info/exclude 2 | # Lines that start with '#' are comments. 3 | # For a project mostly in C, the following would be a good set of 4 | # exclude patterns (uncomment them if you want to use them): 5 | # *.[oa] 6 | # *~ 7 | -------------------------------------------------------------------------------- /depot_tools/git-thaw: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | # git_freezer.py thaw -- a git-command to reverse the effect of the 'git freeze' 7 | # command. Any changes suspended on this branch with the freeze command will be 8 | # restored to the state they were in immediately prior to running the freeze 9 | # command. 10 | 11 | SCRIPT=git_freezer.py 12 | set -- thaw "$@" 13 | . $(type -P python_runner.sh) 14 | -------------------------------------------------------------------------------- /depot_tools/git-upstream-diff: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | # git_upstream_diff.py -- Provide the diff between the current branch and its 7 | # upstream. 8 | 9 | . $(type -P python_runner.sh) 10 | -------------------------------------------------------------------------------- /depot_tools/git_cl_completion.sh: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | 6 | # This adds completion to bash shells for git cl commands. It is 7 | # meant for developers and not needed for inclusion by any automated 8 | # processes that will, of course, specify the full command, not rely 9 | # on or benefit from tab-completion. 10 | # 11 | # Requires: 12 | # Installed git bash completion. 13 | # 14 | # Usage: 15 | # Put something like the following in your .bashrc: 16 | # . $PATH_TO_DEPOT_TOOLS/git cl_completion.sh 17 | # 18 | 19 | 20 | # Parses commands from git cl -h. 21 | __git_cl_commands () { 22 | git cl -h 2> /dev/null | sed -n 's/^\s*\x1b\[32m\(.*\)\x1b\[39m.*$/\1/p' 23 | } 24 | 25 | # Caches variables in __git_cl_all_commands. 26 | __git_cl_compute_all_commands () { 27 | test -n "$__git_cl_all_commands" || 28 | __git_cl_all_commands="$(__git_cl_commands)" 29 | } 30 | 31 | _git_cl () { 32 | __git_cl_compute_all_commands 33 | __gitcomp_nl "$(__git_cl_commands)" 34 | } 35 | -------------------------------------------------------------------------------- /depot_tools/git_freezer.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | from __future__ import print_function 7 | 8 | import sys 9 | import optparse 10 | 11 | import subcommand 12 | 13 | from git_common import freeze, thaw 14 | 15 | def CMDfreeze(parser, args): 16 | """Freeze a branch's changes.""" 17 | parser.parse_args(args) 18 | return freeze() 19 | 20 | 21 | def CMDthaw(parser, args): 22 | """Returns a frozen branch to the state before it was frozen.""" 23 | parser.parse_args(args) 24 | return thaw() 25 | 26 | 27 | def main(args): 28 | dispatcher = subcommand.CommandDispatcher(__name__) 29 | ret = dispatcher.execute(optparse.OptionParser(), args) 30 | if ret: 31 | print(ret) 32 | return 0 33 | 34 | 35 | if __name__ == '__main__': 36 | try: 37 | sys.exit(main(sys.argv[1:])) 38 | except KeyboardInterrupt: 39 | sys.stderr.write('interrupted\n') 40 | sys.exit(1) 41 | -------------------------------------------------------------------------------- /depot_tools/git_squash_branch.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # Copyright 2014 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | import argparse 7 | import sys 8 | 9 | import git_common 10 | 11 | def main(args): 12 | parser = argparse.ArgumentParser() 13 | parser.add_argument( 14 | '-m', '--message', metavar='', default=None, 15 | help='Use the given as the first line of the commit message.') 16 | opts = parser.parse_args(args) 17 | if git_common.is_dirty_git_tree('squash-branch'): 18 | return 1 19 | git_common.squash_current_branch(opts.message) 20 | return 0 21 | 22 | 23 | if __name__ == '__main__': 24 | try: 25 | sys.exit(main(sys.argv[1:])) 26 | except KeyboardInterrupt: 27 | sys.stderr.write('interrupted\n') 28 | sys.exit(1) 29 | -------------------------------------------------------------------------------- /depot_tools/gn: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright 2013 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/gn.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/gn.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2013 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\gn.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/gsutil.py.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2018 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Synchronize the root directory before deferring control back to gsutil.py. 8 | call "%~dp0update_depot_tools.bat" %* 9 | 10 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 11 | :: standalone, but allow other PATH manipulations to take priority. 12 | set PATH=%PATH%;%~dp0 13 | 14 | :: Defer control. 15 | python "%~dp0gsutil.py" %* 16 | -------------------------------------------------------------------------------- /depot_tools/infra/README.md: -------------------------------------------------------------------------------- 1 | This directory contains infra-specific files. 2 | -------------------------------------------------------------------------------- /depot_tools/infra/config/OWNERS: -------------------------------------------------------------------------------- 1 | set noparent 2 | iannucci@chromium.org 3 | nodir@chromium.org 4 | sergiyb@chromium.org 5 | 6 | per-file recipes.cfg=martiniss@chromium.org 7 | per-file recipes.cfg=recipe-roller@chromium.org 8 | -------------------------------------------------------------------------------- /depot_tools/infra/config/README.md: -------------------------------------------------------------------------------- 1 | This directory contains configuration files for infra services. 2 | -------------------------------------------------------------------------------- /depot_tools/infra/config/recipes.cfg: -------------------------------------------------------------------------------- 1 | { 2 | "api_version": 2, 3 | "autoroll_recipe_options": { 4 | "nontrivial": { 5 | "automatic_commit_dry_run": true 6 | }, 7 | "trivial": { 8 | "automatic_commit": true, 9 | "tbr_emails": [ 10 | "iannucci@chromium.org" 11 | ] 12 | } 13 | }, 14 | "canonical_repo_url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git", 15 | "deps": { 16 | "recipe_engine": { 17 | "branch": "master", 18 | "revision": "bdc5cd8872c898ccb123cf7ea29d7a7975f28364", 19 | "url": "https://chromium.googlesource.com/infra/luci/recipes-py.git" 20 | } 21 | }, 22 | "project_id": "depot_tools", 23 | "recipes_path": "recipes", 24 | "repo_name": "depot_tools" 25 | } 26 | -------------------------------------------------------------------------------- /depot_tools/led: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2017 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/led" "$@" 13 | -------------------------------------------------------------------------------- /depot_tools/led.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2017 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\led.exe" %* 8 | -------------------------------------------------------------------------------- /depot_tools/luci-auth: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2018 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/luci-auth" "$@" 13 | 14 | -------------------------------------------------------------------------------- /depot_tools/luci-auth.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2018 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\luci-auth.exe" %* 8 | 9 | -------------------------------------------------------------------------------- /depot_tools/lucicfg: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2019 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/lucicfg" "$@" 13 | -------------------------------------------------------------------------------- /depot_tools/lucicfg.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2019 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\lucicfg.exe" %* 8 | -------------------------------------------------------------------------------- /depot_tools/mac_toolchain: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2017 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/mac_toolchain" "$@" 13 | -------------------------------------------------------------------------------- /depot_tools/man/push_to_gs.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | MY_DIR=$(dirname "$(readlink "$0")") 4 | gsutil cp -r -z html -a public-read "$MY_DIR/html" gs://chrome-infra-docs/flat/depot_tools/docs/ 5 | -------------------------------------------------------------------------------- /depot_tools/man/src/.gitignore: -------------------------------------------------------------------------------- 1 | git 2 | asciidoc 3 | demo_repo 4 | ansi2html 5 | __*.txt 6 | -------------------------------------------------------------------------------- /depot_tools/man/src/_aliases.txt: -------------------------------------------------------------------------------- 1 | SUGGESTED ALIASES 2 | ----------------- 3 | 4 | Some common short-hand aliases. Feel free to add these to your '~/.gitconfig' 5 | file. 6 | -------------------------------------------------------------------------------- /depot_tools/man/src/_footer.txt: -------------------------------------------------------------------------------- 1 | CHROMIUM DEPOT_TOOLS 2 | -------------------- 3 | 4 | Part of the chromium linkgit:depot_tools[7] suite. These tools are meant to 5 | assist with the development of chromium and related projects. Download the tools 6 | from link:{sys3:git config remote.origin.url}[here]. 7 | 8 | // vim: ft=asciidoc: 9 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-cl_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Interact with code reviews on Gerrit and Rietveld 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-drover_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Apply a commit from the trunk to a release branch, or from one release branch to 2 | another. 3 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-footers_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Extract meta-information expressed as footers in a commit message. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-freeze_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Freeze all changes on a branch (indexed and unindexed). 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-hyper-blame_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Like git blame, but with the ability to ignore or bypass certain commits. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-map-branches_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Helper script to display all local git branches with ‘upstream’ hierarchy in 2 | colorized terminal format. 3 | 4 | // vim: ft=asciidoc: 5 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-map_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Display history of all branches in a colorized terminal format. 2 | 3 | // vim: ft=asciidoc: 4 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-mark-merge-base_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Manually interact with depot_tools' merge-base markers. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-nav-downstream_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Checkout a downstream branch of the currently checked out branch. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-nav-upstream_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Checkout the upstream branch of the currently checked out branch. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-new-branch_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Create a new branch with correct tracking information. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-rebase-update_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Updates all branches to have the latest changes from their upstreams. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-rename-branch_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Rename a branch and correctly preserve all downstream relationships. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-reparent-branch_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Alter the parentage (upstream) for the current branch. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-retry_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Bootstrap function to retry a git command. 2 | 3 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-squash-branch_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Takes all commits in a single branch and replaces them with a single commit. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-thaw_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Un-freeze all changes on a frozen branch. 2 | 3 | -------------------------------------------------------------------------------- /depot_tools/man/src/_git-upstream-diff_desc.helper.txt: -------------------------------------------------------------------------------- 1 | Print a diff of the current branch, compared to its upstream. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/_helper_prefix.txt: -------------------------------------------------------------------------------- 1 | A tutorial for these tools can be found at linkgit:depot_tools_tutorial[7]. 2 | -------------------------------------------------------------------------------- /depot_tools/man/src/asciidoc-override.css: -------------------------------------------------------------------------------- 1 | div.listingblock > div.content { 2 | background: rgb(28, 28, 28); 3 | } 4 | 5 | div.listingblock > div > pre > code { 6 | color: rgb(187, 187, 187); 7 | } 8 | -------------------------------------------------------------------------------- /depot_tools/man/src/demo_repo.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | . common_demo_functions.sh 4 | 5 | TDIR=$(mktemp --tmpdir -d demo_repo.XXXXXXXXXX) 6 | trap "rm -rf $TDIR" EXIT 7 | 8 | cd $TDIR 9 | silent git clone "$REMOTE" . 10 | silent git reset --hard stage_1 11 | silent git update-ref refs/remotes/origin/master stage_1 12 | silent git tag -d $(git tag -l 'stage_*') 13 | silent git checkout origin/master 14 | silent git branch -d master 15 | silent git config color.ui always 16 | 17 | if [[ ! "$BLANK_DEMO" ]] 18 | then 19 | silent git new-branch cool_feature 20 | 21 | c "Add widget" 22 | c "Refactor spleen" 23 | silent git tag spleen_tag 24 | 25 | c "another improvement" 26 | 27 | silent git new-branch --upstream_current subfeature 28 | c "slick commenting action" 29 | c "integrate with CoolService" 30 | 31 | silent git checkout cool_feature 32 | c "Respond to CL comments" 33 | 34 | silent git new-branch fixit 35 | c "Epic README update" 36 | c "Add neat feature" 37 | 38 | silent git new-branch --upstream_current frozen_branch 39 | c "a deleted file" 40 | c "modfile" 41 | c "FREEZE.unindexed" 42 | fi 43 | 44 | -------------------------------------------------------------------------------- /depot_tools/man/src/depot_tools.txt: -------------------------------------------------------------------------------- 1 | depot_tools(7) 2 | ============== 3 | 4 | NAME 5 | ---- 6 | depot_tools - A collection of tools for dealing with Chromium development. 7 | 8 | DESCRIPTION 9 | ----------- 10 | 11 | The Chromium depot_tools suite contains many tools to assist/augment the 12 | Chromium development environment. The tools may be downloaded from 13 | link:{sys3:git config remote.origin.url}[here]. 14 | 15 | There are two primary categories of tools. Some of these tools are 'essential' 16 | to the development flow, in the sense that you cannot successfully develop 17 | Chromium without them. 18 | 19 | Other tools are merely 'helper' tools. Not required, but they can substantially 20 | ease the development workflow. 21 | 22 | A listing of both categories of tools follows. 23 | 24 | include::__essential.txt[maxdepth=1] 25 | 26 | include::__helper.txt[maxdepth=1] 27 | 28 | // vim: ft=asciidoc: 29 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-drover.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-drover.demo.common.sh 3 | 4 | drover_c "This change needs to go to branch 9999" 5 | 6 | echo "# Here's a commit (from some.committer) that we want to 'drover'." 7 | run git log -n 1 --pretty=fuller 8 | echo 9 | echo "# Now do the 'drover'." 10 | pcommand git drover --branch 9999 \ 11 | --cherry-pick $(git show-ref -s pick_commit) 12 | 13 | echo "Going to cherry-pick" 14 | echo '"""' 15 | output git log -n 1 16 | echo '"""' 17 | echo "to 9999. Continue (y/n)? y" 18 | echo 19 | echo "# A cl is uploaded to rietveld, where it can be reviewed before landing." 20 | echo 21 | echo "About to land on 9999. Continue (y/n)? y" 22 | echo "# The cherry-pick cl is landed on the branch 9999." 23 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-drover.demo.2.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-drover.demo.common.sh 3 | 4 | echo "# Make sure we have the most up-to-date branch sources." 5 | run git fetch 6 | echo 7 | echo "# Checkout the branch with the change we want to revert." 8 | run git checkout -b drover_9999 branch-heads/9999 9 | echo 10 | drover_c "This change is horribly broken." 11 | echo "# Here's the commit we want to revert." 12 | run git log -n 1 13 | echo 14 | echo "# Now do the revert." 15 | silent git revert --no-edit $(git show-ref -s pick_commit) 16 | pcommand git revert $(git show-ref -s pick_commit) 17 | echo 18 | echo "# That reverted the change and committed the revert." 19 | run git log -n 1 20 | echo 21 | echo "# As with old drover, reverts are generally OK to commit without LGTM." 22 | pcommand git cl upload -r some.committer@chromium.org --send-mail 23 | run git cl land --bypass-hooks 24 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-drover.demo.3.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-drover.demo.common.sh 3 | 4 | drover_c "This change needs to go to branch 9999" 5 | 6 | echo "# Make sure we have the most up-to-date branch sources." 7 | run git fetch 8 | echo 9 | echo "# Here's a commit (from some.committer) that we want to 'drover'." 10 | run git log -n 1 --pretty=fuller 11 | echo 12 | echo "# Checkout the branch we want to 'drover' to." 13 | run git checkout -b drover_9999 branch-heads/9999 14 | echo 15 | echo "# Now do the 'drover'." 16 | echo "# IMPORTANT!!! Do Not leave off the '-x' flag" 17 | run git cherry-pick -x $(git show-ref -s pick_commit) 18 | echo 19 | echo "# That took the code authored by some.committer and committed it to" 20 | echo "# the branch by the person who drovered it (i.e. you)." 21 | run git log -n 1 --pretty=fuller 22 | echo 23 | echo "# Looks good. Ship it!" 24 | pcommand git cl upload 25 | echo "# Wait for LGTM or TBR it." 26 | run git cl land 27 | echo "# Or skip the LGTM/TBR and just 'git cl land --bypass-hooks'" 28 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-drover.demo.4.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-drover.demo.common.sh 3 | 4 | drover_c "This change needs to go to branch 9999" 5 | 6 | echo "# Here's a commit (from some.committer) that we want to 'drover'." 7 | run git log -n 1 --pretty=fuller 8 | echo 9 | echo "# Now do the 'drover'." 10 | pcommand git drover --branch 9999 \ 11 | --cherry-pick $(git show-ref -s pick_commit) 12 | 13 | echo "Going to cherry-pick" 14 | echo '"""' 15 | output git log -n 1 16 | echo '"""' 17 | echo "to 9999. Continue (y/n)? y" 18 | echo 19 | echo "Error: Patch failed to apply." 20 | echo 21 | echo "A workdir for this cherry-pick has been created in" 22 | echo " /tmp/drover_9999" 23 | echo 24 | echo "To continue, resolve the conflicts there and run" 25 | echo " git drover --continue /tmp/drover_9999" 26 | echo 27 | echo "To abort this cherry-pick run" 28 | echo " git drover --abort /tmp/drover_9999" 29 | echo 30 | pcommand pushd /tmp/drover_9999 31 | echo "# Manually resolve conflicts." 32 | pcommand git add path/to/file_with_conflicts 33 | pcommand popd 34 | pcommand git drover --continue /tmp/drover_9999 35 | echo 36 | echo "# A cl is uploaded to rietveld, where it can be reviewed before landing." 37 | echo 38 | echo "About to land on 9999. Continue (y/n)? y" 39 | echo "# The cherry-pick cl is landed on the branch 9999." 40 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-drover.demo.common.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | # Add and tag a dummy commit to refer to later. 5 | drover_c() { 6 | add modified_file 7 | set_user some.committer 8 | c "$1" 9 | silent git tag -f pick_commit 10 | set_user you 11 | tick 1000 12 | } 13 | 14 | silent git push origin refs/remotes/origin/master:refs/branch-heads/9999 15 | silent git config --add remote.origin.fetch \ 16 | +refs/branch-heads/*:refs/remotes/branch-heads/* 17 | silent git fetch origin 18 | 19 | silent git checkout -B master origin/master 20 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-footers.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | add deleted_file 5 | add unstaged_deleted_file 6 | add modified_file 7 | c 'I committed this and am proud of it. 8 | 9 | Cr-Commit-Position: refs/heads/master@{#292272} 10 | Tech-Debt-Introduced: 17 microMSOffices 11 | Tech-Debt-Introduced: -4 microMSOffices' 12 | 13 | run git footers HEAD 14 | run git footers --key Tech-Debt-Introduced HEAD 15 | run git footers --position HEAD 16 | run git footers --position-num HEAD 17 | run git footers --position-ref HEAD 18 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-freeze.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | add deleted_file 5 | add unstaged_deleted_file 6 | add modified_file 7 | c "demo changes" 8 | 9 | add added_file_with_unstaged_changes 10 | echo bob >> added_file_with_unstaged_changes 11 | 12 | add added_file 13 | echo bob >> modified_file 14 | silent git rm deleted_file 15 | rm unstaged_deleted_file 16 | touch unadded_file 17 | 18 | run git status --short 19 | run git freeze 20 | run git status --short 21 | run git log -n 2 --stat 22 | run git thaw 23 | run git status --short 24 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-hyper-blame.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-hyper-blame.demo.common.sh 3 | run git blame ipsum.txt 4 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-hyper-blame.demo.2.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . git-hyper-blame.demo.common.sh 3 | IGNORE=$(git rev-parse HEAD^) 4 | run git hyper-blame -i ${IGNORE:0:8} ipsum.txt 5 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-map-branches.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | silent git branch no_upstream HEAD~ 5 | 6 | run git map-branches 7 | run git map-branches -v 8 | 9 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-map.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | run git map 4 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-mark-merge-base.txt: -------------------------------------------------------------------------------- 1 | git-mark-merge-base(1) 2 | ====================== 3 | 4 | NAME 5 | ---- 6 | git-mark-merge-base - 7 | include::_git-mark-merge-base_desc.helper.txt[] 8 | 9 | SYNOPSIS 10 | -------- 11 | [verse] 12 | 'git mark-merge-base' 13 | 'git mark-merge-base' 14 | 'git mark-merge-base' [-d | --delete] 15 | 16 | DESCRIPTION 17 | ----------- 18 | 19 | Inspect, set or delete the current merge-base marker for the current branch. 20 | This should not be needed, but is useful if things get into a snarled state. 21 | Pass no arguments to view the current value. If you provide , then 22 | `git mark-merge-base` will attempt to set that as the merge-base value. 23 | 24 | It is invalid to pick a commit which is not an ancestor of the current branch. 25 | 26 | See linkgit:git-rebase-update[1]'s description of the `branch..base` 27 | configuration variable for more info on what the merge base markers are for. 28 | 29 | OPTIONS 30 | ------- 31 | 32 | -d:: 33 | --delete:: 34 | Delete the merge-base marker for the current branch. 35 | 36 | :: 37 | The new value to set for the current branch's merge-base marker. 38 | 39 | SEE ALSO 40 | -------- 41 | linkgit:git-rebase-update[1], linkgit:git-reparent-branch[1], 42 | linkgit:git-rename-branch[1], linkgit:git-upstream-diff[1] 43 | 44 | include::_footer.txt[] 45 | 46 | // vim: ft=asciidoc: 47 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-nav-downstream.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | silent git checkout origin/master 5 | 6 | run git map-branches 7 | pcommand git nav-downstream 8 | git nav-downstream --pick 0 2>&1 9 | run git map-branches 10 | run git nav-downstream 2>&1 11 | run git map-branches 12 | 13 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-nav-downstream.txt: -------------------------------------------------------------------------------- 1 | git-nav-downstream(1) 2 | ===================== 3 | 4 | NAME 5 | ---- 6 | git-nav-downstream - 7 | include::_git-nav-downstream_desc.helper.txt[] 8 | 9 | SYNOPSIS 10 | -------- 11 | [verse] 12 | 'git nav-downstream' 13 | 14 | DESCRIPTION 15 | ----------- 16 | 17 | 'git-nav-downstream' takes the current branch and discovers all branches 18 | downstream of it. If there is only one branch downstream of the current branch, 19 | the command will check that out. If there\'s more than one downstream branch, the 20 | command will prompt you with a selection of the branches. 21 | 22 | EXAMPLE 23 | ------- 24 | demo:1[] 25 | 26 | include::_aliases.txt[] 27 | 28 | ---- 29 | [alias] 30 | git down = nav-downstream 31 | ---- 32 | 33 | 34 | SEE ALSO 35 | -------- 36 | linkgit:git-map-branches[1], linkgit:git-nav-upstream[1] 37 | 38 | include::_footer.txt[] 39 | 40 | // vim: ft=asciidoc: 41 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-nav-upstream.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | silent git checkout subfeature 5 | 6 | run git map-branches 7 | run git nav-upstream 2>&1 8 | run git map-branches 9 | callout 3 10 | run git nav-upstream 2>&1 11 | run git map-branches 12 | 13 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-nav-upstream.txt: -------------------------------------------------------------------------------- 1 | git-nav-upstream(1) 2 | ===================== 3 | 4 | NAME 5 | ---- 6 | git-nav-upstream - 7 | include::_git-nav-upstream_desc.helper.txt[] 8 | 9 | SYNOPSIS 10 | -------- 11 | [verse] 12 | 'git nav-upstream' 13 | 14 | DESCRIPTION 15 | ----------- 16 | 17 | 'git-nav-upstream' takes the current branch, finds it\'s upstream branch, and 18 | checks that out. 19 | 20 | EXAMPLE 21 | ------- 22 | demo:1[] 23 | 1. Note that being in a 'detached HEAD' state is OK. You'll just want to create 24 | a linkgit:git-new-branch[1] from here. 25 | 26 | include::_aliases.txt[] 27 | 28 | ---- 29 | [alias] 30 | git up = nav-upstream 31 | ---- 32 | 33 | SEE ALSO 34 | -------- 35 | linkgit:git-map-branches[1], linkgit:git-nav-downstream[1] 36 | 37 | include::_footer.txt[] 38 | 39 | // vim: ft=asciidoc: 40 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-new-branch.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | run git map-branches -v 5 | run git new-branch independent_cl 6 | run git map-branches -v 7 | praw vi foo \&\& git add -A \&\& git commit -m 'foo' 8 | silent echo 'foo' >foo 9 | silent git add -A 10 | silent git commit -m 'foo' 11 | run git map-branches -v 12 | run git new-branch --upstream subfeature nested_cl 13 | callout 3 14 | run git map-branches -v 15 | run git checkout cool_feature 2>&1 16 | run git new-branch --upstream_current cl_depends_on_cool_feature 17 | run git map-branches -v 18 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-rename-branch.txt: -------------------------------------------------------------------------------- 1 | git-rename-branch(1) 2 | ==================== 3 | 4 | NAME 5 | ---- 6 | git-rename-branch - 7 | include::_git-rename-branch_desc.helper.txt[] 8 | 9 | SYNOPSIS 10 | -------- 11 | [verse] 12 | 'git rename-branch' 13 | 'git rename-branch' 14 | 15 | DESCRIPTION 16 | ----------- 17 | 18 | Rename the current (or specified) branch, then update all dowstream branches' 19 | tracking information to preserve inter-branch dependencies. 20 | 21 | SEE ALSO 22 | -------- 23 | linkgit:git-rebase-update[1], linkgit:git-reparent-branch[1], 24 | linkgit:git-new-branch[1], linkgit:git-upstream-diff[1] 25 | 26 | include::_footer.txt[] 27 | 28 | // vim: ft=asciidoc: 29 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-squash-branch.demo.1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | . demo_repo.sh 3 | 4 | run git map 5 | echo 6 | 7 | # since these are all empty commits, pretend there's something there 8 | pcommand git squash-branch -m "cool squash demo" 9 | git squash-branch -m "cool squash demo" > /dev/null 2> /dev/null 10 | c "cool squash demo" 11 | 12 | run git map 13 | -------------------------------------------------------------------------------- /depot_tools/man/src/git-thaw.txt: -------------------------------------------------------------------------------- 1 | git-thaw(1) 2 | ============= 3 | 4 | NAME 5 | ---- 6 | git-thaw - 7 | include::_git-thaw_desc.helper.txt[] 8 | 9 | SYNOPSIS 10 | -------- 11 | [verse] 12 | 'git thaw' 13 | 14 | DESCRIPTION 15 | ----------- 16 | 17 | `git thaw` takes a frozen branch (as made by linkgit:git-freeze[1]), and returns 18 | it to the status that it was in before it was frozen. 19 | 20 | If you freeze a branch multiple times (i.e. change files, freeze, change files, 21 | freeze), `git thaw` will thaw all of the freezes. 22 | 23 | SEE ALSO 24 | -------- 25 | linkgit:git-freeze[1] 26 | 27 | include::_footer.txt[] 28 | 29 | // vim: ft=asciidoc: 30 | -------------------------------------------------------------------------------- /depot_tools/ninja: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (c) 2012 Google Inc. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | OS="$(uname -s)" 8 | THIS_DIR="$(dirname "${0}")" 9 | 10 | function print_help() { 11 | cat <<-EOF 12 | No prebuilt ninja binary was found for this system. 13 | Try building your own binary by doing: 14 | cd ~ 15 | git clone https://github.com/ninja-build/ninja.git -b v1.8.2 16 | cd ninja && ./configure.py --bootstrap 17 | Then add ~/ninja/ to your PATH. 18 | EOF 19 | } 20 | 21 | case "$OS" in 22 | Linux) 23 | MACHINE=$(uname -m) 24 | case "$MACHINE" in 25 | i?86|x86_64) 26 | LONG_BIT=$(getconf LONG_BIT) 27 | # We know we are on x86 but we need to use getconf to determine 28 | # bittage of the userspace install (e.g. when running 32-bit userspace 29 | # on x86_64 kernel) 30 | exec "${THIS_DIR}/ninja-linux${LONG_BIT}" "$@";; 31 | *) 32 | echo Unknown architecture \($MACHINE\) -- unable to run ninja. 33 | print_help 34 | exit 1;; 35 | esac 36 | ;; 37 | Darwin) exec "${THIS_DIR}/ninja-mac" "$@";; 38 | CYGWIN*) exec cmd.exe /c $(cygpath -t windows $0).exe "$@";; 39 | MINGW*) cmd.exe //c $0.exe "$@";; 40 | *) echo "Unsupported OS ${OS}" 41 | print_help 42 | exit 1;; 43 | esac 44 | -------------------------------------------------------------------------------- /depot_tools/ninja-linux32: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/ninja-linux32 -------------------------------------------------------------------------------- /depot_tools/ninja-linux64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/ninja-linux64 -------------------------------------------------------------------------------- /depot_tools/ninja-mac: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/ninja-mac -------------------------------------------------------------------------------- /depot_tools/ninja.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/ninja.exe -------------------------------------------------------------------------------- /depot_tools/profile.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /depot_tools/prpc: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2018 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 8 | 9 | source "$MYPATH/cipd_bin_setup.sh" 10 | cipd_bin_setup &> /dev/null 11 | 12 | exec "$MYPATH/.cipd_bin/prpc" "$@" 13 | 14 | -------------------------------------------------------------------------------- /depot_tools/prpc.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2018 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\prpc.exe" %* 8 | 9 | -------------------------------------------------------------------------------- /depot_tools/pylint: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | # pylint -- a shell wrapper for pylint.py. 7 | 8 | base_dir=$(dirname "$0") 9 | 10 | # Test if this script is running under a MSys install. If it is, we will 11 | # hardcode the path to Python where possible. 12 | OUTPUT="$(uname | grep 'MINGW')" 13 | MINGW=$? 14 | 15 | if [ -e "$base_dir/python.bat" -a $MINGW = 0 ]; then 16 | PYTHONDONTWRITEBYTECODE=1 cmd.exe //c "$base_dir\\python.bat" "$base_dir\\pylint.py" "$@" 17 | else 18 | PYTHONDONTWRITEBYTECODE=1 exec "$base_dir/pylint.py" "$@" 19 | fi 20 | -------------------------------------------------------------------------------- /depot_tools/pylint.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | """A wrapper script for using pylint from the command line.""" 7 | 8 | import os 9 | import subprocess 10 | import sys 11 | 12 | 13 | _HERE = os.path.dirname(os.path.abspath(__file__)) 14 | _PYLINT = os.path.join(_HERE, 'third_party', 'pylint.py') 15 | _RC_FILE = os.path.join(_HERE, 'pylintrc') 16 | 17 | 18 | # Run pylint. We prepend the command-line with the depot_tools rcfile. If 19 | # another rcfile is to be used, passing --rcfile a second time on the command- 20 | # line will work fine. 21 | command = [sys.executable, _PYLINT] 22 | if os.path.isfile(_RC_FILE): 23 | # The file can be removed to test 'normal' pylint behavior. 24 | command.append('--rcfile=%s' % _RC_FILE) 25 | command.extend(sys.argv[1:]) 26 | try: 27 | sys.exit(subprocess.call(command)) 28 | except KeyboardInterrupt: 29 | sys.stderr.write('interrupted\n') 30 | sys.exit(1) 31 | -------------------------------------------------------------------------------- /depot_tools/recipes/OWNERS: -------------------------------------------------------------------------------- 1 | iannucci@chromium.org 2 | nodir@chromium.org 3 | tandrii@chromium.org 4 | 5 | per-file README.recipes.md=* 6 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/OWNERS: -------------------------------------------------------------------------------- 1 | recipe-roller@chromium.org 2 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/bot_update/OWNERS: -------------------------------------------------------------------------------- 1 | tandrii@chromium.org 2 | ehmaldonado@chromium.org 3 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/bot_update/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'depot_tools', 3 | 'gclient', 4 | 'gerrit', 5 | 'gitiles', 6 | 'recipe_engine/buildbucket', 7 | 'recipe_engine/context', 8 | 'recipe_engine/commit_position', 9 | 'recipe_engine/json', 10 | 'recipe_engine/path', 11 | 'recipe_engine/platform', 12 | 'recipe_engine/properties', 13 | 'recipe_engine/python', 14 | 'recipe_engine/raw_io', 15 | 'recipe_engine/runtime', 16 | 'recipe_engine/source_manifest', 17 | 'recipe_engine/step', 18 | 'tryserver', 19 | ] 20 | 21 | from recipe_engine.recipe_api import Property 22 | from recipe_engine.config import ConfigGroup, Single 23 | 24 | PROPERTIES = { 25 | # Gerrit patches will have all properties about them prefixed with patch_. 26 | 'deps_revision_overrides': Property(default={}), 27 | 'fail_patch': Property(default=None, kind=str), 28 | 29 | '$depot_tools/bot_update': Property( 30 | help='Properties specific to bot_update module.', 31 | param_name='properties', 32 | kind=ConfigGroup( 33 | # Whether we should do the patching in gclient instead of bot_update 34 | apply_patch_on_gclient=Single(bool), 35 | ), 36 | default={}, 37 | ), 38 | } 39 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/unrecognized_commit_repo.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "failure": { 4 | "humanReason": "invalid (host, project) pair in buildbucket.build.input.gitiles_commit: (u'unrecognized', u'repo') does not match any of configured gclient solutions and not present in gclient_config.repo_path_map" 5 | }, 6 | "name": "$result" 7 | } 8 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/bot_update/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/recipes/recipe_modules/bot_update/resources/__init__.py -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/bot_update/tests/ensure_checkout.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import post_process 6 | 7 | DEPS = [ 8 | 'bot_update', 9 | 'gclient', 10 | 'recipe_engine/json', 11 | ] 12 | 13 | 14 | def RunSteps(api): 15 | api.gclient.set_config('depot_tools') 16 | api.bot_update.ensure_checkout() 17 | 18 | 19 | def GenTests(api): 20 | yield ( 21 | api.test('basic') + 22 | api.post_process(post_process.StatusSuccess) + 23 | api.post_process(post_process.DropExpectation) 24 | ) 25 | 26 | yield ( 27 | api.test('failure') + 28 | api.override_step_data( 29 | 'bot_update', 30 | api.json.output({'did_run': True}), 31 | retcode=1) + 32 | api.post_process(post_process.StatusAnyFailure) + 33 | api.post_process(post_process.DropExpectation) 34 | ) 35 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'infra_paths', 3 | 'recipe_engine/json', 4 | 'recipe_engine/path', 5 | 'recipe_engine/platform', 6 | 'recipe_engine/properties', 7 | 'recipe_engine/python', 8 | 'recipe_engine/raw_io', 9 | 'recipe_engine/step', 10 | ] 11 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk arch.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "$result" 4 | } 5 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk bits.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "$result" 4 | } 5 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_32.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "linux-armv6" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_64.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "linux-arm64" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_32.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "linux-386" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_64.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "linux-amd64" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_mips_64.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "linux-mips64" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/mac_intel_64.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "mac-amd64" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_32.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "windows-386" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_64.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "echo", 5 | "windows-amd64" 6 | ], 7 | "name": "platform_suffix" 8 | }, 9 | { 10 | "name": "$result" 11 | } 12 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/depot_tools/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2017 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'recipe_engine/context', 7 | 'recipe_engine/platform', 8 | 'recipe_engine/runtime', 9 | ] 10 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gclient/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'infra_paths', 3 | 'gitiles', 4 | 'recipe_engine/context', 5 | 'recipe_engine/json', 6 | 'recipe_engine/path', 7 | 'recipe_engine/platform', 8 | 'recipe_engine/properties', 9 | 'recipe_engine/python', 10 | 'recipe_engine/step', 11 | 'tryserver', 12 | ] 13 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gclient/test_api.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import hashlib 6 | 7 | from recipe_engine import recipe_test_api 8 | 9 | class GclientTestApi(recipe_test_api.RecipeTestApi): 10 | def output_json(self, projects): 11 | """Deterministically synthesize json.output test data for gclient's 12 | --output-json option. 13 | 14 | Args: 15 | projects - a list of project paths (e.g. ['src', 'src/dependency']) 16 | """ 17 | # TODO(iannucci): Account for parent_got_revision_mapping. Right now the 18 | # synthesized json output from this method will always use 19 | # gen_revision(project), but if parent_got_revision and its ilk are 20 | # specified, we should use those values instead. 21 | return self.m.json.output({ 22 | 'solutions': dict( 23 | (p+'/', {'revision': self.gen_revision(p)}) 24 | for p in projects 25 | ) 26 | }) 27 | 28 | @staticmethod 29 | def gen_revision(project): 30 | """Hash project to bogus deterministic revision values.""" 31 | h = hashlib.sha1(project) 32 | return h.hexdigest() 33 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gerrit/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'recipe_engine/context', 3 | 'recipe_engine/json', 4 | 'recipe_engine/path', 5 | 'recipe_engine/python', 6 | 'recipe_engine/raw_io', 7 | 'recipe_engine/step', 8 | ] 9 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/git/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'recipe_engine/buildbucket', 3 | 'recipe_engine/context', 4 | 'recipe_engine/runtime', 5 | 'recipe_engine/path', 6 | 'recipe_engine/platform', 7 | 'recipe_engine/properties', 8 | 'recipe_engine/python', 9 | 'recipe_engine/raw_io', 10 | 'recipe_engine/step', 11 | 12 | 'infra_paths', 13 | ] 14 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/git/test_api.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import recipe_test_api 6 | 7 | class GitTestApi(recipe_test_api.RecipeTestApi): 8 | def count_objects_output(self, value): 9 | return ( 10 | 'count: %s\n' 11 | 'size: %s\n' 12 | 'in_pack: %s\n' 13 | 'packs: %s\n' 14 | 'size-pack: %s\n' 15 | 'prune-packable: %s\n' 16 | 'garbage: %s\n' 17 | 'size-garbage: %s\n' 18 | ) % tuple([value] * 8) 19 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/git_cl/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'recipe_engine/context', 3 | 'recipe_engine/raw_io', 4 | 'recipe_engine/step', 5 | ] 6 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/git_cl/config.py: -------------------------------------------------------------------------------- 1 | # Copyright 2013 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import types 6 | 7 | from recipe_engine.config import config_item_context, ConfigGroup, BadConf 8 | from recipe_engine.config import Single 9 | from recipe_engine.config_types import Path 10 | 11 | def BaseConfig(**_kwargs): 12 | return ConfigGroup( 13 | repo_location=Single(Path) 14 | ) 15 | 16 | config_ctx = config_item_context(BaseConfig) 17 | 18 | @config_ctx() 19 | def basic(c): 20 | pass 21 | 22 | 23 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gitiles/OWNERS: -------------------------------------------------------------------------------- 1 | smut@google.com 2 | tandrii@chromium.org 3 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gitiles/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'recipe_engine/json', 7 | 'recipe_engine/path', 8 | 'recipe_engine/python', 9 | 'recipe_engine/raw_io', 10 | 'recipe_engine/step', 11 | 'recipe_engine/url', 12 | ] 13 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gitiles/tests/parse_repo_url.expected/basic.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "$result" 4 | } 5 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/gsutil/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'recipe_engine/path', 3 | 'recipe_engine/python', 4 | ] 5 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'recipe_engine/path', 3 | 'recipe_engine/properties', 4 | ] 5 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/api.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import recipe_api 6 | 7 | 8 | class InfraPathsApi(recipe_api.RecipeApi): 9 | """infra_paths module is glue for design mistakes. It will be removed.""" 10 | 11 | def initialize(self): 12 | path_config = self.m.properties.get('path_config') 13 | if path_config: 14 | # TODO(phajdan.jr): remove dupes from the engine and delete infra_ prefix. 15 | self.m.path.set_config('infra_' + path_config) 16 | 17 | @property 18 | def default_git_cache_dir(self): 19 | """Returns the location of the default git cache directory. 20 | 21 | This property should be used instead of using path['git_cache'] directly. 22 | 23 | It returns git_cache path if it is defined (Buildbot world), otherwise 24 | uses the more generic [CACHE]/git path (LUCI world). 25 | """ 26 | try: 27 | return self.m.path['git_cache'] 28 | except KeyError: 29 | return self.m.path['cache'].join('git') 30 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/basic.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'cleanup'), 'cache': ('/', 'b', 'c'), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([CACHE], 'git')@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_linux.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'depot_tools': ('depot_tools',), 'build_internal': ('build_internal',), 'cache': ('build', 'slave', 'cache'), 'goma_cache': ('build', 'slave', 'goma_cache'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'build.dead'), 'build': ('build',), 'git_cache': ('build', 'slave', 'cache_dir'), 'root': (), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_mac.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'depot_tools': ('depot_tools',), 'build_internal': ('build_internal',), 'cache': ('build', 'slave', 'cache'), 'goma_cache': ('build', 'slave', 'goma_cache'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'build.dead'), 'build': ('build',), 'git_cache': ('build', 'slave', 'cache_dir'), 'root': (), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_buildbot_win.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'depot_tools': ('depot_tools',), 'build_internal': ('build_internal',), 'cache': ('build', 'slave', 'cache'), 'goma_cache': ('build', 'slave', 'goma_cache'), 'start_dir': ('C:\\\\', 'b', 'FakeTestingCWD'), 'cleanup': ('C:\\\\', 'b', 'build.dead'), 'build': ('build',), 'git_cache': ('build', 'slave', 'cache_dir'), 'root': (), 'tmp_base': ('C:\\\\',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_linux.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('/', 'b', 'c', 'builder'), 'cache': ('/', 'b', 'c'), 'goma_cache': ('/', 'b', 'c', 'goma'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'cleanup'), 'git_cache': ('/', 'b', 'c', 'git'), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_mac.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('/', 'b', 'c', 'builder'), 'cache': ('/', 'b', 'c'), 'goma_cache': ('/', 'b', 'c', 'goma'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'cleanup'), 'git_cache': ('/', 'b', 'c', 'git'), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_generic_win.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('C:\\\\', 'b', 'c', 'builder'), 'cache': ('C:\\\\', 'b', 'c'), 'goma_cache': ('C:\\\\', 'b', 'c', 'goma'), 'start_dir': ('C:\\\\', 'b', 'FakeTestingCWD'), 'cleanup': ('C:\\\\', 'b', 'cleanup'), 'git_cache': ('C:\\\\', 'b', 'c', 'git'), 'tmp_base': ('C:\\\\',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_linux.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('/', 'b', 'c', 'b'), 'cache': ('/', 'b', 'c'), 'goma_cache': ('/', 'b', 'c', 'goma_cache'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'cleanup'), 'git_cache': ('/', 'b', 'c', 'git_cache'), 'root': ('/', 'b', 'FakeTestingCWD'), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_mac.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('/', 'b', 'c', 'b'), 'cache': ('/', 'b', 'c'), 'goma_cache': ('/', 'b', 'c', 'goma_cache'), 'start_dir': ('/', 'b', 'FakeTestingCWD'), 'cleanup': ('/', 'b', 'cleanup'), 'git_cache': ('/', 'b', 'c', 'git_cache'), 'root': ('/', 'b', 'FakeTestingCWD'), 'tmp_base': ('/',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.expected/paths_kitchen_win.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [], 4 | "name": "show paths", 5 | "~followup_annotations": [ 6 | "@@@STEP_LOG_LINE@result@base_paths: {'builder_cache': ('C:\\\\', 'b', 'c', 'b'), 'cache': ('C:\\\\', 'b', 'c'), 'goma_cache': ('C:\\\\', 'b', 'c', 'goma_cache'), 'start_dir': ('C:\\\\', 'b', 'FakeTestingCWD'), 'cleanup': ('C:\\\\', 'b', 'cleanup'), 'git_cache': ('C:\\\\', 'b', 'c', 'git_cache'), 'root': ('C:\\\\', 'b', 'FakeTestingCWD'), 'tmp_base': ('C:\\\\',)}@@@", 7 | "@@@STEP_LOG_LINE@result@default_git_cache_dir: Path([GIT_CACHE])@@@", 8 | "@@@STEP_LOG_END@result@@@" 9 | ] 10 | }, 11 | { 12 | "name": "$result" 13 | } 14 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/infra_paths/examples/full.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | import json 6 | 7 | DEPS = [ 8 | 'infra_paths', 9 | 'recipe_engine/path', 10 | 'recipe_engine/platform', 11 | 'recipe_engine/properties', 12 | 'recipe_engine/step', 13 | ] 14 | 15 | 16 | def RunSteps(api): 17 | api.step('show paths', []) 18 | api.step.active_result.presentation.logs['result'] = [ 19 | 'base_paths: %r' % (api.path.c.base_paths,), 20 | 'default_git_cache_dir: %r' % (api.infra_paths.default_git_cache_dir,), 21 | ] 22 | 23 | 24 | def GenTests(api): 25 | yield api.test('basic') 26 | 27 | for platform in ('linux', 'mac', 'win'): 28 | for path_config in ('buildbot', 'kitchen', 'generic'): 29 | yield ( 30 | api.test('paths_%s_%s' % (path_config, platform)) + 31 | api.platform.name(platform) + 32 | api.properties(path_config=path_config) 33 | ) 34 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/osx_sdk/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'recipe_engine/cipd', 7 | 'recipe_engine/context', 8 | 'recipe_engine/json', 9 | 'recipe_engine/path', 10 | 'recipe_engine/platform', 11 | 'recipe_engine/step', 12 | ] 13 | 14 | from recipe_engine.recipe_api import Property 15 | from recipe_engine.config import ConfigGroup, Single 16 | 17 | PROPERTIES = { 18 | '$depot_tools/osx_sdk': Property( 19 | help='Properties specifically for the infra osx_sdk module.', 20 | param_name='sdk_properties', 21 | kind=ConfigGroup( # pylint: disable=line-too-long 22 | # XCode build version number. Internally maps to an XCode build id like 23 | # '9c40b'. See 24 | # 25 | # https://chrome-infra-packages.appspot.com/p/infra_internal/ios/xcode/mac/+/ 26 | # 27 | # For an up to date list of the latest SDK builds. 28 | sdk_version=Single(str), 29 | 30 | # The CIPD toolchain tool package and version 31 | toolchain_pkg=Single(str), 32 | toolchain_ver=Single(str), 33 | ), default={}, 34 | ) 35 | } 36 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/linux.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "gn", 5 | "gen", 6 | "out/Release" 7 | ], 8 | "name": "gn" 9 | }, 10 | { 11 | "cmd": [ 12 | "ninja", 13 | "-C", 14 | "out/Release" 15 | ], 16 | "name": "ninja" 17 | }, 18 | { 19 | "name": "$result" 20 | } 21 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/win.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "gn", 5 | "gen", 6 | "out/Release" 7 | ], 8 | "name": "gn" 9 | }, 10 | { 11 | "cmd": [ 12 | "ninja", 13 | "-C", 14 | "out/Release" 15 | ], 16 | "name": "ninja" 17 | }, 18 | { 19 | "name": "$result" 20 | } 21 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/osx_sdk/examples/full.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'osx_sdk', 7 | 'recipe_engine/platform', 8 | 'recipe_engine/properties', 9 | 'recipe_engine/step', 10 | ] 11 | 12 | 13 | def RunSteps(api): 14 | with api.osx_sdk('mac'): 15 | api.step('gn', ['gn', 'gen', 'out/Release']) 16 | api.step('ninja', ['ninja', '-C', 'out/Release']) 17 | 18 | 19 | def GenTests(api): 20 | for platform in ('linux', 'mac', 'win'): 21 | yield (api.test(platform) + 22 | api.platform.name(platform) + 23 | api.properties.generic(buildername='test_builder')) 24 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/presubmit/__init__.py: -------------------------------------------------------------------------------- 1 | DEPS = [ 2 | 'depot_tools', 3 | 'recipe_engine/context', 4 | 'recipe_engine/path', 5 | 'recipe_engine/python', 6 | 'recipe_engine/step', 7 | ] 8 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/presubmit/api.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import recipe_api 6 | 7 | class PresubmitApi(recipe_api.RecipeApi): 8 | @property 9 | def presubmit_support_path(self): 10 | return self.repo_resource('presubmit_support.py') 11 | 12 | def __call__(self, *args, **kwargs): 13 | """Return a presubmit step.""" 14 | 15 | name = kwargs.pop('name', 'presubmit') 16 | 17 | with self.m.depot_tools.on_path(): 18 | return self.m.python( 19 | name, self.presubmit_support_path, list(args), **kwargs) 20 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/presubmit/examples/full.expected/basic.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "python", 5 | "-u", 6 | "RECIPE_REPO[depot_tools]/presubmit_support.py" 7 | ], 8 | "env_prefixes": { 9 | "PATH": [ 10 | "RECIPE_REPO[depot_tools]" 11 | ] 12 | }, 13 | "name": "presubmit" 14 | }, 15 | { 16 | "name": "$result" 17 | } 18 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/presubmit/examples/full.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'presubmit', 7 | ] 8 | 9 | 10 | def RunSteps(api): 11 | api.presubmit() 12 | 13 | 14 | def GenTests(api): 15 | yield api.test('basic') 16 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2014 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'gerrit', 7 | 'git', 8 | 'git_cl', 9 | 'recipe_engine/buildbucket', 10 | 'recipe_engine/context', 11 | 'recipe_engine/json', 12 | 'recipe_engine/path', 13 | 'recipe_engine/platform', 14 | 'recipe_engine/properties', 15 | 'recipe_engine/python', 16 | 'recipe_engine/raw_io', 17 | 'recipe_engine/step', 18 | ] 19 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/set_failure_hash_with_no_steps.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "failure": { 4 | "failure": {}, 5 | "humanReason": "boom!" 6 | }, 7 | "name": "$result" 8 | } 9 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "git", 5 | "-c", 6 | "core.quotePath=false", 7 | "diff", 8 | "--cached", 9 | "--name-only" 10 | ], 11 | "infra_step": true, 12 | "name": "git diff to analyze patch", 13 | "~followup_annotations": [ 14 | "@@@STEP_LOG_LINE@files@foo.cc@@@", 15 | "@@@STEP_LOG_END@files@@@" 16 | ] 17 | }, 18 | { 19 | "cmd": [], 20 | "name": "TRYJOB DO NOT RETRY", 21 | "~followup_annotations": [ 22 | "@@@SET_BUILD_PROPERTY@do_not_retry@true@@@" 23 | ] 24 | }, 25 | { 26 | "cmd": [ 27 | "python", 28 | "-u", 29 | "import sys; sys.exit(1)" 30 | ], 31 | "name": "fail", 32 | "~followup_annotations": [ 33 | "@@@STEP_TEXT@foo@@@", 34 | "@@@SET_BUILD_PROPERTY@failure_hash@\"622c0c52e65e6d0dc78957dd113ad343e57ae6d2\"@@@", 35 | "@@@STEP_FAILURE@@@" 36 | ] 37 | }, 38 | { 39 | "failure": { 40 | "failure": {}, 41 | "humanReason": "Step('fail') (retcode: 1)" 42 | }, 43 | "name": "$result" 44 | } 45 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch_new.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "git", 5 | "-c", 6 | "core.quotePath=false", 7 | "diff", 8 | "--cached", 9 | "--name-only" 10 | ], 11 | "cwd": "[START_DIR]\\sub\\project", 12 | "infra_step": true, 13 | "name": "git diff to analyze patch", 14 | "~followup_annotations": [ 15 | "@@@STEP_LOG_LINE@files@sub/project/foo.cc@@@", 16 | "@@@STEP_LOG_END@files@@@" 17 | ] 18 | }, 19 | { 20 | "cmd": [], 21 | "name": "TRYJOB DO NOT RETRY", 22 | "~followup_annotations": [ 23 | "@@@SET_BUILD_PROPERTY@do_not_retry@true@@@" 24 | ] 25 | }, 26 | { 27 | "cmd": [ 28 | "python", 29 | "-u", 30 | "import sys; sys.exit(1)" 31 | ], 32 | "name": "fail", 33 | "~followup_annotations": [ 34 | "@@@STEP_TEXT@foo@@@", 35 | "@@@SET_BUILD_PROPERTY@failure_hash@\"622c0c52e65e6d0dc78957dd113ad343e57ae6d2\"@@@", 36 | "@@@STEP_FAILURE@@@" 37 | ] 38 | }, 39 | { 40 | "failure": { 41 | "failure": {}, 42 | "humanReason": "Step('fail') (retcode: 1)" 43 | }, 44 | "name": "$result" 45 | } 46 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/test_api.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import recipe_test_api 6 | 7 | 8 | class TryserverTestApi(recipe_test_api.RecipeTestApi): 9 | 10 | @recipe_test_api.mod_test_data 11 | @staticmethod 12 | def gerrit_change_target_ref(target_ref): 13 | assert target_ref.startswith('refs/') 14 | return target_ref 15 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/tryserver/tests/gerrit_change_fetch_ref.py: -------------------------------------------------------------------------------- 1 | # Copyright 2019 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | from recipe_engine import post_process 6 | 7 | DEPS = [ 8 | 'gerrit', 9 | 'recipe_engine/buildbucket', 10 | 'recipe_engine/properties', 11 | 'tryserver', 12 | ] 13 | 14 | 15 | def RunSteps(api): 16 | api.tryserver.gerrit_change_fetch_ref 17 | 18 | 19 | def GenTests(api): 20 | yield ( 21 | api.test('timeout') + 22 | api.buildbucket.try_build( 23 | 'chromium', 24 | 'linux', 25 | git_repo='https://chromium.googlesource.com/chromium/src', 26 | change_number=91827, 27 | patch_set=1) + 28 | api.properties(target_ref='refs/heads/master') + 29 | api.tryserver.gerrit_change_target_ref('refs/heads/master') + 30 | api.override_step_data('gerrit fetch current CL info', 31 | times_out_after=1200) + 32 | api.post_process(post_process.StatusException) + 33 | api.post_process(post_process.DropExpectation) 34 | ) 35 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/windows_sdk/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'recipe_engine/cipd', 7 | 'recipe_engine/context', 8 | 'recipe_engine/json', 9 | 'recipe_engine/path', 10 | 'recipe_engine/step', 11 | ] 12 | 13 | from recipe_engine.recipe_api import Property 14 | from recipe_engine.config import ConfigGroup, Single 15 | 16 | PROPERTIES = { 17 | '$depot_tools/windows_sdk': Property( 18 | help='Properties specifically for the infra windows_sdk module.', 19 | param_name='sdk_properties', 20 | kind=ConfigGroup( 21 | # CIPD instance ID, tag or ref for the Windows SDK version. 22 | version=Single(str), 23 | ), default={'version': 'uploaded:2018-06-13'}, 24 | ) 25 | } 26 | -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/linux.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "gn", 5 | "gen", 6 | "out/Release" 7 | ], 8 | "name": "gn" 9 | }, 10 | { 11 | "cmd": [ 12 | "ninja", 13 | "-C", 14 | "out/Release" 15 | ], 16 | "name": "ninja" 17 | }, 18 | { 19 | "name": "$result" 20 | } 21 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/mac.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "cmd": [ 4 | "gn", 5 | "gen", 6 | "out/Release" 7 | ], 8 | "name": "gn" 9 | }, 10 | { 11 | "cmd": [ 12 | "ninja", 13 | "-C", 14 | "out/Release" 15 | ], 16 | "name": "ninja" 17 | }, 18 | { 19 | "name": "$result" 20 | } 21 | ] -------------------------------------------------------------------------------- /depot_tools/recipes/recipe_modules/windows_sdk/examples/full.py: -------------------------------------------------------------------------------- 1 | # Copyright 2018 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | DEPS = [ 6 | 'windows_sdk', 7 | 'recipe_engine/platform', 8 | 'recipe_engine/properties', 9 | 'recipe_engine/step', 10 | ] 11 | 12 | 13 | def RunSteps(api): 14 | with api.windows_sdk(enabled=api.platform.is_win): 15 | api.step('gn', ['gn', 'gen', 'out/Release']) 16 | api.step('ninja', ['ninja', '-C', 'out/Release']) 17 | 18 | 19 | def GenTests(api): 20 | for platform in ('linux', 'mac', 'win'): 21 | properties = { 22 | 'buildername': 'test_builder', 23 | } 24 | yield (api.test(platform) + 25 | api.platform.name(platform) + 26 | api.properties.generic(**properties)) 27 | -------------------------------------------------------------------------------- /depot_tools/recipes/trigger_recipe_roller.txt: -------------------------------------------------------------------------------- 1 | No-op file. Edit this to kick recipes. 2 | 3 | This is a beginning of a story in this silly file. 4 | Once upon a time, a budding web browser dev team needed a CI system. 5 | All they had was one poor machine under a desk, and its name was Batty, 6 | the Build and Test Yeti. 7 | 8 | As the CI needs of the browser grew, Batty, the Build and Test Yeti, got 9 | a new friend, but this information was marked RVG, so it was months before 10 | any details were revealed. 11 | 12 | 13 | The End! 14 | -------------------------------------------------------------------------------- /depot_tools/roll-dep: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/roll_dep.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/roll-dep-svn: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | PYTHONDONTWRITEBYTECODE=1 exec python "$base_dir/roll_dep_svn.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/roll-dep-svn.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\roll_dep_svn.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/roll-dep.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | python "%~dp0\roll_dep.py" %* 13 | -------------------------------------------------------------------------------- /depot_tools/testing_support/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/testing_support/__init__.py -------------------------------------------------------------------------------- /depot_tools/testing_support/cipd: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Copyright (c) 2018 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | base_dir=$(dirname "$0") 7 | 8 | exec python "$base_dir/fake_cipd.py" "$@" 9 | -------------------------------------------------------------------------------- /depot_tools/testing_support/cipd.bat: -------------------------------------------------------------------------------- 1 | echo off 2 | :: Copyright (c) 2018 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Defer control. 8 | python "%~dp0fake_cipd.py" %* 9 | -------------------------------------------------------------------------------- /depot_tools/tests/OWNERS: -------------------------------------------------------------------------------- 1 | per-file ninjalog_uploader_test.py=tikuta@chromium.org 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/download_test_data/rootfolder_text.txt: -------------------------------------------------------------------------------- 1 | This is a test file. 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/download_test_data/rootfolder_text.txt.sha1: -------------------------------------------------------------------------------- 1 | e6c4fbd4fe7607f3e6ebf68b2ea4ef694da7b4fe 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/download_test_data/subfolder/subfolder_text.txt: -------------------------------------------------------------------------------- 1 | This is a test file. 2 | This file exists in a subfolder 3 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/download_test_data/subfolder/subfolder_text.txt.sha1: -------------------------------------------------------------------------------- 1 | b5415aa0b64006a95c0c409182e628881d6d6463 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/download_test_data/uploaded_lorem_ipsum.txt.sha1: -------------------------------------------------------------------------------- 1 | 7871c8e24da15bad8b0be2c36edc9dc77e37727f 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/lorem_ipsum.txt: -------------------------------------------------------------------------------- 1 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 2 | tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, 3 | quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo 4 | consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse 5 | cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non 6 | proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 7 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/lorem_ipsum.txt.md5: -------------------------------------------------------------------------------- 1 | 734d7c1ed3545383837428f031840a1e 2 | -------------------------------------------------------------------------------- /depot_tools/tests/gstools/lorem_ipsum2.txt: -------------------------------------------------------------------------------- 1 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 2 | tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, 3 | quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo 4 | consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse 5 | cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non 6 | proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 7 | This is the second file. 8 | -------------------------------------------------------------------------------- /depot_tools/tests/recipes_test.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | # Copyright (c) 2015 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | """Runs simulation tests and lint on the recipes.""" 8 | 9 | import os 10 | import subprocess 11 | 12 | ROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 13 | 14 | def recipes_py(*args): 15 | subprocess.check_call([ 16 | os.path.join(ROOT_DIR, 'recipes', 'recipes.py') 17 | ] + list(args)) 18 | 19 | recipes_py('test', 'run') 20 | 21 | recipes_py('lint') 22 | -------------------------------------------------------------------------------- /depot_tools/third_party/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2010 The Chromium Authors. All rights reserved. 2 | # Use of this source code is governed by a BSD-style license that can be 3 | # found in the LICENSE file. 4 | 5 | """File to enable importing from third_party.""" 6 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/LICENSE: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any person obtaining a 2 | copy of this software and associated documentation files (the 3 | "Software"), to deal in the Software without restriction, including 4 | without limitation the rights to use, copy, modify, merge, publish, dis- 5 | tribute, sublicense, and/or sell copies of the Software, and to permit 6 | persons to whom the Software is furnished to do so, subject to the fol- 7 | lowing conditions: 8 | 9 | The above copyright notice and this permission notice shall be included 10 | in all copies or substantial portions of the Software. 11 | 12 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 13 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 14 | ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 15 | SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 16 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 18 | IN THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/README.chromium: -------------------------------------------------------------------------------- 1 | Name: boto 2 | URL: https://github.com/boto/boto 3 | Version: 2.8.0 4 | License: MIT 5 | 6 | Description: 7 | Python interface to Amazon Web Services. 8 | 9 | Modifications: 10 | * Removed boto/docs/ 11 | * Removed boto/tests/ 12 | * Removed boto/boto/setup.py 13 | * Removed boto/boto/pylintrc 14 | * Removed boto/boto/ec2 15 | * Removed boto/boto/beanstalk 16 | * Removed boto/boto/cloudsearch 17 | * Removed boto/boto/dynamodb 18 | * Removed boto/boto/swf 19 | * Removed boto/boto/rds 20 | * Removed boto/boto/sdb 21 | * Removed boto/boto/vpc 22 | * Removed boto/boto/route53 23 | * Removed boto/boto/iam 24 | * Removed boto/boto/sns 25 | * Removed boto/boto/cloudformations 26 | * Removed boto/boto/elasticache 27 | * Removed boto/boto/elastictranscoder 28 | * Removed boto/boto/mturk 29 | * Removed boto/boto/cloudfront 30 | * Removed boto/boto/sqs 31 | * Removed boto/boto/mws 32 | * Removed boto/boto/emr 33 | * Removed boto/boto/pyami/installers 34 | * Removed boto/bin 35 | * Removed boto/.gitignore 36 | * Removed boto/.travis.yml 37 | * Removed boto/Changelog.rst 38 | * Removed boto/MANIFEST.in 39 | * Replaced boto/cacerts/cacerts.txt by file from 40 | https://pki.google.com/roots.pem 41 | * Moved boto down to be a first level directory 42 | 43 | Full license is in the LICENSE file. 44 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/cacerts/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2010 Google Inc. 2 | # All rights reserved. 3 | # 4 | # Permission is hereby granted, free of charge, to any person obtaining a 5 | # copy of this software and associated documentation files (the 6 | # "Software"), to deal in the Software without restriction, including 7 | # without limitation the rights to use, copy, modify, merge, publish, dis- 8 | # tribute, sublicense, and/or sell copies of the Software, and to permit 9 | # persons to whom the Software is furnished to do so, subject to the fol- 10 | # lowing conditions: 11 | # 12 | # The above copyright notice and this permission notice shall be included 13 | # in all copies or substantial portions of the Software. 14 | # 15 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 16 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 17 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 18 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 19 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 21 | # IN THE SOFTWARE. 22 | # 23 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/compat.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2012 Amazon.com, Inc. or its affiliates. All Rights Reserved 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | # This allows boto modules to say "from boto.compat import json". This is 24 | # preferred so that all modules don't have to repeat this idiom. 25 | try: 26 | import simplejson as json 27 | except ImportError: 28 | import json 29 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/contrib/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006,2007 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/core/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2012 Mitch Garnaat http://garnaat.org/ 2 | # Copyright (c) 2012 Amazon.com, Inc. or its affiliates. 3 | # All Rights Reserved 4 | # 5 | # Permission is hereby granted, free of charge, to any person obtaining a 6 | # copy of this software and associated documentation files (the 7 | # "Software"), to deal in the Software without restriction, including 8 | # without limitation the rights to use, copy, modify, merge, publish, dis- 9 | # tribute, sublicense, and/or sell copies of the Software, and to permit 10 | # persons to whom the Software is furnished to do so, subject to the fol- 11 | # lowing conditions: 12 | # 13 | # The above copyright notice and this permission notice shall be included 14 | # in all copies or substantial portions of the Software. 15 | # 16 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 17 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 18 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 22 | # IN THE SOFTWARE. 23 | # 24 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/datapipeline/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/boto/datapipeline/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/boto/file/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2010 Google Inc. 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | 22 | import boto 23 | 24 | from connection import FileConnection as Connection 25 | from key import Key 26 | from bucket import Bucket 27 | 28 | __all__ = ['Connection', 'Key', 'Bucket'] 29 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/file/simpleresultset.py: -------------------------------------------------------------------------------- 1 | # Copyright 2010 Google Inc. 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | 22 | class SimpleResultSet(list): 23 | """ 24 | ResultSet facade built from a simple list, rather than via XML parsing. 25 | """ 26 | 27 | def __init__(self, input_list): 28 | for x in input_list: 29 | self.append(x) 30 | self.is_truncated = False 31 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/fps/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2008, Chris Moyer http://coredumped.org 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/gs/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2010 Google Inc. 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/manage/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006-2009 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | 24 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/manage/test_manage.py: -------------------------------------------------------------------------------- 1 | from boto.manage.server import Server 2 | from boto.manage.volume import Volume 3 | import time 4 | 5 | print '--> Creating New Volume' 6 | volume = Volume.create() 7 | print volume 8 | 9 | print '--> Creating New Server' 10 | server_list = Server.create() 11 | server = server_list[0] 12 | print server 13 | 14 | print '----> Waiting for Server to start up' 15 | while server.status != 'running': 16 | print '*' 17 | time.sleep(10) 18 | print '----> Server is running' 19 | 20 | print '--> Run "df -k" on Server' 21 | status = server.run('df -k') 22 | print status[1] 23 | 24 | print '--> Now run volume.make_ready to make the volume ready to use on server' 25 | volume.make_ready(server) 26 | 27 | print '--> Run "df -k" on Server' 28 | status = server.run('df -k') 29 | print status[1] 30 | 31 | print '--> Do an "ls -al" on the new filesystem' 32 | status = server.run('ls -al %s' % volume.mount_point) 33 | print status[1] 34 | 35 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/mashups/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006,2007 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | 24 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/pyami/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006,2007 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/pyami/helloworld.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006,2007 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | from boto.pyami.scriptbase import ScriptBase 23 | 24 | class HelloWorld(ScriptBase): 25 | 26 | def main(self): 27 | self.log('Hello World!!!') 28 | 29 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/roboto/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | -------------------------------------------------------------------------------- /depot_tools/third_party/boto/services/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2006,2007 Mitch Garnaat http://garnaat.org/ 2 | # 3 | # Permission is hereby granted, free of charge, to any person obtaining a 4 | # copy of this software and associated documentation files (the 5 | # "Software"), to deal in the Software without restriction, including 6 | # without limitation the rights to use, copy, modify, merge, publish, dis- 7 | # tribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the fol- 9 | # lowing conditions: 10 | # 11 | # The above copyright notice and this permission notice shall be included 12 | # in all copies or substantial portions of the Software. 13 | # 14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 16 | # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 17 | # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 18 | # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 20 | # IN THE SOFTWARE. 21 | # 22 | 23 | 24 | -------------------------------------------------------------------------------- /depot_tools/third_party/colorama/README.chromium: -------------------------------------------------------------------------------- 1 | Name: colorama 2 | URL: https://github.com/tartley/colorama 3 | Version: b71bec90d4770d4124ad95d70cc6a4c9289bbadf (0.4.1) 4 | Revision: b71bec90d4770d4124ad95d70cc6a4c9289bbadf 5 | 6 | Description: 7 | Provides a simple cross-platform API to print colored terminal text from Python 8 | applications. 9 | 10 | Additional changes: 11 | - Kept colorama/ but removed colorama/tests/. 12 | - Copied LICENSE.txt and README.rst. 13 | -------------------------------------------------------------------------------- /depot_tools/third_party/colorama/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright Jonathan Hartley 2013. BSD 3-Clause license, see LICENSE file. 2 | from .initialise import init, deinit, reinit, colorama_text 3 | from .ansi import Fore, Back, Style, Cursor 4 | from .ansitowin32 import AnsiToWin32 5 | 6 | __version__ = '0.4.1' 7 | -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/AUTHORS.txt: -------------------------------------------------------------------------------- 1 | Coverage.py was originally written by Gareth Rees, and since 2004 has been 2 | extended and maintained by Ned Batchelder. 3 | 4 | Other contributions have been made by: 5 | 6 | Marc Abramowitz 7 | Chris Adams 8 | Geoff Bache 9 | Julian Berman 10 | Titus Brown 11 | Brett Cannon 12 | Pablo Carballo 13 | Guillaume Chazarain 14 | David Christian 15 | Marcus Cobden 16 | Matthew Desmarais 17 | Danek Duvall 18 | Ben Finney 19 | Martin Fuzzey 20 | Imri Goldberg 21 | Bill Hart 22 | Christian Heimes 23 | Roger Hu 24 | Devin Jeanpierre 25 | Ross Lawley 26 | Edward Loper 27 | Sandra Martocchia 28 | Patrick Mezard 29 | Noel O'Boyle 30 | Detlev Offenbach 31 | JT Olds 32 | George Paci 33 | Catherine Proulx 34 | Brandon Rhodes 35 | Adi Roiban 36 | Greg Rogers 37 | George Song 38 | David Stanek 39 | Joseph Tate 40 | Sigve Tjora 41 | Mark van der Wal 42 | Zooko Wilcox-O'Hearn 43 | Christoph Zwerschke 44 | -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/README.chromium: -------------------------------------------------------------------------------- 1 | URL: http://nedbatchelder.com/code/coverage/ 2 | Version: 3.7 3 | License: BSD 4 | License File: PKG-INFO 5 | 6 | Description: 7 | Coverage.py measures code coverage, typically during test execution. 8 | 9 | 10 | Local Modifications: 11 | Kept only the 'coverage' subdirectory, PKG-INFO, and AUTHORS.txt. 12 | Removed tracer.c 13 | 14 | -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/__main__.py: -------------------------------------------------------------------------------- 1 | """Coverage.py's main entry point.""" 2 | import sys 3 | from coverage.cmdline import main 4 | sys.exit(main()) 5 | -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/htmlfiles/keybd_closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/coverage/htmlfiles/keybd_closed.png -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/htmlfiles/keybd_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/coverage/htmlfiles/keybd_open.png -------------------------------------------------------------------------------- /depot_tools/third_party/coverage/version.py: -------------------------------------------------------------------------------- 1 | """The version and URL for coverage.py""" 2 | # This file is exec'ed in setup.py, don't import anything! 3 | 4 | __version__ = "3.7" # see detailed history in CHANGES.txt 5 | 6 | __url__ = "http://nedbatchelder.com/code/coverage" 7 | if max(__version__).isalpha(): 8 | # For pre-releases, use a version-specific URL. 9 | __url__ += "/" + __version__ 10 | -------------------------------------------------------------------------------- /depot_tools/third_party/fancy_urllib/README: -------------------------------------------------------------------------------- 1 | The fancy_urllib library was obtained from [1] under the following 2 | license ([2]): 3 | 4 | GOOGLE APP ENGINE SDK 5 | ===================== 6 | Copyright 2008 Google Inc. 7 | All rights reserved. 8 | 9 | Licensed under the Apache License, Version 2.0 (the "License"); 10 | you may not use this file except in compliance with the License. 11 | You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | 21 | [1] https://github.com/GoogleCloudPlatform/appengine-python-vm-runtime/blob/master/python_vm_runtime/lib/fancy_urllib/fancy_urllib/__init__.py 22 | [2] https://github.com/GoogleCloudPlatform/appengine-python-vm-runtime/blob/master/python_vm_runtime/LICENSE 23 | -------------------------------------------------------------------------------- /depot_tools/third_party/httplib2/README.chromium: -------------------------------------------------------------------------------- 1 | Name: httplib2 2 | Short Name: httplib2 3 | URL: https://github.com/httplib2/httplib2 4 | Version: 0.11.3 5 | Revision: 70fb0c820d2e8211992b402d34444e4b32a1cb6e 6 | License: MIT License 7 | 8 | Description: 9 | A comprehensive HTTP client library in Python. 10 | 11 | Local Modifications: 12 | Only python2 version is kept. Test and packaging code stripped. 13 | 14 | Notes: 15 | Required by oauth2client library. 16 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/README.chromium: -------------------------------------------------------------------------------- 1 | Description: 2 | This directory contains modules that pylint needs. 3 | See the individual README.chromium files for details. 4 | 5 | Local Modifications: 6 | None 7 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/logilab/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/astroid/README.chromium: -------------------------------------------------------------------------------- 1 | URL: https://github.com/PyCQA/astroid 2 | URL: https://pypi.org/project/astroid/#files 3 | Version: 1.4.9 4 | License: GPL 5 | License File: LICENSE.txt 6 | 7 | Description: 8 | This directory contains the astroid module, required for pylint. 9 | 10 | Local Modifications: 11 | None 12 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/astroid/brain/brain_dateutil.py: -------------------------------------------------------------------------------- 1 | """Astroid hooks for dateutil""" 2 | 3 | import textwrap 4 | 5 | from astroid import MANAGER, register_module_extender 6 | from astroid.builder import AstroidBuilder 7 | 8 | def dateutil_transform(): 9 | return AstroidBuilder(MANAGER).string_build(textwrap.dedent(''' 10 | import datetime 11 | def parse(timestr, parserinfo=None, **kwargs): 12 | return datetime.datetime() 13 | ''')) 14 | 15 | register_module_extender(MANAGER, 'dateutil.parser', dateutil_transform) 16 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/astroid/brain/brain_mechanize.py: -------------------------------------------------------------------------------- 1 | from astroid import MANAGER, register_module_extender 2 | from astroid.builder import AstroidBuilder 3 | 4 | def mechanize_transform(): 5 | return AstroidBuilder(MANAGER).string_build(''' 6 | 7 | class Browser(object): 8 | def open(self, url, data=None, timeout=None): 9 | return None 10 | def open_novisit(self, url, data=None, timeout=None): 11 | return None 12 | def open_local_file(self, filename): 13 | return None 14 | 15 | ''') 16 | 17 | 18 | register_module_extender(MANAGER, 'mechanize', mechanize_transform) 19 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/lazy_object_proxy/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014-2017, Ionel Cristian Mărieș 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the 5 | following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following 8 | disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following 11 | disclaimer in the documentation and/or other materials provided with the distribution. 12 | 13 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 14 | INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 15 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 16 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 17 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 18 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 19 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 20 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/lazy_object_proxy/README.chromium: -------------------------------------------------------------------------------- 1 | URL: https://github.com/ionelmc/python-lazy-object-proxy 2 | URL: https://pypi.org/project/lazy-object-proxy/#files 3 | Version: 1.3.1 4 | License: BSD-2 5 | License File: LICENSE 6 | 7 | Description: 8 | This directory contains the lazy-object-proxy module, required for pylint. 9 | 10 | Local Modifications: 11 | None 12 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/lazy_object_proxy/__init__.py: -------------------------------------------------------------------------------- 1 | try: 2 | import copy_reg as copyreg 3 | except ImportError: 4 | import copyreg 5 | 6 | from .utils import identity 7 | 8 | copyreg.constructor(identity) 9 | 10 | try: 11 | from .cext import Proxy 12 | from .cext import identity 13 | except ImportError: 14 | from .slots import Proxy 15 | else: 16 | copyreg.constructor(identity) 17 | 18 | __version__ = "1.3.1" 19 | 20 | __all__ = "Proxy", 21 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/lazy_object_proxy/compat.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | PY2 = sys.version_info[0] == 2 4 | PY3 = sys.version_info[0] == 3 5 | 6 | 7 | def with_metaclass(meta, *bases): 8 | """Create a base class with a metaclass.""" 9 | return meta("NewBase", bases, {}) 10 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/lazy_object_proxy/utils.py: -------------------------------------------------------------------------------- 1 | def identity(obj): 2 | return obj 3 | 4 | 5 | class cached_property(object): 6 | def __init__(self, func): 7 | self.func = func 8 | 9 | def __get__(self, obj, cls): 10 | if obj is None: 11 | return self 12 | value = obj.__dict__[self.func.__name__] = self.func(obj) 13 | return value 14 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/wrapt/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013-2017, Graham Dumpleton 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 15 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 18 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 19 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 20 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 21 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 22 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 23 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 24 | POSSIBILITY OF SUCH DAMAGE. 25 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/wrapt/README.chromium: -------------------------------------------------------------------------------- 1 | URL: https://github.com/GrahamDumpleton/wrapt 2 | URL: https://pypi.org/project/wrapt/#files 3 | Version: 1.10.11 4 | License: BSD-2 5 | License File: LICENSE 6 | 7 | Description: 8 | This directory contains the wrapt module, required for pylint. 9 | 10 | Local Modifications: 11 | None 12 | -------------------------------------------------------------------------------- /depot_tools/third_party/logilab/wrapt/__init__.py: -------------------------------------------------------------------------------- 1 | __version_info__ = ('1', '10', '11') 2 | __version__ = '.'.join(__version_info__) 3 | 4 | from .wrappers import (ObjectProxy, CallableObjectProxy, FunctionWrapper, 5 | BoundFunctionWrapper, WeakFunctionProxy, resolve_path, apply_patch, 6 | wrap_object, wrap_object_attribute, function_wrapper, 7 | wrap_function_wrapper, patch_function_wrapper, 8 | transient_function_wrapper) 9 | 10 | from .decorators import (adapter_factory, AdapterFactory, decorator, 11 | synchronized) 12 | 13 | from .importer import (register_post_import_hook, when_imported, 14 | notify_module_loaded, discover_post_import_hooks) 15 | 16 | try: 17 | from inspect import getcallargs 18 | except ImportError: 19 | from .arguments import getcallargs 20 | -------------------------------------------------------------------------------- /depot_tools/third_party/mock/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2003-2012, Michael Foord 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are 6 | met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | 11 | * Redistributions in binary form must reproduce the above 12 | copyright notice, this list of conditions and the following 13 | disclaimer in the documentation and/or other materials provided 14 | with the distribution. 15 | 16 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 17 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 18 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 19 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 20 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 21 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 26 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /depot_tools/third_party/mock/README.chromium: -------------------------------------------------------------------------------- 1 | Name: mock 2 | URL: http://www.voidspace.org.uk/python/mock/ 3 | Version: 1.0.0 4 | License: BSD 5 | License File: LICENSE.txt 6 | 7 | Description: 8 | mock is a library for testing in Python. It allows you to replace parts of your 9 | system under test with mock objects and make assertions about how they have been 10 | used. mock is now part of the Python standard library, available as 11 | unittest.mock in Python 3.3 onwards. 12 | mock provides a core Mock class removing the need to create a host of stubs 13 | throughout your test suite. After performing an action, you can make assertions 14 | about which methods / attributes were used and arguments they were called with. 15 | You can also specify return values and set needed attributes in the normal way. 16 | Additionally, mock provides a patch() decorator that handles patching module and 17 | class level attributes within the scope of a test, along with sentinel for 18 | creating unique objects. Mock is very easy to use and is designed for use with 19 | unittest. Mock is based on the ‘action -> assertion’ pattern instead of 20 | ‘record -> replay’ used by many mocking frameworks. mock is tested on Python 21 | versions 2.4-2.7, Python 3 plus the latest versions of Jython and PyPy. 22 | 23 | Modifications: 24 | None. -------------------------------------------------------------------------------- /depot_tools/third_party/oauth2client/README.chromium: -------------------------------------------------------------------------------- 1 | Name: oauth2client 2 | Short Name: oauth2client 3 | URL: https://pypi.python.org/packages/source/o/oauth2client/oauth2client-1.2.tar.gz 4 | Version: 1.2 5 | License: Apache License 2.0 6 | 7 | Description: 8 | OAuth2 authentication library in Python 9 | 10 | Local modifications: 11 | See also MODIFICATIONS.diff 12 | 13 | Notes: 14 | Requires the httplib2 library. 15 | 16 | -------------------------------------------------------------------------------- /depot_tools/third_party/oauth2client/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "1.2" 2 | 3 | GOOGLE_AUTH_URI = 'https://accounts.google.com/o/oauth2/auth' 4 | GOOGLE_REVOKE_URI = 'https://accounts.google.com/o/oauth2/revoke' 5 | GOOGLE_TOKEN_URI = 'https://accounts.google.com/o/oauth2/token' 6 | -------------------------------------------------------------------------------- /depot_tools/third_party/oauth2client/anyjson.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2010 Google Inc. 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | """Utility module to import a JSON module 16 | 17 | Hides all the messy details of exactly where 18 | we get a simplejson module from. 19 | """ 20 | 21 | __author__ = 'jcgregorio@google.com (Joe Gregorio)' 22 | 23 | 24 | try: # pragma: no cover 25 | # Should work for Python2.6 and higher. 26 | import json as simplejson 27 | except ImportError: # pragma: no cover 28 | try: 29 | import simplejson 30 | except ImportError: 31 | # Try to import from django, should work on App Engine 32 | from django.utils import simplejson 33 | -------------------------------------------------------------------------------- /depot_tools/third_party/protobuf26/README.chromium: -------------------------------------------------------------------------------- 1 | This directory contains google.protobuf module version 2.6.0 build 0. 2 | 3 | sergiyb@: It has been manually renamed to protobuf26. This is needed to avoid 4 | conflicts with a built-in google.protobuf module found on many developer 5 | machines. The long-term solution to this problem was to use virtualenv and it 6 | was implemented, but had to be reverted due to incompatibilities with ChromiumOS 7 | builds (see http://crbug.com/542922). 8 | 9 | If you need to update this package, please make sure that you replace all the 10 | references to google.protobuf in the package itself with protobuf26, e.g. 11 | 12 | from google.protobuf import text_format 13 | import google.protobuf 14 | 15 | becomes 16 | 17 | from protobuf26 import text_format 18 | import protobuf26 19 | 20 | Original bug tracking setting up virtualenv for depot_tools was 21 | http://crbug.com/503067, but it was closed as WontFix. If you believe that 22 | virtualenv should be added to the current version of depot_tools, please re-open 23 | that bug. 24 | -------------------------------------------------------------------------------- /depot_tools/third_party/protobuf26/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/protobuf26/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/protobuf26/compiler/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/protobuf26/compiler/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/protobuf26/internal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/protobuf26/internal/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/pylint/README.chromium: -------------------------------------------------------------------------------- 1 | URL: https://www.pylint.org/ 2 | URL: https://pypi.org/project/pylint/#files 3 | Version: 1.5.6 4 | License: GPL 5 | License File: LICENSE.txt 6 | 7 | Description: 8 | This directory contains the pylint module. 9 | 10 | Local Modifications: 11 | - applied fix to work around bad interaction between sys.path manipulation in 12 | pylint itself and multiprocessing's implementation on Windows (DIFF1) 13 | 14 | 15 | Diffs: 16 | DIFF1 17 | diff --git a/third_party/pylint/lint.py b/third_party/pylint/lint.py 18 | index e10ae56..082d8b3 100644 19 | --- a/third_party/pylint/lint.py 20 | +++ b/third_party/pylint/lint.py 21 | @@ -671,7 +671,8 @@ class PyLinter(configuration.OptionsManagerMixIn, 22 | files_or_modules = (files_or_modules,) 23 | 24 | if self.config.jobs == 1: 25 | - self._do_check(files_or_modules) 26 | + with fix_import_path(files_or_modules): 27 | + self._do_check(files_or_modules) 28 | else: 29 | # Hack that permits running pylint, on Windows, with -m switch 30 | # and with --jobs, as in 'python -2 -m pylint .. --jobs'. 31 | -------------------------------------------------------------------------------- /depot_tools/third_party/pylint/__main__.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import pylint 3 | pylint.run_pylint() 4 | -------------------------------------------------------------------------------- /depot_tools/third_party/pylint/extensions/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/pylint/extensions/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/pylint/pyreverse/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | pyreverse.extensions 3 | """ 4 | 5 | __revision__ = "$Id $" 6 | -------------------------------------------------------------------------------- /depot_tools/third_party/pylint/reporters/guireporter.py: -------------------------------------------------------------------------------- 1 | """ reporter used by gui.py """ 2 | 3 | import sys 4 | 5 | from pylint.interfaces import IReporter 6 | from pylint.reporters import BaseReporter 7 | from pylint.reporters.ureports.text_writer import TextWriter 8 | 9 | 10 | class GUIReporter(BaseReporter): 11 | """saves messages""" 12 | 13 | __implements__ = IReporter 14 | extension = '' 15 | 16 | def __init__(self, gui, output=sys.stdout): 17 | """init""" 18 | BaseReporter.__init__(self, output) 19 | self.gui = gui 20 | 21 | def handle_message(self, msg): 22 | """manage message of different type and in the context of path""" 23 | self.gui.msg_queue.put(msg) 24 | 25 | def _display(self, layout): 26 | """launch layouts display""" 27 | TextWriter().format(layout, self.out) 28 | -------------------------------------------------------------------------------- /depot_tools/third_party/pymox/MANIFEST.in: -------------------------------------------------------------------------------- 1 | include COPYING 2 | include mox_test.py 3 | include mox_test_helper.py 4 | include stubout_test.py 5 | include stubout_testee.py 6 | -------------------------------------------------------------------------------- /depot_tools/third_party/pymox/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/pymox/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/pymox/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python2.4 2 | from distutils.core import setup 3 | 4 | setup(name='mox', 5 | version='0.5.1', 6 | py_modules=['mox', 'stubout'], 7 | url='http://code.google.com/p/pymox/', 8 | maintainer='pymox maintainers', 9 | maintainer_email='mox-discuss@googlegroups.com', 10 | license='Apache License, Version 2.0', 11 | description='Mock object framework', 12 | long_description='''Mox is a mock object framework for Python based on the 13 | Java mock object framework EasyMock.''', 14 | ) 15 | -------------------------------------------------------------------------------- /depot_tools/third_party/pymox/stubout_testee.py: -------------------------------------------------------------------------------- 1 | def SampleFunction(): 2 | raise Exception('I should never be called!') 3 | -------------------------------------------------------------------------------- /depot_tools/third_party/repo/README.chromium: -------------------------------------------------------------------------------- 1 | Third party files from the repo tool. 2 | 3 | See the project homepage at: 4 | http://code.google.com/p/git-repo/ 5 | -------------------------------------------------------------------------------- /depot_tools/third_party/repo/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/repo/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/retry_decorator/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/notedit/webrtc-build/f14ea58e9e6de94bcad4aee74eb670e7320a0069/depot_tools/third_party/retry_decorator/__init__.py -------------------------------------------------------------------------------- /depot_tools/third_party/schema/.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig file: http://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # Unix-style newlines with a newline ending every file 7 | [*] 8 | end_of_line = lf 9 | insert_final_newline = true 10 | 11 | # 4 space indentation 12 | [*.py] 13 | indent_style = space 14 | indent_size = 4 15 | trim_trailing_whitespace = true 16 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/.travis.yml: -------------------------------------------------------------------------------- 1 | # use new container-based infrastructure 2 | sudo: false 3 | 4 | language: python 5 | 6 | addons: 7 | apt: 8 | sources: 9 | - deadsnakes 10 | packages: 11 | - python3.5 12 | 13 | cache: 14 | pip: true 15 | directories: 16 | - .tox 17 | 18 | install: pip install codecov tox 19 | 20 | env: 21 | - TOX_ENV=py26 22 | - TOX_ENV=py27 23 | - TOX_ENV=py33 24 | - TOX_ENV=py34 25 | - TOX_ENV=py35 26 | - TOX_ENV=pypy 27 | - TOX_ENV=pypy3 28 | - TOX_ENV=coverage 29 | - TOX_ENV=pep8 30 | 31 | script: 32 | - tox -e $TOX_ENV 33 | 34 | # publish coverage only after a successful build 35 | after_success: 36 | - codecov 37 | 38 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 Vladimir Keleshev, 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.rst LICENSE-MIT *.py 2 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/README.chromium: -------------------------------------------------------------------------------- 1 | Name: schema 2 | URL: https://github.com/keleshev/schema 3 | Version: 0.6.6 4 | License: MIT 5 | 6 | Description: 7 | schema is a library for validating Python data structures, such as those 8 | obtained from config-files, forms, external services or command-line parsing, 9 | converted from JSON/YAML (or something else) to Python data-types. 10 | 11 | Modifications: 12 | None. 13 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/__init__.py: -------------------------------------------------------------------------------- 1 | from .schema import * 2 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/setup.cfg: -------------------------------------------------------------------------------- 1 | [wheel] 2 | universal = 1 3 | 4 | [semantic_release] 5 | version_variable = schema.py:__version__ 6 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | 3 | import codecs 4 | import schema 5 | 6 | 7 | setup( 8 | name=schema.__name__, 9 | version=schema.__version__, 10 | author="Vladimir Keleshev", 11 | author_email="vladimir@keleshev.com", 12 | description="Simple data validation library", 13 | license="MIT", 14 | keywords="schema json validation", 15 | url="https://github.com/keleshev/schema", 16 | py_modules=['schema'], 17 | long_description=codecs.open('README.rst', 'r', 'utf-8').read(), 18 | classifiers=[ 19 | "Development Status :: 3 - Alpha", 20 | "Topic :: Utilities", 21 | "Programming Language :: Python :: 2.6", 22 | "Programming Language :: Python :: 2.7", 23 | "Programming Language :: Python :: 3.2", 24 | "Programming Language :: Python :: 3.3", 25 | "Programming Language :: Python :: 3.4", 26 | "Programming Language :: Python :: 3.5", 27 | "Programming Language :: Python :: Implementation :: PyPy", 28 | "License :: OSI Approved :: MIT License", 29 | ], 30 | ) 31 | -------------------------------------------------------------------------------- /depot_tools/third_party/schema/tox.ini: -------------------------------------------------------------------------------- 1 | # Tox (http://tox.testrun.org/) is a tool for running tests in 2 | # multiple virtualenvs. This configuration file will run the 3 | # test suite on all supported python versions. To use it, "pip 4 | # install tox" and then run "tox" from this directory. 5 | 6 | [tox] 7 | envlist = py26, py27, py32, py33, py34, py35, pypy, pypy3, coverage, pep8 8 | 9 | [testenv] 10 | commands = py.test 11 | deps = pytest 12 | 13 | 14 | [testenv:py27] 15 | commands = py.test --doctest-glob=README.rst # test documentation 16 | deps = pytest 17 | 18 | [testenv:pep8] 19 | # pep8 disabled for E701 (multiple statements on one line) and E126 (continuation line over-indented for hanging indent) 20 | commands = flake8 --max-line-length=90 --show-source -v --count --ignore=E701,E126 21 | deps = flake8 22 | 23 | [testenv:coverage] 24 | #TODO: how to force this on py27? 25 | commands = coverage erase 26 | py.test --doctest-glob=README.rst --cov schema 27 | coverage report -m 28 | deps = pytest 29 | pytest-cov 30 | coverage 31 | 32 | [flake8] 33 | exclude=.venv,.git,.tox 34 | -------------------------------------------------------------------------------- /depot_tools/third_party/simplejson/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2006 Bob Ippolito 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to do 8 | so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /depot_tools/third_party/simplejson/PKG-INFO: -------------------------------------------------------------------------------- 1 | Metadata-Version: 1.0 2 | Name: simplejson 3 | Version: 2.1.0 4 | Summary: Simple, fast, extensible JSON encoder/decoder for Python 5 | Home-page: http://undefined.org/python/#simplejson 6 | Author: Bob Ippolito 7 | Author-email: bob@redivi.com 8 | License: MIT License 9 | Description: 10 | simplejson is a simple, fast, complete, correct and extensible 11 | JSON encoder and decoder for Python 2.4+. It is 12 | pure Python code with no dependencies, but includes an optional C 13 | extension for a serious speed boost. 14 | 15 | simplejson was formerly known as simple_json, but changed its name to 16 | comply with PEP 8 module naming guidelines. 17 | 18 | The encoder may be subclassed to provide serialization in any kind of 19 | situation, without any special support by the objects to be serialized 20 | (somewhat like pickle). 21 | 22 | The decoder can handle incoming JSON strings of any specified encoding 23 | (UTF-8 by default). 24 | 25 | Platform: any 26 | Classifier: Intended Audience :: Developers 27 | Classifier: License :: OSI Approved :: MIT License 28 | Classifier: Programming Language :: Python 29 | Classifier: Topic :: Software Development :: Libraries :: Python Modules 30 | -------------------------------------------------------------------------------- /depot_tools/third_party/simplejson/tool.py: -------------------------------------------------------------------------------- 1 | r"""Command-line tool to validate and pretty-print JSON 2 | 3 | Usage:: 4 | 5 | $ echo '{"json":"obj"}' | python -m simplejson.tool 6 | { 7 | "json": "obj" 8 | } 9 | $ echo '{ 1.2:3.4}' | python -m simplejson.tool 10 | Expecting property name: line 1 column 2 (char 2) 11 | 12 | """ 13 | import sys 14 | import simplejson as json 15 | 16 | def main(): 17 | if len(sys.argv) == 1: 18 | infile = sys.stdin 19 | outfile = sys.stdout 20 | elif len(sys.argv) == 2: 21 | infile = open(sys.argv[1], 'rb') 22 | outfile = sys.stdout 23 | elif len(sys.argv) == 3: 24 | infile = open(sys.argv[1], 'rb') 25 | outfile = open(sys.argv[2], 'wb') 26 | else: 27 | raise SystemExit(sys.argv[0] + " [infile [outfile]]") 28 | try: 29 | obj = json.load(infile, 30 | object_pairs_hook=json.OrderedDict, 31 | use_decimal=True) 32 | except ValueError, e: 33 | raise SystemExit(e) 34 | json.dump(obj, outfile, sort_keys=True, indent=' ', use_decimal=True) 35 | outfile.write('\n') 36 | 37 | 38 | if __name__ == '__main__': 39 | main() 40 | -------------------------------------------------------------------------------- /depot_tools/third_party/six/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010-2014 Benjamin Peterson 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software is furnished to do so, 8 | subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 15 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /depot_tools/third_party/six/README.chromium: -------------------------------------------------------------------------------- 1 | URL: https://pypi.python.org/pypi/six 2 | Version: 1.8.0 3 | License: MIT 4 | License File: LICENSE.txt 5 | 6 | Description: 7 | This directory contains the Python six module. 8 | 9 | Local Modifications: 10 | None 11 | -------------------------------------------------------------------------------- /depot_tools/update_depot_tools_toggle.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # Copyright (c) 2017 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | """Small utility script to enable/disable `depot_tools` automatic updating.""" 7 | 8 | import argparse 9 | import datetime 10 | import os 11 | import sys 12 | 13 | 14 | DEPOT_TOOLS_ROOT = os.path.abspath(os.path.dirname(__file__)) 15 | SENTINEL_PATH = os.path.join(DEPOT_TOOLS_ROOT, '.disable_auto_update') 16 | 17 | 18 | def main(): 19 | parser = argparse.ArgumentParser() 20 | group = parser.add_mutually_exclusive_group(required=True) 21 | group.add_argument('--enable', action='store_true', 22 | help='Enable auto-updating.') 23 | group.add_argument('--disable', action='store_true', 24 | help='Disable auto-updating.') 25 | args = parser.parse_args() 26 | 27 | if args.enable: 28 | if os.path.exists(SENTINEL_PATH): 29 | os.unlink(SENTINEL_PATH) 30 | if args.disable: 31 | if not os.path.exists(SENTINEL_PATH): 32 | with open(SENTINEL_PATH, 'w') as fd: 33 | fd.write('Disabled by %s at %s\n' % (__file__, datetime.datetime.now())) 34 | return 0 35 | 36 | 37 | if __name__ == '__main__': 38 | sys.exit(main()) 39 | -------------------------------------------------------------------------------- /depot_tools/upload_metrics.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # Copyright (c) 2018 The Chromium Authors. All rights reserved. 3 | # Use of this source code is governed by a BSD-style license that can be 4 | # found in the LICENSE file. 5 | 6 | import sys 7 | import urllib2 8 | 9 | import metrics_utils 10 | 11 | 12 | def main(): 13 | metrics = raw_input() 14 | try: 15 | urllib2.urlopen(metrics_utils.APP_URL + '/upload', metrics) 16 | except urllib2.HTTPError: 17 | pass 18 | except urllib2.URLError: 19 | pass 20 | 21 | return 0 22 | 23 | 24 | if __name__ == '__main__': 25 | sys.exit(main()) 26 | -------------------------------------------------------------------------------- /depot_tools/vpython: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright 2018 The Chromium Authors. All rights reserved. 4 | # Use of this source code is governed by a BSD-style license that can be 5 | # found in the LICENSE file. 6 | 7 | if [[ $VPYTHON_BYPASS == "manually managed python not supported by chrome operations" ]] 8 | then 9 | NEWARGS=() 10 | while [[ $# -gt 0 ]] 11 | do 12 | case "$1" in 13 | -vpython-tool*) # these tools all do something vpython related and quit 14 | exit 0 15 | ;; 16 | -vpython*=*) # delete any vpython-specific flag (w/ attached argument) 17 | shift 18 | ;; 19 | -vpython*) # delete any vpython-specific flag (w/ separate argument) 20 | shift 21 | shift 22 | ;; 23 | --) # stop parsing 24 | NEWARGS+=( "$@" ) 25 | break 26 | ;; 27 | *) # regular arg 28 | NEWARGS+=( "$1" ) 29 | shift 30 | ;; 31 | esac 32 | done 33 | exec "python" "${NEWARGS[@]}" 34 | fi 35 | 36 | 37 | MYPATH=$(dirname "${BASH_SOURCE[0]}") 38 | 39 | source "$MYPATH/cipd_bin_setup.sh" 40 | cipd_bin_setup &> /dev/null 41 | 42 | exec "$MYPATH/.cipd_bin/vpython" "$@" 43 | -------------------------------------------------------------------------------- /depot_tools/vpython.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright 2017 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | 6 | call "%~dp0\cipd_bin_setup.bat" > nul 2>&1 7 | "%~dp0\.cipd_bin\vpython.exe" %* 8 | -------------------------------------------------------------------------------- /depot_tools/win_toolchain/OWNERS: -------------------------------------------------------------------------------- 1 | brucedawson@chromium.org 2 | scottmg@chromium.org 3 | -------------------------------------------------------------------------------- /depot_tools/yapf: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env vpython 2 | 3 | # [VPYTHON:BEGIN] 4 | # wheel: < 5 | # name: "infra/python/wheels/yapf-py2_py3" 6 | # version: "version:0.24.0" 7 | # > 8 | # [VPYTHON:END] 9 | 10 | # -*- coding: utf-8 -*- 11 | import re 12 | import sys 13 | 14 | from yapf import run_main 15 | 16 | if __name__ == '__main__': 17 | sys.exit(run_main()) 18 | -------------------------------------------------------------------------------- /depot_tools/yapf.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | :: Copyright (c) 2015 The Chromium Authors. All rights reserved. 3 | :: Use of this source code is governed by a BSD-style license that can be 4 | :: found in the LICENSE file. 5 | setlocal 6 | 7 | :: Ensure that "depot_tools" is somewhere in PATH so this tool can be used 8 | :: standalone, but allow other PATH manipulations to take priority. 9 | set PATH=%PATH%;%~dp0 10 | 11 | :: Defer control. 12 | vpython "%~dp0\yapf" %* 13 | -------------------------------------------------------------------------------- /depot_tools/zsh-goodies/README: -------------------------------------------------------------------------------- 1 | Various utilities for zsh. 2 | 3 | _gclient: 4 | completion for gclient command. 5 | To install add a path to zsh-goodies into your fpath variable, e.g.: 6 | fpath=(/zsh-goodies $fpath) 7 | -------------------------------------------------------------------------------- /depot_tools/zsh-goodies/_gclient: -------------------------------------------------------------------------------- 1 | #compdef gclient 2 | 3 | _values commands \ 4 | cleanup \ 5 | config \ 6 | diff \ 7 | help \ 8 | pack \ 9 | status \ 10 | sync \ 11 | update \ 12 | revert \ 13 | runhooks\ 14 | revinfo 15 | --------------------------------------------------------------------------------