substitute: Change connection cache handling in process-substitution.

Just pass open-connection-for-uri/maybe to http-fetch, this removes the need
for with-cached-connection and passing the port in.

* guix/scripts/substitute.scm (fetch): Don't take a port as an argument, and
pass open-connection-for-uri/maybe to http-fetch.
(process-substitution): Don't call fetch with with-cached-connection.
This commit is contained in:
Christopher Baines 2021-01-07 20:21:50 +00:00
parent 05f38ca8dc
commit f50f5751ff
No known key found for this signature in database
GPG key ID: 5E28A33B0B84F577

View file

@ -170,7 +170,7 @@ (define-syntax-rule (with-timeout duration handler body ...)
(apply values result)))))
(define* (fetch uri #:key (buffered? #t) (timeout? #t)
(keep-alive? #f) (port #f))
(keep-alive? #f))
"Return a binary input port to URI and the number of bytes it's expected to
provide.
@ -199,7 +199,8 @@ (define* (fetch uri #:key (buffered? #t) (timeout? #t)
(warning (G_ "while fetching ~a: server is somewhat slow~%")
(uri->string uri))
(warning (G_ "try `--no-substitutes' if the problem persists~%")))
(http-fetch uri #:text? #f #:port port
(http-fetch uri #:text? #f
#:open-connection open-connection-for-uri/maybe
#:keep-alive? keep-alive?
#:buffered? buffered?
#:verify-certificate? #f))))
@ -752,10 +753,8 @@ (define (dump-file/deduplicate* . args)
(let*-values (((raw download-size)
;; 'guix publish' without '--cache' doesn't specify a
;; Content-Length, so DOWNLOAD-SIZE is #f in this case.
(with-cached-connection uri port
(fetch uri #:buffered? #f #:timeout? #f
#:port port
#:keep-alive? #t)))
(fetch uri #:buffered? #f #:timeout? #f
#:keep-alive? #t))
((progress)
(let* ((dl-size (or download-size
(and (equal? compression "none")