diff --git a/pkgs/racket-test/tests/pkg/tests-scope.rkt b/pkgs/racket-test/tests/pkg/tests-scope.rkt index ceb00478b9..c92e79974f 100644 --- a/pkgs/racket-test/tests/pkg/tests-scope.rkt +++ b/pkgs/racket-test/tests/pkg/tests-scope.rkt @@ -53,6 +53,7 @@ $ "raco pkg install -u --copy test-pkgs/pkg-test1" $ "racket -l pkg-test1" =stdout> #rx"main loaded" $ "raco pkg install -i --copy test-pkgs/pkg-test1" + $ "raco pkg install --skip-installed -u --copy test-pkgs/pkg-test1" $ "raco pkg remove -i --no-trash pkg-test1" =stdout> "Removing pkg-test1\n" $ "raco pkg remove --no-trash pkg-test1" =stdout> "Removing pkg-test1\n") diff --git a/racket/collects/pkg/private/install.rkt b/racket/collects/pkg/private/install.rkt index 39c552f816..56cbbd6f92 100644 --- a/racket/collects/pkg/private/install.rkt +++ b/racket/collects/pkg/private/install.rkt @@ -877,9 +877,8 @@ download-printf) given-descs)) - (define db (and (or check-pkg-early? - skip-installed?) - (read-pkg-db))) + (define all-scope-dbs (and skip-installed? (merge-pkg-dbs))) + (define db (and check-pkg-early? (read-pkg-db))) (define filtered-descs (remove-duplicates @@ -887,7 +886,7 @@ descs (filter (lambda (d) (define pkg-name (desc->name d)) - (define i (hash-ref db pkg-name #f)) + (define i (hash-ref all-scope-dbs pkg-name #f)) (or (not i) (pkg-info-auto? i))) descs)) pkg-desc=?))