Skip to content

Cache credentials on Pkg up#28437

Merged
KristofferC merged 1 commit intomasterfrom
cv/pkg-up-cache-creds
Aug 4, 2018
Merged

Cache credentials on Pkg up#28437
KristofferC merged 1 commit intomasterfrom
cv/pkg-up-cache-creds

Conversation

@omus
Copy link
Copy Markdown
Member

@omus omus commented Aug 4, 2018

Avoids asking the user for their credentials multiple times for the same domain.

@omus omus requested a review from KristofferC August 4, 2018 04:19
pkg.version = VersionSpec()
end
end
end
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using git diff --ignore-space-change this is more comprehensible:

diff --git a/stdlib/Pkg/src/Operations.jl b/stdlib/Pkg/src/Operations.jl
index 547cebdc75..63cf3ad6f2 100644
--- a/stdlib/Pkg/src/Operations.jl
+++ b/stdlib/Pkg/src/Operations.jl
@@ -1162,6 +1162,7 @@ end
 function up(ctx::Context, pkgs::Vector{PackageSpec})
     # resolve upgrade levels to version specs
     new_git = UUID[]
+    Base.shred!(LibGit2.CachedCredentials()) do creds
         for pkg in pkgs
             if pkg.uuid in keys(ctx.stdlibs)
                 pkg.version = VersionSpec()
@@ -1172,7 +1173,8 @@ function up(ctx::Context, pkgs::Vector{PackageSpec})
             info = manifest_info(ctx.env, pkg.uuid)
             if info !== nothing && haskey(info, "repo-url")
                 pkg.repo = Types.GitRepo(info["repo-url"], info["repo-rev"])
-            new = handle_repos_add!(ctx, [pkg]; upgrade_or_add = (level == UPLEVEL_MAJOR))
+                new = handle_repos_add!(ctx, [pkg]; credentials=creds,
+                                        upgrade_or_add = (level == UPLEVEL_MAJOR))
                 append!(new_git, new)
             else
                 if info !== nothing
@@ -1192,6 +1194,7 @@ function up(ctx::Context, pkgs::Vector{PackageSpec})
                 end
             end
         end
+    end
     # resolve & apply package versions
     resolve_versions!(ctx, pkgs)
     new_apply = apply_versions(ctx, pkgs)

@KristofferC KristofferC merged commit 1dfc4d1 into master Aug 4, 2018
@KristofferC KristofferC deleted the cv/pkg-up-cache-creds branch August 4, 2018 07:20
ararslan pushed a commit that referenced this pull request Aug 4, 2018
Avoids asking the user for their credentials multiple times for the same
domain.

(cherry picked from commit 1dfc4d1)
KristofferC pushed a commit that referenced this pull request Feb 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants