From a243ceab6cd3d17fffb115a253e28a21f2ebe3c6 Mon Sep 17 00:00:00 2001 From: colin Date: Mon, 29 Jan 2024 19:58:33 -0800 Subject: handle errors during archive update --- fussy.lisp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'fussy.lisp') diff --git a/fussy.lisp b/fussy.lisp index 2df651e..f593dbc 100644 --- a/fussy.lisp +++ b/fussy.lisp @@ -24,8 +24,8 @@ contents." (retries 10)) "Fetch the package archive from ARCHIVE, a url, and read it in using the emacs' reader readtable." - ;; TODO: HANDLE HTTP ERRORS, HANDLE TIMEOUT, HANDLE READ ERRORS (when (plusp retries) + (fussy-log "Fetching archive ~a~%" archive) (handler-case (multiple-value-bind (stream status) (dexador:get archive :want-stream t) (when (= 200 status) @@ -33,9 +33,14 @@ the emacs' reader readtable." (*readtable* (emacs-reader-readtable))) (read stream)))) (usocket:ns-host-not-found-error () - (fussy-log "Host Not Found: ~a~%Retrying in ~a seconds...~%" + (fussy-log "Error whild fetching archive.~%Host Not Found: ~a~%Retrying in ~a seconds...~%" archive +retry-wait+) (sleep +retry-wait+) + (fetch-emacs-archive archive (1- retries))) + (error (e) + (fussy-log "Error while fetching archive: ~a~%Retrying in ~a seconds...~%" + e +retry-wait+) + (sleep +retry-wait+) (fetch-emacs-archive archive (1- retries)))))) (defclass/std theme-pkg (db:store-object) -- cgit v1.2.3