Re: Bug#714896: Python 3 as default
I have been actively working on the python-debianbts part of this. I commented on #732644 but not CC the list at the time. The python-debianbts module depends on python-soappy. There seems to only be one SOAP module currently working on python3. It is a fork of suds which is not packaged for Debian currently (it should probably replace our existing python-suds since upstream is dead) [1]. My work has been on porting python-debianbts to suds. This is made a lot more difficult because the Debian BTS does not expose a WSDL file. I tested some WSDL generation modules on the debbugs code base, but ran into limitations in those modules that would not work with the debbugs code. Luckily, I did find someone had done a good chunk of the work on making a WSDL for debbugs [2]. I have some functions ported to suds using this WSDL file. The get_versions and get_usertags methods are not included in the WSDL, and I have yet to figure out how to properly form them. In the response for get_usertags, the usertag comes back as the name of an XML element, rather than the string value of a element. I am concerned that python-debianbts is not under team maintence. I have already put a good deal of work into this already and there is potential that the maintainer will not have any interest in accepting patches to port the module to python3. Regards, Jordan Metzmeier [1] https://pypi.python.org/pypi/suds-jurko/0.4.1.jurko.3 [2] https://github.com/jwiegley/debbugs-gnu/blob/master/Debbugs.wsdl -- To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201401092323.33910.jmetzmeie...@gmail.com
Re: Bug#714896: Python 3 as default
On Dec 07, 2013, at 01:32 AM, Steve Langasek wrote: It seems there is a wishlist bug report asking for reportbug to be switched: http://bugs.debian.org/714896 I've started working on this, though I won't finish before the winter break. I've pushed my personal git repo to alioth, modulo the apparent 6 hour symlink cronjob[*] git clone git://git.debian.org/users/barry/reportbug.git on the bug714896 branch. However, python-reportbug requires python-debianbts be ported, as there currently is only a Python 2 version of that available. The request for that is in bug 732644. Cheers, -Barry P.S. We'll have to get rid of what appears to be the long deprecated CGI parsing bit because there's no sgmllib module in Python 3 and given the comments in the code, it doesn't seem worth trying to port that to some other library. [*] Hopefully the wiki directions are still current and I followed them correctly. signature.asc Description: PGP signature
Re: Python 3 as default
On Wed, Dec 04, 2013 at 08:12:45PM -0800, Diane Trout wrote: Instead, I mean, what would it take for the basic Debian system to install Python 3 only by default, and have any system scripts that depend on Python be Python 3. Nothing. I just did a default no-tasks selected debian wheezy system and no version of python was installed. Using a cowbuilder wheezy sid chroot I decided to see what python the tasks from tasksel install. (e.g. apt-get -s install task-web-server | grep python) Tasks: task-desktop (with --no-install-recommends): no Python task-gnome-desktop: (wheezy Python 2.7) (sid both Python 2.7 Python 3.3) task-kde-desktop: (wheezy no Python) (sid Python 2.7) task-lxde-desktop: Python 2.7 task-xfce-desktop: no Python. task-web-server: no Python task-print-server: no Python task-database-server: no Python task-dns-server: (wheezy no Python) (sid Python 2.7) task-file-server: Python 2.7 task-mail-server: no Python task-ssh-server: no Python task-laptop: no Python Looking at the lists of packages suggested by apt-get it seemed like only Gnome that wanted lots of python packages. $ cat /chroots/sid/var/lib/apt/lists/*_debian_dists_sid_main_binary-amd64_Packages \ | grep-dctrl -FPriority standard -a -FDepends python -sPackage Package: apt-listchanges Package: python-apt Package: python Package: python-minimal Package: python-support Package: python2.7 Package: python-reportbug Package: reportbug $ (It seems your tests somehow missed the standard task?) So the user-facing components that would need to be migrated to python3 to change the default are apt-listchanges and reportbug. As it turns out, both of these packages which are priority standard in Debian are not installed by default in Ubuntu, so actually there are no patches to pull from there. It seems there is a wishlist bug report asking for reportbug to be switched: http://bugs.debian.org/714896 Sandro, you replied to this bug arguing that we're years away from having a system free of python2. But as the above analysis shows, there are really only two packages that need to be switched to python3 to give users a python3-only system by default (python-apt already has a python3 port). I think it's important for the Debian base system to lead, not follow, when it comes to deciding which language runtimes will be installed by default. It will be years before python3 completely replaces python2, but there are already a number of packages for which a switch to python3 is advantageous (e.g., because of the greatly improved unicode support), and I believe we will begin to see significant python3-only projects in the jessie timeframe. I would like us to be able to drop python2 from Priority: standard in jessie in favor of python3, so that users can reasonably have systems with only python3 installed. Would you accept patches to reportbug and apt-listchanges to move them to python3? Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developerhttp://www.debian.org/ slanga...@ubuntu.com vor...@debian.org -- To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20131207093208.ga28...@virgil.dodds.net
Re: Python 3 as default
On Dec 04, 2013, at 06:16 PM, Steve Langasek wrote: Why should it be Jessie+1 instead of Jessie? The only reason I suggested Jessie+1 was because the official call for release goal deadline was Sept 30, which we've obviously passed. However, as you and I discussed off-line, the more modest goal of having only Python 3 in the minimal install is achievable and probably doesn't require an official release goal. So let's JFDI! :) (Jessie+1 will be a good timeframe to discuss larger Python 2 minimization goals, even if we know we can't ever completely it.) -Barry signature.asc Description: PGP signature
Python 3 as default
I try to keep an eye on what other distros are doing w.r.t. Python 3. Here are Fedora's plans: https://fedoraproject.org/wiki/Changes/Python_3_as_Default https://fedoraproject.org/wiki/User:Bkabrda/Py2to3GuidelineChanges Some of these things are not relevant to us (e.g. DNF vs. yum). Others are interesting from a Python-aficionado point of view (e.g. cloud-init and other upstreams). I'd like to start thinking about what it would mean for Python 3 to be the default Python in Debian. This is not what should /usr/bin/python point to - I think we're all largely in agreement that that shouldn't change, at least for the foreseeable future (re: PEP 394). Instead, I mean, what would it take for the basic Debian system to install Python 3 only by default, and have any system scripts that depend on Python be Python 3. Anyway, this is mostly just FYI for those who like to keep tabs on the competition. :) Maybe Python 3 as default would be a nice Jessie+1 release goal. -Barry signature.asc Description: PGP signature
Re: Python 3 as default
On Wed, Dec 4, 2013 at 6:25 PM, Barry Warsaw ba...@debian.org wrote: I try to keep an eye on what other distros are doing w.r.t. Python 3. Here are Fedora's plans: https://fedoraproject.org/wiki/Changes/Python_3_as_Default https://fedoraproject.org/wiki/User:Bkabrda/Py2to3GuidelineChanges Some of these things are not relevant to us (e.g. DNF vs. yum). Others are interesting from a Python-aficionado point of view (e.g. cloud-init and other upstreams). I'd like to start thinking about what it would mean for Python 3 to be the default Python in Debian. This is not what should /usr/bin/python point to - I think we're all largely in agreement that that shouldn't change, at least for the foreseeable future (re: PEP 394). Instead, I mean, what would it take for the basic Debian system to install Python 3 only by default, and have any system scripts that depend on Python be Python 3. Anyway, this is mostly just FYI for those who like to keep tabs on the competition. :) Maybe Python 3 as default would be a nice Jessie+1 release goal. -Barry What is required for it to be an unofficial release goal for Jessie? It should be an easier task than the Ubuntu 12.04 goal, since that covers the default desktop, while for Debian it would just be the netinstall (without any task chosen). -- To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/caa77j2bz9ccgcs5+gezwk4vh0tqwau3id4h5dj6c4qhswa2...@mail.gmail.com
Re: Python 3 as default
Hi Barry, On Wed, Dec 04, 2013 at 11:25:16AM -0500, Barry Warsaw wrote: I try to keep an eye on what other distros are doing w.r.t. Python 3. Here are Fedora's plans: https://fedoraproject.org/wiki/Changes/Python_3_as_Default https://fedoraproject.org/wiki/User:Bkabrda/Py2to3GuidelineChanges Some of these things are not relevant to us (e.g. DNF vs. yum). Others are interesting from a Python-aficionado point of view (e.g. cloud-init and other upstreams). I'd like to start thinking about what it would mean for Python 3 to be the default Python in Debian. This is not what should /usr/bin/python point to - I think we're all largely in agreement that that shouldn't change, at least for the foreseeable future (re: PEP 394). Instead, I mean, what would it take for the basic Debian system to install Python 3 only by default, and have any system scripts that depend on Python be Python 3. Anyway, this is mostly just FYI for those who like to keep tabs on the competition. :) Maybe Python 3 as default would be a nice Jessie+1 release goal. Why should it be Jessie+1 instead of Jessie? The set of packages that need ported in order to switch the default is minimal, and AFAIK python3 ports are already available for all of them thanks to Ubuntu taking the lead here. In fact, the last time I checked there were only 2-3 packages that actually needed changed in order to swap python for python3 in the default install - lsb-release is one of them, and I don't remember offhand what the others were. In short, I see no reason why Debian would want to stick with python2 by default in Jessie. The barrier is much lower than in Ubuntu, because Debian makes much less use of python in the default install. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developerhttp://www.debian.org/ slanga...@ubuntu.com vor...@debian.org signature.asc Description: Digital signature
Re: Python 3 as default
Instead, I mean, what would it take for the basic Debian system to install Python 3 only by default, and have any system scripts that depend on Python be Python 3. Nothing. I just did a default no-tasks selected debian wheezy system and no version of python was installed. Using a cowbuilder wheezy sid chroot I decided to see what python the tasks from tasksel install. (e.g. apt-get -s install task-web-server | grep python) Tasks: task-desktop (with --no-install-recommends): no Python task-gnome-desktop: (wheezy Python 2.7) (sid both Python 2.7 Python 3.3) task-kde-desktop: (wheezy no Python) (sid Python 2.7) task-lxde-desktop: Python 2.7 task-xfce-desktop: no Python. task-web-server: no Python task-print-server: no Python task-database-server: no Python task-dns-server: (wheezy no Python) (sid Python 2.7) task-file-server: Python 2.7 task-mail-server: no Python task-ssh-server: no Python task-laptop: no Python Looking at the lists of packages suggested by apt-get it seemed like only Gnome that wanted lots of python packages. Diane signature.asc Description: This is a digitally signed message part.