[Bug 6861] New: Purge will abort if a directory junction does not point to a valid directory

mercurial-bugs at mercurial-scm.org mercurial-bugs at mercurial-scm.org
Thu Dec 21 19:10:30 UTC 2023


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: bugzilla at mercurial-scm.org
          Reporter: david.a.hollman at carrier.com
                CC: mercurial-devel at 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.


More information about the Mercurial-devel mailing list