"golang.org/x/crypto/blake2b"
)
+var pypiHTTPTransport http.Transport
+
func blake2b256New() hash.Hash {
h, err := blake2b.New256(nil)
if err != nil {
if _, err := os.Stat(filepath.Join(*root, pkgName, InternalFlag)); err == nil {
return true
}
- resp, err := http.Get(*pypiURL + pkgName + "/")
+ c := http.Client{Transport: &pypiHTTPTransport}
+ resp, err := c.Get(*pypiURL + pkgName + "/")
if err != nil {
log.Println("error", r.RemoteAddr, "refresh", pkgName, err)
http.Error(w, err.Error(), http.StatusBadGateway)
http.Error(w, "digest mismatch", http.StatusBadGateway)
return false
}
- if err = dst.Sync(); err != nil {
- os.Remove(dst.Name())
- dst.Close()
- log.Println("error", r.RemoteAddr, "pypi", filename, err)
- http.Error(w, err.Error(), http.StatusInternalServerError)
- return false
+ if !NoSync {
+ if err = dst.Sync(); err != nil {
+ os.Remove(dst.Name())
+ dst.Close()
+ log.Println("error", r.RemoteAddr, "pypi", filename, err)
+ http.Error(w, err.Error(), http.StatusInternalServerError)
+ return false
+ }
}
if err = dst.Close(); err != nil {
log.Println("error", r.RemoteAddr, "pypi", filename, err)