def validate_release_version()

in hack/release/wizard/releaseWizard.py [0:0]


    def validate_release_version(self, branch_type, branch, release_version):
        ver = Version.parse(release_version)
        # print("release_version=%s, ver=%s" % (release_version, ver))
        if branch_type == BranchType.release:
            if not branch.startswith('release-'):
                sys.exit("Incompatible branch and branch_type")
            if not ver.is_bugfix_release() and '.' in branch:
                sys.exit("You can only release bugfix releases from an existing release branch")
        elif branch_type == BranchType.stable:
            if not branch.startswith('release-') and '.' not in branch:
                sys.exit("Incompatible branch and branch_type")
            if not ver.is_minor_release():
                sys.exit("You can only release minor releases from an existing stable branch")
        elif branch_type == BranchType.unstable:
            if not branch == 'main':
                sys.exit("Incompatible branch and branch_type")
            if not (ver.is_major_release() or ver.is_minor_release()):
                sys.exit("You can only release a new major or minor version from main branch")
        if not getScriptVersion() == release_version:
            print("WARNING: Expected release version %s when on branch %s, but got %s" % (
                getScriptVersion(), branch, release_version))