https://bz.mercurial-scm.org/show_bug.cgi?id=6861

            Bug ID: 6861
           Summary: Purge will abort if a directory junction does not
                    point to a valid directory
           Product: Mercurial
           Version: 6.5.1
          Hardware: PC
                OS: Windows
            Status: UNCONFIRMED
          Severity: bug
          Priority: wish
         Component: Mercurial
          Assignee: bugzi...@mercurial-scm.org
          Reporter: david.a.holl...@carrier.com
                CC: mercurial-de...@mercurial-scm.org
    Python Version: ---

What I had expected is that a junction would be removed whether or not it
points to a valid directory or not, assuming it contains no tracked files.

While its true the junction is not "valid" in some sense, I'm not sure why hg
purge should *abort* as a result. A warning message (if anything) would seem to
be sufficient. 

While this can be cleaned up manually, it breaks certain automated use cases.

I'm curious if Linux behavior would be the same (assuming an equivalent
scenario is possible, I can't really recall the nuances there).


Below is a series of steps to reproduce the issue:

    D:\source>mkdir test

    D:\source>cd test

    D:\source\test>hg init

    D:\source\test>mkdir ..\target

    D:\source\test>mklink /j linked ..\target
    Junction created for linked <<===>> ..\target

    D:\source\test>rmdir ..\target

    D:\source\test>hg purge
    linked: The system cannot find the path specified
    abort: The system cannot find the path specified: 'D:\source\test/linked'

    D:\source\test>hg --version
    Mercurial Distributed SCM (version 6.5.1)


This was running on Windows 10 but I've seen in on Win7 also.

Thanks!

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@lists.mercurial-scm.org
https://lists.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to