- Notifications
You must be signed in to change notification settings - Fork68
Open
Labels
Description
On Windows,os.rmtree cannot not remove directories with read-only files; such are the git db directories.
The fix is something like this:
...finally:# Need to collect here to be sure all handles have been closed. It appears# a windows-only issue. In fact things should be deleted, as well as# memory maps closed, once objects go out of scope. For some reason# though this is not the case here unless we collect explicitly.ifnotkeep:gc.collect()# From http://stackoverflow.com/a/4829285/548792defon_rm_error(func,path,exc_info):importstatos.chmod(path,stat.S_IWRITE)func(path)shutil.rmtree(path,onerror=on_rm_error)