check-remote-version added by sjamaan on Tue Jul 28 14:03:39 2026

(define (check-remote-version name lversion cached)
  (let loop ((locs default-locations))
    (cond ((null? locs)
           (let loop ((srvs (map resolve-location default-servers)))
             (and (pair? srvs)
                  (let ((versions (try-list-versions name (car srvs))))
                    (or (and versions
                             (every (cut version>=? lversion <>) versions)) ;; what is this trying to do??
                        (loop (cdr srvs)))))))
          ;; The order of probe-dir's here is important.  First try
          ;; the path with version, then the path without version.
          ((or (probe-dir (make-pathname (list (car locs) name)
                                         (->string lversion)))
               (probe-dir (make-pathname (car locs) name)))
           => (lambda (dir)
                ;; for locally available eggs, check set of files and
                ;; timestamps
                (compare-trees dir cached)))
          (else (loop (cdr locs))))))