libv8 8.4.255.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.gitmodules +3 -0
  4. data/.rspec +3 -0
  5. data/.travis.yml +45 -0
  6. data/CHANGELOG.md +111 -0
  7. data/Gemfile +4 -0
  8. data/README.md +152 -0
  9. data/Rakefile +125 -0
  10. data/appveyor.yml.disabled +36 -0
  11. data/ext/libv8/arch.rb +20 -0
  12. data/ext/libv8/builder.rb +106 -0
  13. data/ext/libv8/extconf.rb +7 -0
  14. data/ext/libv8/location.rb +89 -0
  15. data/ext/libv8/paths.rb +28 -0
  16. data/lib/libv8.rb +9 -0
  17. data/lib/libv8/version.rb +3 -0
  18. data/libv8.gemspec +30 -0
  19. data/scaleway.png +0 -0
  20. data/spec/location_spec.rb +69 -0
  21. data/spec/spec_helper.rb +4 -0
  22. data/thefrontside.png +0 -0
  23. data/vendor/depot_tools/.cipd_impl.ps1 +129 -0
  24. data/vendor/depot_tools/.gitattributes +55 -0
  25. data/vendor/depot_tools/.gitignore +92 -0
  26. data/vendor/depot_tools/.style.yapf +4 -0
  27. data/vendor/depot_tools/.vpython +55 -0
  28. data/vendor/depot_tools/.vpython3 +23 -0
  29. data/vendor/depot_tools/CROS_OWNERS +7 -0
  30. data/vendor/depot_tools/GOMA_OWNERS +9 -0
  31. data/vendor/depot_tools/LICENSE +27 -0
  32. data/vendor/depot_tools/LUCI_OWNERS +5 -0
  33. data/vendor/depot_tools/OWNERS +39 -0
  34. data/vendor/depot_tools/PRESUBMIT.py +150 -0
  35. data/vendor/depot_tools/README.gclient.md +67 -0
  36. data/vendor/depot_tools/README.git-cl.md +99 -0
  37. data/vendor/depot_tools/README.md +78 -0
  38. data/vendor/depot_tools/WATCHLISTS +26 -0
  39. data/vendor/depot_tools/auth.py +163 -0
  40. data/vendor/depot_tools/autoninja +36 -0
  41. data/vendor/depot_tools/autoninja.bat +33 -0
  42. data/vendor/depot_tools/autoninja.py +148 -0
  43. data/vendor/depot_tools/bb +12 -0
  44. data/vendor/depot_tools/bb.bat +7 -0
  45. data/vendor/depot_tools/bootstrap/README.md +155 -0
  46. data/vendor/depot_tools/bootstrap/bootstrap.py +356 -0
  47. data/vendor/depot_tools/bootstrap/git-bash.template.sh +12 -0
  48. data/vendor/depot_tools/bootstrap/git.template.bat +5 -0
  49. data/vendor/depot_tools/bootstrap/manifest.txt +27 -0
  50. data/vendor/depot_tools/bootstrap/manifest_bleeding_edge.txt +27 -0
  51. data/vendor/depot_tools/bootstrap/profile.d.python.sh +20 -0
  52. data/vendor/depot_tools/bootstrap/python27.bat +46 -0
  53. data/vendor/depot_tools/bootstrap/python3.bat +46 -0
  54. data/vendor/depot_tools/bootstrap/win_tools.bat +79 -0
  55. data/vendor/depot_tools/bootstrap_python3 +35 -0
  56. data/vendor/depot_tools/breakpad.py +12 -0
  57. data/vendor/depot_tools/cbuildbot +1 -0
  58. data/vendor/depot_tools/chrome_set_ver +1 -0
  59. data/vendor/depot_tools/cipd +247 -0
  60. data/vendor/depot_tools/cipd.bat +67 -0
  61. data/vendor/depot_tools/cipd_bin_setup.bat +6 -0
  62. data/vendor/depot_tools/cipd_bin_setup.sh +22 -0
  63. data/vendor/depot_tools/cipd_client_version +1 -0
  64. data/vendor/depot_tools/cipd_client_version.digests +22 -0
  65. data/vendor/depot_tools/cipd_manifest.txt +63 -0
  66. data/vendor/depot_tools/cipd_manifest.versions +438 -0
  67. data/vendor/depot_tools/cit +8 -0
  68. data/vendor/depot_tools/cit.bat +12 -0
  69. data/vendor/depot_tools/cit.py +167 -0
  70. data/vendor/depot_tools/clang-format +8 -0
  71. data/vendor/depot_tools/clang-format.bat +12 -0
  72. data/vendor/depot_tools/clang_format.py +79 -0
  73. data/vendor/depot_tools/clang_format_merge_driver +8 -0
  74. data/vendor/depot_tools/clang_format_merge_driver.bat +12 -0
  75. data/vendor/depot_tools/clang_format_merge_driver.py +69 -0
  76. data/vendor/depot_tools/codereview.settings +6 -0
  77. data/vendor/depot_tools/compile_single_file +8 -0
  78. data/vendor/depot_tools/compile_single_file.bat +11 -0
  79. data/vendor/depot_tools/compile_single_file.py +79 -0
  80. data/vendor/depot_tools/cpplint.bat +11 -0
  81. data/vendor/depot_tools/cpplint.py +6097 -0
  82. data/vendor/depot_tools/cpplint_chromium.py +50 -0
  83. data/vendor/depot_tools/cros +87 -0
  84. data/vendor/depot_tools/cros_sdk +1 -0
  85. data/vendor/depot_tools/crosjobs +13 -0
  86. data/vendor/depot_tools/detect_host_arch.py +55 -0
  87. data/vendor/depot_tools/dirmd +12 -0
  88. data/vendor/depot_tools/dirmd.bat +7 -0
  89. data/vendor/depot_tools/download_from_google_storage +8 -0
  90. data/vendor/depot_tools/download_from_google_storage.bat +12 -0
  91. data/vendor/depot_tools/download_from_google_storage.py +634 -0
  92. data/vendor/depot_tools/ensure_bootstrap +53 -0
  93. data/vendor/depot_tools/fetch +21 -0
  94. data/vendor/depot_tools/fetch.bat +28 -0
  95. data/vendor/depot_tools/fetch.py +319 -0
  96. data/vendor/depot_tools/fetch_configs/android.py +34 -0
  97. data/vendor/depot_tools/fetch_configs/android_internal.py +34 -0
  98. data/vendor/depot_tools/fetch_configs/breakpad.py +44 -0
  99. data/vendor/depot_tools/fetch_configs/chromium.py +66 -0
  100. data/vendor/depot_tools/fetch_configs/config_util.py +52 -0
  101. data/vendor/depot_tools/fetch_configs/crashpad.py +41 -0
  102. data/vendor/depot_tools/fetch_configs/dart.py +45 -0
  103. data/vendor/depot_tools/fetch_configs/depot_tools.py +44 -0
  104. data/vendor/depot_tools/fetch_configs/devtools-frontend.py +44 -0
  105. data/vendor/depot_tools/fetch_configs/goma_client.py +41 -0
  106. data/vendor/depot_tools/fetch_configs/gyp.py +41 -0
  107. data/vendor/depot_tools/fetch_configs/infra.py +40 -0
  108. data/vendor/depot_tools/fetch_configs/infra_internal.py +45 -0
  109. data/vendor/depot_tools/fetch_configs/inspector_protocol.py +40 -0
  110. data/vendor/depot_tools/fetch_configs/ios.py +34 -0
  111. data/vendor/depot_tools/fetch_configs/ios_internal.py +39 -0
  112. data/vendor/depot_tools/fetch_configs/nacl.py +48 -0
  113. data/vendor/depot_tools/fetch_configs/naclports.py +47 -0
  114. data/vendor/depot_tools/fetch_configs/node-ci.py +41 -0
  115. data/vendor/depot_tools/fetch_configs/pdfium.py +40 -0
  116. data/vendor/depot_tools/fetch_configs/skia.py +41 -0
  117. data/vendor/depot_tools/fetch_configs/skia_buildbot.py +41 -0
  118. data/vendor/depot_tools/fetch_configs/syzygy.py +41 -0
  119. data/vendor/depot_tools/fetch_configs/v8.py +44 -0
  120. data/vendor/depot_tools/fetch_configs/webrtc.py +52 -0
  121. data/vendor/depot_tools/fetch_configs/webrtc_android.py +34 -0
  122. data/vendor/depot_tools/fetch_configs/webrtc_ios.py +34 -0
  123. data/vendor/depot_tools/fix_encoding.py +385 -0
  124. data/vendor/depot_tools/gclient +38 -0
  125. data/vendor/depot_tools/gclient-new-workdir.py +124 -0
  126. data/vendor/depot_tools/gclient.bat +32 -0
  127. data/vendor/depot_tools/gclient.py +3198 -0
  128. data/vendor/depot_tools/gclient_completion.sh +76 -0
  129. data/vendor/depot_tools/gclient_eval.py +891 -0
  130. data/vendor/depot_tools/gclient_paths.py +152 -0
  131. data/vendor/depot_tools/gclient_scm.py +1615 -0
  132. data/vendor/depot_tools/gclient_utils.py +1280 -0
  133. data/vendor/depot_tools/gerrit_client.py +151 -0
  134. data/vendor/depot_tools/gerrit_util.py +996 -0
  135. data/vendor/depot_tools/git-cache +6 -0
  136. data/vendor/depot_tools/git-cl +6 -0
  137. data/vendor/depot_tools/git-crrev-parse +53 -0
  138. data/vendor/depot_tools/git-drover +6 -0
  139. data/vendor/depot_tools/git-find-releases +6 -0
  140. data/vendor/depot_tools/git-footers +6 -0
  141. data/vendor/depot_tools/git-freeze +8 -0
  142. data/vendor/depot_tools/git-gs +9 -0
  143. data/vendor/depot_tools/git-hyper-blame +6 -0
  144. data/vendor/depot_tools/git-map +6 -0
  145. data/vendor/depot_tools/git-map-branches +6 -0
  146. data/vendor/depot_tools/git-mark-merge-base +6 -0
  147. data/vendor/depot_tools/git-nav-downstream +6 -0
  148. data/vendor/depot_tools/git-nav-upstream +6 -0
  149. data/vendor/depot_tools/git-new-branch +6 -0
  150. data/vendor/depot_tools/git-number +6 -0
  151. data/vendor/depot_tools/git-rebase-update +6 -0
  152. data/vendor/depot_tools/git-rename-branch +6 -0
  153. data/vendor/depot_tools/git-reparent-branch +6 -0
  154. data/vendor/depot_tools/git-retry +8 -0
  155. data/vendor/depot_tools/git-runhooks +23 -0
  156. data/vendor/depot_tools/git-squash-branch +6 -0
  157. data/vendor/depot_tools/git-templates/description +3 -0
  158. data/vendor/depot_tools/git-templates/hooks/applypatch-msg +4 -0
  159. data/vendor/depot_tools/git-templates/hooks/post-applypatch +4 -0
  160. data/vendor/depot_tools/git-templates/hooks/post-checkout +4 -0
  161. data/vendor/depot_tools/git-templates/hooks/post-commit +4 -0
  162. data/vendor/depot_tools/git-templates/hooks/post-merge +4 -0
  163. data/vendor/depot_tools/git-templates/hooks/post-update +4 -0
  164. data/vendor/depot_tools/git-templates/hooks/pre-applypatch +4 -0
  165. data/vendor/depot_tools/git-templates/hooks/pre-auto-gc +4 -0
  166. data/vendor/depot_tools/git-templates/hooks/pre-commit +4 -0
  167. data/vendor/depot_tools/git-templates/hooks/pre-rebase +4 -0
  168. data/vendor/depot_tools/git-templates/hooks/prepare-commit-msg +4 -0
  169. data/vendor/depot_tools/git-templates/info/exclude +6 -0
  170. data/vendor/depot_tools/git-thaw +13 -0
  171. data/vendor/depot_tools/git-upstream-diff +9 -0
  172. data/vendor/depot_tools/git_cache.py +786 -0
  173. data/vendor/depot_tools/git_cl.py +5158 -0
  174. data/vendor/depot_tools/git_cl_completion.sh +48 -0
  175. data/vendor/depot_tools/git_common.py +1101 -0
  176. data/vendor/depot_tools/git_dates.py +62 -0
  177. data/vendor/depot_tools/git_drover.py +469 -0
  178. data/vendor/depot_tools/git_find_releases.py +67 -0
  179. data/vendor/depot_tools/git_footers.py +261 -0
  180. data/vendor/depot_tools/git_freezer.py +40 -0
  181. data/vendor/depot_tools/git_hyper_blame.py +391 -0
  182. data/vendor/depot_tools/git_map.py +166 -0
  183. data/vendor/depot_tools/git_map_branches.py +354 -0
  184. data/vendor/depot_tools/git_mark_merge_base.py +73 -0
  185. data/vendor/depot_tools/git_nav_downstream.py +69 -0
  186. data/vendor/depot_tools/git_new_branch.py +82 -0
  187. data/vendor/depot_tools/git_number.py +301 -0
  188. data/vendor/depot_tools/git_rebase_update.py +351 -0
  189. data/vendor/depot_tools/git_rename_branch.py +55 -0
  190. data/vendor/depot_tools/git_reparent_branch.py +101 -0
  191. data/vendor/depot_tools/git_retry.py +181 -0
  192. data/vendor/depot_tools/git_squash_branch.py +28 -0
  193. data/vendor/depot_tools/git_upstream_diff.py +64 -0
  194. data/vendor/depot_tools/gn +8 -0
  195. data/vendor/depot_tools/gn.bat +12 -0
  196. data/vendor/depot_tools/gn.py +78 -0
  197. data/vendor/depot_tools/goma_auth +12 -0
  198. data/vendor/depot_tools/goma_auth.bat +8 -0
  199. data/vendor/depot_tools/goma_ctl +12 -0
  200. data/vendor/depot_tools/goma_ctl.bat +8 -0
  201. data/vendor/depot_tools/gsutil.py +190 -0
  202. data/vendor/depot_tools/gsutil.py.bat +23 -0
  203. data/vendor/depot_tools/gsutil.vpython +120 -0
  204. data/vendor/depot_tools/infra/README.md +1 -0
  205. data/vendor/depot_tools/infra/config/OWNERS +7 -0
  206. data/vendor/depot_tools/infra/config/README.md +1 -0
  207. data/vendor/depot_tools/infra/config/recipes.cfg +26 -0
  208. data/vendor/depot_tools/led +12 -0
  209. data/vendor/depot_tools/led.bat +7 -0
  210. data/vendor/depot_tools/lockfile.py +116 -0
  211. data/vendor/depot_tools/luci-auth +13 -0
  212. data/vendor/depot_tools/luci-auth.bat +8 -0
  213. data/vendor/depot_tools/lucicfg +12 -0
  214. data/vendor/depot_tools/lucicfg.bat +7 -0
  215. data/vendor/depot_tools/mac_toolchain +12 -0
  216. data/vendor/depot_tools/man/html/depot_tools.html +934 -0
  217. data/vendor/depot_tools/man/html/depot_tools_tutorial.html +1593 -0
  218. data/vendor/depot_tools/man/html/git-cl.html +1033 -0
  219. data/vendor/depot_tools/man/html/git-drover.html +1048 -0
  220. data/vendor/depot_tools/man/html/git-footers.html +878 -0
  221. data/vendor/depot_tools/man/html/git-freeze.html +859 -0
  222. data/vendor/depot_tools/man/html/git-hyper-blame.html +878 -0
  223. data/vendor/depot_tools/man/html/git-map-branches.html +904 -0
  224. data/vendor/depot_tools/man/html/git-map.html +887 -0
  225. data/vendor/depot_tools/man/html/git-mark-merge-base.html +826 -0
  226. data/vendor/depot_tools/man/html/git-nav-downstream.html +844 -0
  227. data/vendor/depot_tools/man/html/git-nav-upstream.html +853 -0
  228. data/vendor/depot_tools/man/html/git-new-branch.html +932 -0
  229. data/vendor/depot_tools/man/html/git-rebase-update.html +961 -0
  230. data/vendor/depot_tools/man/html/git-rename-branch.html +794 -0
  231. data/vendor/depot_tools/man/html/git-reparent-branch.html +847 -0
  232. data/vendor/depot_tools/man/html/git-retry.html +858 -0
  233. data/vendor/depot_tools/man/html/git-squash-branch.html +881 -0
  234. data/vendor/depot_tools/man/html/git-thaw.html +794 -0
  235. data/vendor/depot_tools/man/html/git-upstream-diff.html +923 -0
  236. data/vendor/depot_tools/man/man1/git-cl.1 +198 -0
  237. data/vendor/depot_tools/man/man1/git-drover.1 +330 -0
  238. data/vendor/depot_tools/man/man1/git-footers.1 +144 -0
  239. data/vendor/depot_tools/man/man1/git-freeze.1 +113 -0
  240. data/vendor/depot_tools/man/man1/git-hyper-blame.1 +128 -0
  241. data/vendor/depot_tools/man/man1/git-map-branches.1 +210 -0
  242. data/vendor/depot_tools/man/man1/git-map.1 +179 -0
  243. data/vendor/depot_tools/man/man1/git-mark-merge-base.1 +69 -0
  244. data/vendor/depot_tools/man/man1/git-nav-downstream.1 +112 -0
  245. data/vendor/depot_tools/man/man1/git-nav-upstream.1 +122 -0
  246. data/vendor/depot_tools/man/man1/git-new-branch.1 +176 -0
  247. data/vendor/depot_tools/man/man1/git-rebase-update.1 +177 -0
  248. data/vendor/depot_tools/man/man1/git-rename-branch.1 +53 -0
  249. data/vendor/depot_tools/man/man1/git-reparent-branch.1 +93 -0
  250. data/vendor/depot_tools/man/man1/git-retry.1 +108 -0
  251. data/vendor/depot_tools/man/man1/git-squash-branch.1 +129 -0
  252. data/vendor/depot_tools/man/man1/git-thaw.1 +54 -0
  253. data/vendor/depot_tools/man/man1/git-upstream-diff.1 +153 -0
  254. data/vendor/depot_tools/man/man7/depot_tools.7 +139 -0
  255. data/vendor/depot_tools/man/man7/depot_tools_tutorial.7 +1061 -0
  256. data/vendor/depot_tools/man/push_to_gs.sh +4 -0
  257. data/vendor/depot_tools/man/src/.gitignore +5 -0
  258. data/vendor/depot_tools/man/src/_aliases.txt +5 -0
  259. data/vendor/depot_tools/man/src/_footer.txt +8 -0
  260. data/vendor/depot_tools/man/src/_git-cl_desc.helper.txt +1 -0
  261. data/vendor/depot_tools/man/src/_git-drover_desc.helper.txt +2 -0
  262. data/vendor/depot_tools/man/src/_git-footers_desc.helper.txt +1 -0
  263. data/vendor/depot_tools/man/src/_git-freeze_desc.helper.txt +1 -0
  264. data/vendor/depot_tools/man/src/_git-hyper-blame_desc.helper.txt +1 -0
  265. data/vendor/depot_tools/man/src/_git-map-branches_desc.helper.txt +4 -0
  266. data/vendor/depot_tools/man/src/_git-map_desc.helper.txt +3 -0
  267. data/vendor/depot_tools/man/src/_git-mark-merge-base_desc.helper.txt +1 -0
  268. data/vendor/depot_tools/man/src/_git-nav-downstream_desc.helper.txt +1 -0
  269. data/vendor/depot_tools/man/src/_git-nav-upstream_desc.helper.txt +1 -0
  270. data/vendor/depot_tools/man/src/_git-new-branch_desc.helper.txt +1 -0
  271. data/vendor/depot_tools/man/src/_git-rebase-update_desc.helper.txt +1 -0
  272. data/vendor/depot_tools/man/src/_git-rename-branch_desc.helper.txt +1 -0
  273. data/vendor/depot_tools/man/src/_git-reparent-branch_desc.helper.txt +1 -0
  274. data/vendor/depot_tools/man/src/_git-retry_desc.helper.txt +2 -0
  275. data/vendor/depot_tools/man/src/_git-squash-branch_desc.helper.txt +1 -0
  276. data/vendor/depot_tools/man/src/_git-thaw_desc.helper.txt +2 -0
  277. data/vendor/depot_tools/man/src/_git-upstream-diff_desc.helper.txt +1 -0
  278. data/vendor/depot_tools/man/src/_helper_prefix.txt +1 -0
  279. data/vendor/depot_tools/man/src/asciidoc-override.css +7 -0
  280. data/vendor/depot_tools/man/src/common_demo_functions.sh +84 -0
  281. data/vendor/depot_tools/man/src/demo_repo.sh +43 -0
  282. data/vendor/depot_tools/man/src/depot_tools.txt +28 -0
  283. data/vendor/depot_tools/man/src/depot_tools_tutorial.demo.walkthrough.sh +155 -0
  284. data/vendor/depot_tools/man/src/depot_tools_tutorial.txt +432 -0
  285. data/vendor/depot_tools/man/src/filter_demo_output.py +141 -0
  286. data/vendor/depot_tools/man/src/git-cl.txt +119 -0
  287. data/vendor/depot_tools/man/src/git-drover.demo.1.sh +22 -0
  288. data/vendor/depot_tools/man/src/git-drover.demo.2.sh +23 -0
  289. data/vendor/depot_tools/man/src/git-drover.demo.3.sh +27 -0
  290. data/vendor/depot_tools/man/src/git-drover.demo.4.sh +39 -0
  291. data/vendor/depot_tools/man/src/git-drover.demo.common.sh +19 -0
  292. data/vendor/depot_tools/man/src/git-drover.txt +102 -0
  293. data/vendor/depot_tools/man/src/git-footers.demo.1.sh +17 -0
  294. data/vendor/depot_tools/man/src/git-footers.txt +71 -0
  295. data/vendor/depot_tools/man/src/git-freeze.demo.1.sh +23 -0
  296. data/vendor/depot_tools/man/src/git-freeze.txt +54 -0
  297. data/vendor/depot_tools/man/src/git-hyper-blame.demo.1.sh +3 -0
  298. data/vendor/depot_tools/man/src/git-hyper-blame.demo.2.sh +4 -0
  299. data/vendor/depot_tools/man/src/git-hyper-blame.demo.common.sh +57 -0
  300. data/vendor/depot_tools/man/src/git-hyper-blame.txt +85 -0
  301. data/vendor/depot_tools/man/src/git-map-branches.demo.1.sh +8 -0
  302. data/vendor/depot_tools/man/src/git-map-branches.txt +64 -0
  303. data/vendor/depot_tools/man/src/git-map.demo.1.sh +3 -0
  304. data/vendor/depot_tools/man/src/git-map.txt +67 -0
  305. data/vendor/depot_tools/man/src/git-mark-merge-base.txt +46 -0
  306. data/vendor/depot_tools/man/src/git-nav-downstream.demo.1.sh +12 -0
  307. data/vendor/depot_tools/man/src/git-nav-downstream.txt +40 -0
  308. data/vendor/depot_tools/man/src/git-nav-upstream.demo.1.sh +12 -0
  309. data/vendor/depot_tools/man/src/git-nav-upstream.txt +39 -0
  310. data/vendor/depot_tools/man/src/git-new-branch.demo.1.sh +17 -0
  311. data/vendor/depot_tools/man/src/git-new-branch.txt +82 -0
  312. data/vendor/depot_tools/man/src/git-rebase-update.txt +141 -0
  313. data/vendor/depot_tools/man/src/git-rename-branch.txt +28 -0
  314. data/vendor/depot_tools/man/src/git-reparent-branch.txt +61 -0
  315. data/vendor/depot_tools/man/src/git-retry.txt +67 -0
  316. data/vendor/depot_tools/man/src/git-squash-branch.demo.1.sh +12 -0
  317. data/vendor/depot_tools/man/src/git-squash-branch.txt +59 -0
  318. data/vendor/depot_tools/man/src/git-thaw.txt +29 -0
  319. data/vendor/depot_tools/man/src/git-upstream-diff.txt +107 -0
  320. data/vendor/depot_tools/man/src/make_docs.sh +260 -0
  321. data/vendor/depot_tools/man/src/prep_demo_repo.sh +103 -0
  322. data/vendor/depot_tools/metrics.README.md +101 -0
  323. data/vendor/depot_tools/metrics.py +297 -0
  324. data/vendor/depot_tools/metrics_utils.py +293 -0
  325. data/vendor/depot_tools/my_activity.py +971 -0
  326. data/vendor/depot_tools/ninja +44 -0
  327. data/vendor/depot_tools/ninja-linux32 +0 -0
  328. data/vendor/depot_tools/ninja-linux64 +0 -0
  329. data/vendor/depot_tools/ninja-mac +0 -0
  330. data/vendor/depot_tools/ninja.exe +0 -0
  331. data/vendor/depot_tools/ninjalog.README.md +64 -0
  332. data/vendor/depot_tools/ninjalog_uploader.py +233 -0
  333. data/vendor/depot_tools/ninjalog_uploader_wrapper.py +125 -0
  334. data/vendor/depot_tools/owners.py +641 -0
  335. data/vendor/depot_tools/owners_finder.py +385 -0
  336. data/vendor/depot_tools/post_build_ninja_summary.py +350 -0
  337. data/vendor/depot_tools/presubmit_canned_checks.py +1655 -0
  338. data/vendor/depot_tools/presubmit_support.py +1923 -0
  339. data/vendor/depot_tools/profile.xml +8 -0
  340. data/vendor/depot_tools/prpc +13 -0
  341. data/vendor/depot_tools/prpc.bat +8 -0
  342. data/vendor/depot_tools/pylint +9 -0
  343. data/vendor/depot_tools/pylint-1.5 +78 -0
  344. data/vendor/depot_tools/pylint-1.6 +78 -0
  345. data/vendor/depot_tools/pylint-1.7 +78 -0
  346. data/vendor/depot_tools/pylint-1.8 +78 -0
  347. data/vendor/depot_tools/pylint-1.9 +78 -0
  348. data/vendor/depot_tools/pylint.bat +12 -0
  349. data/vendor/depot_tools/pylint_main.py +45 -0
  350. data/vendor/depot_tools/pylintrc +349 -0
  351. data/vendor/depot_tools/python-bin/python3 +7 -0
  352. data/vendor/depot_tools/python_runner.sh +60 -0
  353. data/vendor/depot_tools/rdb +12 -0
  354. data/vendor/depot_tools/rdb.bat +7 -0
  355. data/vendor/depot_tools/recipes/OWNERS +4 -0
  356. data/vendor/depot_tools/recipes/README.recipes.md +1079 -0
  357. data/vendor/depot_tools/recipes/recipe_modules/OWNERS +1 -0
  358. data/vendor/depot_tools/recipes/recipe_modules/bot_update/OWNERS +2 -0
  359. data/vendor/depot_tools/recipes/recipe_modules/bot_update/__init__.py +38 -0
  360. data/vendor/depot_tools/recipes/recipe_modules/bot_update/api.py +516 -0
  361. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic.json +117 -0
  362. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic_luci.json +117 -0
  363. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/basic_with_branch_heads.json +118 -0
  364. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/clobber.json +211 -0
  365. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/deprecated_got_revision_mapping.json +194 -0
  366. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_rebase_patch_ref.json +211 -0
  367. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/gerrit_no_reset.json +211 -0
  368. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/input_commit_with_id_without_repo.json +210 -0
  369. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/multiple_patch_refs.json +214 -0
  370. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_apply_patch_on_gclient.json +265 -0
  371. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_cp_checkout_HEAD.json +65 -0
  372. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_cp_checkout_a_branch_head.json +65 -0
  373. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_cp_checkout_a_specific_commit.json +65 -0
  374. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/no_cp_checkout_master.json +65 -0
  375. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/refs.json +212 -0
  376. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/reset_root_solution_revision.json +210 -0
  377. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/resolve_chromium_fixed_version.json +117 -0
  378. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail.json +95 -0
  379. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch.json +209 -0
  380. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_fail_patch_download.json +193 -0
  381. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_angle.json +265 -0
  382. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_branch_heads.json +261 -0
  383. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_feature_branch.json +261 -0
  384. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_v8_feature_branch.json +265 -0
  385. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_gerrit_webrtc.json +265 -0
  386. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8.json +265 -0
  387. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/tryjob_v8_head_by_default.json +265 -0
  388. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/unrecognized_commit_repo.json +8 -0
  389. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.expected/with_tags.json +211 -0
  390. data/vendor/depot_tools/recipes/recipe_modules/bot_update/examples/full.py +308 -0
  391. data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/__init__.py +0 -0
  392. data/vendor/depot_tools/recipes/recipe_modules/bot_update/resources/bot_update.py +1258 -0
  393. data/vendor/depot_tools/recipes/recipe_modules/bot_update/test_api.py +93 -0
  394. data/vendor/depot_tools/recipes/recipe_modules/bot_update/tests/do_not_retry_patch_failures_in_cq.py +42 -0
  395. data/vendor/depot_tools/recipes/recipe_modules/bot_update/tests/ensure_checkout.py +35 -0
  396. data/vendor/depot_tools/recipes/recipe_modules/cipd/__init__.py +9 -0
  397. data/vendor/depot_tools/recipes/recipe_modules/cipd/api.py +455 -0
  398. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/basic.json +403 -0
  399. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/basic_pkg.json +403 -0
  400. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/describe-failed.json +82 -0
  401. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/describe-many-instances.json +411 -0
  402. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/mac64.json +403 -0
  403. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_file.json +315 -0
  404. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_mode.json +313 -0
  405. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/pkg_bad_verfile.json +313 -0
  406. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.expected/win64.json +403 -0
  407. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/full.py +187 -0
  408. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk arch.json +5 -0
  409. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/junk bits.json +5 -0
  410. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_32.json +12 -0
  411. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_arm_64.json +12 -0
  412. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_32.json +12 -0
  413. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_intel_64.json +12 -0
  414. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/linux_mips_64.json +12 -0
  415. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/mac_intel_64.json +12 -0
  416. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_32.json +12 -0
  417. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.expected/win_intel_64.json +12 -0
  418. data/vendor/depot_tools/recipes/recipe_modules/cipd/examples/platform_suffix.py +59 -0
  419. data/vendor/depot_tools/recipes/recipe_modules/cipd/test_api.py +93 -0
  420. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/__init__.py +9 -0
  421. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/api.py +75 -0
  422. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/basic.json +83 -0
  423. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/basic_luci.json +83 -0
  424. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.expected/win.json +83 -0
  425. data/vendor/depot_tools/recipes/recipe_modules/depot_tools/examples/full.py +55 -0
  426. data/vendor/depot_tools/recipes/recipe_modules/gclient/__init__.py +13 -0
  427. data/vendor/depot_tools/recipes/recipe_modules/gclient/api.py +428 -0
  428. data/vendor/depot_tools/recipes/recipe_modules/gclient/config.py +462 -0
  429. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/basic.json +238 -0
  430. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/revision.json +240 -0
  431. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.expected/tryserver.json +238 -0
  432. data/vendor/depot_tools/recipes/recipe_modules/gclient/examples/full.py +95 -0
  433. data/vendor/depot_tools/recipes/recipe_modules/gclient/resources/diff_deps.py +16 -0
  434. data/vendor/depot_tools/recipes/recipe_modules/gclient/test_api.py +36 -0
  435. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/diff_deps.expected/basic.json +55 -0
  436. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/diff_deps.expected/dont have revision yet.json +84 -0
  437. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/diff_deps.expected/no change, exception.json +83 -0
  438. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/diff_deps.expected/windows.json +55 -0
  439. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/diff_deps.py +88 -0
  440. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/patch_project.py +92 -0
  441. data/vendor/depot_tools/recipes/recipe_modules/gclient/tests/sync_failure.py +24 -0
  442. data/vendor/depot_tools/recipes/recipe_modules/gerrit/__init__.py +8 -0
  443. data/vendor/depot_tools/recipes/recipe_modules/gerrit/api.py +178 -0
  444. data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.expected/basic.json +284 -0
  445. data/vendor/depot_tools/recipes/recipe_modules/gerrit/examples/full.py +73 -0
  446. data/vendor/depot_tools/recipes/recipe_modules/gerrit/test_api.py +53 -0
  447. data/vendor/depot_tools/recipes/recipe_modules/git/__init__.py +11 -0
  448. data/vendor/depot_tools/recipes/recipe_modules/git/api.py +405 -0
  449. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic.json +217 -0
  450. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_branch.json +217 -0
  451. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_file_name.json +219 -0
  452. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_hash.json +216 -0
  453. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_ref.json +217 -0
  454. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_submodule_update_force.json +218 -0
  455. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/basic_tags.json +218 -0
  456. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/can_fail_build.json +164 -0
  457. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/cannot_fail_build.json +220 -0
  458. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/cat-file_test.json +239 -0
  459. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_delta.json +290 -0
  460. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_failed.json +220 -0
  461. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_with_bad_output.json +222 -0
  462. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/count-objects_with_bad_output_fails_build.json +111 -0
  463. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/curl_trace_file.json +218 -0
  464. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/git-cache-checkout.json +265 -0
  465. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/platform_win.json +217 -0
  466. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/rebase_failed.json +221 -0
  467. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/remote_not_origin.json +219 -0
  468. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.expected/set_got_revision.json +218 -0
  469. data/vendor/depot_tools/recipes/recipe_modules/git/examples/full.py +170 -0
  470. data/vendor/depot_tools/recipes/recipe_modules/git/resources/git_setup.py +52 -0
  471. data/vendor/depot_tools/recipes/recipe_modules/git/test_api.py +18 -0
  472. data/vendor/depot_tools/recipes/recipe_modules/git_cl/__init__.py +5 -0
  473. data/vendor/depot_tools/recipes/recipe_modules/git_cl/api.py +50 -0
  474. data/vendor/depot_tools/recipes/recipe_modules/git_cl/config.py +22 -0
  475. data/vendor/depot_tools/recipes/recipe_modules/git_cl/examples/full.expected/basic.json +105 -0
  476. data/vendor/depot_tools/recipes/recipe_modules/git_cl/examples/full.py +47 -0
  477. data/vendor/depot_tools/recipes/recipe_modules/gitiles/OWNERS +2 -0
  478. data/vendor/depot_tools/recipes/recipe_modules/gitiles/__init__.py +12 -0
  479. data/vendor/depot_tools/recipes/recipe_modules/gitiles/api.py +257 -0
  480. data/vendor/depot_tools/recipes/recipe_modules/gitiles/examples/full.expected/basic.json +596 -0
  481. data/vendor/depot_tools/recipes/recipe_modules/gitiles/examples/full.py +93 -0
  482. data/vendor/depot_tools/recipes/recipe_modules/gitiles/resources/gerrit_client.py +251 -0
  483. data/vendor/depot_tools/recipes/recipe_modules/gitiles/test_api.py +95 -0
  484. data/vendor/depot_tools/recipes/recipe_modules/gitiles/tests/parse_repo_url.expected/basic.json +5 -0
  485. data/vendor/depot_tools/recipes/recipe_modules/gitiles/tests/parse_repo_url.py +49 -0
  486. data/vendor/depot_tools/recipes/recipe_modules/gsutil/__init__.py +4 -0
  487. data/vendor/depot_tools/recipes/recipe_modules/gsutil/api.py +222 -0
  488. data/vendor/depot_tools/recipes/recipe_modules/gsutil/examples/full.expected/basic.json +247 -0
  489. data/vendor/depot_tools/recipes/recipe_modules/gsutil/examples/full.py +92 -0
  490. data/vendor/depot_tools/recipes/recipe_modules/gsutil/resources/gsutil_smart_retry.py +69 -0
  491. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/__init__.py +36 -0
  492. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/api.py +140 -0
  493. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/ancient_version.json +83 -0
  494. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/automatic_version.json +83 -0
  495. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/explicit_version.json +83 -0
  496. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/linux.json +21 -0
  497. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/mac.json +83 -0
  498. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.expected/win.json +21 -0
  499. data/vendor/depot_tools/recipes/recipe_modules/osx_sdk/examples/full.py +42 -0
  500. data/vendor/depot_tools/recipes/recipe_modules/presubmit/__init__.py +27 -0
  501. data/vendor/depot_tools/recipes/recipe_modules/presubmit/api.py +251 -0
  502. data/vendor/depot_tools/recipes/recipe_modules/presubmit/examples/full.expected/basic.json +27 -0
  503. data/vendor/depot_tools/recipes/recipe_modules/presubmit/examples/full.py +19 -0
  504. data/vendor/depot_tools/recipes/recipe_modules/presubmit/properties.proto +14 -0
  505. data/vendor/depot_tools/recipes/recipe_modules/presubmit/test_api.py +19 -0
  506. data/vendor/depot_tools/recipes/recipe_modules/presubmit/tests/execute.py +247 -0
  507. data/vendor/depot_tools/recipes/recipe_modules/presubmit/tests/prepare.py +49 -0
  508. data/vendor/depot_tools/recipes/recipe_modules/tryserver/__init__.py +18 -0
  509. data/vendor/depot_tools/recipes/recipe_modules/tryserver/api.py +264 -0
  510. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/basic_tags.json +57 -0
  511. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_gerrit_patch.json +190 -0
  512. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_gerrit_patch_and_target_ref.json +190 -0
  513. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch.json +21 -0
  514. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.expected/with_wrong_patch_new.json +22 -0
  515. data/vendor/depot_tools/recipes/recipe_modules/tryserver/examples/full.py +95 -0
  516. data/vendor/depot_tools/recipes/recipe_modules/tryserver/test_api.py +14 -0
  517. data/vendor/depot_tools/recipes/recipe_modules/tryserver/tests/gerrit_change_fetch_ref_timeout.py +29 -0
  518. data/vendor/depot_tools/recipes/recipe_modules/tryserver/tests/gerrit_change_owner.expected/basic.json +5 -0
  519. data/vendor/depot_tools/recipes/recipe_modules/tryserver/tests/gerrit_change_owner.py +22 -0
  520. data/vendor/depot_tools/recipes/recipe_modules/tryserver/tests/gerrit_change_target_ref.py +32 -0
  521. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/__init__.py +25 -0
  522. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/api.py +137 -0
  523. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/linux.json +21 -0
  524. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/mac.json +21 -0
  525. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.expected/win.json +108 -0
  526. data/vendor/depot_tools/recipes/recipe_modules/windows_sdk/examples/full.py +21 -0
  527. data/vendor/depot_tools/recipes/recipes.py +249 -0
  528. data/vendor/depot_tools/recipes/recipes/fetch_end_to_end_test.expected/basic.json +175 -0
  529. data/vendor/depot_tools/recipes/recipes/fetch_end_to_end_test.py +56 -0
  530. data/vendor/depot_tools/recipes/trigger_recipe_roller.txt +13 -0
  531. data/vendor/depot_tools/repo +1194 -0
  532. data/vendor/depot_tools/roll-dep +21 -0
  533. data/vendor/depot_tools/roll-dep.bat +21 -0
  534. data/vendor/depot_tools/roll_dep.py +282 -0
  535. data/vendor/depot_tools/scm.py +415 -0
  536. data/vendor/depot_tools/setup_color.py +130 -0
  537. data/vendor/depot_tools/split_cl.py +263 -0
  538. data/vendor/depot_tools/subcommand.py +261 -0
  539. data/vendor/depot_tools/subprocess2.py +258 -0
  540. data/vendor/depot_tools/third_party/__init__.py +5 -0
  541. data/vendor/depot_tools/third_party/colorama/LICENSE.txt +27 -0
  542. data/vendor/depot_tools/third_party/colorama/README.chromium +12 -0
  543. data/vendor/depot_tools/third_party/colorama/README.rst +346 -0
  544. data/vendor/depot_tools/third_party/colorama/__init__.py +6 -0
  545. data/vendor/depot_tools/third_party/colorama/ansi.py +102 -0
  546. data/vendor/depot_tools/third_party/colorama/ansitowin32.py +257 -0
  547. data/vendor/depot_tools/third_party/colorama/initialise.py +80 -0
  548. data/vendor/depot_tools/third_party/colorama/win32.py +152 -0
  549. data/vendor/depot_tools/third_party/colorama/winterm.py +169 -0
  550. data/vendor/depot_tools/third_party/coverage/AUTHORS.txt +43 -0
  551. data/vendor/depot_tools/third_party/coverage/PKG-INFO +41 -0
  552. data/vendor/depot_tools/third_party/coverage/README.chromium +13 -0
  553. data/vendor/depot_tools/third_party/coverage/__init__.py +120 -0
  554. data/vendor/depot_tools/third_party/coverage/__main__.py +4 -0
  555. data/vendor/depot_tools/third_party/coverage/annotate.py +101 -0
  556. data/vendor/depot_tools/third_party/coverage/backward.py +184 -0
  557. data/vendor/depot_tools/third_party/coverage/bytecode.py +75 -0
  558. data/vendor/depot_tools/third_party/coverage/cmdline.py +740 -0
  559. data/vendor/depot_tools/third_party/coverage/codeunit.py +145 -0
  560. data/vendor/depot_tools/third_party/coverage/collector.py +353 -0
  561. data/vendor/depot_tools/third_party/coverage/config.py +213 -0
  562. data/vendor/depot_tools/third_party/coverage/control.py +776 -0
  563. data/vendor/depot_tools/third_party/coverage/data.py +278 -0
  564. data/vendor/depot_tools/third_party/coverage/debug.py +54 -0
  565. data/vendor/depot_tools/third_party/coverage/execfile.py +171 -0
  566. data/vendor/depot_tools/third_party/coverage/files.py +309 -0
  567. data/vendor/depot_tools/third_party/coverage/fullcoverage/encodings.py +57 -0
  568. data/vendor/depot_tools/third_party/coverage/html.py +387 -0
  569. data/vendor/depot_tools/third_party/coverage/htmlfiles/coverage_html.js +376 -0
  570. data/vendor/depot_tools/third_party/coverage/htmlfiles/index.html +104 -0
  571. data/vendor/depot_tools/third_party/coverage/htmlfiles/jquery-1.4.3.min.js +166 -0
  572. data/vendor/depot_tools/third_party/coverage/htmlfiles/jquery.hotkeys.js +99 -0
  573. data/vendor/depot_tools/third_party/coverage/htmlfiles/jquery.isonscreen.js +53 -0
  574. data/vendor/depot_tools/third_party/coverage/htmlfiles/jquery.min.js +166 -0
  575. data/vendor/depot_tools/third_party/coverage/htmlfiles/jquery.tablesorter.min.js +2 -0
  576. data/vendor/depot_tools/third_party/coverage/htmlfiles/keybd_closed.png +0 -0
  577. data/vendor/depot_tools/third_party/coverage/htmlfiles/keybd_open.png +0 -0
  578. data/vendor/depot_tools/third_party/coverage/htmlfiles/pyfile.html +90 -0
  579. data/vendor/depot_tools/third_party/coverage/htmlfiles/style.css +300 -0
  580. data/vendor/depot_tools/third_party/coverage/misc.py +163 -0
  581. data/vendor/depot_tools/third_party/coverage/parser.py +666 -0
  582. data/vendor/depot_tools/third_party/coverage/phystokens.py +208 -0
  583. data/vendor/depot_tools/third_party/coverage/report.py +92 -0
  584. data/vendor/depot_tools/third_party/coverage/results.py +286 -0
  585. data/vendor/depot_tools/third_party/coverage/summary.py +86 -0
  586. data/vendor/depot_tools/third_party/coverage/templite.py +166 -0
  587. data/vendor/depot_tools/third_party/coverage/version.py +9 -0
  588. data/vendor/depot_tools/third_party/coverage/xmlreport.py +155 -0
  589. data/vendor/depot_tools/third_party/httplib2/LICENSE +1339 -0
  590. data/vendor/depot_tools/third_party/httplib2/README.chromium +15 -0
  591. data/vendor/depot_tools/third_party/httplib2/__init__.py +1780 -0
  592. data/vendor/depot_tools/third_party/httplib2/cacerts.txt +2196 -0
  593. data/vendor/depot_tools/third_party/httplib2/iri2uri.py +110 -0
  594. data/vendor/depot_tools/third_party/httplib2/socks.py +448 -0
  595. data/vendor/depot_tools/third_party/repo/COPYING +202 -0
  596. data/vendor/depot_tools/third_party/repo/README.chromium +4 -0
  597. data/vendor/depot_tools/third_party/repo/__init__.py +0 -0
  598. data/vendor/depot_tools/third_party/repo/progress.py +117 -0
  599. data/vendor/depot_tools/third_party/retry_decorator/LICENSE.google +30 -0
  600. data/vendor/depot_tools/third_party/retry_decorator/__init__.py +0 -0
  601. data/vendor/depot_tools/third_party/retry_decorator/decorators.py +45 -0
  602. data/vendor/depot_tools/third_party/schema/.editorconfig +15 -0
  603. data/vendor/depot_tools/third_party/schema/.gitignore +174 -0
  604. data/vendor/depot_tools/third_party/schema/.travis.yml +37 -0
  605. data/vendor/depot_tools/third_party/schema/LICENSE-MIT +19 -0
  606. data/vendor/depot_tools/third_party/schema/MANIFEST.in +1 -0
  607. data/vendor/depot_tools/third_party/schema/README.chromium +12 -0
  608. data/vendor/depot_tools/third_party/schema/README.rst +382 -0
  609. data/vendor/depot_tools/third_party/schema/__init__.py +1 -0
  610. data/vendor/depot_tools/third_party/schema/schema.py +338 -0
  611. data/vendor/depot_tools/third_party/schema/setup.cfg +5 -0
  612. data/vendor/depot_tools/third_party/schema/setup.py +30 -0
  613. data/vendor/depot_tools/third_party/schema/test_schema.py +556 -0
  614. data/vendor/depot_tools/third_party/schema/tox.ini +33 -0
  615. data/vendor/depot_tools/third_party/six/LICENSE.txt +18 -0
  616. data/vendor/depot_tools/third_party/six/README.chromium +10 -0
  617. data/vendor/depot_tools/third_party/six/__init__.py +762 -0
  618. data/vendor/depot_tools/update_depot_tools +138 -0
  619. data/vendor/depot_tools/update_depot_tools.bat +65 -0
  620. data/vendor/depot_tools/update_depot_tools_toggle.py +38 -0
  621. data/vendor/depot_tools/upload_metrics.py +26 -0
  622. data/vendor/depot_tools/upload_to_google_storage.py +306 -0
  623. data/vendor/depot_tools/vpython +42 -0
  624. data/vendor/depot_tools/vpython.bat +7 -0
  625. data/vendor/depot_tools/vpython3 +55 -0
  626. data/vendor/depot_tools/vpython3.bat +12 -0
  627. data/vendor/depot_tools/watchlists.py +141 -0
  628. data/vendor/depot_tools/weekly +54 -0
  629. data/vendor/depot_tools/win32imports.py +61 -0
  630. data/vendor/depot_tools/win_toolchain/OWNERS +2 -0
  631. data/vendor/depot_tools/win_toolchain/README.md +74 -0
  632. data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +599 -0
  633. data/vendor/depot_tools/win_toolchain/package_from_installed.py +524 -0
  634. data/vendor/depot_tools/wtf +81 -0
  635. data/vendor/depot_tools/yapf +21 -0
  636. data/vendor/depot_tools/yapf.bat +12 -0
  637. data/vendor/depot_tools/zsh-goodies/README +6 -0
  638. data/vendor/depot_tools/zsh-goodies/_gclient +14 -0
  639. metadata +729 -0
@@ -0,0 +1,4 @@
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/
@@ -0,0 +1,5 @@
1
+ git
2
+ asciidoc
3
+ demo_repo
4
+ ansi2html
5
+ __*.txt
@@ -0,0 +1,5 @@
1
+ SUGGESTED ALIASES
2
+ -----------------
3
+
4
+ Some common short-hand aliases. Feel free to add these to your '~/.gitconfig'
5
+ file.
@@ -0,0 +1,8 @@
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:
@@ -0,0 +1 @@
1
+ Interact with code reviews on Gerrit and Rietveld
@@ -0,0 +1,2 @@
1
+ Apply a commit from the trunk to a release branch, or from one release branch to
2
+ another.
@@ -0,0 +1 @@
1
+ Extract meta-information expressed as footers in a commit message.
@@ -0,0 +1 @@
1
+ Freeze all changes on a branch (indexed and unindexed).
@@ -0,0 +1 @@
1
+ Like git blame, but with the ability to ignore or bypass certain commits.
@@ -0,0 +1,4 @@
1
+ Helper script to display all local git branches with ‘upstream’ hierarchy in
2
+ colorized terminal format.
3
+
4
+ // vim: ft=asciidoc:
@@ -0,0 +1,3 @@
1
+ Display history of all branches in a colorized terminal format.
2
+
3
+ // vim: ft=asciidoc:
@@ -0,0 +1 @@
1
+ Manually interact with depot_tools' merge-base markers.
@@ -0,0 +1 @@
1
+ Checkout a downstream branch of the currently checked out branch.
@@ -0,0 +1 @@
1
+ Checkout the upstream branch of the currently checked out branch.
@@ -0,0 +1 @@
1
+ Create a new branch with correct tracking information.
@@ -0,0 +1 @@
1
+ Updates all branches to have the latest changes from their upstreams.
@@ -0,0 +1 @@
1
+ Rename a branch and correctly preserve all downstream relationships.
@@ -0,0 +1 @@
1
+ Alter the parentage (upstream) for the current branch.
@@ -0,0 +1,2 @@
1
+ Bootstrap function to retry a git command.
2
+
@@ -0,0 +1 @@
1
+ Takes all commits in a single branch and replaces them with a single commit.
@@ -0,0 +1,2 @@
1
+ Un-freeze all changes on a frozen branch.
2
+
@@ -0,0 +1 @@
1
+ Print a diff of the current branch, compared to its upstream.
@@ -0,0 +1 @@
1
+ A tutorial for these tools can be found at linkgit:depot_tools_tutorial[7].
@@ -0,0 +1,7 @@
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
+ }
@@ -0,0 +1,84 @@
1
+ #!/usr/bin/env bash
2
+
3
+ REMOTE=$(pwd)/demo_repo
4
+
5
+ unset GIT_DIR
6
+
7
+ # Helper functions
8
+ set_user() {
9
+ export GIT_AUTHOR_EMAIL="$1@chromium.org"
10
+ export GIT_AUTHOR_NAME="$1"
11
+ export GIT_COMMITTER_EMAIL="$1@chromium.org"
12
+ export GIT_COMMITTER_NAME="$1"
13
+ }
14
+ set_user 'local'
15
+
16
+
17
+ # increment time by X seconds
18
+ TIME=1397119976
19
+ tick() {
20
+ TIME=$[$TIME + $1]
21
+ export GIT_COMMITTER_DATE="$TIME +0000"
22
+ export GIT_AUTHOR_DATE="$TIME +0000"
23
+ }
24
+ tick 0
25
+
26
+ # a commit
27
+ c() {
28
+ silent git commit --allow-empty -m "$1"
29
+ tick 10
30
+ }
31
+
32
+ praw() {
33
+ echo -e "\x1B[37;1m$ $@\x1B[m"
34
+ }
35
+
36
+ # print a visible command (but don't run it)
37
+ pcommand() {
38
+ praw "$(python -c '\
39
+ import sys, pipes; \
40
+ print(" ".join(map(pipes.quote, sys.argv[1:])))' "$@")"
41
+ }
42
+
43
+ # run a visible command
44
+ run() {
45
+ pcommand "$@"
46
+ "$@"
47
+ }
48
+
49
+ comment() {
50
+ echo "###COMMENT### $@"
51
+ }
52
+
53
+ # run a command and print its output without printing the command itself
54
+ output() {
55
+ "$@"
56
+ }
57
+
58
+ # run a silent command
59
+ silent() {
60
+ if [[ $DEBUG ]]
61
+ then
62
+ "$@"
63
+ else
64
+ "$@" > /dev/null 2> /dev/null
65
+ fi
66
+ }
67
+
68
+ # add a file with optionally content
69
+ add() {
70
+ local CONTENT=$2
71
+ if [[ ! $CONTENT ]]
72
+ then
73
+ CONTENT=$(python -c 'import random, string; \
74
+ print("".join(random.sample(string.lowercase, 16)))')
75
+ fi
76
+ echo "$CONTENT" > $1
77
+ silent git add $1
78
+ }
79
+
80
+ # Add a special callout marker at the given line offset to indicate to
81
+ # filter_demo_output.py to add a callout at that offset.
82
+ callout() {
83
+ echo -e "\x1b[${1}c"
84
+ }
@@ -0,0 +1,43 @@
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
+
@@ -0,0 +1,28 @@
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:
@@ -0,0 +1,155 @@
1
+ #!/usr/bin/env bash
2
+ BLANK_DEMO=1
3
+ . demo_repo.sh
4
+
5
+ trunc() {
6
+ echo ... truncated output ...
7
+ }
8
+
9
+ trunc_command() {
10
+ pcommand "$@"
11
+ trunc
12
+ }
13
+
14
+ WS=build/whitespace_file.txt
15
+ add_ws() {
16
+ praw cat '>>' $WS '<<EOF'
17
+ echo -e "$1"
18
+ echo EOF
19
+ echo -e "$1" >> $WS
20
+ }
21
+
22
+ ed_ws() {
23
+ echo -ne "\x1B[37;1m$ echo -e "
24
+ echo -n "'$1'"
25
+ echo -e " | ed $WS\x1B[m"
26
+ echo -e "$1" | ed $WS 2>&1
27
+ }
28
+
29
+ # needs an extra echo afterwards
30
+ map() {
31
+ run git map
32
+ echo
33
+ }
34
+
35
+ ED1='/Banana\ns/Banana/Kuun\nwq'
36
+
37
+ ADD1="
38
+ \"You recall what happened on Mulholland drive?\" The ceiling fan rotated slowly
39
+ overhead, barely disturbing the thick cigarette smoke. No doubt was left about
40
+ when the fan was last cleaned."
41
+
42
+ ED2='/Kuun\ns/Kuun/Kun\nwq'
43
+
44
+ ADD2="
45
+ There was an poignant pause."
46
+
47
+ ADD3="
48
+ CHAPTER 3:
49
+ Mr. Usagi felt that something wasn't right. Shortly after the Domo-Kun left he
50
+ began feeling sick."
51
+
52
+ trunc_command fetch chromium
53
+ pcommand cd src
54
+
55
+ comment "(only on linux)"
56
+ trunc_command ./build/install-build-deps.sh
57
+
58
+ comment "Pull in all dependencies for HEAD"
59
+ trunc_command gclient sync
60
+
61
+ comment "Let's fix something!"
62
+ run git new-branch fix_typo
63
+ ed_ws "$ED1"
64
+ run git commit -am 'Fix terrible typo.'
65
+ map
66
+ run git status
67
+ trunc_command git cl upload -r domo@chromium.org --send-mail
68
+
69
+ comment "While we wait for feedback, let's do something else."
70
+ run git new-branch chap2
71
+ run git map-branches
72
+ add_ws "$ADD1"
73
+ run git status
74
+
75
+ comment "Someone on the code review pointed out that our typo-fix has a typo :("
76
+ comment "We're still working on 'chap2' but we really want to land"
77
+ comment "'fix_typo', so let's switch over and fix it."
78
+ run git freeze
79
+ run git checkout fix_typo 2>&1
80
+ ed_ws "$ED2"
81
+ run git upstream-diff --wordwise
82
+ run git commit -am 'Fix typo for good!'
83
+ trunc_command git cl upload
84
+
85
+ comment "Since we got lgtm, let the CQ land it."
86
+ pcommand git cl set_commit
87
+ map
88
+
89
+ comment "Switch back to where we were using the nav* commands (for fun..."
90
+ comment "git checkout would work here too)"
91
+ run git map-branches
92
+ run git nav-upstream 2>&1
93
+ pcommand git nav-downstream
94
+ git nav-downstream --pick 0 2>&1
95
+ run git map-branches
96
+
97
+ comment "Now we can pick up on chapter2 where we left off."
98
+ run git thaw
99
+ run git diff
100
+ add_ws "$ADD2"
101
+ run git diff
102
+ run git commit -am 'Finish chapter 2'
103
+ map
104
+ trunc_command git cl upload -r domo@chromium.org --send-mail
105
+
106
+ comment "We poke a committer until they lgtm :)"
107
+ pcommand git cl set_commit
108
+
109
+ comment "While that runs through the CQ, let's get started on chapter 3."
110
+ comment "Since we know that chapter 3 depends on chapter 2, we'll track the"
111
+ comment "current chapter2 branch."
112
+ run git new-branch --upstream_current chap3
113
+ add_ws "$ADD3"
114
+ run git commit -am 'beginning of chapter 3'
115
+ map
116
+
117
+ comment "We haven't updated the code in a while, so let's do that now."
118
+ pcommand git rebase-update
119
+ echo Fetching origin
120
+ git fetch origin 2>&1 | grep -v 'stage' | sed 's+From.*+From https://upstream+'
121
+ silent git update-ref refs/remotes/origin/master stage_2
122
+ silent git tag -d $(git tag -l 'stage_*')
123
+ git rebase-update --no-fetch
124
+
125
+ comment "Well look at that. The CQ landed our typo and chapter2 branches "
126
+ comment "already and git rebase-update cleaned them up for us."
127
+ trunc_command gclient sync
128
+ map
129
+
130
+ comment "Someone on IRC mentions that they actually landed a chapter 3 already!"
131
+ comment "We should pull their changes before continuing. Brace for"
132
+ comment "a code conflict!"
133
+ pcommand git rebase-update
134
+ echo Fetching origin
135
+ git fetch origin 2>&1 | grep -v 'stage' | sed 's+From.*+From https://upstream+'
136
+ silent git tag -d $(git tag -l 'stage_*')
137
+ echo Rebasing: chap2
138
+ silent git rebase-update
139
+ echo ... lots of output, it\'s a conflict alright :\(...
140
+ run git diff
141
+
142
+ comment "Oh, well, that's not too bad. In fact... that's a terrible chapter 3!"
143
+ praw \$EDITOR "$WS"
144
+ echo "... /me deletes bad chapter 3 ..."
145
+ silent git checkout --theirs -- "$WS"
146
+ run git add "$WS"
147
+ run git diff --cached
148
+
149
+ comment "Much better"
150
+ run git rebase --continue
151
+ run git rebase-update
152
+ silent git tag -d $(git tag -l 'stage_*')
153
+ trunc_command gclient sync
154
+ map
155
+ trunc_command git cl upload
@@ -0,0 +1,432 @@
1
+ depot_tools_tutorial(7)
2
+ =======================
3
+
4
+ NAME
5
+ ----
6
+ depot_tools_tutorial - A tutorial introduction to the Chromium depot_tools git
7
+ extensions.
8
+
9
+ DESCRIPTION
10
+ -----------
11
+
12
+ The Chromium linkgit:depot_tools[7] suite contains many git workflow-enhancing
13
+ tools which are designed to work together to enable anyone to wrangle the
14
+ Chromium codebase expertly. This tutorial explains how to do development on
15
+ Chromium using these tools. This will cover:
16
+
17
+ * <<_setting_up,Setting up>>
18
+ * <<_getting_the_code,Getting the code>>
19
+ * <<_tl_dr,TL;DR>>
20
+ * <<_creating_uploading_a_cl,Creating / Uploading a CL>>
21
+ * <<_updating_the_code,Updating the code>>
22
+ * <<_managing_multiple_cls,Managing multiple CLs>>
23
+ * <<_managing_dependent_cls,Managing dependent CLs>>
24
+ * <<_example_walkthrough,Example Walkthrough>>
25
+
26
+ Please refer to the manpages (or `--help` output) for details about any of the
27
+ commands mentioned in this tutorial.
28
+
29
+ [NOTE]
30
+ If your platform does not support manpages (or you prefer something a bit more
31
+ expressive than plain text) you can find all documentation in 'html' form in the
32
+ `[DEPOT_TOOLS]/man/html` folder.
33
+
34
+ PREREQUISITES
35
+ ~~~~~~~~~~~~~
36
+ This tutorial assumes basic familiarity with git terminology and concepts. If you
37
+ need to brush up on these, the following are very good resources:
38
+
39
+ * link:http://think-like-a-git.net/[Think like (a) Git] - A lighthearted
40
+ overview of git. If you're sorta-familiar with git, but not 'comfortable' with
41
+ it, then give this a look.
42
+ * link:http://gitimmersion.com/[Git Immersion Tutorial] - An in-depth git
43
+ tutorial.
44
+ * link:http://pcottle.github.io/learnGitBranching[pcottle's Visual Git
45
+ Branching] - An excellent interactive/graphical demo on how git handles
46
+ commits, branches, and shows the operations git performs on them.
47
+ * link:http://git-scm.com/book[Pro Git book] - ``The'' book for learning git
48
+ from basics to advanced concepts. A bit dry, but very through.
49
+
50
+ If you've tried these out and are still having some trouble getting started,
51
+ there are 'many' other resources online which should help. If you're 'really'
52
+ **'really'** stuck, then chat up one of the Chromium infrastructure team
53
+ members for some pointers.
54
+
55
+ Litmus Test::
56
+ If you know what `git add`, `git status`, `git commit` do and you know
57
+ 'essentially' what `git rebase` does, then you should know enough to follow
58
+ along.
59
+
60
+ SETTING UP
61
+ ----------
62
+
63
+ GET DEPOT TOOLS
64
+ ~~~~~~~~~~~~~~~
65
+
66
+ ifdef::backend-xhtml11[]
67
+ LINUX / MAC
68
+ ^^^^^^^^^^^
69
+ endif::backend-xhtml11[]
70
+ Clone the 'depot_tools' repository:
71
+
72
+ [subs="quotes"]
73
+ ----
74
+ [white]**$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git**
75
+ ----
76
+
77
+ Add 'depot_tools' to the 'front' of your PATH (you will probably want to put this
78
+ in your `~/.bashrc` or `~/.zshrc`). Assuming you cloned 'depot_tools' to
79
+ `/path/to/depot_tools`:
80
+
81
+ [postsubs="quotes"]
82
+ ----
83
+ [white]**$ export PATH=/path/to/depot_tools:$PATH**
84
+ ----
85
+
86
+ // No need to show the Windows stuff on the manpage output.
87
+ ifdef::backend-xhtml11[]
88
+ WINDOWS
89
+ ^^^^^^^
90
+ Download the 'depot_tools'
91
+ link:https://storage.googleapis.com/chrome-infra/depot_tools.zip[bundle] and
92
+ extract it somewhere.
93
+
94
+ [WARNING]
95
+ *DO NOT* use drag-n-drop or copy-n-paste extract from Explorer, this will not
96
+ extract the hidden ``.git'' folder which is necessary for 'depot_tools' to
97
+ autoupdate itself. You can use ``Extract all...'' from the context menu though.
98
+
99
+ Add 'depot_tools' to the 'front' of your PATH (must be ahead of any installs of
100
+ Python). Assuming you unzipped the bundle to `C:\workspace\depot_tools`:
101
+
102
+ With Administrator access: ::
103
+ *Control Panel -> System and Security -> System -> Advanced system settings*
104
+ +
105
+ Modify the PATH system variable to include `C:\workspace\depot_tools`.
106
+
107
+ Without Administrator access: ::
108
+ *Control Panel -> User Accounts -> User Accounts -> Change my environment variables*
109
+ +
110
+ Add a PATH user variable: `C:\workspace\depot_tools;%PATH%`.
111
+
112
+ From a `cmd.exe` shell, run the command `gclient` (without arguments). On first
113
+ run, gclient will install all the Windows-specific bits needed to work with the
114
+ code, including msysgit and python.
115
+
116
+ [NOTE]
117
+ =====
118
+ * If you run gclient from a non-cmd shell (e.g., cygwin, PowerShell), it
119
+ may appear to run properly, but msysgit, python, and other tools may not get
120
+ installed correctly.
121
+ * If you see strange errors with the file system on the first run of gclient,
122
+ you may want to link:http://tortoisesvn.tigris.org/faq.html#cantmove2[disable
123
+ Windows Indexing].
124
+ * After running gclient open a command prompt and type `where python` and confirm that
125
+ the depot_tools python.bat comes ahead of any copies of python.exe. Failing to ensure
126
+ this can lead to overbuilding when using gn - see
127
+ link:https://bugs.chromium.org/p/chromium/issues/detail?id=611087[crbug.com/611087].
128
+ =====
129
+ endif::backend-xhtml11[]
130
+
131
+ BOOTSTRAPPING CONFIGURATION
132
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
133
+ If you have never used git before, you’ll need to set some global git
134
+ configurations; substitute your name and email address in the following
135
+ commands:
136
+
137
+ [subs="quotes,attributes"]
138
+ ----
139
+ [white]**$ git config --global user.name "John Doe"**
140
+ [white]**$ git config --global user.email "jdoe@email.com"**
141
+ [white]**$ git config --global core.autocrlf false**
142
+ [white]**$ git config --global core.filemode false**
143
+ [white]**$** # and for fun!
144
+ [white]**$ git config --global color.ui true**
145
+ ----
146
+
147
+ TL;DR
148
+ -----
149
+ [postsubs="quotes"]
150
+ ----
151
+ [white]**$** # get the code
152
+ [white]**$** # In an empty directory:
153
+ [white]**$ fetch {chromium,...}**
154
+
155
+ [white]**$** # Update third_party repos and run pre-compile hooks
156
+ [white]**$ gclient sync**
157
+
158
+ [white]**$** # Make a new change and upload it for review
159
+ [white]**$ git new-branch <branch_name>**
160
+ [white]**$** # repeat: [edit, git add, git commit]
161
+ [white]**$ git cl upload**
162
+
163
+ [white]**$** # After change is reviewed, commit with the CQ
164
+ [white]**$ git cl set_commit**
165
+ [white]**$** # Note that the committed hash which lands will /not/ match the
166
+ [white]**$** # commit hashes of your local branch.
167
+ ----
168
+
169
+
170
+ GETTING THE CODE
171
+ ----------------
172
+ Pick an empty directory and run one of the following:
173
+
174
+ [subs="quotes"]
175
+ ----
176
+ [white]**$ fetch chromium** # Basic checkout for desktop Chromium
177
+ [white]**$ fetch android** # Chromium checkout for Android platform
178
+ [white]**$ fetch ios** # Chromium checkout for iOS platform
179
+ ----
180
+
181
+ When the `fetch` tool completes you should have the following in your working
182
+ directory:
183
+
184
+ [subs="quotes"]
185
+ ----
186
+ [white]**.gclient** # A configuration file for you source checkout
187
+ [white]**src/** # Top-level Chromium source checkout.
188
+ ----
189
+
190
+ If you are on linux and fetching the code for the first time, then you'll need
191
+ to run:
192
+
193
+ [subs="specialcharacters,quotes"]
194
+ ----
195
+ [white]**$ cd src && ./build/install-build-deps.sh**
196
+ ----
197
+
198
+ And finally:
199
+
200
+ [postsubs="quotes"]
201
+ ----
202
+ [white]**$ gclient sync**
203
+ ----
204
+
205
+ This will pull all dependencies of the Chromium src checkout. You will need
206
+ to run this any time you update the main src checkout, including when you
207
+ switch branches.
208
+
209
+
210
+ CREATING / UPLOADING A CL
211
+ -------------------------
212
+ NOTE: The remainder of the tutorial assumes that your current working directory
213
+ is the `src/` folder mentioned in <<_getting_the_code,Getting the code>>.
214
+
215
+ Each CL corresponds exactly with a single branch in git. Any time you want to
216
+ begin a new CL:
217
+
218
+ [subs="specialcharacters,quotes"]
219
+ ----
220
+ [white]**$ git new-branch <branch_name>**
221
+ ----
222
+
223
+ This will create and checkout a new branch named `branch_name` which will track
224
+ the default upstream branch (`origin/master`). See
225
+ linkgit:git-new-branch[1] for more features.
226
+
227
+ Commit as many changes as you like to this branch. When you want to upload it
228
+ for review, run:
229
+
230
+ [subs="quotes"]
231
+ ----
232
+ [white]**$ git cl upload**
233
+ ----
234
+
235
+ This will take the diff of your branch against its upstream branch (in that
236
+ case origin/master), and will post it to the
237
+ link:https://codereview.chromium.org[Chromium code review site].
238
+
239
+
240
+ UPDATING THE CODE
241
+ -----------------
242
+ Inevitably, you'll want to pull in changes from the main Chromium repo. This is
243
+ pretty easy with 'depot_tools':
244
+
245
+ [subs="quotes"]
246
+ ----
247
+ [white]**$ git rebase-update**
248
+ ----
249
+
250
+ This command will update all of your CLs to contain the latest code from their
251
+ upstreams. It will also automatically clean up CLs which have been committed and
252
+ a couple other nice things. See linkgit:git-rebase-update[1] for the full
253
+ scoop.
254
+
255
+ One thing to look out for are 'merge conflicts'. These happen for exactly the
256
+ same as they do with SVN, but the experience is a little more controllable with
257
+ git. `git rebase-update` will try to rebase all your branches for you, but if it
258
+ encounters a merge conflict in one, it will halt and leave you in a rebase
259
+ conflict state (see linkgit:git-rebase[1]). Resolving `git rebase` merge
260
+ conflicts is beyond the scope of this tutorial, but there are many good sources
261
+ online (see the <<_prerequisites,Prerequisites>> for some).
262
+
263
+ Sometimes you're pretty certain that you've committed a certain branch, but `git
264
+ rebase-update` isn't able to tell that for sure. This is usually because your
265
+ branch doesn't rebase cleanly. You could just delete the branch with `git branch
266
+ -D <branch>`, but you'd like to double check the diff of your branch against its
267
+ upstream before deleting it. If this is the case you can abort the rebase
268
+ started by `git rebase-update`, and then run linkgit:git-squash-branch[1] to
269
+ flatten your branch into a single commit. When you run `git rebase-update`
270
+ again, you'll get a (hopefully) much smaller / saner diff. If it turns out you
271
+ were wrong about your branch being fully committed, you can use
272
+ linkgit:git-reflog[1] to reset your branch back to where it was before. If the
273
+ diff looks inconsequential, you can use `git rebase --skip` to ignore it, and
274
+ then `git rebase-update` will clean it up for you.
275
+
276
+ Once you're done resolving all of the merge conflict, just run `git
277
+ rebase-update`, and it will pick up where it left off. Once the command has
278
+ finished updating all of your branches, it will return you back to the branch
279
+ you started on.
280
+
281
+ [NOTE]
282
+ Running `git rebase-update` will update all your branches, but it will not
283
+ automatically run `gclient sync` to update your dependencies.
284
+
285
+
286
+ MANAGING MULTIPLE CLS
287
+ ---------------------
288
+ Sometimes you want to work on more than one CL at once (say, you have a CL
289
+ posted for review and want to work on something else). For each CL that you
290
+ want to work on, just use `git new-branch <branch_name>`.
291
+
292
+ Once you start to have more than one CL at a time, it can be easy to lose your
293
+ bearings. Fortunately, 'depot_tools' has two tools to help you out:
294
+
295
+ [subs="specialcharacters,quotes,attributes"]
296
+ ----
297
+ [white]**$ git map**
298
+ [white blue-background]##*##{zwsp}[blue-background red]** 7dcfe47 ** [green]##(##{zwsp}[aqua]**frozen_changes**{zwsp}[green]##)## [yellow]##2014-03-12## \~ FREEZE.unindexed
299
+ * [red]**4b0c180** [yellow]##2014-03-12## \~ modfile
300
+ * [red]**59a7cca** [yellow]##2014-03-12## \~ a deleted file
301
+ * [red]**6bec695** [green]##(##{zwsp}[red]##origin/master##{zwsp}[green]##)## [yellow]##2014-03-11## \~ Add neat feature [white]**<(frozen_changes)**
302
+ * [red]**d15a38a** [yellow]##2014-03-11## \~ Epic README update
303
+ * [red]**d559894** [green]##(##{zwsp}[lime]**master**{zwsp}[green]##)## [yellow]##2014-03-11## \~ Important upstream change
304
+ [red]##|## * [red]**9c311fd** [green]##(##{zwsp}[lime]**cool_feature**{zwsp}[green]##)## [yellow]##2014-03-11## \~ Respond to CL comments
305
+ [red]##|## [green]##|## * [red]**2a1eeb2** [green]##(##{zwsp}[lime]**subfeature**{zwsp}[green]##)## [yellow]##2014-03-11## \~ integrate with CoolService
306
+ [red]##|## [green]##|## * [red]**d777af6** [yellow]##2014-03-11## \~ slick commenting action
307
+ [red]##|## [green]##|/##
308
+ [red]##|## * [red]**265803a** [yellow]##2014-03-11## \~ another improvement [white]**<(subfeature)**
309
+ [red]##|## * [red]**6d831ac** [green]##(##{zwsp}[fuchsia]**spleen_tag**{zwsp}[green]##)## [yellow]##2014-03-11## \~ Refactor spleen
310
+ [red]##|## * [red]**82e74ab** [yellow]##2014-03-11## \~ Add widget
311
+ [red]##|/##
312
+ * [red]**d08c5b3** [green]##(##{zwsp}[lime]**bogus_noparent**{zwsp}[green]##)## [yellow]##2014-03-11## ~ Wonderful beginnings [white]**<(cool_feature)**
313
+ ----
314
+ Note that this example repo is in dire need of a linkgit:git-rebase-update[1]!
315
+
316
+ [subs="quotes"]
317
+ ----
318
+ [white]**$ git map-branches**
319
+ [red]#origin/master#
320
+ [green]#cool_feature#
321
+ [green]#subfeature#
322
+ [aqua]#frozen_changes *#
323
+ [green]#master#
324
+ ----
325
+
326
+ linkgit:git-map[1]::
327
+ This tool shows you the history of all of your branches in a pseudo-graphical
328
+ format. In particular, it will show you which commits all of your branches
329
+ are on, which commit you currently have checked out, and more. Check out the
330
+ doc for the full details.
331
+
332
+ linkgit:git-map-branches[1]::
333
+ This tool just shows you which branches you have in your repo, and their
334
+ upstream relationship to each other (as well as which branch you have checked
335
+ out at the moment).
336
+
337
+ Additionally, sometimes you need to switch between branches, but you've got work
338
+ in progress. You could use linkgit:git-stash[1], but that can be tricky to
339
+ manage because you need to remember which branches you stashed what changes on.
340
+ Helpfully 'depot_tools' includes two tools which can greatly assist in case:
341
+
342
+ linkgit:git-freeze[1] allows you to put the current branch in \'suspended
343
+ animation' by committing your changes to a specially-named commit on the top of
344
+ your current branch. When you come back to your branch later, you can just run
345
+ linkgit:git-thaw[1] to get your work-in-progress changes back to what they were.
346
+
347
+ Another useful tool is linkgit:git-rename-branch[1]. Unlike `git branch -m <old>
348
+ <new>`, this tool will correctly preserve the upstream relationships of your
349
+ branch compared to its downstreams.
350
+
351
+ Finally, take a look at linkgit:git-upstream-diff[1]. This will show you the
352
+ combined diff for all the commits on your branch against the upstream tracking
353
+ branch. This is 'exactly' what `git cl upload` will push up to code review.
354
+ Additionally, consider trying the `--wordwise` argument to get a colorized
355
+ per-word diff (instead of a per-line diff).
356
+
357
+ MANAGING DEPENDENT CLS
358
+ ----------------------
359
+ Now that you know how to manage 'independent' CLs, we'll see how to manage
360
+ 'dependent' CLs. Dependent CLs are useful when your second (or third or fourth
361
+ or ...) CL depends on the changes in one of your other CLs (such as: CL 2 won't
362
+ compile without CL 1, but you want to submit them as two separate reviews).
363
+
364
+ Like all of the other CLs we've created, we use linkgit:git-new-branch[1], but
365
+ this time with an extra argument. First, `git checkout` the branch
366
+ you want to base the new one on (i.e. CL 1), and then run:
367
+
368
+ [subs="specialcharacters,quotes"]
369
+ ----
370
+ [white]**$ git new-branch --upstream_current <branch_name>**
371
+ ----
372
+
373
+ This will make a new branch which tracks the 'current' branch as its upstream
374
+ (as opposed to 'origin/master'). All changes you commit to this branch will be
375
+ in addition to the previous branch, but when you `git cl upload`, you will only
376
+ upload the diff for the dependent (child) branch. You may have as many branches
377
+ nested in this fashion as you like.
378
+
379
+ linkgit:git-map[1] and linkgit:git-map-branches[1] are particularly helpful when
380
+ you have dependent branches. In addition, there are two helper commands which
381
+ let you traverse your working copy up and down this tree of branches:
382
+ linkgit:git-nav-upstream[1] and linkgit:git-nav-downstream[1].
383
+
384
+ Sometimes when dealing with dependent CLs, it turns out that you accidentally
385
+ based a branch on the wrong upstream, but since then you've committed changes to
386
+ it, or even based 'another' branch off of that one. Or you discover that you
387
+ have two independent CLs that would actually be much better off as dependent
388
+ CLs. In instances like these, you can check out the offending branch and use
389
+ linkgit:git-reparent-branch[1] to move it to track a different parent. Note that
390
+ this can also be used to move a branch from tracking `origin/master` to `lkgr`
391
+ or vice versa.
392
+
393
+
394
+ EXAMPLE WALKTHROUGH
395
+ -------------------
396
+ This section will demo what a typical workflow looks like when writing,
397
+ updating, and committing multiple CLs.
398
+
399
+ demo:walkthrough[]
400
+
401
+ So there you have the basic flow. Note that you don't 'have' to do chromium
402
+ development using these tools. Any git workflow is compatible, as long as
403
+ `git cl upload` is able to upload good patches.
404
+
405
+
406
+ CONCLUSION
407
+ ----------
408
+ Hopefully that gives you a good starting overview on Chromium development using
409
+ 'depot_tools'. If you have questions which weren't answered by this tutorial or
410
+ the man pages for the tools (see the index of all tools here:
411
+ linkgit:depot_tools[7]), please feel free to ask.
412
+
413
+
414
+ GLOSSARY
415
+ --------
416
+
417
+ CL::
418
+ A 'change-list'. This is a diff which you would like to commit to the
419
+ codebase.
420
+
421
+ DEPS::
422
+ A file in the chromium checkout which `gclient sync` uses to determine what
423
+ dependencies to pull in. This file also contains 'hooks'.
424
+
425
+ LKGR::
426
+ Last Known Good Revision. This is a linkgit:git-tag[1] which tracks the last
427
+ version of `origin/master` which has passed the full set of testing on the
428
+ link:http://build.chromium.org[main Chromium waterfall].
429
+
430
+ include::_footer.txt[]
431
+
432
+ // vim: ft=asciidoc: