From 86ad8b72aa19f348f5e1a48c79c30accc86fcaa1 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Tue, 6 Jan 2026 01:04:06 +0900 Subject: [PATCH] internal/pkg: expose cure through cure context This allows a curing Artifact to cure Artifact it depends on. Signed-off-by: Ophestra --- internal/pkg/pkg.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/pkg/pkg.go b/internal/pkg/pkg.go index e1055ac..85a9f82 100644 --- a/internal/pkg/pkg.go +++ b/internal/pkg/pkg.go @@ -78,6 +78,15 @@ func (c *CureContext) GetWorkDir() *check.Absolute { return c.work } // create it if they wish to use it, using [os.MkdirAll]. func (c *CureContext) GetTempDir() *check.Absolute { return c.temp } +// Cure cures the [Artifact] and returns its pathname and [Checksum]. +func (c *CureContext) Cure(a Artifact) ( + pathname *check.Absolute, + checksum Checksum, + err error, +) { + return c.cache.Cure(a) +} + // LoadData tries to load [File] from [Cache], and if that fails, obtains it via // [File.Data] instead. Notably, it does not cure [File]. func (c *CureContext) LoadData(f File) (data []byte, err error) {