The distribute package has some support for doing this cleanly.  You can
put the following in your setup.py:

extra = {}if sys.version_info >= (3, 0):
    extra.update(
        use_2to3=True,
        use_2to3_fixers=['custom_fixers']
    )


And put custom 2to3 code that the tool didn't fix automatically in a module
in the toplevel called custom_fixers.

I'll start nibbling around the edges of the code, trying to support Python
2.4->3.3.  One thing I noticed was that _librsyncmodule.c needs some fixes
to compile with 3.x as well as 2.4, so I'll start there.

-mt


On 15 January 2013 05:05, <edgar.sol...@web.de> wrote:

> how would you figure this? patching during setup? install different file
> versions? sounds messy.
>
> ..ede
>
> On 15.01.2013 03:29, Michael Terry wrote:
> > Hrm.  OK.  I wonder if we can't offer an option to 2to3 on the fly
> during setup.py if the user wants to install for python3.
> > -mt
> >
> >
> > On 14 January 2013 12:32, <edgar.sol...@web.de <mailto:
> edgar.sol...@web.de>> wrote:
> >
> >     as we don't really have hurry with that decision i vote for keeping
> an eye out how stable the next 0.6 release works out, and reconsidering a
> move to a python2.6+ duplicity 0.7 again thereafter.
> >
> >     ..ede
> >
> >
> >     On 14.01.2013 15:44, Michael Terry wrote:
> >     > My personal push for Python 3 support is because Ubuntu is pushing
> to be able to ship only Python 3 on the desktop image.  (Plus, Python 2.7
> is the last Python 2.x.  We're at the end of that life line.)
> >     >
> >     > In that context, dropping support for Python 2.4 is important
> because it is vastly simpler to write a codebase that works in both 2.6 and
> 3.x than 2.4 and 3.x.
> >     >
> >     > -mt
> >     >
> >     >
> >     > On 14 January 2013 09:43, Michael Terry <m...@mterry.name <mailto:
> m...@mterry.name> <mailto:m...@mterry.name <mailto:m...@mterry.name>>>
> wrote:
> >     >
> >     >     My personal push for Python 3 support is because Ubuntu is
> pushing to be able to ship only Python 3 on the desktop image.  (Plus,
> Python 2.7 is the last Python 2.x.  We're at the end of that life line.)
> >     >
> >     >     In that context, dropping support for Python 2.4 is important
> because it is vastly simpler to write a codebase that works in both 2.6 and
> 3.x than 2.4 and 3.x.
> >     >
> >     >     -mt
> >     >
> >     >
> >     >     On 14 January 2013 05:46, <edgar.sol...@web.de <mailto:
> edgar.sol...@web.de> <mailto:edgar.sol...@web.de <mailto:
> edgar.sol...@web.de>>> wrote:
> >     >
> >     >         i'd limit it to data critical fixes. we simply have no man
> power to maintain both series. on the other hand, what exactly is pressing
> us to python3 or even python2.6..
> >     >         isn't it merely keeping an eye out not to hack something
> backwards incompatible?
> >     >         if so, we could simply announce that we do not strive to
> meet this criteria anymore, but still accept contributions of people or
> hack something if we feel we shouldn't exclude users with very old systems.
> >     >
> >     >         meaning: announce 0.7 with python2.6 compatibility and
> developing it non dogmatic against it. phasing out 0.6 alltogether.
> >     >
> >     >         ..ede
> >     >
> >     >
> >     >         On 13.01.2013 18:29, Kenneth Loafman wrote:
> >     >         > I think we have to continue support of the 0.6 series
> for a while, open to discussion.
> >     >         >
> >     >         > As to 0.7, good idea.  New features can be added here,
> fixes go to both series.
> >     >         >
> >     >         > ...Ken
> >     >         >
> >     >         > On Sun, Jan 13, 2013 at 5:54 AM, 
> > <edgar.sol...@web.de<mailto:
> edgar.sol...@web.de> <mailto:edgar.sol...@web.de <mailto:
> edgar.sol...@web.de>> <mailto:edgar.sol...@web.de <mailto:
> edgar.sol...@web.de> <mailto:edgar.sol...@web.de <mailto:
> edgar.sol...@web.de>>>> wrote:
> >     >         >
> >     >         >     On 13.01.2013 02:25, Michael Terry wrote:
> >     >         >     > Hello!  Yet another thread on the slow march to
> Python 3 support.
> >     >         >     >
> >     >         >     > The last place we left it was that Ubuntu was
> considering throwing some effort behind porting duplicity and maintaining
> such a patch themselves.  That didn't happen for manpower reasons.
> >     >         >     >
> >     >         >     > But I notice that Red Hat just passed (Jan 8,
> 2013) the end of "Production 1" for RHEL 5 [1].  Which is the first
> milestone on the way to RHEL 5 end of life (which won't be fully dead until
> 2020).
> >     >         >     >
> >     >         >     > I believe that is the point in which duplicity
> bumped from Python 2.3 to 2.4 (the end of Production 1 for RHEL 4), right?
> >     >         >     >
> >     >         >     > I propose that after 0.6.21 ships, the next
> release be versioned 0.7.0 with a minimum Python of 2.6.  And that we don't
> intend to make further 0.6.x releases unless we discover a data corruption
> issue.
> >     >         >     >
> >     >         >     > That way, we (I) can start working on patches that
> take use of 'future' imports and such with an eye towards eventually one of
> the 0.7.x releases working with Python 3 (while still keeping Python 2.6
> compatibility).
> >     >         >     >
> >     >         >
> >     >         >     sounds good to me. but let's wait a bit after 0.6.21
> and decide considering the criticality of open bugs if we just do another
> 0.6 round or switch to 0.7 already.
> >     >         >     but generally yes.
> >     >         >
> >     >         >     ..ede
> >     >         >
> >     >         >     _______________________________________________
> >     >         >     Mailing list: https://launchpad.net/~duplicity-team<
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team>
> >     >         >     Post to     : duplicity-team@lists.launchpad.net<mailto:
> duplicity-team@lists.launchpad.net> <mailto:
> duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net>> <mailto:
> duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net> <mailto:
> duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net>>>
> >     >         >     Unsubscribe : https://launchpad.net/~duplicity-team<
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team>
> >     >         >     More help   : https://help.launchpad.net/ListHelp
> >     >         >
> >     >         >
> >     >
> >     >         _______________________________________________
> >     >         Mailing list: https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team>
> >     >         Post to     : duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net> <mailto:
> duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net>>
> >     >         Unsubscribe : https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team> <
> https://launchpad.net/%7Eduplicity-team>
> >     >         More help   : https://help.launchpad.net/ListHelp
> >     >
> >     >
> >     >
> >     >
> >     >
> >     > _______________________________________________
> >     > Mailing list: https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team>
> >     > Post to     : duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net>
> >     > Unsubscribe : https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team>
> >     > More help   : https://help.launchpad.net/ListHelp
> >     >
> >
> >     _______________________________________________
> >     Mailing list: https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team>
> >     Post to     : duplicity-team@lists.launchpad.net <mailto:
> duplicity-team@lists.launchpad.net>
> >     Unsubscribe : https://launchpad.net/~duplicity-team <
> https://launchpad.net/%7Eduplicity-team>
> >     More help   : https://help.launchpad.net/ListHelp
> >
> >
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~duplicity-team
> > Post to     : duplicity-team@lists.launchpad.net
> > Unsubscribe : https://launchpad.net/~duplicity-team
> > More help   : https://help.launchpad.net/ListHelp
> >
>
> _______________________________________________
> Mailing list: https://launchpad.net/~duplicity-team
> Post to     : duplicity-team@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~duplicity-team
> More help   : https://help.launchpad.net/ListHelp
>
_______________________________________________
Mailing list: https://launchpad.net/~duplicity-team
Post to     : duplicity-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~duplicity-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to