[issue30227] test_site must not write outside the build directory: must not write into $HOME/.local/

STINNER Victor report at bugs.python.org
Tue May 2 06:15:21 EDT 2017


New submission from STINNER Victor:

test_site creates the $HOME/.local/lib/python3.7/site-packages/ directory, or parent directories if needed. That's wrong. An unit test must not modify its environment, especially the home directory!

The unit test must mock $HOME environment variable and mock the home directory.

Example of issue of writing into $HOME:

http://buildbot.python.org/all/builders/AMD64%20FreeBSD%20CURRENT%20Non-Debug%203.5/builds/75/steps/test/logs/stdio

[109/398] test_site
test_site skipped -- unable to create user site directory ('/.local/lib/python3.5/site-packages'): [Errno 13] Permission denied: '/.local'

On this buildbot, $HOME is set to /. The whole test_site test is skipped just because of that.

Recent change on test_site related to this issue: commit b85c136903c6d2368162f7c4a58f258c9c69ead0, bpo-30108.

----------
components: Distutils, Tests
messages: 292739
nosy: dstufft, haypo, merwok
priority: normal
severity: normal
status: open
title: test_site must not write outside the build directory: must not write into $HOME/.local/
versions: Python 3.7

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


More information about the Python-bugs-list mailing list