emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/racket-mode 675f966726: Update local cache of package cata


From: ELPA Syncer
Subject: [nongnu] elpa/racket-mode 675f966726: Update local cache of package catalog
Date: Wed, 17 Jul 2024 16:00:37 -0400 (EDT)

branch: elpa/racket-mode
commit 675f96672605867b68c7514ba837d43a91700a42
Author: Greg Hendershott <git@greghendershott.com>
Commit: Greg Hendershott <git@greghendershott.com>

    Update local cache of package catalog
    
    Necessary for get-pkgs to return values. Even affects pkg-info-auto?
    for installed packages.
    
    As reported at:
    
      
https://racket.discourse.group/t/racket-packages-in-racket-mode-for-emacs/3027/3
---
 racket/package.rkt | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/racket/package.rkt b/racket/package.rkt
index 7df6b1af87..9eea837f0b 100644
--- a/racket/package.rkt
+++ b/racket/package.rkt
@@ -4,11 +4,13 @@
          (only-in racket/hash hash-union!)
          racket/match
          racket/path
+         racket/promise
          (only-in racket/string string-join)
          (except-in pkg/lib
                     pkg-desc)
          (only-in pkg/db
                   pkg?
+                  current-pkg-catalog-file
                   get-pkgs
                   pkg-name
                   pkg-catalog
@@ -37,7 +39,12 @@
          catalog-package-doc-link
          package-notify-channel)
 
+(define catalog-local-cache
+  (delay/thread (pkg-catalog-update-local #:quiet? #t)
+                'ready))
+
 (define (package-list)
+  (force catalog-local-cache)
   (define installed (installed-packages))
   (define catalog (for/hash ([p (in-list (get-pkgs))])
                     (values (pkg-name p) p)))
@@ -62,6 +69,7 @@
            ""))))
 
 (define (package-details name)
+  (force catalog-local-cache)
   (define props (make-hasheq))
   (define (merge! . kvs)
     (hash-union! props (apply hash kvs) #:combine (λ (_a b) b)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]