Boto and Python 3

10 views
Skip to first unread message

Nikolaus Rath

unread,
Jul 31, 2009, 1:38:45 PM7/31/09
to boto-...@googlegroups.com
Hello,

Some time has passed since
http://groups.google.com/group/boto-users/t/6edb3e6cc1e01f16 and I was
wondering if the situation has changed.

Personally I think that by now Python 3.1 is much more pleasant to use
than Python 2.x. Things like the cleaned up byte/unicode handling or the
support for chained exceptions are really dearly missing in 2.x, and I
would very much like to move to 3.x completely.

I did not research other distributions, but Ubuntu already comes with
Python 3 prepackaged.

Best,

-Nikolaus

--
»Time flies like an arrow, fruit flies like a Banana.«

PGP fingerprint: 5B93 61F8 4EA2 E279 ABF6 02CF A9AD B7F8 AE4E 425C

Mitchell Garnaat

unread,
Aug 1, 2009, 4:06:25 PM8/1/09
to boto-...@googlegroups.com
Hi -

I am actively developing boto 2.0 at the moment.  It's still in very early stages but this is certainly one of the questions that has come up in my mind.  My plan is for boto 2.0 to be released some time this year.  There are lots of things that I would like to do with this major release and while I'm not going out of my way to make things incompatible with boto 1.x releases I also do not feel compelled to keep things 100% compatible.

Making boto 2.0 compatible with Python 3.x seems like a natural but having it run only in Python 3.x is not an option.  So, the question is how painful it will be to allow it to run in Python 3.x but maintain compatibility, probably back to Python 2.5.

Definitely interested in feedback and opinions.

Mitch

Nikolaus Rath

unread,
Aug 1, 2009, 10:47:40 PM8/1/09
to boto-...@googlegroups.com
Mitchell Garnaat <mitch....@gmail.com> writes:
> Hi -
>
> I am actively developing boto 2.0 at the moment. It's still in very early
> stages but this is certainly one of the questions that has come up in my
> mind. My plan is for boto 2.0 to be released some time this year. There
> are lots of things that I would like to do with this major release and while
> I'm not going out of my way to make things incompatible with boto 1.x
> releases I also do not feel compelled to keep things 100% compatible.
>
> Making boto 2.0 compatible with Python 3.x seems like a natural but having
> it run only in Python 3.x is not an option. So, the question is how painful
> it will be to allow it to run in Python 3.x but maintain compatibility,
> probably back to Python 2.5.
>
> Definitely interested in feedback and opinions.


Well, you might be interested in
http://docs.python.org/3.1/whatsnew/3.0.html#porting-to-python-3-0, in
particular this passage:

,----
| It is not recommended to try to write source code that runs unchanged
| under both Python 2.6 and 3.0; you’d have to use a very contorted coding
| style, e.g. avoiding print statements, metaclasses, and much more. If
| you are maintaining a library that needs to support both Python 2.6 and
| Python 3.0, the best approach is to modify step 3 above by editing the
| 2.6 version of the source code and running the 2to3 translator again,
| rather than editing the 3.0 version of the source code.
`----


Is boto 2.0 going to be a rewrite or based on boto 1.x? Personally I
really would not start writing new code to be compatible with
Python 2.x. Why is it so essential to have boto 2 run under Python 2.x?

Robert Coup

unread,
Aug 2, 2009, 4:30:50 PM8/2/09
to boto-...@googlegroups.com
On Sun, Aug 2, 2009 at 2:47 PM, Nikolaus Rath <Niko...@rath.org> wrote:

Personally I
really would not start writing new code to be compatible with
Python 2.x. Why is it so essential to have boto 2 run under Python 2.x?

err, because Python 2.x is going to be in active use for years to come? Any one application can't move to Python 3 unless *all* it's library dependencies are available under Python 3... so the library maintainers (Mitch) are bearing the brunt of having to support two active and incompatible python versions.

My 2c would be: Make Boto 2 compatible with Python 3 (via 2to3), then reconsider again before the next major release. But I'm not the maintainer!

Rob :)

Mitchell Garnaat

unread,
Aug 2, 2009, 7:02:29 PM8/2/09
to boto-...@googlegroups.com
Yeah, it is fairly complicated.  And lot's of people (like me) use Linux distributions that are more mature such as Ubuntu 8,04 LTS.  Right now, that distribution's standard Python package is 2.5.2.  Sure, I could install 3.x but you really don't want to do that with production machines.

Mitch
Reply all
Reply to author
Forward
0 new messages