Commit Graph

70 Commits

Author SHA1 Message Date
Serhiy Storchaka ef5c24a72e Issue #28488: shutil.make_archive() no longer adds entry "./" to ZIP archive. 2016-10-23 15:52:01 +03:00
Serhiy Storchaka fe45f65187 Issue #24982: shutil.make_archive() with the "zip" format now adds entries
for directories (including empty directories) in ZIP file.
Added test for comparing shutil.make_archive() with the "zip" command.
2015-09-08 05:47:01 +03:00
Serhiy Storchaka c354285f2b Issue #21280: Fixed a bug in shutil.make_archive() when create an archive of
current directory in current directory.
2014-11-28 00:50:06 +02:00
Serhiy Storchaka a4b9c878e4 Issue #19856: shutil.move() failed to move a directory to other directory
on Windows if source name ends with os.altsep.
2014-02-11 10:30:06 +02:00
Benjamin Peterson b898b4f9e9 use with statement to ensure zipfile is always closed (closes #20102) 2014-02-02 15:30:22 -05:00
Georg Brandl 3196529f3c Fix wrong way of adding Error information in shutil.copytree. 2012-08-25 10:11:57 +02:00
Ned Deily acdc56d0d0 Issue #14662: Prevent shutil failures on OS X when destination does not
support chflag operations.  (Patch by Hynek Schlawack)
2012-05-10 17:45:49 -07:00
Éric Araujo 04295009b8 Add missing name in shutil.__all__ 2011-08-21 16:14:01 +02:00
Éric Araujo e7329f47e7 Guard shutil._make_archive against a logger=None argument.
Backporting two lines from the 3.x tests was enough to trigger the bug.
I also took the opportunity of making the logging call lazy.
2011-08-19 03:07:39 +02:00
Ronald Oussoren 58d6b1b7a4 Backport fix for issue #10684 from 3.x 2011-05-06 11:31:33 +02:00
Éric Araujo 6e52cf32ad Merged revisions 87277 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r87277 | eric.araujo | 2010-12-15 21:26:30 +0100 (mer., 15 déc. 2010) | 2 lines

  Fix wrong name in docstring and doc (#10693).  Original patch by Eli Benderski.
........
2010-12-15 20:33:50 +00:00
Tarek Ziadé 31a673da52 removed non needed lines 2010-05-05 22:41:25 +00:00
Tarek Ziadé 38f81223ae Fixed #4265: shutil.copyfile() was leaking file descriptors when disk fills 2010-05-05 22:15:31 +00:00
Tarek Ziadé 62e17ad234 shutil: removed unused import and fixed attributes names in _call_external_zip 2010-04-21 13:32:26 +00:00
Tarek Ziadé e593fad81b removed ztar support in shutil.make_archive 2010-04-20 21:09:06 +00:00
Tarek Ziadé 8a12f940fe Fixed #8463: added missing reference to bztar in shutil's documentation. 2010-04-19 21:28:21 +00:00
Tarek Ziadé f1c28b75e0 few pep8 fixes 2010-04-19 21:13:03 +00:00
Antoine Pitrou 513d9aeadb Issue #7512: shutil.copystat() could raise an OSError when the filesystem
didn't support chflags() (for example ZFS under FreeBSD).  The error is
now silenced.
2010-03-22 19:59:46 +00:00
Florent Xicluna 1f3b4e12e8 Fix some py3k warnings in the standard library. 2010-03-07 12:14:25 +00:00
Tarek Ziadé 2900c4413b completed the __all__ list and changed the module doctest 2010-02-23 05:36:41 +00:00
Tarek Ziadé 48cc8dc958 added make_archive (and secondary APIs) to shutil 2010-02-23 05:16:41 +00:00
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
Martin v. Löwis e9ce0b0fea Patch #448038: Add move(). Report errors from copytree as in shutil.Error. 2002-10-07 13:23:24 +00:00
Raymond Hettinger 57e79459fa shutil.copyfile(src,dst) was clobbering the file when the src and dst were
the same.   Added check to verify the two names are not the same.  Does not
check the actual files to see if there is a symbolic link.

Closes SF bug 490165 and Tzot's patch 604600.
2002-09-08 20:43:59 +00:00
Walter Dörwald 294bbf3a59 Replace obsolete stat module constants with
equivalent attributes in a few more spots.

This closes SF patch http://www.python.org/sf/562373
2002-06-06 09:48:13 +00:00
Raymond Hettinger f13eb55d59 Replace boolean test with is None. 2002-06-02 00:40:05 +00:00