Skip to content

Commit b923a4c

Browse files
Add version package
1 parent ae3861b commit b923a4c

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

version/version.go

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package version
2+
3+
import (
4+
"github.com/arduino/arduino-cli/i18n"
5+
)
6+
7+
var (
8+
defaultVersionString = "0.0.0-git"
9+
versionString = ""
10+
commit = ""
11+
date = ""
12+
tr = i18n.Tr
13+
)
14+
15+
// Info is a struct that contains informations about the application
16+
type Info struct {
17+
Application string `json:"Application"`
18+
VersionString string `json:"VersionString"`
19+
Commit string `json:"Commit"`
20+
Date string `json:"Date"`
21+
}
22+
23+
// NewInfo returns a pointer to an updated Info struct
24+
func NewInfo(application string) *Info {
25+
return &Info{
26+
Application: application,
27+
VersionString: versionString,
28+
Commit: commit,
29+
Date: date,
30+
}
31+
}
32+
33+
func (i *Info) String() string {
34+
return tr("%[1]s Version: %[2]s Commit: %[3]s Date: %[4]s", i.Application, i.VersionString, i.Commit, i.Date)
35+
}
36+
37+
//nolint:gochecknoinits
38+
func init() {
39+
if versionString == "" {
40+
versionString = defaultVersionString
41+
}
42+
}

0 commit comments

Comments
 (0)