New submission from Vinay Sajip <vinay_sa...@yahoo.co.uk>:

There are a number of places in packaging.install where temporary directories 
are created, but never cleaned up:

1. In _move_files, if no destination path is passed in, one is created using 
mkdtemp(), but it's not clear where this would be deleted. Moreover, it's never 
called without a path and not part of the public API, so it would make sense to 
always expect a destination to be passed in (and update the docstring to match)

2. install_local_project, in the case of an archive, unpacks it into a 
mkdtemp()'d directory, but never deletes that directory later.

3. install_dists() also calls mkdtemp() if a path is not passed in, but it's 
not clear where this would be deleted. This should be changed to always require 
a path to be passed in. The install_from_infos accepts None as an install path 
and passes that to install_dists, but why are we being so generous? It's not 
asking a lot to be given an explicit path to install to.

Note: the DistInfo class in packaging.pypi.dist also does this kind of thing 
(in the download and unpack methods) - it would seem sensible to make similar 
changes there.

----------
assignee: tarek
components: Distutils2, Library (Lib)
messages: 138860
nosy: alexis, eric.araujo, tarek, vinay.sajip
priority: normal
severity: normal
status: open
title: packaging install fails to clean up temp files
type: behavior
versions: Python 3.3

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue12391>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to