[Python-Dev] Remove tempfile.mktemp() (original) (raw)

Guido van Rossum guido at python.org
Tue Mar 19 10:52:12 EDT 2019


On Tue, Mar 19, 2019 at 6:27 AM Antoine Pitrou <solipsis at pitrou.net> wrote:

-1. Please don't remove tempfile.mktemp(). mktemp() is useful to create a temporary name. All other tempfile functions create an actual file and impose additional burden, for example by making the file unaccessible by other processes. But sometimes all I want is a temporary name that an other program will create / act on, not Python. It's a very common use case when writing scripts. The only reasonable workaround I can think of is to first create a temporary directory using mkdtemp(), then use a well-known name inside that directory. But that has the same security implications AFAICT, since another process can come and create the file / symlink first.

If all you need is a random name, why not just use a random number generator? E.g. I see code like this:

binascii.hexlify(os.urandom(8)).decode('ascii')

-- --Guido van Rossum (python.org/~guido) -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20190319/244ce09f/attachment.html>



More information about the Python-Dev mailing list