diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-19 00:03:42 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-19 00:44:24 +0900 |
| commit | 8807cbc7305e424725b2be8eed7ecd9234f7772e (patch) | |
| tree | 5998f055396505becf0f99fcba3c86514f00650b /cmd/mbf/internal | |
| parent | 0e95573f187f64de1a46f27af67325e57037b9a9 (diff) | |
internal/rosa: create metadata alongside artifact
This enables deferring evaluation of azalea-based packages and fixes the longstanding quirk of version being disjoint from other metadata.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'cmd/mbf/internal')
| -rw-r--r-- | cmd/mbf/internal/pkgserver/index.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/cmd/mbf/internal/pkgserver/index.go b/cmd/mbf/internal/pkgserver/index.go index 3508a844..2cc68f9f 100644 --- a/cmd/mbf/internal/pkgserver/index.go +++ b/cmd/mbf/internal/pkgserver/index.go @@ -33,10 +33,10 @@ type packageIndex struct { // metadata holds [rosa.Metadata] extended with additional information. type metadata struct { handle rosa.ArtifactH - *rosa.Artifact + *rosa.Metadata - // Populated via [rosa.Toolchain.Version], [rosa.Unversioned] is equivalent - // to the zero value. Otherwise, the zero value is invalid. + // Copied from [rosa.Metadata], [rosa.Unversioned] is equivalent to the zero + // value. Otherwise, the zero value is invalid. Version string `json:"version,omitempty"` // Output data size, available if present in report. Size int64 `json:"size,omitempty"` @@ -61,12 +61,12 @@ func (index *packageIndex) populate(report *rosa.Report) (err error) { index.names = make(map[string]*metadata) ir := pkg.NewIR() for i, handle := range handles { - a, version := rosa.Native().Std().MustLoad(handle) + meta, a := rosa.Native().Std().MustLoad(handle) m := metadata{ handle: handle, - Artifact: rosa.Native().MustGet(handle), - Version: version, + Metadata: meta, + Version: meta.Version, } if m.Version == "" { return errors.New("invalid version from " + m.Name) |
