246 Commits

Author SHA1 Message Date
Brian Curtin
2193536e79 Fix #15148. Make the shutil.which docstring more thorough 2012-06-22 22:48:06 -05:00
Brian Curtin
e3f3940fc3 file was the old arg name from an earlier patch. command matches the implementation 2012-06-22 21:14:34 -05:00
Alexander Belopolsky
de74de5d5d Issue #15148: Fixed typos in shutil.which() docstring 2012-06-22 21:56:42 -04:00
Larry Hastings
9cf065cfdc Issue #14626: Large refactoring of functions / parameters in the os module.
Many functions now support "dir_fd" and "follow_symlinks" parameters;
some also support accepting an open file descriptor in place of of a path
string.  Added os.support_* collections as LBYL helpers.  Removed many
functions only previously seen in 3.3 alpha releases (often starting with
"f" or "l", or ending with "at").  Originally suggested by Serhiy Storchaka;
implemented by Larry Hastings.
2012-06-22 16:30:09 -07:00
Antoine Pitrou
07c24d13ed Issue #444582: shutil.which() respects relative paths. 2012-06-22 23:33:05 +02:00
Brian Curtin
849349de05 whitespace normalize 2012-06-22 16:03:06 -05:00
Brian Curtin
c57a34577c Fix #444582. Add shutil.which function for finding programs on the system path. 2012-06-22 16:00:30 -05:00
Brian Curtin
0d0a1dedbc Fix #14772: Return the destination from some shutil functions. 2012-06-18 18:41:07 -05:00
Antoine Pitrou
424246fbf3 Issue #14082: shutil.copy2() now copies extended attributes, if possible.
Patch by Hynek Schlawack.
2012-05-12 19:02:01 +02:00
Ned Deily
baf75713c7 Issue #14662: Prevent shutil failures on OS X when destination does not
support chflag operations.  (Patch by Hynek Schlawack)
2012-05-10 17:05:19 -07:00
Larry Hastings
b14544807e Issue #14127: Fix no-op stub for platforms that lack some "os" functions. 2012-05-03 12:56:44 -07:00
Larry Hastings
76ad59b7e8 Issue #14127: Add ns= parameter to utime, futimes, and lutimes.
Removed futimens as it is now redundant.
Changed shutil.copystat to use st_atime_ns and st_mtime_ns from os.stat
and ns= parameter to utime--it once again preserves exact metadata on Linux!
2012-05-03 00:30:07 -07:00
Sandro Tosi
f8ae4faf93 Issue #14650: fix typo in shutil.disk_usage() docstring; patch by Hobson Lane 2012-04-23 20:07:15 +02:00
Antoine Pitrou
bcf2b59fb5 Issue #13609: Add two functions to query the terminal size:
os.get_terminal_size (low level) and shutil.get_terminal_size (high level).
Patch by Zbigniew Jędrzejewski-Szmek.
2012-02-08 23:28:36 +01:00
Éric Araujo
cd0d951a70 Merge edits from 3.2 (#13716, #1040439, #2945, #13770, #6715) 2012-02-05 13:49:59 +01:00
Antoine Pitrou
0a08d7a095 Issue #9993: When the source and destination are on different filesystems,
and the source is a symlink, shutil.move() now recreates a symlink on the
destination instead of copying the file contents.
Patch by Jonathan Niehof and Hynek Schlawack.
2012-01-06 20:16:19 +01:00
Antoine Pitrou
78091e63d6 Issue #12715: Add an optional symlinks argument to shutil functions (copyfile, copymode, copystat, copy, copy2).
When that parameter is true, symlinks aren't dereferenced and the operation
instead acts on the symlink itself (or creates one, if relevant).

Patch by Hynek Schlawack.
2011-12-29 18:54:15 +01:00
Florent Xicluna
54540ec917 Remove redundant imports. 2011-11-04 08:29:17 +01:00
Florent Xicluna
aabbda5354 Merge 3.2 2011-10-28 14:52:29 +02:00
Éric Araujo
c1b7e7f8bb A few style changes originally done in the distutils2 repo 2011-09-18 23:12:30 +02:00
Éric Araujo
0ac4a5d6d2 Add missing name in shutil.__all__ 2011-09-01 08:31:51 +02:00
Sandro Tosi
d902a14dd0 #12191: add shutil.chown() to change user and/or group owner of a given path also specifying their names. 2011-08-22 23:28:27 +02:00
Éric Araujo
c5efe65df3 Merge 3.2 2011-08-21 14:30:00 +02:00
Éric Araujo
24d6cc6f4f Merge 3.2 2011-08-19 03:19:36 +02:00
Éric Araujo
cfcc9779fc Remove unused names in except clauses 2011-08-10 20:54:33 +02:00
Éric Araujo
e4d5b8e646 Clean up shutil.disk_usage.
- Move a test from call time to define time
- Add the function name to __all__
- Improve docstring and docs

A few lines are now duplicated (named tuple definition and docstring)
but I think the end result reads better.
2011-08-08 16:51:11 +02:00
Giampaolo Rodola'
210e7ca032 Issue #12442: add shutil.disk_usage() 2011-07-01 13:55:36 +02:00
Tarek Ziadé
582768ac1a Merged revisions 80840 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r80840 | tarek.ziade | 2010-05-06 00:43:04 +0200 (Thu, 06 May 2010) | 9 lines

  Merged revisions 80837 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r80837 | tarek.ziade | 2010-05-06 00:41:25 +0200 (Thu, 06 May 2010) | 1 line

    removed non needed lines
  ........
................
2010-05-05 22:44:06 +00:00
Tarek Ziadé
b01142b5dc Merged revisions 80837 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80837 | tarek.ziade | 2010-05-06 00:41:25 +0200 (Thu, 06 May 2010) | 1 line

  removed non needed lines
........
2010-05-05 22:43:04 +00:00
Tarek Ziadé
9623980d01 Merged revisions 80833 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r80833 | tarek.ziade | 2010-05-06 00:27:31 +0200 (Thu, 06 May 2010) | 9 lines

  Merged revisions 80830 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r80830 | tarek.ziade | 2010-05-06 00:15:31 +0200 (Thu, 06 May 2010) | 1 line

    Fixed #4265: shutil.copyfile() was leaking file descriptors when disk fills
  ........
................
2010-05-05 22:39:31 +00:00
Tarek Ziadé
ae4d5c6b64 Merged revisions 80830 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80830 | tarek.ziade | 2010-05-06 00:15:31 +0200 (Thu, 06 May 2010) | 1 line

  Fixed #4265: shutil.copyfile() was leaking file descriptors when disk fills
........
2010-05-05 22:27:31 +00:00
Tarek Ziadé
ffa155ad83 make sure shutil checks for bz2 availability before it uses it. 2010-04-29 13:34:35 +00:00
Tarek Ziadé
6ac91723bd #8295 : Added shutil.unpack_archive and related APIs 2010-04-28 17:51:36 +00:00
Tarek Ziadé
8c26c7d907 added a note about the ignore_dangling_symlinks option 2010-04-23 13:03:50 +00:00
Tarek Ziadé
e212416420 Merged revisions 80306 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80306 | tarek.ziade | 2010-04-21 15:32:26 +0200 (Wed, 21 Apr 2010) | 1 line

  shutil: removed unused import and fixed attributes names in _call_external_zip
........
2010-04-21 13:35:21 +00:00
Tarek Ziadé
5e2be8737d Merged revisions 80282 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80282 | tarek.ziade | 2010-04-20 23:09:06 +0200 (Tue, 20 Apr 2010) | 1 line

  removed ztar support in shutil.make_archive
........
2010-04-20 21:40:47 +00:00
Tarek Ziadé
6cf3e616e4 fixed typo -- thanks Nick 2010-04-20 14:31:49 +00:00
Tarek Ziadé
fb437513d6 Fixed #6547: Added the ignore_dangling_symlinks option to shutil.copytree 2010-04-20 08:57:33 +00:00
Tarek Ziadé
5340db3803 Fixed #1540112: now shutil.copytree will let you provide your own copy() function 2010-04-19 22:30:51 +00:00
Tarek Ziadé
10a51afc80 Merged revisions 80221 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80221 | tarek.ziade | 2010-04-19 23:28:21 +0200 (Mon, 19 Apr 2010) | 1 line

  Fixed #8463: added missing reference to bztar in shutil's documentation.
........
2010-04-19 21:31:42 +00:00
Tarek Ziadé
1eab9ccd0d Merged revisions 80218 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80218 | tarek.ziade | 2010-04-19 23:13:03 +0200 (Mon, 19 Apr 2010) | 1 line

  few pep8 fixes
........
2010-04-19 21:19:57 +00:00
Antoine Pitrou
9f274b1fab Merged revisions 79301 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r79301 | antoine.pitrou | 2010-03-22 21:11:09 +0100 (lun., 22 mars 2010) | 11 lines

  Merged revisions 79299 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r79299 | antoine.pitrou | 2010-03-22 20:59:46 +0100 (lun., 22 mars 2010) | 5 lines

    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 20:12:40 +00:00
Antoine Pitrou
910bd51ea1 Merged revisions 79299 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79299 | antoine.pitrou | 2010-03-22 20:59:46 +0100 (lun., 22 mars 2010) | 5 lines

  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 20:11:09 +00:00
Tarek Ziadé
c339978b1b Merged revisions 78364 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78364 | tarek.ziade | 2010-02-23 00:36:41 -0500 (Tue, 23 Feb 2010) | 1 line

  completed the __all__ list and changed the module doctest
........
2010-02-23 05:39:18 +00:00
Tarek Ziadé
396fad7a47 Merged revisions 78359-78360 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78359 | tarek.ziade | 2010-02-23 00:16:41 -0500 (Tue, 23 Feb 2010) | 1 line

  added make_archive (and secondary APIs) to shutil
........
  r78360 | tarek.ziade | 2010-02-23 00:20:22 -0500 (Tue, 23 Feb 2010) | 1 line

  added a note on shutil new APIs
........
2010-02-23 05:30:31 +00:00
Benjamin Peterson
c0d98aa5c0 Merged revisions 73250 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73250 | benjamin.peterson | 2009-06-05 14:09:28 -0500 (Fri, 05 Jun 2009) | 1 line

  only test for named pipe when os.stat doesn't raise #6209
........
2009-06-05 19:13:27 +00:00
Antoine Pitrou
7fff096298 Merged revisions 72178 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72178 | antoine.pitrou | 2009-05-01 22:55:35 +0200 (ven., 01 mai 2009) | 4 lines

  Issue #3002: `shutil.copyfile()` and `shutil.copytree()` now raise an
  error when a named pipe is encountered, rather than blocking infinitely.
........
2009-05-01 21:09:44 +00:00
Benjamin Peterson
247a9b87bd Merged revisions 69415,69591,69593 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69415 | benjamin.peterson | 2009-02-07 13:08:22 -0600 (Sat, 07 Feb 2009) | 1 line

  make destinsrc private
........
  r69591 | martin.v.loewis | 2009-02-13 14:26:16 -0600 (Fri, 13 Feb 2009) | 1 line

  Update Tix build procedure.
........
  r69593 | martin.v.loewis | 2009-02-13 14:51:48 -0600 (Fri, 13 Feb 2009) | 1 line

  Add optional code signing after merging.
........
2009-02-20 04:09:19 +00:00
Antoine Pitrou
0dcc3cdca5 Merged revisions 69100 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69100 | antoine.pitrou | 2009-01-29 21:19:34 +0100 (jeu., 29 janv. 2009) | 5 lines

  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:26:59 +00:00
Georg Brandl
6aa2d1fec7 Merged revisions 65459,65472,65481,65518,65536,65581,65609,65637,65641,65644-65645 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r65459 | gregory.p.smith | 2008-08-04 00:13:29 +0000 (Mon, 04 Aug 2008) | 4 lines

  - Issue #1857: subprocess.Popen.poll gained an additional _deadstate keyword
    argument in python 2.5, this broke code that subclassed Popen to include its
    own poll method.  Fixed my moving _deadstate to an _internal_poll method.
........
  r65472 | andrew.kuchling | 2008-08-04 01:43:43 +0000 (Mon, 04 Aug 2008) | 3 lines

  Bug 3228: Explicitly supply the file mode to avoid creating executable files,
  and add corresponding tests.
  Possible 2.5 backport candidate
........
  r65481 | gregory.p.smith | 2008-08-04 07:33:37 +0000 (Mon, 04 Aug 2008) | 22 lines

  Adds a sanity check to avoid a *very rare* infinite loop due to a corrupt tls
  key list data structure in the thread startup path.

  This change is a companion to r60148 which already successfully dealt with a
  similar issue on thread shutdown.

  In particular this loop has been observed happening from this call path:
   #0  in find_key ()
   #1  in PyThread_set_key_value ()
   #2  in _PyGILState_NoteThreadState ()
   #3  in PyThreadState_New ()
   #4  in t_bootstrap ()
   #5  in pthread_start_thread ()

  I don't know how this happens but it does, *very* rarely.  On more than
  one hardware platform.  I have not been able to reproduce it manually.
  (A flaky mutex implementation on the system in question is one hypothesis).

  As with r60148, the spinning we managed to observe in the wild was due to a
  single list element pointing back upon itself.
........
  r65518 | mark.dickinson | 2008-08-04 21:30:09 +0000 (Mon, 04 Aug 2008) | 7 lines

  Issue #1481296: (again!) Make conversion of a float NaN to an int or
  long raise ValueError instead of returning 0.  Also, change the error
  message for conversion of an infinity to an integer, replacing 'long' by
  'integer', so that it's appropriate for both long(float('inf')) and
  int(float('inf')).
........
  r65536 | andrew.kuchling | 2008-08-05 01:00:57 +0000 (Tue, 05 Aug 2008) | 1 line

  Bug 3228: take a test from Niels Gustaebel's patch, and based on his patch, check for having os.stat available
........
  r65581 | guido.van.rossum | 2008-08-07 18:51:38 +0000 (Thu, 07 Aug 2008) | 3 lines

  Patch by Ian Charnas from issue 3517.
  Add F_FULLFSYNC if it exists (OS X only so far).
........
  r65609 | antoine.pitrou | 2008-08-09 17:22:25 +0000 (Sat, 09 Aug 2008) | 3 lines

  #3205: bz2 iterator fails silently on MemoryError
........
  r65637 | georg.brandl | 2008-08-11 09:07:59 +0000 (Mon, 11 Aug 2008) | 3 lines

  - Issue #3537: Fix an assertion failure when an empty but presized dict
    object was stored in the freelist.
........
  r65641 | jesse.noller | 2008-08-11 14:28:07 +0000 (Mon, 11 Aug 2008) | 2 lines

  Remove the fqdn call for issue 3270
........
  r65644 | antoine.pitrou | 2008-08-11 17:21:36 +0000 (Mon, 11 Aug 2008) | 3 lines

  #3134: shutil referenced undefined WindowsError symbol
........
  r65645 | jesse.noller | 2008-08-11 19:00:15 +0000 (Mon, 11 Aug 2008) | 2 lines

  Fix the connection refused error part of issue 3419, use errno module instead of a static list of possible connection refused messages.
........
2008-08-12 08:35:52 +00:00