Should we add manylinux wheels for previous versions of matplotlib?

Hi,

As y'all probably know, we can now build reasonable manylinux wheels
for matplotlib.

For the upcoming 1.5.2 there is a firm plan to ship manylinux wheels.

I also proposed putting up wheels for the current (1.5.1) and older
versions - see [1].

My argument for doing this, is that it's relatively common for people
to want to check that their code is compatible with older versions of
matplotlib, especially using continuous integration testing on
services like travis - and that putting wheels up on pypi would make
this much easier to do. For example, there are now historical
manylinux wheels up of numpy, scipy and cython up on pypi.

Thomas C worried that this might cause problems. Numpy did get one
complaint about the historical wheels (see [2]). We numpiers decided
to continue providing the old numpy wheels on the basis that the
person's use-case was unusual, and it was easy for him to solve the
problem in a clean way by forcing a source install with the
`--no-binary` flag to pip.

So - the benefits of providing matplotlib wheels for old versions are
easier installation of old versions for testing, or from pip
requirements files that name specific versions. The risks are that
someone with a more complex CI setup might run into problems we
haven't yet thought of.

Any thoughts / votes on this?

Best,

Matthew

[1] https://github.com/matplotlib/matplotlib/issues/6473
[2] https://github.com/numpy/numpy/issues/7570

Just to check, I assume that these wheels would need a backport of:
  https://github.com/matplotlib/matplotlib/pull/6442
?

-n

···

On Mon, May 30, 2016 at 12:09 PM, Matthew Brett <matthew.brett at gmail.com> wrote:

Hi,

As y'all probably know, we can now build reasonable manylinux wheels
for matplotlib.

For the upcoming 1.5.2 there is a firm plan to ship manylinux wheels.

I also proposed putting up wheels for the current (1.5.1) and older
versions - see [1].

My argument for doing this, is that it's relatively common for people
to want to check that their code is compatible with older versions of
matplotlib, especially using continuous integration testing on
services like travis - and that putting wheels up on pypi would make
this much easier to do. For example, there are now historical
manylinux wheels up of numpy, scipy and cython up on pypi.

Thomas C worried that this might cause problems. Numpy did get one
complaint about the historical wheels (see [2]). We numpiers decided
to continue providing the old numpy wheels on the basis that the
person's use-case was unusual, and it was easy for him to solve the
problem in a clean way by forcing a source install with the
`--no-binary` flag to pip.

So - the benefits of providing matplotlib wheels for old versions are
easier installation of old versions for testing, or from pip
requirements files that name specific versions. The risks are that
someone with a more complex CI setup might run into problems we
haven't yet thought of.

Any thoughts / votes on this?

Best,

Matthew

[1] https://github.com/matplotlib/matplotlib/issues/6473
[2] https://github.com/numpy/numpy/issues/7570
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel at python.org
https://mail.python.org/mailman/listinfo/matplotlib-devel

--
Nathaniel J. Smith -- https://vorpus.org

Yes, that's already done over at :
https://github.com/matthew-brett/manylinux-builds/blob/master/build_matplotlibs.sh
.

Matthew

···

On Mon, May 30, 2016 at 4:47 PM, Nathaniel Smith <njs at pobox.com> wrote:

Just to check, I assume that these wheels would need a backport of:
  https://github.com/matplotlib/matplotlib/pull/6442
?

To see what you'd get if we did upload the wheels, try:

python -m pip install --upgrade pip # Upgrade to latest pip
pip install -f https://nipy.bic.berkeley.edu/manylinux matplotlib==1.4.0

etc.

Cheers,

Matthew

···

On Mon, May 30, 2016 at 5:08 PM, Matthew Brett <matthew.brett at gmail.com> wrote:

On Mon, May 30, 2016 at 4:47 PM, Nathaniel Smith <njs at pobox.com> wrote:

Just to check, I assume that these wheels would need a backport of:
  https://github.com/matplotlib/matplotlib/pull/6442
?

Yes, that's already done over at :
https://github.com/matthew-brett/manylinux-builds/blob/master/build_matplotlibs.sh

Hi,

···

On Wed, Jun 1, 2016 at 10:39 AM, Matthew Brett <matthew.brett at gmail.com> wrote:

On Mon, May 30, 2016 at 5:08 PM, Matthew Brett <matthew.brett at gmail.com> wrote:

On Mon, May 30, 2016 at 4:47 PM, Nathaniel Smith <njs at pobox.com> wrote:

Just to check, I assume that these wheels would need a backport of:
  https://github.com/matplotlib/matplotlib/pull/6442
?

Yes, that's already done over at :
https://github.com/matthew-brett/manylinux-builds/blob/master/build_matplotlibs.sh

To see what you'd get if we did upload the wheels, try:

python -m pip install --upgrade pip # Upgrade to latest pip
pip install -f https://nipy.bic.berkeley.edu/manylinux matplotlib==1.4.0

Has anyone had a chance to test these wheels? Any problems?

Cheers,

Matthew