Project

General

Profile

Feature #5875

Bug #7423: Have what we need included in Debian Jessie

Make sure all the Python 3 libraries we need are in Jessie

Added by Tails about 6 years ago. Updated almost 5 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
-
Target version:
Start date:
07/19/2013
Due date:
08/31/2014
% Done:

100%

Feature Branch:
Type of work:
Code
Starter:
No
Affected tool:

Description

Check and report before Q2 2014 if all the libraries we need to convert our custom Python software to Python 3 are in Jessie


Subtasks

Feature #6175: List Python 3 libraries we need that are missing in Debian JessieResolvedalant

Feature #7788: Update pycountry in Debian to support Python 3Resolved

Feature #7789: Package python3-configobjResolved

Feature #7790: Package Isis' python-gnupgRejected

Feature #7791: Investigate the need for python-gnutlsResolved


Related issues

Related to Tails - Feature #5958: Port our custom software to Python 3 Confirmed 08/24/2015
Related to Tails - Feature #5701: Port Tails Greeter to Python 3 Resolved
Related to Tails - Feature #9311: Update status of Python 3 migration Resolved 05/01/2015

History

#1 Updated by intrigeri about 6 years ago

  • Subject changed from check whether all the libraries we need are in Python 3 to Make sure all the Python 3 libraries we need are in Jessie
  • Type of work changed from Test to Code
  • Starter set to No

#2 Updated by intrigeri about 6 years ago

  • Due date set to 05/31/2014

#3 Updated by BitingBird about 5 years ago

  • Blocked by Bug #7423: Have what we need included in Debian Jessie added

#4 Updated by BitingBird about 5 years ago

  • Blocked by deleted (Bug #7423: Have what we need included in Debian Jessie)

#5 Updated by BitingBird about 5 years ago

  • Parent task set to #7423

#6 Updated by intrigeri about 5 years ago

  • Related to deleted (Feature #5958: Port our custom software to Python 3)

#7 Updated by intrigeri about 5 years ago

  • Related to Feature #5958: Port our custom software to Python 3 added

#8 Updated by intrigeri about 5 years ago

  • Blueprint set to https://tails.boum.org/blueprint/python3/

#9 Updated by maker about 5 years ago

Hi,

I'm writing this to notify that the proposition "StringIO: no Python 3 in Debian" in [0] is not truly exact:
the `StringIO` module is included in the stdlib, and available in python3 as `io.StringIO` or `io.BytesIO`.
Moreover, as far as I can tell the `io` module have been backported in python >= 2.6 [1].
Therefore, I think this specific case concerns only the Tails installer source code.

Shall I open another issue for this? If so, would you mind posting the exact files including `StringIO`?

[0] <https://tails.boum.org/blueprint/python3/>
[1] <https://docs.python.org/2/library/stringio.html#module-StringIO>

#10 Updated by intrigeri about 5 years ago

I'm writing this to notify that the proposition "StringIO: no Python 3 in Debian" in [0] is not truly exact:
the `StringIO` module is included in the stdlib, and available in python3 as `io.StringIO` or `io.BytesIO`.

Thanks for the input! Feel free to edit the blueprint directly next time, it's editable online.

Shall I open another issue for this?

Not needed, since there's actually no problem to solve :)

If so, would you mind posting the exact files including `StringIO`?

Tails Installer lives in https://git-tails.immerda.ch/liveusb-creator

Cheers!

#11 Updated by maker about 5 years ago

If so, would you mind posting the exact files including `StringIO`?

Tails Installer lives in https://git-tails.immerda.ch/liveusb-creator

Thank you.

Porting pycountry to python3 have been quite straightfoward, my solution resides in
<http://mentors.debian.net/debian/pool/main/p/pycountry/pycountry_0.14.1+ds1-3.1.dsc&gt;.

Shall I open a new issue on bugs.debian.org and look for mentors, or what?
Not sure this mentoring thing applies in this case.

--
m.

#12 Updated by intrigeri about 5 years ago

Porting pycountry to python3 have been quite straightfoward, my solution resides in
<http://mentors.debian.net/debian/pool/main/p/pycountry/pycountry_0.14.1+ds1-3.1.dsc&gt;.

I notice upstream has already done this work in the 0.15 release: https://pypi.python.org/pypi/pycountry/
Did you backport their changes, or did you do it anew?

Maybe the best path forward would be to file a wishlist bug against the pycountry package, asking the maintainers to package the latest upstream release (or at least 0.15+). Of course, doing that work yourself / ourselves and submitting it to the maintainer would be appreciated :)

#13 Updated by maker about 5 years ago

#14 Updated by intrigeri about 5 years ago

Thanks a lot! I've usertagged that bug "for-jessie" so that it's on our radar.

#15 Updated by intrigeri about 5 years ago

#16 Updated by BitingBird about 5 years ago

  • Target version set to Tails_1.2.1

#17 Updated by intrigeri about 5 years ago

  • Target version changed from Tails_1.2.1 to Tails_1.2

Actually, 1.2.1 will be out after the freeze, so rescheduling. Having this done for 1.2 is quite late already, given the current state of the NEW queue.

#18 Updated by maker almost 5 years ago

As of today, python3-pycountry and python3-configobj are available in debian unstable.
I've update the wiki accordingly.

The only ones surviving now are `python-gnupg` and `gnutls`.
Concerning the latter, I see in whisperback::

$ git grep gnutls
ChangeLog: * CA certificates handeling with libgnutls
debian/control:Depends: ${misc:Depends}, ${python:Depends}, python-gnupginterface, python-gnutls, python-gtk2, python-webkit
setup.py:    requires=['gtk', 'GunPGInterface', 'gnutls'],
whisperBack/mail.py:import gnutls.errors
whisperBack/mail.py:        from gnutls.crypto import X509Certificate
whisperBack/mail.py:        from gnutls.connection import ClientSession, X509Credentials
whisperBack/mail.py:            except gnutls.errors.OperationWouldBlock:
whisperBack/mail.py:                except gnutls.errors.OperationWouldBlock:
whisperBack/mail.py:                except gnutls.errors.OperationWouldBlock:


Python3 provides the `ssl` module in standard library, that can probably assolve the same functionalities. Moreover, it has been backported also to python2's standard library. Would it be appreciated a patch removing pygnutls as dependency?

#19 Updated by maker almost 5 years ago

writes:

[sry]

I've update the wiki accordingly.

*updated

Python3 provides the `ssl` module in standard library, that can
probably assolve the same functionalities. Moreover, it has been

*absolve

backported also to python2's standard library. Would it be appreciated
a patch removing pygnutls as dependency?

Specifically, `ssl` is available on python >= 2.6.
<https://docs.python.org/2/library/ssl.html>

--
m.

#20 Updated by intrigeri almost 5 years ago

maker wrote:

Would it be appreciated a patch removing pygnutls as dependency?

Replied on #7791, that I therefore assigned to you :)

#21 Updated by intrigeri almost 5 years ago

  • Assignee set to alant
  • QA Check set to Info Needed

This task seems completed to me. Alan, any reason you see to keep it around?

#22 Updated by alant almost 5 years ago

  • Status changed from Confirmed to Resolved
  • QA Check deleted (Info Needed)

#23 Updated by intrigeri over 4 years ago

  • Related to Feature #9311: Update status of Python 3 migration added

Also available in: Atom PDF