[python-ldap] Patch: ldap.syncrepl UUID constructors use bytes (Python 3 compatbility)
Karl Kornel
akkornel at stanford.edu
Mon Jun 5 21:12:59 EDT 2017
On 6/5/17, 8:01 AM, "James Andrewartha" <jamesa at daa.com.au> wrote:
On Mon, 5 Jun 2017, Michael Ströder wrote:
> AFAIK the built-in function bytes() was introduced in Python 2.6. So unfortunately this
> raises a question about back-ward compability to older Python versions.
>
> Which versions of Python 2.x still have to be supported by today's python-ldap?
RHEL 6 shipped with Python 2.6 in 2010, that is the oldest distro I'd
reasonably expect to be supported today. You could argue for 2.7 since
that was also released in 2010 and is easily availble for RHEL 6.
[apologies to Michael and Karl for three copies - I forgot I was
subscribed from an email address that is forwarded elsewhere]
--
# TRS-80 trs80(a)ucc.gu.uwa.edu.au #/ "Otherwise Bub here will do \
# UCC Wheel Member http://trs80.ucc.asn.au/ #| what squirrels do best |
[ "There's nobody getting rich writing ]| -- Collect and hide your |
[ software that I know of" -- Bill Gates, 1980 ]\ nuts." -- Acid Reflux #231 /
That’s a good question. I have looked around, and have come up with a summary of major Linux distributions, the current Python 2 version being shipped, and the expected end-of-life date for the oldest supported OS version.
By “major Linux distributions”, I mean: RHEL, Debian, Ubuntu, Slackware, Gentoo, and Arch. Note that I do not list derivative distributions, except for Ubuntu (since Ubuntu makes so many changes from Debian). That means I don’t list (for example) CentOS or Oracle Linux, since they are derivatives of RHEL. Apologies if I missed a distro!
The executive summary is, for the major Linux distros, the oldest supported releases come with some version of Python 2.6. If you want to only support Python 2.7, then you have to drop RHEL 6 and Slackware 13.x, but the rest of the releases are OK.
Here are the full results:
• RHEL:
RHEL 5 has gone “End of Production”, so the only people getting support (until 30 Nov. 2020) are those who paid for the Extended Life-cycle support [7]. That means the oldest RHEL under general support is RHEL 6.
The current python 2 version in RHEL 6 is version 2.6.6-66.el6_8 [15].
RHEL 7 currently has python 2 version 2.7.5-48 [15].
• Debian:
The oldest supported Debian is 7 (wheezy), which is under support until end of May 2018 [6].
The current python 2 version in Debian wheezy is 2.7.3-4+deb7u1 [5].
• Ubuntu:
The oldest support Ubuntu is 14.04 LTS (Trusty), which is under support until April 2019 [4].
The current python 2 version in Ubuntu Trusty is 2.7.6-8ubuntu0.3 [3].
• Slackware:
According to [12], the oldest supported Slackware is 13.0 (released 26 August 2009), simple because no EOL has been announced. I haven’t used Slackware, and it seems that the EOL policy is “when people stop posting updates” [13].
The Python 2 version in Slackware 13.0 is 2.6.2 [11].
I also checked, and the oldest Slackware to come with Python 2.7 is Slackware 14.0 (released 28 September 2012 [12]) that has Python 2.7.3 [14].
• Gentoo:
I haven’t used Gentoo before, but my understanding (from [2]) is that it is updating weekly, and is meant for people to build their own software from source.
The current Python 2 version in Gentoo’s package manager is 2.7.12 [1].
• Arch:
Arch Linux puts out a new release every month [9], doing rolling releases similar to Gentoo [10].
The current Python 2 version in Arch’s package manager is 2.7.13-2 [8].
[1]: https://packages.gentoo.org/packages/dev-lang/python
[2]: https://en.wikipedia.org/wiki/Gentoo_Linux
[3]: https://packages.ubuntu.com/trusty-updates/python2.7
[4]: https://wiki.ubuntu.com/Releases, see the line for Ubuntu 14.04.5 LTS.
[5]: https://packages.debian.org/wheezy/python
[6]: https://www.debian.org/releases/wheezy/
[7]: https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates
[8]: https://www.archlinux.org/packages/extra/x86_64/python2/
[9]: https://www.archlinux.org/releng/releases/
[10]: https://en.wikipedia.org/wiki/Arch_Linux#Rolling_releases
[11]: http://www.slackware.com/announce/13.0.php
[12]: https://en.wikipedia.org/wiki/Slackware#Releases
[13]: http://www.linuxquestions.org/questions/slackware-14/slackware-release-end-of-life-policy-642390/
[14]: http://www.slackware.com/announce/14.0.php
[15]: Info pulled from our internal Yum server.
~ Karl
More information about the python-ldap
mailing list