diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-19 04:08:22 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-19 04:08:22 +0900 |
| commit | 23515f67c8a74ea50e3f57d482ff13f07589ee46 (patch) | |
| tree | 017f13aad3d859a2fdc8090003b122fdc6e81c0d /internal/rosa/state.go | |
| parent | 4389df60ae781cb12030d6dfc2e2cedc6c419eaf (diff) | |
internal/rosa/package: migrate perl packages
Most of these are currently unused.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/state.go')
| -rw-r--r-- | internal/rosa/state.go | 51 |
1 files changed, 49 insertions, 2 deletions
diff --git a/internal/rosa/state.go b/internal/rosa/state.go index f52f99cb..388a6cc5 100644 --- a/internal/rosa/state.go +++ b/internal/rosa/state.go @@ -544,6 +544,23 @@ func (s *S) getFrame() azalea.Frame { return }}, + k("remoteCPAN"): {F: func( + args azalea.FArgs, + ) (v any, set bool, err error) { + var author, name, version, checksum string + if err = args.Apply(map[unique.Handle[azalea.Ident]]any{ + k("author"): &author, + k("name"): &name, + k("version"): &version, + k("checksum"): &checksum, + }); err != nil { + return + } + v = newFromCPAN(author, name, version, checksum) + set = true + return + }}, + k("remoteGitHub"): {F: func( args azalea.FArgs, ) (v any, set bool, err error) { @@ -592,6 +609,20 @@ func (s *S) getFrame() azalea.Frame { return }}, + k("makeMaker"): {F: func( + args azalea.FArgs, + ) (v any, set bool, err error) { + var attr MakeMakerHelper + if err = args.Apply(map[unique.Handle[azalea.Ident]]any{ + k("skipCheck"): &attr.SkipCheck, + }); err != nil { + return + } + v = &attr + set = true + return + }}, + k("pip"): {F: func( args azalea.FArgs, ) (v any, set bool, err error) { @@ -679,7 +710,8 @@ func (ctx *evalContext) pf( inputs, runtimes azalea.Array - anityaFallback bool + anityaFallback bool + anityaLegacyCPAN bool ) if err = args.Apply(map[unique.Handle[azalea.Ident]]any{ k("description"): &meta.Description, @@ -701,7 +733,8 @@ func (ctx *evalContext) pf( k("inputs"): &inputs, k("runtime"): &runtimes, - k("anityaFallback"): &anityaFallback, + k("anityaFallback"): &anityaFallback, + k("anityaLegacyCPAN"): &anityaLegacyCPAN, }); err != nil { return } @@ -733,6 +766,20 @@ func (ctx *evalContext) pf( meta.ID = int(anitya) if anityaFallback { meta.latest = (*Versions).getStable + } else if anityaLegacyCPAN { + meta.latest = func(v *Versions) string { + for _, s := range v.Stable { + _, m, ok := strings.Cut(s, ".") + if !ok { + continue + } + if len(m) > 1 && m[0] == '0' { + continue + } + return s + } + return v.Latest + } } var source pkg.Artifact switch p := sourceA.(type) { |
