Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork7.9k
Closed
Milestone
Description
Bug report
Bug summary
If matplotlib is run in an environment without a writable home directory, a very confusing error message is printed in which the configdir and the tempdir are interchanged.
Code for reproduction
In Linux, create a user
someone
with no home directory.Run Python with a command like
sudo -u someone python3
In the Python shell, type
import matplotlib
Actual outcome
Matplotlib created a temporary config/cache directory at /root/.config/matplotlib because the default path (/tmp/matplotlib-9yoi7m8l) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
Expected outcome
Matplotlib created a temporary config/cache directory at /tmp/matplotlib-9yoi7m8l because the default path (/root/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
Matplotlib version
- Operating system: Ubuntu 18.04
- Matplotlib version: 3.3.0
- Matplotlib backend (
print(matplotlib.get_backend())
): agg - Python version: 3.9.0b4
- Jupyter version (if applicable): N/A
- Other libraries: N/A
Matplotlib was compiled from source. The error is at line 482 in__init__.py
at the root level in the source tree. The parameters are the wrong way round.
Metadata
Metadata
Assignees
Labels
No labels