-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Case sensitive Pkg operations on case insensitive filesystems #18210
Conversation
@@ -113,7 +111,7 @@ function installed(pkg::AbstractString) | |||
avail = Read.available(pkg) | |||
if Read.isinstalled(pkg) | |||
res = typemin(VersionNumber) | |||
if ispath(joinpath(pkg,".git")) | |||
if Read.isgitrepo(pkg) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that isinstalled
already checks for a case-sensitive pkg
, so this change is somewhat redundant. Doesn't hurt, I suppose.
Additionally: * print PkgError type in showerror * get rid of async block in Pkg.add so that it no longer throws CompositeExceptions
f300c28
to
3262c17
Compare
I'm against backporting this. Would have been a great addition a month ago before we feature froze. |
-1 for backporting. I don't think leaving this as an 0.6-only feature is a problem; it's not like it affects code compatibility in any serious way. (In principle, it's a breaking change, but in practice it only catches typos.) |
@@ -291,7 +290,8 @@ function free(pkgs) | |||
end | |||
|
|||
function pin(pkg::AbstractString, head::AbstractString) | |||
ispath(pkg,".git") || throw(PkgError("$pkg is not a git repo")) | |||
isdir_casesensitive(pkg) || throw(PkgError("$pkg is not installed")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Omit this isdir_casesensitive
check since it is performed by isgitrepo
now.
Bump. |
Bump @jakebolewski; would be nice to get this finished? |
It seems like we can close this since it's quite old, has conflicts, and we're moving to Pkg3? Reopen if not! |
@kshyatt A small question. Will moving to Pkg3 make
which is really confusing for newcomers. |
I do think that this remains at least partially applicable. |
Fixes the disparity between package names and module names w.r.t package name case sensitivity for
Pkg
operations as package names are module names.Adds (unexported)
{ispath,isdir,isfile}_casesensitive
methods to theBase.Filesystem
moduleAlso, removes the
@async
block inPkg.add
.Closes #17747
cc @stevengj