aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/tools/release
diff options
context:
space:
mode:
authorMichaƫl Zasso <targos@protonmail.com>2017-09-12 11:34:59 +0200
committerAnna Henningsen <anna@addaleax.net>2017-09-13 16:15:18 +0200
commitd82e1075dbc2cec2d6598ade10c1f43805f690fd (patch)
treeccd242b9b491dfc341d1099fe11b0ef528839877 /deps/v8/tools/release
parentb4b7ac6ae811b2b5a3082468115dfb5a5246fe3f (diff)
downloadandroid-node-v8-d82e1075dbc2cec2d6598ade10c1f43805f690fd.tar.gz
android-node-v8-d82e1075dbc2cec2d6598ade10c1f43805f690fd.tar.bz2
android-node-v8-d82e1075dbc2cec2d6598ade10c1f43805f690fd.zip
deps: update V8 to 6.1.534.36
PR-URL: https://github.com/nodejs/node/pull/14730 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/tools/release')
-rwxr-xr-xdeps/v8/tools/release/backport_node.py119
-rw-r--r--deps/v8/tools/release/common_includes.py11
-rwxr-xr-xdeps/v8/tools/release/create_release.py34
-rwxr-xr-xdeps/v8/tools/release/filter_build_files.py101
-rw-r--r--deps/v8/tools/release/git_recipes.py7
-rwxr-xr-xdeps/v8/tools/release/merge_to_branch.py8
-rwxr-xr-xdeps/v8/tools/release/push_to_candidates.py20
-rwxr-xr-xdeps/v8/tools/release/test_backport_node.py71
-rwxr-xr-xdeps/v8/tools/release/test_scripts.py24
9 files changed, 332 insertions, 63 deletions
diff --git a/deps/v8/tools/release/backport_node.py b/deps/v8/tools/release/backport_node.py
new file mode 100755
index 0000000000..862da82b1e
--- /dev/null
+++ b/deps/v8/tools/release/backport_node.py
@@ -0,0 +1,119 @@
+#!/usr/bin/env python
+# Copyright 2017 the V8 project authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+"""
+Use this script to cherry-pick a V8 commit to backport to a Node.js checkout.
+
+Requirements:
+ - Node.js checkout to backport to.
+ - V8 checkout that contains the commit to cherry-pick.
+
+Usage:
+ $ backport_node.py <path_to_v8> <path_to_node> <commit-hash>
+
+ This will apply the commit to <path_to_node>/deps/v8 and create a commit in
+ the Node.js checkout, increment patch level, and copy over the original
+ commit message.
+
+Optional flags:
+ --no-review Run `gclient sync` on the V8 checkout before updating.
+"""
+
+import argparse
+import os
+import subprocess
+import re
+import sys
+
+from common_includes import *
+
+TARGET_SUBDIR = os.path.join("deps", "v8")
+VERSION_FILE = os.path.join("include", "v8-version.h")
+VERSION_PATTERN = r'(?<=#define V8_PATCH_LEVEL )\d+'
+
+def Clean(options):
+ print ">> Cleaning target directory."
+ subprocess.check_call(["git", "clean", "-fd"],
+ cwd = os.path.join(options.node_path, TARGET_SUBDIR))
+
+def CherryPick(options):
+ print ">> Apply patch."
+ patch = subprocess.Popen(["git", "diff-tree", "-p", options.commit],
+ stdout=subprocess.PIPE, cwd=options.v8_path)
+ patch.wait()
+ try:
+ subprocess.check_output(["git", "apply", "-3", "--directory=%s" % TARGET_SUBDIR],
+ stdin=patch.stdout, cwd=options.node_path)
+ except:
+ print ">> In another shell, please resolve patch conflicts"
+ print ">> and `git add` affected files."
+ print ">> Finally continue by entering RESOLVED."
+ while raw_input("[RESOLVED]") != "RESOLVED":
+ print ">> You need to type RESOLVED"
+
+def UpdateVersion(options):
+ print ">> Increment patch level."
+ version_file = os.path.join(options.node_path, TARGET_SUBDIR, VERSION_FILE)
+ text = FileToText(version_file)
+ def increment(match):
+ patch = int(match.group(0))
+ return str(patch + 1)
+ text = re.sub(VERSION_PATTERN, increment, text, flags=re.MULTILINE)
+ TextToFile(text, version_file)
+
+def CreateCommit(options):
+ print ">> Creating commit."
+ # Find short hash from source.
+ shorthash = subprocess.check_output(
+ ["git", "rev-parse", "--short", options.commit],
+ cwd=options.v8_path).strip()
+
+ # Commit message
+ title = "deps: backport %s from upstream V8" % shorthash
+ body = subprocess.check_output(
+ ["git", "log", options.commit, "-1", "--format=%B"],
+ cwd=options.v8_path).strip()
+ body = '\n'.join(" " + line for line in body.splitlines())
+
+ message = title + "\n\nOriginal commit message:\n\n" + body
+
+ # Create commit at target.
+ review_message = "" if options.no_review else "-e"
+ git_commands = [
+ ["git", "checkout", "-b", "backport_%s" % shorthash], # new branch
+ ["git", "add", TARGET_SUBDIR], # add files
+ ["git", "commit", "-m", message, review_message] # new commit
+ ]
+ for command in git_commands:
+ subprocess.check_call(command, cwd=options.node_path)
+
+def ParseOptions(args):
+ parser = argparse.ArgumentParser(description="Backport V8 commit to Node.js")
+ parser.add_argument("v8_path", help="Path to V8 checkout")
+ parser.add_argument("node_path", help="Path to Node.js checkout")
+ parser.add_argument("commit", help="Commit to backport")
+ parser.add_argument("--no-review", action="store_true",
+ help="Skip editing commit message")
+ options = parser.parse_args(args)
+ options.v8_path = os.path.abspath(options.v8_path)
+ assert os.path.isdir(options.v8_path)
+ options.node_path = os.path.abspath(options.node_path)
+ assert os.path.isdir(options.node_path)
+ return options
+
+def Main(args):
+ options = ParseOptions(args)
+ Clean(options)
+ try:
+ CherryPick(options)
+ UpdateVersion(options)
+ CreateCommit(options)
+ except:
+ print ">> Failed. Resetting."
+ subprocess.check_output(["git", "reset", "--hard"], cwd=options.node_path)
+ raise
+
+if __name__ == "__main__":
+ Main(sys.argv[1:])
diff --git a/deps/v8/tools/release/common_includes.py b/deps/v8/tools/release/common_includes.py
index 8ef77c25ab..d295e37d64 100644
--- a/deps/v8/tools/release/common_includes.py
+++ b/deps/v8/tools/release/common_includes.py
@@ -395,7 +395,7 @@ class GitInterface(VCInterface):
"git updater is lagging behind?")
self.step.Git("tag %s %s" % (tag, commit))
- self.step.Git("push origin %s" % tag)
+ self.step.Git("push origin refs/tags/%s:refs/tags/%s" % (tag, tag))
def CLLand(self):
self.step.GitCLLand()
@@ -549,7 +549,8 @@ class Step(GitRecipesMixin):
def InitialEnvironmentChecks(self, cwd):
# Cancel if this is not a git checkout.
if not os.path.exists(os.path.join(cwd, ".git")): # pragma: no cover
- self.Die("This is not a git checkout, this script won't work for you.")
+ self.Die("%s is not a git checkout. If you know what you're doing, try "
+ "deleting it and rerunning this script." % cwd)
# Cancel if EDITOR is unset or not executable.
if (self._options.requires_editor and (not os.environ.get("EDITOR") or
@@ -767,7 +768,7 @@ class UploadStep(Step):
reviewer = self.ReadLine()
self.GitUpload(reviewer, self._options.author, self._options.force_upload,
bypass_hooks=self._options.bypass_upload_hooks,
- cc=self._options.cc, use_gerrit=not self._options.rietveld)
+ cc=self._options.cc)
def MakeStep(step_class=Step, number=0, state=None, config=None,
@@ -813,15 +814,13 @@ class ScriptsBase(object):
def MakeOptions(self, args=None):
parser = argparse.ArgumentParser(description=self._Description())
parser.add_argument("-a", "--author", default="",
- help="The author email used for rietveld.")
+ help="The author email used for code review.")
parser.add_argument("--dry-run", default=False, action="store_true",
help="Perform only read-only actions.")
parser.add_argument("--json-output",
help="File to write results summary to.")
parser.add_argument("-r", "--reviewer", default="",
help="The account name to be used for reviews.")
- parser.add_argument("--rietveld", default=False, action="store_true",
- help="Whether to use rietveld instead of gerrit.")
parser.add_argument("-s", "--step",
help="Specify the step where to start work. Default: 0.",
default=0, type=int)
diff --git a/deps/v8/tools/release/create_release.py b/deps/v8/tools/release/create_release.py
index 8c0ad489a1..e5c2114b1a 100755
--- a/deps/v8/tools/release/create_release.py
+++ b/deps/v8/tools/release/create_release.py
@@ -77,24 +77,6 @@ class DetectLastRelease(Step):
class PrepareChangeLog(Step):
MESSAGE = "Prepare raw ChangeLog entry."
- def Reload(self, body):
- """Attempts to reload the commit message from rietveld in order to allow
- late changes to the LOG flag. Note: This is brittle to future changes of
- the web page name or structure.
- """
- match = re.search(r"^Review URL: https://codereview\.chromium\.org/(\d+)$",
- body, flags=re.M)
- if match:
- cl_url = ("https://codereview.chromium.org/%s/description"
- % match.group(1))
- try:
- # Fetch from Rietveld but only retry once with one second delay since
- # there might be many revisions.
- body = self.ReadURL(cl_url, wait_plan=[1])
- except urllib2.URLError: # pragma: no cover
- pass
- return body
-
def RunStep(self):
self["date"] = self.GetDate()
output = "%s: Version %s\n\n" % (self["date"], self["version"])
@@ -107,7 +89,7 @@ class PrepareChangeLog(Step):
commit_messages = [
[
self.GitLog(n=1, format="%s", git_hash=commit),
- self.Reload(self.GitLog(n=1, format="%B", git_hash=commit)),
+ self.GitLog(n=1, format="%B", git_hash=commit),
self.GitLog(n=1, format="%an", git_hash=commit),
] for commit in commits.splitlines()
]
@@ -221,6 +203,7 @@ class CommitBranch(Step):
if not text: # pragma: no cover
self.Die("Commit message editing failed.")
+ text += "\n\nTBR=%s" % self._options.reviewer
self["commit_title"] = text.splitlines()[0]
TextToFile(text, self.Config("COMMITMSG_FILE"))
@@ -229,10 +212,17 @@ class CommitBranch(Step):
os.remove(self.Config("CHANGELOG_ENTRY_FILE"))
-class PushBranch(Step):
- MESSAGE = "Push changes."
+class LandBranch(Step):
+ MESSAGE = "Upload and land changes."
def RunStep(self):
+ if self._options.dry_run:
+ print "Dry run - upload CL."
+ else:
+ self.GitUpload(author=self._options.author,
+ force=True,
+ bypass_hooks=True,
+ private=True)
cmd = "cl land --bypass-hooks -f"
if self._options.dry_run:
print "Dry run. Command:\ngit %s" % cmd
@@ -305,7 +295,7 @@ class CreateRelease(ScriptsBase):
SetVersion,
EnableMergeWatchlist,
CommitBranch,
- PushBranch,
+ LandBranch,
TagRevision,
CleanUp,
]
diff --git a/deps/v8/tools/release/filter_build_files.py b/deps/v8/tools/release/filter_build_files.py
new file mode 100755
index 0000000000..7d3f22138a
--- /dev/null
+++ b/deps/v8/tools/release/filter_build_files.py
@@ -0,0 +1,101 @@
+#!/usr/bin/env python
+# Copyright 2017 the V8 project authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+"""
+Enumerates relevant build files for each platform.
+
+This can be used to filter the build directory before making an official
+archive. The archive should only contain files required for running or
+static linking, e.g. executables, startup files, libraries.
+
+The script is limited to release builds and assumes GN.
+"""
+
+import argparse
+import glob
+import itertools
+import json
+import os
+import re
+import sys
+
+EXECUTABLE_FILES = [
+ 'd8',
+]
+
+SUPPLEMENTARY_FILES = [
+ 'icudtl.dat',
+ 'natives_blob.bin',
+ 'snapshot_blob.bin',
+ 'v8_build_config.json',
+]
+
+LIBRARY_FILES = {
+ 'android': ['*.a', '*.so'],
+ 'linux': ['*.a', '*.so'],
+ 'mac': ['*.a', '*.so'],
+ 'win': ['*.lib', '*.dll'],
+}
+
+
+def main(argv):
+ parser = argparse.ArgumentParser(description=__doc__)
+
+ parser.add_argument('-d', '--dir', required=True,
+ help='Path to the build directory.')
+ parser.add_argument('-p', '--platform', required=True,
+ help='Target platform name: win|mac|linux.')
+ parser.add_argument('-o', '--json-output', required=True,
+ help='Path to an output file. The files will '
+ 'be stored in json list with absolute paths.')
+ parser.add_argument('-t', '--type',
+ choices=['all', 'exe', 'lib'], default='all',
+ help='Specifies the archive type.')
+ args = parser.parse_args()
+
+ if not os.path.isdir(args.dir):
+ parser.error('%s is not an existing directory.' % args.dir)
+
+ args.dir = os.path.abspath(args.dir)
+
+ # Skip libraries for exe archive type.
+ if args.type == 'exe':
+ library_files = []
+ else:
+ library_files = LIBRARY_FILES[args.platform]
+
+ # Skip executables for lib archive type.
+ if args.type == 'lib':
+ executable_files = []
+ else:
+ executable_files = EXECUTABLE_FILES
+
+ list_of_files = []
+ def add_files_from_globs(globs):
+ list_of_files.extend(itertools.chain(*map(glob.iglob, globs)))
+
+ # Add toplevel executables, supplementary files and libraries.
+ extended_executable_files = [
+ f + '.exe' if args.platform == 'win' else f
+ for f in executable_files]
+ add_files_from_globs(
+ os.path.join(args.dir, f)
+ for f in extended_executable_files +
+ SUPPLEMENTARY_FILES +
+ library_files
+ )
+
+ # Add libraries recursively from obj directory.
+ for root, _, __ in os.walk(os.path.join(args.dir, 'obj'), followlinks=True):
+ add_files_from_globs(os.path.join(root, g) for g in library_files)
+
+ with open(args.json_output, 'w') as f:
+ json.dump(list_of_files, f)
+
+ return 0
+
+
+if __name__ == '__main__':
+ sys.exit(main(sys.argv))
diff --git a/deps/v8/tools/release/git_recipes.py b/deps/v8/tools/release/git_recipes.py
index ce65b973ac..d831aa3a20 100644
--- a/deps/v8/tools/release/git_recipes.py
+++ b/deps/v8/tools/release/git_recipes.py
@@ -206,7 +206,7 @@ class GitRecipesMixin(object):
self.Git(MakeArgs(args), **kwargs)
def GitUpload(self, reviewer="", author="", force=False, cq=False,
- bypass_hooks=False, cc="", use_gerrit=False, **kwargs):
+ bypass_hooks=False, cc="", private=False, **kwargs):
args = ["cl upload --send-mail"]
if author:
args += ["--email", Quoted(author)]
@@ -220,8 +220,9 @@ class GitRecipesMixin(object):
args.append("--bypass-hooks")
if cc:
args += ["--cc", Quoted(cc)]
- if use_gerrit:
- args += ["--gerrit"]
+ args += ["--gerrit"]
+ if private:
+ args += ["--private"]
# TODO(machenbach): Check output in forced mode. Verify that all required
# base files were uploaded, if not retry.
self.Git(MakeArgs(args), pipe=False, **kwargs)
diff --git a/deps/v8/tools/release/merge_to_branch.py b/deps/v8/tools/release/merge_to_branch.py
index 802409436e..877d121b49 100755
--- a/deps/v8/tools/release/merge_to_branch.py
+++ b/deps/v8/tools/release/merge_to_branch.py
@@ -31,6 +31,7 @@ from collections import OrderedDict
import sys
from common_includes import *
+from git_recipes import GetCommitMessageFooterMap
def IsSvnNumber(rev):
return rev.isdigit() and len(rev) < 8
@@ -134,8 +135,13 @@ class CreateCommitMessage(Step):
msg = self.GitLog(n=1, git_hash=commit_hash)
for bug in re.findall(r"^[ \t]*BUG[ \t]*=[ \t]*(.*?)[ \t]*$", msg, re.M):
bugs.extend(s.strip() for s in bug.split(","))
- bug_aggregate = ",".join(sorted(filter(lambda s: s and s != "none", bugs)))
+ gerrit_bug = GetCommitMessageFooterMap(msg).get('Bug', '')
+ bugs.extend(s.strip() for s in gerrit_bug.split(","))
+ bug_aggregate = ",".join(
+ sorted(filter(lambda s: s and s != "none", set(bugs))))
if bug_aggregate:
+ # TODO(machenbach): Use proper gerrit footer for bug after switch to
+ # gerrit. Keep BUG= for now for backwards-compatibility.
msg_pieces.append("BUG=%s\nLOG=N\n" % bug_aggregate)
msg_pieces.append("NOTRY=true\nNOPRESUBMIT=true\nNOTREECHECKS=true\n")
diff --git a/deps/v8/tools/release/push_to_candidates.py b/deps/v8/tools/release/push_to_candidates.py
index 750794eabd..538b9887d6 100755
--- a/deps/v8/tools/release/push_to_candidates.py
+++ b/deps/v8/tools/release/push_to_candidates.py
@@ -119,24 +119,6 @@ class DetectLastRelease(Step):
class PrepareChangeLog(Step):
MESSAGE = "Prepare raw ChangeLog entry."
- def Reload(self, body):
- """Attempts to reload the commit message from rietveld in order to allow
- late changes to the LOG flag. Note: This is brittle to future changes of
- the web page name or structure.
- """
- match = re.search(r"^Review URL: https://codereview\.chromium\.org/(\d+)$",
- body, flags=re.M)
- if match:
- cl_url = ("https://codereview.chromium.org/%s/description"
- % match.group(1))
- try:
- # Fetch from Rietveld but only retry once with one second delay since
- # there might be many revisions.
- body = self.ReadURL(cl_url, wait_plan=[1])
- except urllib2.URLError: # pragma: no cover
- pass
- return body
-
def RunStep(self):
self["date"] = self.GetDate()
output = "%s: Version %s\n\n" % (self["date"], self["version"])
@@ -149,7 +131,7 @@ class PrepareChangeLog(Step):
commit_messages = [
[
self.GitLog(n=1, format="%s", git_hash=commit),
- self.Reload(self.GitLog(n=1, format="%B", git_hash=commit)),
+ self.GitLog(n=1, format="%B", git_hash=commit),
self.GitLog(n=1, format="%an", git_hash=commit),
] for commit in commits.splitlines()
]
diff --git a/deps/v8/tools/release/test_backport_node.py b/deps/v8/tools/release/test_backport_node.py
new file mode 100755
index 0000000000..a2be9cf33d
--- /dev/null
+++ b/deps/v8/tools/release/test_backport_node.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python
+# Copyright 2017 the V8 project authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import os
+import shutil
+import subprocess
+import sys
+import tempfile
+import unittest
+
+from common_includes import FileToText
+import backport_node
+
+# Base paths.
+BASE_DIR = os.path.dirname(os.path.abspath(__file__))
+TEST_DATA = os.path.join(BASE_DIR, 'testdata')
+
+def gitify(path):
+ files = os.listdir(path)
+ subprocess.check_call(['git', 'init'], cwd=path)
+ subprocess.check_call(['git', 'add'] + files, cwd=path)
+ subprocess.check_call(['git', 'commit', '-m', 'Initial'], cwd=path)
+
+class TestUpdateNode(unittest.TestCase):
+ def setUp(self):
+ self.workdir = tempfile.mkdtemp(prefix='tmp_test_node_')
+
+ def tearDown(self):
+ shutil.rmtree(self.workdir)
+
+ def testUpdate(self):
+ v8_cwd = os.path.join(self.workdir, 'v8')
+ node_cwd = os.path.join(self.workdir, 'node')
+
+ # Set up V8 test fixture.
+ shutil.copytree(src=os.path.join(TEST_DATA, 'v8'), dst=v8_cwd)
+ gitify(v8_cwd)
+
+ # Set up node test fixture.
+ shutil.copytree(src=os.path.join(TEST_DATA, 'node'), dst=node_cwd)
+ gitify(os.path.join(node_cwd))
+
+ # Add a patch.
+ with open(os.path.join(v8_cwd, 'v8_foo'), 'w') as f:
+ f.write('zonk')
+ subprocess.check_call(['git', 'add', 'v8_foo'], cwd=v8_cwd)
+ subprocess.check_call(['git', 'commit', '-m', "Title\n\nBody"], cwd=v8_cwd)
+ commit = subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd=v8_cwd).strip()
+
+ # Run update script.
+ backport_node.Main([v8_cwd, node_cwd, commit, "--no-review"])
+
+ # Check message.
+ message = subprocess.check_output(['git', 'log', '-1', '--format=%B'], cwd=node_cwd)
+ self.assertIn('Original commit message:\n\n Title\n\n Body', message)
+
+ # Check patch.
+ gitlog = subprocess.check_output(
+ ['git', 'diff', 'master', '--cached', '--', 'deps/v8/v8_foo'],
+ cwd=node_cwd,
+ )
+ self.assertIn('+zonk', gitlog.strip())
+
+ # Check version.
+ version_file = os.path.join(node_cwd, "deps", "v8", "include", "v8-version.h")
+ self.assertIn('#define V8_PATCH_LEVEL 4322', FileToText(version_file))
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/deps/v8/tools/release/test_scripts.py b/deps/v8/tools/release/test_scripts.py
index bfc68dc818..42bbd5a0a1 100755
--- a/deps/v8/tools/release/test_scripts.py
+++ b/deps/v8/tools/release/test_scripts.py
@@ -586,11 +586,7 @@ class ScriptTest(unittest.TestCase):
Cmd("git log -1 --format=%B rev3", "Title\n\nBUG=321\nLOG=true\n"),
Cmd("git log -1 --format=%an rev3", "author3@chromium.org"),
Cmd("git log -1 --format=%s rev4", "Title text 4"),
- Cmd("git log -1 --format=%B rev4",
- ("Title\n\nBUG=456\nLOG=Y\n\n"
- "Review URL: https://codereview.chromium.org/9876543210\n")),
- URL("https://codereview.chromium.org/9876543210/description",
- "Title\n\nBUG=456\nLOG=N\n\n"),
+ Cmd("git log -1 --format=%B rev4", "Title\n\nBUG=456\nLOG=N"),
Cmd("git log -1 --format=%an rev4", "author4@chromium.org"),
])
@@ -861,7 +857,7 @@ Performance and stability improvements on all platforms."""
"\"Version 3.22.5 (based on push_hash)\""
" origin/candidates", "hsh_to_tag"),
Cmd("git tag 3.22.5 hsh_to_tag", ""),
- Cmd("git push origin 3.22.5", ""),
+ Cmd("git push origin refs/tags/3.22.5:refs/tags/3.22.5", ""),
Cmd("git checkout -f origin/master", ""),
Cmd("git branch -D %s" % TEST_CONFIG["BRANCHNAME"], ""),
Cmd("git branch -D %s" % TEST_CONFIG["CANDIDATESBRANCH"], ""),
@@ -905,7 +901,9 @@ Performance and stability improvements on all platforms."""
Log text 1 (issue 321).
-Performance and stability improvements on all platforms."""
+Performance and stability improvements on all platforms.
+
+TBR=reviewer@chromium.org"""
def ResetChangeLog():
last_change_log = """1999-04-05: Version 3.22.4
@@ -969,12 +967,14 @@ Performance and stability improvements on all platforms."""
cb=self.WriteFakeWatchlistsFile),
Cmd("git commit -aF \"%s\"" % TEST_CONFIG["COMMITMSG_FILE"], "",
cb=CheckVersionCommit),
+ Cmd("git cl upload --send-mail --email \"author@chromium.org\" "
+ "-f --bypass-hooks --gerrit --private", ""),
Cmd("git cl land --bypass-hooks -f", ""),
Cmd("git fetch", ""),
Cmd("git log -1 --format=%H --grep="
"\"Version 3.22.5\" origin/3.22.5", "hsh_to_tag"),
Cmd("git tag 3.22.5 hsh_to_tag", ""),
- Cmd("git push origin 3.22.5", ""),
+ Cmd("git push origin refs/tags/3.22.5:refs/tags/3.22.5", ""),
Cmd("git checkout -f origin/master", ""),
Cmd("git branch", "* master\n work-branch\n"),
Cmd("git branch -D work-branch", ""),
@@ -1119,7 +1119,7 @@ deps = {
self.ROLL_COMMIT_MSG),
"", cwd=chrome_dir),
Cmd("git cl upload --send-mail --email \"author@chromium.org\" -f "
- "--use-commit-queue --bypass-hooks", "", cwd=chrome_dir),
+ "--use-commit-queue --bypass-hooks --gerrit", "", cwd=chrome_dir),
Cmd("git checkout -f master", "", cwd=chrome_dir),
Cmd("git branch -D work-branch", "", cwd=chrome_dir),
]
@@ -1288,7 +1288,7 @@ LOG=N
"\" refs/remotes/origin/candidates",
"hsh_to_tag"),
Cmd("git tag 3.22.5.1 hsh_to_tag", ""),
- Cmd("git push origin 3.22.5.1", ""),
+ Cmd("git push origin refs/tags/3.22.5.1:refs/tags/3.22.5.1", ""),
Cmd("git checkout -f origin/master", ""),
Cmd("git branch -D %s" % TEST_CONFIG["BRANCHNAME"], ""),
])
@@ -1626,8 +1626,8 @@ NOTREECHECKS=true
Cmd("git log -1 --format=%s ab56789", "Revert \"Something\""),
Cmd("git log -1 ab12345", "Title4\nBUG=123\nBUG=234"),
Cmd("git log -1 ab23456", "Title2\n BUG = v8:123,345"),
- Cmd("git log -1 ab34567", "Title3\nLOG=n\nBUG=567, 456"),
- Cmd("git log -1 ab45678", "Title1\nBUG="),
+ Cmd("git log -1 ab34567", "Title3\nLOG=n\nBug: 567, 456,345"),
+ Cmd("git log -1 ab45678", "Title1\nBug:"),
Cmd("git log -1 ab56789", "Revert \"Something\"\nBUG=none"),
Cmd("git log -1 -p ab12345", "patch4"),
Cmd(("git apply --index --reject \"%s\"" %