MCPcopy Index your code
hub / github.com/nodejs/node / GetLatestReleaseBase

Method GetLatestReleaseBase

deps/v8/tools/release/common_includes.py:578–605  ·  view source on GitHub ↗

The latest release base is the latest revision that is covered in the last change log file. It doesn't include cherry-picked patches.

(self, version=None)

Source from the content-addressed store, hash-verified

576 return latest_hash
577
578 def GetLatestReleaseBase(self, version=None):
579 """The latest release base is the latest revision that is covered in the
580 last change log file. It doesn't include cherry-picked patches.
581 """
582 latest_version = version or self.GetLatestVersion()
583
584 # Strip patch level if it exists.
585 latest_version = ".".join(latest_version.split(".")[:3])
586
587 # The latest release base.
588 latest_hash = self.GitLog(n=1, format="%H", branch=latest_version)
589 assert latest_hash
590
591 title = self.GitLog(n=1, format="%s", git_hash=latest_hash)
592 match = PUSH_MSG_GIT_RE.match(title)
593 if match:
594 # Legacy: In the old process there's one level of indirection. The
595 # version is on the candidates branch and points to the real release
596 # base on main through the commit message.
597 return match.group("git_rev")
598 match = PUSH_MSG_NEW_RE.match(title)
599 if match:
600 # This is a new-style v8 version branched from main. The commit
601 # "latest_hash" is the version-file change. Its parent is the release
602 # base on main.
603 return self.GitLog(n=1, format="%H", git_hash="%s^" % latest_hash)
604
605 self.Die("Unknown latest release: %s" % latest_hash)
606
607 def ArrayToVersion(self, prefix):
608 return ".".join([self[prefix + "major"],

Callers 2

RunStepMethod · 0.80
RunStepMethod · 0.80

Calls 6

GetLatestVersionMethod · 0.95
DieMethod · 0.95
GitLogMethod · 0.80
matchMethod · 0.65
joinMethod · 0.45
splitMethod · 0.45

Tested by

no test coverage detected