github.com/coltonfike/e2c@v21.1.0+incompatible/params/version.go (about)

     1  // Copyright 2016 The go-ethereum Authors
     2  // This file is part of the go-ethereum library.
     3  //
     4  // The go-ethereum library is free software: you can redistribute it and/or modify
     5  // it under the terms of the GNU Lesser General Public License as published by
     6  // the Free Software Foundation, either version 3 of the License, or
     7  // (at your option) any later version.
     8  //
     9  // The go-ethereum library is distributed in the hope that it will be useful,
    10  // but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    12  // GNU Lesser General Public License for more details.
    13  //
    14  // You should have received a copy of the GNU Lesser General Public License
    15  // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
    16  
    17  package params
    18  
    19  import (
    20  	"fmt"
    21  )
    22  
    23  const (
    24  	VersionMajor = 1        // Major version component of the current release
    25  	VersionMinor = 9        // Minor version component of the current release
    26  	VersionPatch = 7        // Patch version component of the current release
    27  	VersionMeta  = "stable" // Version metadata to append to the version string
    28  
    29  	QuorumVersionMajor = 21
    30  	QuorumVersionMinor = 1
    31  	QuorumVersionPatch = 0
    32  )
    33  
    34  // Version holds the textual version string.
    35  var Version = func() string {
    36  	return fmt.Sprintf("%d.%d.%d", VersionMajor, VersionMinor, VersionPatch)
    37  }()
    38  
    39  // VersionWithMeta holds the textual version string including the metadata.
    40  var VersionWithMeta = func() string {
    41  	v := Version
    42  	if VersionMeta != "" {
    43  		v += "-" + VersionMeta
    44  	}
    45  	return v
    46  }()
    47  
    48  // Version holds the textual version string.
    49  var QuorumVersion = func() string {
    50  	return fmt.Sprintf("%d.%d.%d", QuorumVersionMajor, QuorumVersionMinor, QuorumVersionPatch)
    51  }()
    52  
    53  // ArchiveVersion holds the textual version string used for Geth archives.
    54  // e.g. "1.8.11-dea1ce05" for stable releases, or
    55  //      "1.8.13-unstable-21c059b6" for unstable releases
    56  func ArchiveVersion(gitCommit string) string {
    57  	vsn := Version
    58  	if VersionMeta != "stable" {
    59  		vsn += "-" + VersionMeta
    60  	}
    61  	if len(gitCommit) >= 8 {
    62  		vsn += "-" + gitCommit[:8]
    63  	}
    64  	return vsn
    65  }
    66  
    67  func VersionWithCommit(gitCommit, gitDate string) string {
    68  	vsn := VersionWithMeta
    69  	if len(gitCommit) >= 8 {
    70  		vsn += "-" + gitCommit[:8]
    71  	}
    72  	if (VersionMeta != "stable") && (gitDate != "") {
    73  		vsn += "-" + gitDate
    74  	}
    75  
    76  	vsn += "(quorum-v" + QuorumVersion + ")"
    77  
    78  	return vsn
    79  }