Skip to content

Commit d7e6b72

Browse files
committed
Updated semver library
1 parent b41f404 commit d7e6b72

File tree

6 files changed

+13
-26
lines changed

6 files changed

+13
-26
lines changed

Diff for: .licenses/go/go.bug.st/relaxed-semver.dep.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: go.bug.st/relaxed-semver
3-
version: v0.11.0
3+
version: v0.11.1-0.20231122111201-62617f7bb9d3
44
type: go
55
summary:
66
homepage: https://pkg.go.dev/go.bug.st/relaxed-semver

Diff for: arduino/libraries/librariesindex/index.go

+6-19
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ type Library struct {
4444
type Release struct {
4545
Author string
4646
Version *semver.Version
47-
Dependencies []semver.Dependency
47+
Dependencies []*Dependency
4848
Maintainer string
4949
Sentence string
5050
Paragraph string
@@ -85,7 +85,7 @@ func (r *Release) GetVersion() *semver.Version {
8585
}
8686

8787
// GetDependencies returns the dependencies of this library.
88-
func (r *Release) GetDependencies() []semver.Dependency {
88+
func (r *Release) GetDependencies() []*Dependency {
8989
return r.Dependencies
9090
}
9191

@@ -146,29 +146,16 @@ func (idx *Index) FindLibraryUpdate(lib *libraries.Library) *Release {
146146

147147
// ResolveDependencies returns the dependencies of a library release.
148148
func (idx *Index) ResolveDependencies(lib *Release) []*Release {
149-
// Box lib index *Release to be digested by dep-resolver
150-
// (TODO: There is a better use of golang interfaces to avoid this?)
151-
allReleases := map[string]semver.Releases{}
149+
// Create and populate the library resolver
150+
resolver := semver.NewResolver[*Release, *Dependency]()
152151
for _, indexLib := range idx.Libraries {
153-
releases := semver.Releases{}
154152
for _, indexLibRelease := range indexLib.Releases {
155-
releases = append(releases, indexLibRelease)
153+
resolver.AddRelease(indexLibRelease)
156154
}
157-
allReleases[indexLib.Name] = releases
158155
}
159156

160157
// Perform lib resolution
161-
archive := &semver.Archive{
162-
Releases: allReleases,
163-
}
164-
deps := archive.Resolve(lib)
165-
166-
// Unbox resolved deps back into *Release
167-
res := []*Release{}
168-
for _, dep := range deps {
169-
res = append(res, dep.(*Release))
170-
}
171-
return res
158+
return resolver.Resolve(lib)
172159
}
173160

174161
// Versions returns an array of all versions available of the library

Diff for: arduino/libraries/librariesindex/json.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ func (indexLib *indexRelease) extractReleaseIn(library *Library) {
126126
}
127127
}
128128

129-
func (indexLib *indexRelease) extractDependencies() []semver.Dependency {
130-
res := []semver.Dependency{}
129+
func (indexLib *indexRelease) extractDependencies() []*Dependency {
130+
res := []*Dependency{}
131131
if indexLib.Dependencies == nil || len(indexLib.Dependencies) == 0 {
132132
return res
133133
}

Diff for: commands/lib/search.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ func getLibraryParameters(rel *librariesindex.Release) *rpc.LibraryRelease {
118118
}
119119
}
120120

121-
func getLibraryDependenciesParameter(deps []semver.Dependency) []*rpc.LibraryDependency {
121+
func getLibraryDependenciesParameter(deps []*librariesindex.Dependency) []*rpc.LibraryDependency {
122122
res := []*rpc.LibraryDependency{}
123123
for _, dep := range deps {
124124
res = append(res, &rpc.LibraryDependency{

Diff for: go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ require (
3636
github.com/xeipuuv/gojsonschema v1.2.0
3737
go.bug.st/cleanup v1.0.0
3838
go.bug.st/downloader/v2 v2.1.1
39-
go.bug.st/relaxed-semver v0.11.0
39+
go.bug.st/relaxed-semver v0.11.1-0.20231122111201-62617f7bb9d3
4040
go.bug.st/serial v1.6.1
4141
go.bug.st/testifyjson v1.1.1
4242
golang.org/x/term v0.14.0

Diff for: go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -455,8 +455,8 @@ go.bug.st/cleanup v1.0.0/go.mod h1:EqVmTg2IBk4znLbPD28xne3abjsJftMdqqJEjhn70bk=
455455
go.bug.st/downloader/v2 v2.1.1 h1:nyqbUizo3E2IxCCm4YFac4FtSqqFpqWP+Aae5GCMuw4=
456456
go.bug.st/downloader/v2 v2.1.1/go.mod h1:VZW2V1iGKV8rJL2ZEGIDzzBeKowYv34AedJz13RzVII=
457457
go.bug.st/relaxed-semver v0.9.0/go.mod h1:ug0/W/RPYUjliE70Ghxg77RDHmPxqpo7SHV16ijss7Q=
458-
go.bug.st/relaxed-semver v0.11.0 h1:ngzpUlBEZ5F9hJnMZP55LIFbgX3bCztBBufMhJViAsY=
459-
go.bug.st/relaxed-semver v0.11.0/go.mod h1:rqPEm+790OTQlAdfSJSHWwpKOg3A8UyvAWMZxYkQivc=
458+
go.bug.st/relaxed-semver v0.11.1-0.20231122111201-62617f7bb9d3 h1:Q0KwPGElNvW5CYxFJce5K5Mq9KvSllRoWMN3xxIsYmI=
459+
go.bug.st/relaxed-semver v0.11.1-0.20231122111201-62617f7bb9d3/go.mod h1:Cpcbiig6Omwlq6bS7i3MQWiqS7W7HDd8CAnZFC40Cl0=
460460
go.bug.st/serial v1.3.2/go.mod h1:jDkjqASf/qSjmaOxHSHljwUQ6eHo/ZX/bxJLQqSlvZg=
461461
go.bug.st/serial v1.6.1 h1:VSSWmUxlj1T/YlRo2J104Zv3wJFrjHIl/T3NeruWAHY=
462462
go.bug.st/serial v1.6.1/go.mod h1:UABfsluHAiaNI+La2iESysd9Vetq7VRdpxvjx7CmmOE=

0 commit comments

Comments
 (0)