Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SandboxViolation on EasyInstall #14782

Closed
mikkokotila opened this issue Jul 15, 2019 · 6 comments
Closed

SandboxViolation on EasyInstall #14782

mikkokotila opened this issue Jul 15, 2019 · 6 comments

Comments

@mikkokotila
Copy link

I got the following error message from a Travis build referencing back to matplotlib. Any idea what this is / what do with this?

Installed /home/travis/virtualenv/python3.5.6/lib/python3.5/site-packages/Dedomena-0.0.6-py3.5.egg
Processing dependencies for Dedomena==0.0.6
Searching for twintel
Reading https://pypi.org/simple/twintel/
Downloading https://files.pythonhosted.org/packages/3a/f1/de2d538a8ffb55362f1a8710dc921035b32c53ee7a20cda789d19c95fe64/twintel-1.3.tar.gz#sha256=09f88f956c8cf618a34801a811bdac10c6cc5943862ceb3708bbf2f298a16b54
Best match: twintel 1.3
Processing twintel-1.3.tar.gz
Writing /tmp/easy_install-3t1yzx2q/twintel-1.3/setup.cfg
Running twintel-1.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-3t1yzx2q/twintel-1.3/egg-dist-tmp-au2twq58
error: SandboxViolation: mkdir('/home/travis/.config/matplotlib', 511) {}
The package setup script has attempted to modify files on your system
that are not within the EasyInstall build area, and has been aborted.
This package cannot be safely installed by EasyInstall, and may not
support alternate installation locations even if you run its setup
script by hand.  Please inform the package's author and the EasyInstall
maintainers to find out if a fix or workaround is available.
The command "python setup.py install" failed and exited with 1 during .
Your build has been stopped.
@dstansby
Copy link
Member

It looks like the problem comes when installing the twintel package, and not Matplotlib here. Exactly what command did you run to get the above output?

@dstansby dstansby added the status: needs clarification Issues that need more information to resolve. label Jul 15, 2019
@QuLogic
Copy link
Member

QuLogic commented Jul 15, 2019

This is a bug during the install of twintel and the weird things it's trying to do in its setup.py.

@QuLogic QuLogic closed this as completed Jul 15, 2019
@mikkokotila
Copy link
Author

Thanks. It's strange that the error message referred to matplotlib:

error: SandboxViolation: mkdir('/home/travis/.config/matplotlib', 511) {}

@tacaswell
Copy link
Member

This does seem to actually be us (and twintel is trying to install a dependency of which Matplotlib is a dependency)

try:
configdir.mkdir(parents=True, exist_ok=True)
except OSError:
pass
on master
def _get_config_or_cache_dir(xdg_base):
from matplotlib.cbook import mkdirs
configdir = os.environ.get('MPLCONFIGDIR')
if configdir is not None:
configdir = os.path.abspath(configdir)
if not os.path.exists(configdir):
mkdirs(configdir)
if not _is_writable_dir(configdir):
return _create_tmp_config_dir()
return configdir
on 2.2.x but it looks like we have always been doing this so it is not clear to me why this is just coming up now.

@mikkokotila Can you reproduce this locally or get anymore debugging information out of your CI?

@tacaswell tacaswell reopened this Jul 16, 2019
@QuLogic
Copy link
Member

QuLogic commented Jul 16, 2019

This is not a new error. It's existed since twintel was added to dedomena. Setuptools is just better at sandboxing now.

@anntzer
Copy link
Contributor

anntzer commented Jul 22, 2019

I agree with @QuLogic's analysis. mikkokotila/twintel#2 also likely fixed the issue.

@anntzer anntzer closed this as completed Jul 22, 2019
@anntzer anntzer removed the status: needs clarification Issues that need more information to resolve. label Jul 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants