github.com/linapex/ethereum-go-chinese@v0.0.0-20190316121929-f8b7a73c3fa1/swarm/version/version.go (about)

     1  
     2  //<developer>
     3  //    <name>linapex 曹一峰</name>
     4  //    <email>linapex@163.com</email>
     5  //    <wx>superexc</wx>
     6  //    <qqgroup>128148617</qqgroup>
     7  //    <url>https://jsq.ink</url>
     8  //    <role>pku engineer</role>
     9  //    <date>2019-03-16 19:16:45</date>
    10  //</624450121848852480>
    11  
    12  
    13  package version
    14  
    15  import (
    16  	"fmt"
    17  )
    18  
    19  const (
    20  VersionMajor = 0          //当前版本的主要版本组件
    21  VersionMinor = 3          //当前版本的次要版本组件
    22  VersionPatch = 10         //当前版本的补丁版本组件
    23  VersionMeta  = "unstable" //要附加到版本字符串的版本元数据
    24  )
    25  
    26  //version保存文本版本字符串。
    27  var Version = func() string {
    28  	return fmt.Sprintf("%d.%d.%d", VersionMajor, VersionMinor, VersionPatch)
    29  }()
    30  
    31  //versionWithMeta保存包含元数据的文本版本字符串。
    32  var VersionWithMeta = func() string {
    33  	v := Version
    34  	if VersionMeta != "" {
    35  		v += "-" + VersionMeta
    36  	}
    37  	return v
    38  }()
    39  
    40  //archiveversion保存用于swarm存档的文本版本字符串。
    41  //例如,“0.3.0-DEA1CE05”用于稳定释放,或
    42  //“0.3.1-不稳定-21C059B6”用于不稳定释放
    43  func ArchiveVersion(gitCommit string) string {
    44  	vsn := Version
    45  	if VersionMeta != "stable" {
    46  		vsn += "-" + VersionMeta
    47  	}
    48  	if len(gitCommit) >= 8 {
    49  		vsn += "-" + gitCommit[:8]
    50  	}
    51  	return vsn
    52  }
    53  
    54  func VersionWithCommit(gitCommit string) string {
    55  	vsn := Version
    56  	if len(gitCommit) >= 8 {
    57  		vsn += "-" + gitCommit[:8]
    58  	}
    59  	return vsn
    60  }
    61