chore: do not use sentinel errors when unneeded

- main reason being it's a burden to always define sentinel errors at global scope, wrap them with `%w` instead of using a string directly
- only use sentinel errors when it has to be checked using `errors.Is`
- replace all usage of these sentinel errors in `fmt.Errorf` with direct strings that were in the sentinel error
- exclude the sentinel error definition requirement from .golangci.yml
- update unit tests to use ContainersError instead of ErrorIs so it stays as a "not a change detector test" without requiring a sentinel error
This commit is contained in:
Quentin McGaw
2026-05-02 00:50:16 +00:00
parent 9b6f048fe8
commit 4a78989d9d
172 changed files with 666 additions and 1433 deletions
+3 -9
View File
@@ -8,12 +8,6 @@ import (
"strings"
)
var (
ErrUnknownProto = errors.New("unknown protocol")
ErrNoRemoteHost = errors.New("remote host not found")
ErrNoRemoteIP = errors.New("remote IP not found")
)
func ExtractProto(b []byte) (tcp, udp bool, err error) {
lines := strings.Split(string(b), "\n")
const protoPrefix = "proto "
@@ -30,7 +24,7 @@ func ExtractProto(b []byte) (tcp, udp bool, err error) {
case "udp", "udp4", "udp6":
return false, true, nil
default:
return false, false, fmt.Errorf("%w: %s", ErrUnknownProto, s)
return false, false, fmt.Errorf("unknown protocol: %s", s)
}
}
@@ -45,7 +39,7 @@ func ExtractHost(b []byte) (host, warning string, err error) {
)
hosts := extractRemoteHosts(b, rejectIP, rejectDomain)
if len(hosts) == 0 {
return "", "", ErrNoRemoteHost
return "", "", errors.New("remote host not found")
} else if len(hosts) > 1 {
warning = fmt.Sprintf(
"only using the first host %q and discarding %d other hosts",
@@ -58,7 +52,7 @@ func ExtractIPs(b []byte) (ips []netip.Addr, err error) {
const rejectIP, rejectDomain = false, true
ipStrings := extractRemoteHosts(b, rejectIP, rejectDomain)
if len(ipStrings) == 0 {
return nil, ErrNoRemoteIP
return nil, errors.New("remote IP not found")
}
sort.Slice(ipStrings, func(i, j int) bool {
+1 -1
View File
@@ -19,7 +19,7 @@ func FetchFile(ctx context.Context, client *http.Client, url string) (
const rejectDomain = false
hosts := extractRemoteHosts(b, rejectIP, rejectDomain)
if len(hosts) == 0 {
return "", fmt.Errorf("%w for url %s", ErrNoRemoteHost, url)
return "", fmt.Errorf("remote host not found for url %s", url)
}
return hosts[0], nil