[issue19325] _osx_support imports many modules

Ronald Oussoren report at bugs.python.org
Sat Jul 26 11:37:58 CEST 2014


Ronald Oussoren added the comment:

The use of context lib in _read_output should not be necessary anymore as file objects and NamedTemporaryFile objects already are context managers with the right semantics. 

I'm not sure how to avoid the import of tempfile other than adding a minimal implementation of tempfile.mkstemp to _osx_support, in particular because the fallback code in _osx_support is insecure: It uses a named temporary file in /tmp with builtin.open and because the name of the file is predictable there is a small risk of overwriting arbitrary files when an attacker has access to /tmp. I guess the fallback is there to use during bootstrap, it should really be avoided afterwards. 

BTW. A small unscientific test on my laptop didn't see any differences between the regular _osx_support and a version where "import re" was moved inside the functions that use that module.  But: that's on a fast laptop with SSD for storage, there could easily be a difference on systems with slower storage.

Ned: do you remember what your idea was w.r.t. avoid the use of re? I guess its easy enough to replace the current re-using code by code that only uses str methods, but your phrasing seems to indicate another plan.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue19325>
_______________________________________


More information about the Python-bugs-list mailing list