Commit Graph

49 Commits

Author SHA1 Message Date
Benjamin Peterson
a663a373b2 only test for named pipe when os.stat doesn't raise #6209 2009-06-05 19:09:28 +00:00
Antoine Pitrou
1fc0231a22 Issue #3002: shutil.copyfile() and shutil.copytree() now raise an
error when a named pipe is encountered, rather than blocking infinitely.
2009-05-01 20:55:35 +00:00
Benjamin Peterson
096c3ad41d make destinsrc private 2009-02-07 19:08:22 +00:00
Antoine Pitrou
707c593761 Issue #2047: shutil.move() could believe that its destination path was
inside its source path if it began with the same letters (e.g. "src" vs.
"src.new").
2009-01-29 20:19:34 +00:00
Antoine Pitrou
9fcd4b3d29 #3134: shutil referenced undefined WindowsError symbol 2008-08-11 17:21:36 +00:00
Georg Brandl
e78fbcce3e #2663: support an *ignore* argument to shutil.copytree(). Patch by Tarek Ziade.
This is a new feature, but Barry authorized adding it in the beta period.
2008-07-05 10:13:36 +00:00
Sean Reifscheider
493894c3e0 Issue 1577: shutil.move() where destination is a directory was doing a
copy, now it is doing a os.rename() if it's on the same file-system.
2008-03-18 17:24:12 +00:00
Georg Brandl
5235398323 #1669: don't allow shutil.rmtree() to be called on a symlink. 2008-01-20 14:17:42 +00:00
Martin v. Löwis
382abeff0f Patch #1490190: posixmodule now includes os.chflags() and os.lchflags()
functions on platforms where the underlying system calls are available.
2007-02-19 10:55:19 +00:00
Martin v. Löwis
4e67838d6c Don't copy directory stat times in shutil.copytree on Windows
Fixes #1525866.
2006-07-30 13:00:31 +00:00
Georg Brandl
7a3fd89994 Bug #1472949: stringify IOErrors in shutil.copytree when appending
them to the Error errors list.
2006-04-28 16:54:25 +00:00
Neal Norwitz
4ce69a5b06 No need to import exceptions, they are builtins 2005-09-01 00:45:28 +00:00
Georg Brandl
a1be88e24d patch [ 1242454 ] shutil.copytree() quits too soon after an error. 2005-08-31 22:48:45 +00:00
Johannes Gijsbers
926d45bb4e shutil.copytree: move copystat call for the directory after the loop
copying files inside the directory, as that loop changes the atime and
mtime.
2005-01-23 12:20:15 +00:00
Johannes Gijsbers
e4172eadf3 Patch #1094015:
* Use os.makedirs() instead os.mkdir(). (bug #975763)
* Use copystat() to copy directory bits (bug #1048878)
2005-01-08 12:31:29 +00:00
Johannes Gijsbers
ef5ffc4765 Bug #1048941: shutil.rmtree error handling was always broken
Rewrite rmtree again, this time without os.walk(). Error handling had been
broken since Python 2.3, and the os.walk() version inherited this.
2004-10-31 12:05:31 +00:00
Johannes Gijsbers
7db385eef5 Rewrite rmtree using os.walk to fix bug #1025127:
The shutils.rmtree() implementation uses an excessive amount of memory when
deleting large directory hierarchies. Before actually deleting any files, it
builds up a list of (function, filename) tuples for all the files that it is
going to remove.
2004-10-07 21:10:08 +00:00
Johannes Gijsbers
f9a098efe1 Catch OSError raised when src or dst argument to os.path.samefile doesn't
exist.
2004-08-14 14:51:01 +00:00
Johannes Gijsbers
46f1459860 Raise an exception when src and dst refer to the same file via a hard link or a
symbolic link (bug #851123 / patch #854853, thanks Gregory Ball).
2004-08-14 13:30:02 +00:00
Guido van Rossum
4a2ccdf781 - Bug #981530: Fix UnboundLocalError in shutil.rmtree(). This affects
the documented behavior: the function passed to the onerror()
  handler can now also be os.listdir.

[I could've sworn I checked this in, but apparently I didn't, or it
got lost???]
2004-07-14 00:45:59 +00:00
Brett Cannon
1c3fa18be7 shutil.move() will raise an exception when trying to move a directory into
itself.

Closes bug #919012  .  Thanks Johannes Gijsbers.
2004-06-19 21:11:35 +00:00
Neal Norwitz
a4c93b68f1 Fix SF bug #691276, shutil.copytree documentation bug
Also use True/False instead of 1/0 for symlink flag.
2003-02-23 21:36:32 +00:00
Barry Warsaw
234d9a9eb3 rmtree(): Make implementation agree with documentation (both latex and
docstring).  Even if ignore_errors was true, an exception would occur
if path didn't exist.
2003-01-24 17:36:15 +00:00
Just van Rossum
66d16baf71 - squashed bare except in rmtree()
- improved readability of rmtree; removed silly apply()
2003-01-05 19:44:11 +00:00
Raymond Hettinger
2b9bfb33ff Added new move() function to __all__. 2002-10-30 05:44:50 +00:00