Opened 14 years ago

Closed 3 years ago

Last modified 6 months ago

#1328 closed feature-request (Fixed)

Migrate Deluge to Python 3

Reported by: John Garland Owned by:
Priority: minor Milestone: 2.0.0
Component: Unknown Version:
Keywords: py3 migrate Cc: shirishag75@gmail.com

Description

It has to happen sooner or later.

Python 2.7 is the last major version in the 2.x series: http://python.org/download/releases/2.7/

This will also involve ditching setuptools in favour of distribute: http://packages.python.org/distribute/

Change History (8)

comment:1 by Calum, 14 years ago

Type: defectfeature-request

comment:2 by Calum, 13 years ago

Version: 1.3.0_dev

Should we maybe consider moving to distribute for 1.4 then? It would make it one less step when Twisted and other libraries are finally migrated to Py3.

comment:3 by Damien Churchill, 13 years ago

This involves diddly squat on our behalf WRT to distribute. distribute is a drop-in replacement for setuptools. Ubuntu has already switched to it, as has arch.

Twisted is going to be our biggest problem. I can't think of many others off the top of my head that will be a huge issue.

comment:4 by Calum, 13 years ago

Current state of dependencies for Python 3:

Note: Twisted still in development, Twisted Python 3 Plan

Core

  • twisted.internet
    • twisted.internet.defer - Yes
    • twisted.internet.error - Yes
    • twisted.internet.reactor - Yes
    • twisted.internet.threads - Yes
    • twisted.internet.ssl - Yes
    • twisted.internet.task - Yes
    • twisted.internet.protocol - Yes
    • twisted.internet.utils Yes
  • twisted.python
    • twisted.python.log - Yes
    • twisted.python.failure - Yes
  • twisted.trial
    • twisted.trial import unittest - Yes
  • twisted.web
  • pyopenssl - Yes
  • pyxdg - Yes
  • chardet - Yes

Gtk

  • twisted.internet.gtk2reactor -> gtk3reactor
  • python-notify -> PyGObject
  • pygame - Yes
  • pygtk -> PyGObject

Web

  • twisted.application
    • twisted.application.service - Yes
    • twisted.application.internet - Yes
  • twisted.web
    • twisted.web.server - Yes
    • twisted.web.static - Yes
  • mako Yes

Tests

  • twisted.web.http - Almost

libtorrent

  • boost - Yes
  • bindings - Patches applied but untested
Last edited 8 years ago by Calum (previous) (diff)

in reply to:  4 comment:5 by mk.fg, 12 years ago

Replying to Cas:

Gtk

  • python-notify - No
  • pygame - Yes
  • pygtk - Needs port to PyGObject

"python-notify" should probably be also listed as "Needs port to PyGObject" - "from gi.repository import Notify" can be used as an almost drop-in replacement for pynotify.

comment:6 by shirish, 12 years ago

Cc: shirishag75@gmail.com added

comment:7 by Calum, 9 years ago

Milestone: Future3.0
Last edited 8 years ago by Calum (previous) (diff)

comment:8 by Calum, 3 years ago

Milestone: 3.02.0.0
Resolution: Fixed
Status: newclosed
Note: See TracTickets for help on using tickets.