summaryrefslogtreecommitdiffstats
path: root/Lib/tempfile.py
Commit message (Collapse)AuthorAgeFilesLines
* Thanks to Detlef Lannert for pointing out a typo in the code thatTim Peters2002-01-301-1/+1
| | | | uses _DummyMutex on platforms without threads.
* New TemporaryFile implementation for Windows: this doesn't need aTim Peters2002-01-301-1/+17
| | | | | | | | | | | TemproraryFileWrapper wrapper anymore, and should be immune from the problem that a temp file inherited by a spawned process caused an attempt to close the temp file in the spawning process to blow up (the unlink in TemporaryFileWrapper.close() blew up with a "Permission denied" error because, despite that the temp file got closed in the spawning process, the spawned process still had it open by virtue of C-level file descriptor inheritance). In context, that bug took days to figure out <wink/sigh>.
* SF bug #509805 tempfile.gettempdir not threadsafeTim Peters2002-01-281-2/+28
| | | | | | | | | | | | | | | This is an ancient race when multiple threads call gettempdir() (or anything relying on it) for the first time. Fixed x-platform via the Big Hammer of rearranging the code to serialize the first calls. Subsequent calls are as fast as before. Note that the Python test suite can't provoke this bug: it requires setting up multiple threads making the very first calls into tempfile, but the test suite uses tempfile several times before getting to test_threadedtempfile. Bugfix candidate.
* TemporaryFileWrapper: fixed typo in new comment.Tim Peters2001-12-181-1/+1
|
* TemporaryFileWrapper: cache the value of os.unlink for use by __del__,Tim Peters2001-12-181-1/+8
| | | | | to prevent mysterious errors at shutdown due to "os.unlink" turning into "None.unlink".
* SF bug #476138: tempfile behavior across platformsTim Peters2001-10-291-4/+6
| | | | | Ensure that a tempfile can be closed any number of times without error. This wasn't true on Windows.
* SF patch #474590 -- RISC OS supportGuido van Rossum2001-10-241-1/+5
|
* Search /tmp before /var/tmp and /usr/tmp -- this seems preferred.Guido van Rossum2001-03-021-1/+1
| | | | SF patch #404564, Gregor Hoffleit.
* final round of __all__ lists (I hope) - skipped urllib2 because Moshe may beSkip Montanaro2001-03-011-0/+2
| | | | giving it a slight facelift
* fix long lineJeremy Hylton2001-02-191-1/+2
|
* Whitespace normalization.Tim Peters2001-01-151-25/+25
|
* Reverting a dumb experimental version I checked in by mistake.Tim Peters2001-01-141-9/+2
|
* SF bug 128713: type(mmap_object) blew up on Linux.Tim Peters2001-01-141-2/+9
|
* Guido found a brand new race in tempfile on Linux, due to Linux changingTim Peters2001-01-131-16/+31
| | | | | | | | | | | | pid across threads (but in that case, it's still the same process, and so still sharing the "template" cache in tempfile.py). Repaired that, and added a new std test. On Linux, someone please run that standalone with more files and/or more threads; e.g., python lib/test/test_threadedtempfile.py -f 1000 -t 10 to run with 10 threads each creating (and deleting) 1000 temp files.
* A variant of SF patch 103028 (Make tempfile.mktemp threadsafe).Tim Peters2001-01-121-12/+45
| | | | | | | Tested on Windows. Should be tested on Linux. Should also be tested on some platform without threads (I simulated that by making the "import thread" fail, but that's not the same as actually doing it!).
* Patch by tg@FreeBSD.org to try /var/tmp first.Guido van Rossum2000-08-291-1/+1
| | | | This helps on 4.4BSD-based systems.
* Security patch for Unix by Chris McDonough.Guido van Rossum2000-04-241-7/+21
| | | | | | This uses the same precautions when trying to find a temporary directory as when the actual tempfile is created (using O_CREAT and O_EXCL). On non-posix platforms, nothing is changed.
* The third and final doc-string sweep by Ka-Ping Yee.Guido van Rossum2000-02-041-8/+6
| | | | | | | | The attached patches update the standard library so that all modules have docstrings beginning with one-line summaries. A new docstring was added to formatter. The docstring for os.py was updated to mention nt, os2, ce in addition to posix, dos, mac.
* In class TemporaryFileWrapper, don't cache attributes of tpye int --Guido van Rossum1999-06-011-1/+2
| | | | | | these happen to be 'closed' and 'softspace', which may change! Noted by Dave Ascher (with slightly different solution).
* Improvement to the previous fix suggested by Thomas Bellman: if theGuido van Rossum1998-10-241-2/+6
| | | | | unlink() or fdopen() fail, close the file descriptor and re-raise the exception.
* The TemporaryFile() function has a security leak -- because theGuido van Rossum1998-10-241-5/+6
| | | | | | | | | | | | | filenames generated are easily predictable, it is possible to trick an unsuspecting program into overwriting another file by creating a symbolic link with the predicted name. Fix this by using the low-level os.open() function with the O_EXCL flag and mode 0700. On non-Unix platforms, presumably there are no symbolic links so the problem doesn't exist. The explicit test for Unix (posix, actually) makes it possible to change the non-Unix logic to work without a try-except clause. The mktemp() file is as unsafe as ever.
* Fix so that after a fork() -- on Unix only -- the template getsGuido van Rossum1998-10-141-3/+9
| | | | recalculated.
* On the Mac, create the Temporary Items folder if it does not exist yet.Guido van Rossum1998-04-281-1/+1
| | | | (Jack)
* When getcwd() doesn't exist or raises an exception, don't fail butGuido van Rossum1998-04-091-1/+5
| | | | | fall back to using os.curdir instead; if it is fine, don't use os.curdir at all.
* Mass check-in after untabifying all files that need it.Guido van Rossum1998-03-261-58/+58
|
* Add new optional parameter 'suffix' (default ''), which is appended toGuido van Rossum1997-12-191-10/+11
| | | | the temporary file name. Also some minor formatting of Jim F's code.
* On NT, use a better template, ~XXX- where XXX is os.getpid().Guido van Rossum1997-12-151-0/+2
|
* Added TemporaryFile and wrapper class by Jim Fulton.Guido van Rossum1997-08-121-2/+41
| | | | Look in more env vars (for NT: TEMP, TMP).
* (Jack:) Better MacOS support.Guido van Rossum1997-04-111-0/+10
|
* Attempt at Windows-NT compatibility.Guido van Rossum1996-08-201-1/+4
|
* Restore 1.3 behavior of gettempdir(): if tempdir is already set, believe it.Guido van Rossum1996-08-081-0/+2
|
* Be more careful about default temp dirGuido van Rossum1996-05-281-10/+20
|
* Mostly rewritten to be more flexible and more portableGuido van Rossum1992-03-311-18/+41
| | | | ./
* Use $TMPDIR if it is set in the environment.Guido van Rossum1992-01-141-1/+6
|
* Use 'global' instead of struct kludge.Guido van Rossum1991-12-261-6/+5
|
* New class syntax.Guido van Rossum1991-12-261-1/+1
|
* Initial revisionGuido van Rossum1991-11-121-0/+32