Coder Social home page Coder Social logo

matplotlib-wheels's People

Contributors

hmaarrfk avatar ivanov avatar janaknat avatar matthew-brett avatar odidev avatar qulogic avatar tacaswell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

matplotlib-wheels's Issues

Test error on test_mathtext for Python 3.6

I just got the Python 3.6 build and tests working with the fix from #2, but now I get this error:

======================================================================

ERROR: matplotlib.tests.test_mathtext.test_mathtext_cm_53.test

----------------------------------------------------------------------

Traceback (most recent call last):

  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/nose/case.py", line 198, in runTest

    self.test(*self.arg)

  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/matplotlib/testing/decorators.py", line 53, in failer

    result = f(*args, **kwargs)

  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/matplotlib/testing/decorators.py", line 207, in do_test

    figure.savefig(actual_fname, **self._savefig_kwarg)

  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/matplotlib/figure.py", line 1563, in savefig

[snip]

 File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/pyparsing.py", line 1510, in _parseCache

    value = cache.get(lookup)

  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.6/site-packages/pyparsing.py", line 1459, in get

    return cache.get(key, not_in_cache)

RecursionError: maximum recursion depth exceeded

https://s3.amazonaws.com/archive.travis-ci.org/jobs/187592465/log.txt

Any insight into what's going on there?

Update multibuild to a version that strips binaries in wheels

On the next release, please update the multibuild submodule to matthew-brett/multibuild@b2748e5 or newer. This should reduce the size of the Matplotlib wheels from 14,3M to 12M by excluding unnecessary debug symbols. The more important change is that the extracted files on disk are significantly smaller, e.g. when you install matplotlib in a docker container, then the size reduction is very noticable.

Setting macosx as the default backend causes an ImportError

In matplotlib 3.0.0 or newer, the build setting the macosx backend as the default backend for the wheel build of matplotlib causes an ImportError:

โ—‹ python test.py --verbose-debug
$HOME=/Users/goldbaum
CONFIGDIR=/Users/goldbaum/.matplotlib
matplotlib data path: /Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/site-packages/matplotlib/mpl-data
loaded rc file /Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc
matplotlib version 3.0.2
interactive is False
platform is darwin
loaded modules: ['builtins', 'sys', '_frozen_importlib', '_imp', '_warnings', '_thread', '_weakref', '_frozen_importlib_external', '_io', 'marshal', 'posix', 'zipimport', 'encodings', 'codecs', '_codecs', 'encodings.aliases', 'encodings.utf_8', '_signal', '__main__', 'encodings.latin_1', 'io', 'abc', '_weakrefset', 'site', 'os', 'errno', 'stat', '_stat', 'posixpath', 'genericpath', 'os.path', '_collections_abc', '_sitebuiltins', 'sysconfig', '_sysconfigdata_m_darwin_darwin', '_osx_support', 're', 'enum', 'types', 'functools', '_functools', 'collections', 'operator', '_operator', 'keyword', 'heapq', '_heapq', 'itertools', 'reprlib', '_collections', 'weakref', 'collections.abc', 'sre_compile', '_sre', 'sre_parse', 'sre_constants', '_locale', 'copyreg', '_bootlocale', 'importlib', 'importlib._bootstrap', 'importlib._bootstrap_external', 'warnings', 'importlib.util', 'importlib.abc', 'importlib.machinery', 'contextlib', 'mpl_toolkits', 'matplotlib', 'atexit', 'distutils', 'distutils.version', 'inspect', 'ast', '_ast', 'dis', 'opcode', '_opcode', 'linecache', 'tokenize', 'token', 'locale', 'logging', 'time', 'traceback', 'string', '_string', 'threading', 'pathlib', 'fnmatch', 'ntpath', 'urllib', 'urllib.parse', 'pprint', 'shutil', 'zlib', 'bz2', '_compression', '_bz2', 'lzma', '_lzma', 'pwd', 'grp', 'subprocess', 'signal', '_posixsubprocess', 'select', 'selectors', 'math', 'tempfile', 'random', 'hashlib', '_hashlib', '_blake2', '_sha3', 'bisect', '_bisect', '_random', 'urllib.request', 'base64', 'struct', '_struct', 'binascii', 'email', 'http', 'http.client', 'email.parser', 'email.feedparser', 'email.errors', 'email._policybase', 'email.header', 'email.quoprimime', 'email.base64mime', 'email.charset', 'email.encoders', 'quopri', 'email.utils', 'socket', '_socket', 'datetime', '_datetime', 'email._parseaddr', 'calendar', 'email.message', 'uu', 'email._encoded_words', 'email.iterators', 'ssl', 'ipaddress', 'textwrap', '_ssl', 'urllib.error', 'urllib.response', '_scproxy', 'matplotlib.cbook', 'glob', 'gzip', 'numbers', 'numpy', '__future__', 'numpy._globals', 'numpy.__config__', 'numpy.version', 'numpy._import_tools', 'numpy.add_newdocs', 'numpy.lib', 'numpy.lib.info', 'numpy.lib.type_check', 'numpy.core', 'numpy.core.info', 'numpy.core.multiarray', 'numpy.core.umath', 'numpy.core._internal', 'numpy.compat', 'numpy.compat._inspect', 'numpy.compat.py3k', 'ctypes', '_ctypes', 'ctypes._endian', 'numpy.core.numerictypes', 'numpy.core.numeric', 'pickle', '_compat_pickle', '_pickle', 'numpy.core.fromnumeric', 'numpy.core._methods', 'numpy.core.arrayprint', 'numpy.core.defchararray', 'numpy.core.records', 'numpy.core.memmap', 'numpy.core.function_base', 'numpy.core.machar', 'numpy.core.getlimits', 'numpy.core.shape_base', 'numpy.core.einsumfunc', 'numpy.testing', 'unittest', 'unittest.result', 'unittest.util', 'unittest.case', 'difflib', 'unittest.suite', 'unittest.loader', 'unittest.main', 'argparse', 'copy', 'gettext', 'unittest.runner', 'unittest.signals', 'numpy.testing._private', 'numpy.testing._private.utils', 'gc', 'numpy.lib.utils', 'numpy.testing._private.decorators', 'numpy.testing._private.nosetester', 'numpy.testing._private.pytesttester', 'numpy.lib.ufunclike', 'numpy.lib.index_tricks', 'numpy.lib.function_base', 'numpy.lib.twodim_base', 'numpy.lib.histograms', 'numpy.matrixlib', 'numpy.matrixlib.defmatrix', 'numpy.linalg', 'numpy.linalg.info', 'numpy.linalg.linalg', 'numpy.linalg.lapack_lite', 'numpy.linalg._umath_linalg', 'numpy.lib.stride_tricks', 'numpy.lib.mixins', 'numpy.lib.nanfunctions', 'numpy.lib.shape_base', 'numpy.lib.scimath', 'numpy.lib.polynomial', 'numpy.lib.arraysetops', 'numpy.lib.npyio', 'numpy.lib.format', 'numpy.lib._datasource', 'numpy.lib._iotools', 'numpy.lib.financial', 'decimal', '_decimal', 'numpy.lib.arrayterator', 'numpy.lib.arraypad', 'numpy.lib._version', 'numpy.core._multiarray_tests', 'numpy._distributor_init', 'numpy.fft', 'numpy.fft.info', 'numpy.fft.fftpack', 'numpy.fft.fftpack_lite', 'numpy.fft.helper', 'numpy.polynomial', 'numpy.polynomial.polynomial', 'numpy.polynomial.polyutils', 'numpy.polynomial._polybase', 'numpy.polynomial.chebyshev', 'numpy.polynomial.legendre', 'numpy.polynomial.hermite', 'numpy.polynomial.hermite_e', 'numpy.polynomial.laguerre', 'numpy.random', 'numpy.random.info', 'cython_runtime', 'mtrand', 'numpy.random.mtrand', 'numpy.ctypeslib', 'numpy.ma', 'numpy.ma.core', 'numpy.ma.extras', 'matplotlib.cbook.deprecation', 'matplotlib.rcsetup', 'matplotlib.fontconfig_pattern', 'pyparsing', 'matplotlib.colors', 'matplotlib._color_data', 'cycler', 'six', 'six.moves', 'matplotlib._version', 'json', 'json.decoder', 'json.scanner', '_json', 'json.encoder', 'dateutil', 'dateutil._version']
CACHEDIR=/Users/goldbaum/.matplotlib
Using fontManager instance from /Users/goldbaum/.matplotlib/fontlist-v300.json
Traceback (most recent call last):
  File "test.py", line 1, in <module>
    from matplotlib import pyplot
  File "/Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/site-packages/matplotlib/pyplot.py", line 2374, in <module>
    switch_backend(rcParams["backend"])
  File "/Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/site-packages/matplotlib/pyplot.py", line 207, in switch_backend
    backend_mod = importlib.import_module(backend_name)
  File "/Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/Users/goldbaum/.pyenv/versions/3.6.5/lib/python3.6/site-packages/matplotlib/backends/backend_macosx.py", line 14, in <module>
    from matplotlib.backends import _macosx
ImportError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are using (Ana)Conda please install python.app and replace the use of 'python' with 'pythonw'. See 'Working with Matplotlib on OSX' in the Matplotlib FAQ for more information.

This could be fixed by not setting macosx as the default backend in the matplotlibrc that gets shipped with the wheel.

Wheel support for linux aarch64

Summary
Installing matplotlib on aarch64 via pip using command "pip3 install matplotlib" tries to build wheel from source code

Problem description
matplotlib don't have wheel for aarch64 on PyPI repository. So, while installing matplotlib via pip on aarch64, pip builds wheel for same resulting in it takes more time to install matplotlib. Making wheel available for aarch64 will benefit aarch64 users by minimizing matplotlib installation time.

Expected Output
Pip should be able to download matplotlib wheel from PyPI repository rather than building it from source code.

@matplotlib-team, please let me know if I can help you building wheel/uploading to PyPI repository. I am curious to make matplotlib wheel available for aarch64. It will be a great opportunity for me to work with you.

Weird test errors on OSX

Last successful test run on OSX was: https://travis-ci.org/MacPython/matplotlib-wheels/builds/158635805, 4 months ago.

Errors started 24 days ago, at https://travis-ci.org/MacPython/matplotlib-wheels/builds/181269028:

======================================================================
ERROR: Failure: RuntimeError ('list' must be None or a list, not <class 'str'>)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/site-packages/nose/loader.py", line 285, in generate
    for test in g():
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/site-packages/matplotlib/testing/decorators.py", line 216, in test
    baseline_dir, result_dir = _image_directories(self._func)
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/site-packages/matplotlib/testing/decorators.py", line 399, in _image_directories
    mod_file = find_dotted_module(func.__module__)[1]
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/site-packages/matplotlib/testing/decorators.py", line 389, in find_dotted_module
    res = file, path, _ = imp.find_module(sub_mod, path)
  File "/Users/travis/build/MacPython/matplotlib-wheels/venv/lib/python3.5/imp.py", line 270, in find_module
    "not {}".format(type(name)))
RuntimeError: 'list' must be None or a list, not <class 'str'>

https://travis-ci.org/MacPython/matplotlib-wheels/jobs/181269039

Errors on Python 3.4 and Python 3.5, but not 2.7.

Investigation by TC at the time at : https://gitter.im/matplotlib/matplotlib?at=58457e49b4ffd59e38ea84c8, further pointing to http://bugs.python.org/issue26844 , but this is a patch to fix the error message, to make it more informative.

I couldn't reproduce the error on my local desktop, running OSX 10.11.

Thoughts:

  • travis recently replaced its OSX default runtime; need to replicate OSX / xcode version for last successful build, to see if it could be an infrastructure change;
  • investigate dependencies. TC mentioned namespace packages - @tacaswell - was that from some further investigation you did?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.