Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package zvm for openSUSE:Factory checked in at 2025-05-27 18:42:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/zvm (Old) and /work/SRC/openSUSE:Factory/.zvm.new.2732 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "zvm" Tue May 27 18:42:33 2025 rev:3 rq:1280463 version:0.8.7 Changes: -------- --- /work/SRC/openSUSE:Factory/zvm/zvm.changes 2025-04-07 17:37:34.775239300 +0200 +++ /work/SRC/openSUSE:Factory/.zvm.new.2732/zvm.changes 2025-05-27 18:42:40.001754182 +0200 @@ -1,0 +2,6 @@ +Mon May 26 11:56:16 UTC 2025 - Lucas Mulling <lucas.mull...@suse.com> + +- Update to 0.8.7: + * Fixed issue when running vmu zig mach on a clean install + +------------------------------------------------------------------- Old: ---- v0.8.6.tar.gz New: ---- v0.8.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ zvm.spec ++++++ --- /var/tmp/diff_new_pack.3lwyw0/_old 2025-05-27 18:42:40.781787060 +0200 +++ /var/tmp/diff_new_pack.3lwyw0/_new 2025-05-27 18:42:40.781787060 +0200 @@ -17,7 +17,7 @@ Name: zvm -Version: 0.8.6 +Version: 0.8.7 Release: 0 Summary: Easily install/upgrade between different versions of Zig License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.3lwyw0/_old 2025-05-27 18:42:40.825788914 +0200 +++ /var/tmp/diff_new_pack.3lwyw0/_new 2025-05-27 18:42:40.829789083 +0200 @@ -1,7 +1,7 @@ <services> <service name="go_modules" mode="disabled"> <param name="compression">xz</param> - <param name="archive">v0.8.6.tar.gz</param> + <param name="archive">v0.8.7.tar.gz</param> </service> </services> ++++++ v0.8.6.tar.gz -> v0.8.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/README.md new/zvm-0.8.7/README.md --- old/zvm-0.8.6/README.md 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/README.md 2025-05-24 04:28:15.000000000 +0200 @@ -10,6 +10,10 @@ you need multiple versions of a language installed to compile your projects, or a language gets updated frequently. +## Donate + +- [Paypal](https://www.paypal.com/donate/?hosted_button_id=HFTFEFXP2A388) + ## Join our Community - [Twitch](https://twitch.tv/atalocke) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/build.ts new/zvm-0.8.7/build.ts --- old/zvm-0.8.6/build.ts 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/build.ts 2025-05-24 04:28:15.000000000 +0200 @@ -21,7 +21,7 @@ "freebsd", "netbsd", "openbsd", - "plan9", + // "plan9", "solaris", ]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/config.go new/zvm-0.8.7/cli/config.go --- old/zvm-0.8.6/cli/config.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/config.go 2025-05-24 04:28:15.000000000 +0200 @@ -102,8 +102,6 @@ return version == "default" || version == "mach" } - - func (z ZVM) getVersion(version string) error { if _, err := os.Stat(filepath.Join(z.baseDir, version)); err != nil { return err diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/install.go new/zvm-0.8.7/cli/install.go --- old/zvm-0.8.6/cli/install.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/install.go 2025-05-24 04:28:15.000000000 +0200 @@ -704,10 +704,10 @@ } defer func() { - if err := rc.Close(); err != nil { - panic(err) - } - }() + if err := rc.Close(); err != nil { + panic(err) + } + }() path := filepath.Join(destination, f.Name) if !strings.HasPrefix(path, filepath.Clean(destination)+string(os.PathSeparator)) { @@ -724,10 +724,10 @@ } defer func() { - if err := f.Close(); err != nil { - panic(err) - } - }() + if err := f.Close(); err != nil { + panic(err) + } + }() _, err = io.Copy(f, rc) if err != nil { @@ -737,7 +737,6 @@ return nil } - // 3. Iterate over zip files inside the archive and unzip each of them for _, f := range reader.File { @@ -751,7 +750,6 @@ return nil } - type installRequest struct { Site, Package, Version string } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/install_test.go new/zvm-0.8.7/cli/install_test.go --- old/zvm-0.8.6/cli/install_test.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/install_test.go 2025-05-24 04:28:15.000000000 +0200 @@ -56,33 +56,3 @@ } } -func TestMirrors(t *testing.T) { - tarURLs := []string{ - "https://ziglang.org/builds/zig-linux-x86_64-0.14.0-dev.1550+4fba7336a.tar.xz", - "https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz", - } - - mirrors := []func(string) (string, error){mirrorHryx, mirrorMachEngine} - - for i, mirror := range mirrors { - for _, tarURL := range tarURLs { - t.Logf("requestWithMirror url #%d", i) - - newURL, err := mirror(tarURL) - if err != nil { - t.Errorf("%q: %q", ErrDownloadFail, err) - } - - t.Logf("mirror %d; url: %s", i, newURL) - - tarResp, err := attemptDownload(newURL) - if err != nil { - continue - } - - if tarResp.StatusCode != 200 { - t.Fail() - } - } - } -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/meta/errors.go new/zvm-0.8.7/cli/meta/errors.go --- old/zvm-0.8.6/cli/meta/errors.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/meta/errors.go 2025-05-24 04:28:15.000000000 +0200 @@ -6,7 +6,7 @@ import "errors" var ( - ErrWinEscToAdmin = errors.New("unable to rerun as Windows Administrator") - ErrEscalatedSymlink = errors.New("unable to symlink as Administrator") + ErrWinEscToAdmin = errors.New("unable to rerun as Windows Administrator") + ErrEscalatedSymlink = errors.New("unable to symlink as Administrator") ErrEscalatedHardlink = errors.New("unable to hardlink as Administrator") ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/meta/version.go new/zvm-0.8.7/cli/meta/version.go --- old/zvm-0.8.6/cli/meta/version.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/meta/version.go 2025-05-24 04:28:15.000000000 +0200 @@ -9,7 +9,7 @@ ) const ( - VERSION = "v0.8.5" + VERSION = "v0.8.7" // VERSION = "v0.0.0" // For testing zvm upgrade diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/cli/settings.go new/zvm-0.8.7/cli/settings.go --- old/zvm-0.8.6/cli/settings.go 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/cli/settings.go 2025-05-24 04:28:15.000000000 +0200 @@ -9,6 +9,7 @@ "fmt" "net/url" "os" + "path/filepath" "github.com/charmbracelet/log" @@ -136,8 +137,12 @@ return fmt.Errorf("unable to generate settings.json file %v", err) } + if err := os.MkdirAll(filepath.Dir(s.path), 0755); err != nil { + return fmt.Errorf("unable to create settings directory: %w", err) + } + if err := os.WriteFile(s.path, out_settings, 0755); err != nil { - return fmt.Errorf("unable to create settings.json file %v", err) + return fmt.Errorf("unable to create settings.json file %w", err) } return nil diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/go.mod new/zvm-0.8.7/go.mod --- old/zvm-0.8.6/go.mod 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/go.mod 2025-05-24 04:28:15.000000000 +0200 @@ -14,7 +14,7 @@ ) require ( - github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc // indirect + github.com/charmbracelet/colorprofile v0.3.0 // indirect github.com/charmbracelet/x/ansi v0.8.0 // indirect github.com/charmbracelet/x/cellbuf v0.0.13 // indirect github.com/charmbracelet/x/term v0.2.1 // indirect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zvm-0.8.6/go.sum new/zvm-0.8.7/go.sum --- old/zvm-0.8.6/go.sum 2025-03-18 04:24:14.000000000 +0100 +++ new/zvm-0.8.7/go.sum 2025-05-24 04:28:15.000000000 +0200 @@ -1,17 +1,11 @@ github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= -github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs= -github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc/go.mod h1:X4/0JoqgTIPSFcRA/P6INZzIuyqdFY5rm8tb41s9okk= -github.com/charmbracelet/lipgloss v1.0.0 h1:O7VkGDvqEdGi93X+DeqsQ7PKHDgtQfF8j8/O2qFMQNg= -github.com/charmbracelet/lipgloss v1.0.0/go.mod h1:U5fy9Z+C38obMs+T+tJqst9VGzlOYGj4ri9reL3qUlo= +github.com/charmbracelet/colorprofile v0.3.0 h1:KtLh9uuu1RCt+Hml4s6Hz+kB1PfV3wi++1h5ia65yKQ= +github.com/charmbracelet/colorprofile v0.3.0/go.mod h1:oHJ340RS2nmG1zRGPmhJKJ/jf4FPNNk0P39/wBPA1G0= github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY= github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30= -github.com/charmbracelet/log v0.4.0 h1:G9bQAcx8rWA2T3pWvx7YtPTPwgqpk7D68BX21IRW8ZM= -github.com/charmbracelet/log v0.4.0/go.mod h1:63bXt/djrizTec0l11H20t8FDSvA4CRZJ1KH22MdptM= github.com/charmbracelet/log v0.4.1 h1:6AYnoHKADkghm/vt4neaNEXkxcXLSV2g1rdyFDOpTyk= github.com/charmbracelet/log v0.4.1/go.mod h1:pXgyTsqsVu4N9hGdHmQ0xEA4RsXof402LX9ZgiITn2I= -github.com/charmbracelet/x/ansi v0.7.0 h1:/QfFmiXOGGwN6fRbzvQaYp7fu1pkxpZ3qFBZWBsP404= -github.com/charmbracelet/x/ansi v0.7.0/go.mod h1:KBUFw1la39nl0dLl10l5ORDAqGXaeurTQmwyyVKse/Q= github.com/charmbracelet/x/ansi v0.8.0 h1:9GTq3xq9caJW8ZrBTe0LIe2fvfLR/bYXKTx2llXn7xE= github.com/charmbracelet/x/ansi v0.8.0/go.mod h1:wdYl/ONOLHLIVmQaxbIYEC/cRKOQyjTkowiI4blgS9Q= github.com/charmbracelet/x/cellbuf v0.0.13 h1:/KBBKHuVRbq1lYx5BzEHBAFBP8VcQzJejZ/IA3iR28k= @@ -32,8 +26,6 @@ github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db h1:62I3jR2EmQ4l5rM/4FEfDWcRD+abF5XlKShorW5LRoQ= github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db/go.mod h1:l0dey0ia/Uv7NcFFVbCLtqEBQbrT4OCwCSKTEv6enCw= -github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= -github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc= github.com/muesli/termenv v0.16.0/go.mod h1:ZRfOIKPFDYQoDFF4Olj7/QJbW60Ol/kL1pU3VfY/Cnk= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -43,30 +35,21 @@ github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/schollz/progressbar/v3 v3.18.0 h1:uXdoHABRFmNIjUfte/Ex7WtuyVslrw2wVPQmCN62HpA= github.com/schollz/progressbar/v3 v3.18.0/go.mod h1:IsO3lpbaGuzh8zIMzgY3+J8l4C8GjO0Y9S69eFvNsec= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/tristanisham/clr v0.0.0-20221004001624-00ee60046d85 h1:zD4b2hs7jZ2sJtgtNdpMZyo4D4/Ifct8SMxvPNNkHzs= github.com/tristanisham/clr v0.0.0-20221004001624-00ee60046d85/go.mod h1:cKn2HV8Beq81OHjb2gja2ZiU4HAEQ6LSuxyaIT5Mg7o= github.com/urfave/cli/v3 v3.0.0-beta1 h1:6DTaaUarcM0wX7qj5Hcvs+5Dm3dyUTBbEwIWAjcw9Zg= github.com/urfave/cli/v3 v3.0.0-beta1/go.mod h1:FnIeEMYu+ko8zP1F9Ypr3xkZMIDqW3DR92yUtY39q1Y= github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no= github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM= -golang.org/x/exp v0.0.0-20250106191152-7588d65b2ba8 h1:yqrTHse8TCMW1M1ZCP+VAR/l0kKxwaAIqN/il7x4voA= -golang.org/x/exp v0.0.0-20250106191152-7588d65b2ba8/go.mod h1:tujkw807nyEEAamNbDrEGzRav+ilXA7PCRAd6xsmwiU= golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw= golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM= -golang.org/x/mod v0.22.0 h1:D4nJWe9zXqHOmWqj4VMOJhvzj7bEZg4wEYa759z1pH4= -golang.org/x/mod v0.22.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU= golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= -golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik= golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= -golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg= -golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek= golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y= golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= ++++++ vendor.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/charmbracelet/colorprofile/.golangci-soft.yml new/vendor/github.com/charmbracelet/colorprofile/.golangci-soft.yml --- old/vendor/github.com/charmbracelet/colorprofile/.golangci-soft.yml 2025-04-05 15:23:46.000000000 +0200 +++ new/vendor/github.com/charmbracelet/colorprofile/.golangci-soft.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -run: - tests: false - issues-exit-code: 0 - -issues: - include: - - EXC0001 - - EXC0005 - - EXC0011 - - EXC0012 - - EXC0013 - - max-issues-per-linter: 0 - max-same-issues: 0 - -linters: - enable: - - exhaustive - - goconst - - godot - - godox - - mnd - - gomoddirectives - - goprintffuncname - - misspell - - nakedret - - nestif - - noctx - - nolintlint - - prealloc - - wrapcheck - - # disable default linters, they are already enabled in .golangci.yml - disable: - - errcheck - - gosimple - - govet - - ineffassign - - staticcheck - - unused diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/charmbracelet/colorprofile/.golangci.yml new/vendor/github.com/charmbracelet/colorprofile/.golangci.yml --- old/vendor/github.com/charmbracelet/colorprofile/.golangci.yml 2025-04-05 15:23:46.000000000 +0200 +++ new/vendor/github.com/charmbracelet/colorprofile/.golangci.yml 2025-05-24 04:28:15.000000000 +0200 @@ -15,10 +15,22 @@ linters: enable: - bodyclose + - exhaustive + - goconst + - godot + - godox - gofumpt - goimports + - gomoddirectives + - goprintffuncname - gosec + - misspell + - nakedret + - nestif - nilerr + - noctx + - nolintlint + - prealloc - revive - rowserrcheck - sqlclosecheck @@ -26,3 +38,4 @@ - unconvert - unparam - whitespace + - wrapcheck diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/charmbracelet/colorprofile/env.go new/vendor/github.com/charmbracelet/colorprofile/env.go --- old/vendor/github.com/charmbracelet/colorprofile/env.go 2025-04-05 15:23:46.000000000 +0200 +++ new/vendor/github.com/charmbracelet/colorprofile/env.go 2025-05-24 04:28:15.000000000 +0200 @@ -12,6 +12,8 @@ "github.com/xo/terminfo" ) +const dumbTerm = "dumb" + // Detect returns the color profile based on the terminal output, and // environment variables. This respects NO_COLOR, CLICOLOR, and CLICOLOR_FORCE // environment variables. @@ -29,10 +31,10 @@ // See https://no-color.org/ and https://bixense.com/clicolors/ for more information. func Detect(output io.Writer, env []string) Profile { out, ok := output.(term.File) - isatty := ok && term.IsTerminal(out.Fd()) environ := newEnviron(env) + isatty := isTTYForced(environ) || (ok && term.IsTerminal(out.Fd())) term := environ.get("TERM") - isDumb := term == "dumb" + isDumb := term == dumbTerm envp := colorProfile(isatty, environ) if envp == TrueColor || envNoColor(environ) { // We already know we have TrueColor, or NO_COLOR is set. @@ -69,7 +71,7 @@ } func colorProfile(isatty bool, env environ) (p Profile) { - isDumb := env.get("TERM") == "dumb" + isDumb := env.get("TERM") == dumbTerm envp := envColorProfile(env) if !isatty || isDumb { // Check if the output is a terminal. @@ -83,7 +85,7 @@ if p > Ascii { p = Ascii } - return + return //nolint:nakedret } if cliColorForced(env) { @@ -94,7 +96,7 @@ p = envp } - return + return //nolint:nakedret } if cliColor(env) { @@ -123,6 +125,11 @@ return cliColorForce } +func isTTYForced(env environ) bool { + skip, _ := strconv.ParseBool(env.get("TTY_FORCE")) + return skip +} + func colorTerm(env environ) bool { colorTerm := strings.ToLower(env.get("COLORTERM")) return colorTerm == "truecolor" || colorTerm == "24bit" || @@ -132,7 +139,7 @@ // envColorProfile returns infers the color profile from the environment. func envColorProfile(env environ) (p Profile) { term, ok := env.lookup("TERM") - if !ok || len(term) == 0 || term == "dumb" { + if !ok || len(term) == 0 || term == dumbTerm { p = NoTTY if runtime.GOOS == "windows" { // Use Windows API to detect color profile. Windows Terminal and @@ -184,7 +191,7 @@ p = ANSI256 } - return + return //nolint:nakedret } // Terminfo returns the color profile based on the terminal's terminfo @@ -278,10 +285,3 @@ v, _ := e.lookup(key) return v } - -func max[T ~byte | ~int](a, b T) T { - if a > b { - return a - } - return b -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/charmbracelet/colorprofile/writer.go new/vendor/github.com/charmbracelet/colorprofile/writer.go --- old/vendor/github.com/charmbracelet/colorprofile/writer.go 2025-04-05 15:23:46.000000000 +0200 +++ new/vendor/github.com/charmbracelet/colorprofile/writer.go 2025-05-24 04:28:15.000000000 +0200 @@ -2,6 +2,7 @@ import ( "bytes" + "fmt" "image/color" "io" "strconv" @@ -37,11 +38,13 @@ func (w *Writer) Write(p []byte) (int, error) { switch w.Profile { case TrueColor: - return w.Forward.Write(p) + return w.Forward.Write(p) //nolint:wrapcheck case NoTTY: - return io.WriteString(w.Forward, ansi.Strip(string(p))) - default: + return io.WriteString(w.Forward, ansi.Strip(string(p))) //nolint:wrapcheck + case Ascii, ANSI, ANSI256: return w.downsample(p) + default: + return 0, fmt.Errorf("invalid profile: %v", w.Profile) } } @@ -63,7 +66,7 @@ default: // If we're not a style SGR sequence, just write the bytes. if n, err := buf.Write(seq); err != nil { - return n, err + return n, err //nolint:wrapcheck } } @@ -71,7 +74,7 @@ state = newState } - return w.Forward.Write(buf.Bytes()) + return w.Forward.Write(buf.Bytes()) //nolint:wrapcheck } // WriteString writes the given text to the underlying writer. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt --- old/vendor/modules.txt 2025-04-05 15:23:46.000000000 +0200 +++ new/vendor/modules.txt 2025-05-24 04:28:15.000000000 +0200 @@ -1,8 +1,8 @@ # github.com/aymanbagabas/go-osc52/v2 v2.0.1 ## explicit; go 1.16 github.com/aymanbagabas/go-osc52/v2 -# github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc -## explicit; go 1.18 +# github.com/charmbracelet/colorprofile v0.3.0 +## explicit; go 1.23.0 github.com/charmbracelet/colorprofile # github.com/charmbracelet/lipgloss v1.1.0 ## explicit; go 1.18