<div dir="ltr">Another possible solution could be to drop the dependency on subprocess32 but retain the use of it in <font color="#1c3aa9"><u>compat/subprocess.py </u></font>and fallback to regular subprocess if not found and then document that if a user sees <a href="https://github.com/matplotlib/matplotlib/issues/5314">https://github.com/matplotlib/matplotlib/issues/5314</a> they should install subprocess32. There should be few issues with dropping the dependency on Linux as the main bug it resolves is OSX specific. <div><div><br></div><div>Furthermore 5314 should have been resolved in python 2.7.12 so the surface for seeing the bug on OSX is getting smaller. Unfortunately Apple still ships python 2.7.10 as the default python on OSX in Sierra (10.12) </div><div><br></div><div>Jens</div></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, 1 Aug 2017 at 12:54 Matthew Brett <<a href="mailto:matthew.brett@gmail.com">matthew.brett@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
On Sun, Jul 30, 2017 at 4:20 AM, Thomas Caswell <<a href="mailto:tcaswell@gmail.com" target="_blank">tcaswell@gmail.com</a>> wrote:<br>
> Folks,<br>
><br>
> With 2.0 we picked up subprocess32<br>
> (<a href="https://pypi.python.org/pypi/subprocess32/" rel="noreferrer" target="_blank">https://pypi.python.org/pypi/subprocess32/</a>) to be able to use the improved<br>
> subprocess module, however this has caused several problem with [1, 2] due<br>
> to a bug in the release version and wheels not being published on pypi.  The<br>
> bug is reportedly fixed on master [4] and Mathew Brett has provided them<br>
> with wheel-building machinery [3], but there has been no motion on that<br>
> sense May.<br>
><br>
> I think our options are:<br>
><br>
>  - document the known issues (meaning wheel-installing mac users have to<br>
> install xcode and people on very old linux need to install from the<br>
> subprocess32 master branch, and general linux users need to have a gcc<br>
> installed)<br>
>  - hope subprocess32 does a release and adopt Matthew's wheels in the next<br>
> month<br>
>  - vendor the master branch (is there a way we can do this _just_ for the<br>
> wheels without actually vendoring it in the source tree?)<br>
>  - change dependencies<br>
><br>
> After 2.1 we won't have the last option until 2.2 so if we want to do that,<br>
> it needs to be done this month.<br>
><br>
> If anyone is motivated to work on changing the dependency, please do so<br>
> otherwise I am inclined to go with the first option.<br>
<br>
I'd be really sad if we went for option 1.  I'm particularly<br>
interested in installations for new users, and these are often a) via<br>
pip with b) Python 2.7 and b) without a compiler set up.  So this is a<br>
painful hurdle, often for those least adapted to clear it...<br>
<br>
I'm happy to do donkey work if someone can point me the way forward to<br>
replacing the dependency.<br>
<br>
Cheers,<br>
<br>
Matthew<br>
_______________________________________________<br>
Matplotlib-devel mailing list<br>
<a href="mailto:Matplotlib-devel@python.org" target="_blank">Matplotlib-devel@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/matplotlib-devel" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/matplotlib-devel</a><br>
</blockquote></div>