Skip to content

Commit 0c89ca8

Browse files
committed
refactor(semantic): remove always-nil error returns
1 parent a629d30 commit 0c89ca8

8 files changed

Lines changed: 33 additions & 75 deletions

File tree

semantic/parse.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -46,33 +46,33 @@ func Parse(str string, ecosystem string) (Version, error) {
4646
case "Alpine":
4747
return parseAlpineVersion(str)
4848
case "ConanCenter":
49-
return parseSemverVersion(str)
49+
return parseSemverVersion(str), nil
5050
case "CRAN":
51-
return parseCRANVersion(str)
51+
return parseCRANVersion(str), nil
5252
case "crates.io":
53-
return parseSemverVersion(str)
53+
return parseSemverVersion(str), nil
5454
case "Debian":
5555
return parseDebianVersion(str)
5656
case "Go":
57-
return parseSemverVersion(str)
57+
return parseSemverVersion(str), nil
5858
case "Hex":
59-
return parseSemverVersion(str)
59+
return parseSemverVersion(str), nil
6060
case "Maven":
61-
return parseMavenVersion(str)
61+
return parseMavenVersion(str), nil
6262
case "npm":
63-
return parseSemverVersion(str)
63+
return parseSemverVersion(str), nil
6464
case "NuGet":
65-
return parseNuGetVersion(str)
65+
return parseNuGetVersion(str), nil
6666
case "Packagist":
67-
return parsePackagistVersion(str)
67+
return parsePackagistVersion(str), nil
6868
case "Pub":
69-
return parseSemverVersion(str)
69+
return parseSemverVersion(str), nil
7070
case "PyPI":
7171
return parsePyPIVersion(str)
7272
case "Red Hat":
73-
return parseRedHatVersion(str)
73+
return parseRedHatVersion(str), nil
7474
case "RubyGems":
75-
return parseRubyGemsVersion(str)
75+
return parseRubyGemsVersion(str), nil
7676
case "Ubuntu":
7777
return parseDebianVersion(str)
7878
}

semantic/version-cran.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -49,16 +49,10 @@ func (v cranVersion) compare(w cranVersion) int {
4949
}
5050

5151
func (v cranVersion) CompareStr(str string) (int, error) {
52-
w, err := parseCRANVersion(str)
53-
54-
if err != nil {
55-
return 0, err
56-
}
57-
58-
return v.compare(w), nil
52+
return v.compare(parseCRANVersion(str)), nil
5953
}
6054

61-
func parseCRANVersion(str string) (cranVersion, error) {
55+
func parseCRANVersion(str string) cranVersion {
6256
// dashes and periods have the same weight, so we can just normalize to periods
6357
parts := strings.Split(strings.ReplaceAll(str, "-", "."), ".")
6458

@@ -70,5 +64,5 @@ func parseCRANVersion(str string) (cranVersion, error) {
7064
comps = append(comps, v)
7165
}
7266

73-
return cranVersion{comps}, nil
67+
return cranVersion{comps}
7468
}

semantic/version-maven.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -359,15 +359,9 @@ func (mv mavenVersion) compare(w mavenVersion) (int, error) {
359359
}
360360

361361
func (mv mavenVersion) CompareStr(str string) (int, error) {
362-
mw, err := parseMavenVersion(str)
363-
364-
if err != nil {
365-
return 0, err
366-
}
367-
368-
return mv.compare(mw)
362+
return mv.compare(parseMavenVersion(str))
369363
}
370364

371-
func parseMavenVersion(str string) (mavenVersion, error) {
372-
return newMavenVersion(str), nil
365+
func parseMavenVersion(str string) mavenVersion {
366+
return newMavenVersion(str)
373367
}

semantic/version-nuget.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,9 @@ func (v nuGetVersion) compare(w nuGetVersion) int {
2929
}
3030

3131
func (v nuGetVersion) CompareStr(str string) (int, error) {
32-
w, err := parseNuGetVersion(str)
33-
34-
if err != nil {
35-
return 0, err
36-
}
37-
38-
return v.compare(w), nil
32+
return v.compare(parseNuGetVersion(str)), nil
3933
}
4034

41-
func parseNuGetVersion(str string) (nuGetVersion, error) {
42-
return nuGetVersion{parseSemverLikeVersion(str, 4)}, nil
35+
func parseNuGetVersion(str string) nuGetVersion {
36+
return nuGetVersion{parseSemverLikeVersion(str, 4)}
4337
}

semantic/version-packagist.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,23 +128,17 @@ type packagistVersion struct {
128128
Components []string
129129
}
130130

131-
func parsePackagistVersion(str string) (packagistVersion, error) {
131+
func parsePackagistVersion(str string) packagistVersion {
132132
return packagistVersion{
133133
str,
134134
strings.Split(canonicalizePackagistVersion(str), "."),
135-
}, nil
135+
}
136136
}
137137

138138
func (v packagistVersion) compare(w packagistVersion) int {
139139
return comparePackagistComponents(v.Components, w.Components)
140140
}
141141

142142
func (v packagistVersion) CompareStr(str string) (int, error) {
143-
w, err := parsePackagistVersion(str)
144-
145-
if err != nil {
146-
return 0, err
147-
}
148-
149-
return v.compare(w), nil
143+
return v.compare(parsePackagistVersion(str)), nil
150144
}

semantic/version-redhat.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -203,13 +203,7 @@ func (v redHatVersion) compare(w redHatVersion) int {
203203
}
204204

205205
func (v redHatVersion) CompareStr(str string) (int, error) {
206-
w, err := parseRedHatVersion(str)
207-
208-
if err != nil {
209-
return 0, err
210-
}
211-
212-
return v.compare(w), nil
206+
return v.compare(parseRedHatVersion(str)), nil
213207
}
214208

215209
// parseRedHatVersion parses a Red Hat version into a redHatVersion struct.
@@ -223,7 +217,7 @@ func (v redHatVersion) CompareStr(str string) (int, error) {
223217
//
224218
// When all components are present, the version is represented as "n-e:v-r.a",
225219
// though only the version is actually required.
226-
func parseRedHatVersion(str string) (redHatVersion, error) {
220+
func parseRedHatVersion(str string) redHatVersion {
227221
bf, af, hasColon := strings.Cut(str, ":")
228222

229223
if !hasColon {
@@ -247,5 +241,5 @@ func parseRedHatVersion(str string) (redHatVersion, error) {
247241
epoch = "0"
248242
}
249243

250-
return redHatVersion{epoch, version, release}, nil
244+
return redHatVersion{epoch, version, release}
251245
}

semantic/version-rubygems.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -119,23 +119,17 @@ type rubyGemsVersion struct {
119119
Segments []string
120120
}
121121

122-
func parseRubyGemsVersion(str string) (rubyGemsVersion, error) {
122+
func parseRubyGemsVersion(str string) rubyGemsVersion {
123123
return rubyGemsVersion{
124124
str,
125125
canonicalSegments(strings.Split(canonicalizeRubyGemVersion(str), ".")),
126-
}, nil
126+
}
127127
}
128128

129129
func (v rubyGemsVersion) compare(w rubyGemsVersion) int {
130130
return compareRubyGemsComponents(v.Segments, w.Segments)
131131
}
132132

133133
func (v rubyGemsVersion) CompareStr(str string) (int, error) {
134-
w, err := parseRubyGemsVersion(str)
135-
136-
if err != nil {
137-
return 0, err
138-
}
139-
140-
return v.compare(w), nil
134+
return v.compare(parseRubyGemsVersion(str)), nil
141135
}

semantic/version-semver.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,8 @@ type semverVersion struct {
100100
semverLikeVersion
101101
}
102102

103-
func parseSemverVersion(str string) (semverVersion, error) {
104-
return semverVersion{parseSemverLikeVersion(str, 3)}, nil
103+
func parseSemverVersion(str string) semverVersion {
104+
return semverVersion{parseSemverLikeVersion(str, 3)}
105105
}
106106

107107
func (v semverVersion) compare(w semverVersion) int {
@@ -113,11 +113,5 @@ func (v semverVersion) compare(w semverVersion) int {
113113
}
114114

115115
func (v semverVersion) CompareStr(str string) (int, error) {
116-
w, err := parseSemverVersion(str)
117-
118-
if err != nil {
119-
return 0, err
120-
}
121-
122-
return v.compare(w), nil
116+
return v.compare(parseSemverVersion(str)), nil
123117
}

0 commit comments

Comments
 (0)