<div dir="auto"><br>
Fred Wright <<a href="mailto:fw@fwright.net" target="_blank" rel="noreferrer">fw@fwright.net</a>> 於 2018年10月22日 週一 上午3:27寫道:<br>
><br>
><br>
> On Sun, 21 Oct 2018, Chih-Hsuan Yen wrote:<br>
><br>
> > I'd like to remove old Python version - python{24,25,31,32,33}. I see no<br>
> > ports depend on python{31,32,33} and no one maintains them, but those<br>
> > ports are still kept for while. Is there a reason for not deleting them?<br>
><br>
> Some of us like to test Python code against as many versions as possible.<br>
> It's bad enough to have to maintain locally patched versions of a few<br>
> Python-related ports just to expand the version lists, without having the<br>
> Python versions themselves disappear.<br>
><br>
<br>
Hi,<br>
<br>
Thanks for pointing out a valid reason for keeping old Python versions. I know some projects still supporting as old as Python 3.2 or 2.6. Are there examples for Python 2.5 and 3.1?<br>
<br>
> My own philosophy is never to drop anything without a sound technical<br>
> reason, rather than just being "too old".  If the same zeal for<br>
> eliminating Python versions were applied to OS versions, MacPorts wouldn't<br>
> run on anything older than 10.12.<br>
><br>
<br>
Well, upgrading from old Python versions is much easier than upgrading from old OS X versions. Due to Apple policies, new OS X versions do not work on old machines, and buying a new machine is apparently not an option for some people. In contrast, upgrading from Python 2.5 to 2.7 or 3.1 to 3.4+ takes almost no cost as CPython developers keep backward compatibility as best as they can do.<div dir="auto"><br></div><div dir="auto">Regarding "technical reasons" - there's one: old Python version does not build with OpenSSL 1.1, thus a blocker for upgrading the openssl port, and I don't think backporting fixes for openssl 1.1 is feasible as hundreds of lines should be patched.<br>
<br>
> Checking port dependents is inadequate, since it doesn't cover<br>
> "dependents" based on user interest.  If one were to remove all ports<br>
> without dependents, and iterate, there would be no ports at all. :-)<br>
><div dir="auto"><br></div><div dir="auto">Of course I won't even consider ports with maintainers - there's at least one user :) I wrote this letter as those old Python versions are marked as nomaintainer (except python24, which the maintainer confirms he no longer needs it), so I wonder if there are still users for them.</div><div dir="auto"><br></div><div dir="auto">Regards,</div><div dir="auto"><br></div><div dir="auto">Chih-Hsuan Yen</div><div dir="auto"><br>
> Fred Wright<br></div></div></div>