A minimalist Go module proxy handler.
owner/repo
from GHA over goproxy/goproxy
for ghcr.io{{.Summary}}
as snapshot.name_template
for .goreleaser.yamlGoproxy.serveFetch
unmarshalInfo
GoFetcher.Download
internal.binaryVersion
to internal.go
fileserver
's dependence on Go and VCS binariesfs.ErrNotExist
Fetcher
to fetch module files for Goproxy
walkEnvGOPROXY
sumdbClientOps
fetch.name
to fetch.target
fetch.contentType
Goproxy.serveFetch
based on fetch operationstringSliceContains
stringSliceContains
to fetch.gosemver.Sort
globsMatchPath
with module.MatchPrefixPatterns
backoffSleep
to http.goerrNotFound
with fs.ErrNotExist
parseRawURL
walkEnvGOPROXY
parse proxies before calling its onProxy
fetchResult.Open
/upgrade.info
or /patch.info
fetchOpsResolve
to fetchOpsQuery
fetch.doProxy
downloads all module files at oncehttpGetTemp
to simplify codesumdbClientOps
TestParseEnvGOSUMDB
for Go 1.18%v
format verbGoproxy.GoBinName
notFoundError
to better wrap other errorswalkGOPROXY
to walkEnvGOPROXY
server
server
--fetch-timeout
to 10mGoproxy.GoBinName
and Goproxy.Transport
--cacher-dir
to --cache-dir
Goproxy
's fieldsGoproxy.GoBinMaxWorkers
to Goproxy.MaxDirectFetches
Goproxy.GoBinEnv
to Goproxy.Env
Goproxy.CacherMaxCacheBytes
Goproxy.PathPrefix