Pythonista for Python 3.x.
Are there any plans to release a Python 3.x variant of Pythonista?
Improved / cleaned up syntax, better string handling (no string vs. unicode, and a separate bytes type for binary data), views and iterators instead of lists in many places, integer types cleaned up, standard library cleaned up... You get the idea.
All this clean up not only means that the language is easier to learn, it also makes future development of the language easier, as the developer don't have to bother with legacy stuff anymore.
06 April 2013 -- Python 2.7.4 & Python 3.2.4 & Python 3.3.1
From: http://www.python.org ...
Saturday, April 6
Given that tomorrow is such a big day for Python releases, it triggers the following questions? Just out of curiosity, how much work is it for you to convert a new Python release into a new version of Pythonista? Is it a simple (automated) process or is it cumbrsome and time consuming? Do you just drop cPython into your bigger XCode project and then compile and go? Is there a lot of debugging to do each time? Do you need to apply patches to a bunch of modules to shoehorn them into the iOS?
Curious minds want to know... Best of luck on upgrading us to 2.7.4. CCC
I was wondering if there's some technical/political reason not to include both Python 2.7 and 3.3. You could provide a switch in settings (set as default on 2.7)
@ccc It's mostly a manual process unfortunately, and as you're probably aware, I'm a little behind with the Python releases, but I hope to get 2.7.4 integrated relatively soon (not while it's still a release candidate though).
@lucasoldaini That's technically not possible. One of the restrictions of iOS apps is that everything has to be a single binary. Compiling multiple versions of Python into a single binary would lead to lots of duplicate symbols etc.
The three releases are now final on python.org
@omz ah, I see. I had no idea (I've never done any iOS development).
Well, if you ever decide to release a separate version of pythonista for python 3, I'd buy it in a hearthbeat.
@omz What are your thoughts on registering on http://www.gittip.com ? This is not the first that folks have offered to fund specific areas of development. What do you view as the pros and cons of this approach to folks voting for things that are important to them?
@pdxmisfit That's a possibility I'm thinking about. My primary concern is that it would result in two versions of Pythonista that would be incompatible with each other, which could be very confusing for new users ("which one should I get?"), and potentially annoying when sharing iOS-specific scripts that might be only compatible with one or the other version. To someone not familiar with the compatibility issues of Python 2 vs 3, it could also look like a cash-grab to have two nearly-identical versions of the same app.
There are technical issues too of course (e.g. some of the bundled third-party modules aren't compatible with Python 3), but this is really the main problem that I see. Your offer is very generous, and I appreciate the gesture, but funding isn't really a factor here.
@ccc I think platforms like gittip or flattr are more appropriate for open source projects. Voting on features (especially with your wallet) always carries the risk of missing expectations (because software development is often unpredictable), and as I said, I don't really need the funding.
Python 2.7.6 release candidate 1 and Python 3.3.3 release candidate 1 were posted last Sunday to fix a pile of bugs but principally to solve the tkinter issues on the Mac which become more evident because <b>Mac OS X Mavericks installs Python 2.7.5</b> by default on all Macs.
Given that Python PEP 373 projects that Python 2.7.9 will be released in May 2015 and that Python PEP 404 makes clear that there will never be a Python v2.8, there are <b>less than two years of Python 2 bug fixes</b>.
Even the Python 2 or Python 3 page has changed in favor of encouraging people to move now to Python 3.
Given all the progress that the community has made towards Python 3, it would be good to see Pythonista move forward to Python 3 as well.
print(sys.version_info) # 2.7.0 in Pythonista v1.3
UPDATE: Pythonista v1.4 now brings the Python version up to Python v2.7.5 which is the same version of Python installed by default on machines running Mac OS X Mavericks.
Pythonista should eventually move over to Python 3. It has improved syntax, new features, and is the current standard. Python 2.7 will be phased out eventually. The only technical reason you mentioned, that lack of PIL on Python 3, is not much of a reason at all. PIL is essentially obsolete now. The Python community is largely moving to better maintained backwards compatible forks of PIL, such as Pillow, which has more features, fewer bugs, and is fully compatible with Python 3.
With that said, there is no urgency in moving Pythonista over to Python 3. I would welcome two separate versions of Pythonista for Python 2 and Python 3, but it isn't really necessary yet.
What I would really appreciate soon is a new version of Pythonista that includes Python 2.7.5 and is compatible with iOS 7. There are many bugs that significantly impair the usability of Pythonista on iOS 7, and roughly 3/4 of all iOS users are running iOS 7 now. If funding is an issue (though it doesn't seem to be), I and likely many other Pythonista users would be willing to help out.
Hi, I've purchased Pythonista today. I got to say it's the best Python IDE I've ever seen on iOS. However I'm very disappointed to see that it doesn't support Python 3. Is there something we as a community can do to help you update the current Pythonista app to Python 3?
I'm also willing to invest in any way that I can if the current app gets updated and not a new app released just for Python 3. As I do have a strong requirement for Python 3.
Python 3 is the future, Python 2 is phasing out there's no doubt about it.
Would second that as well. I've only just learned Python 3 and doesn't know anything about the previous Pythons. I bought Pythonista because everyone says it's best on the platform only to find I can't really use it. LOL
I am also a newbie, learning Python for a Bioinformatics Algorithms course. They reccommened Python 3, so that's what I started with. I'd be happy to pay again for a Pythonista 3 version, too. The cost is not a big issue if it works.
I'm also greedy for a python 3 version :-)
It's clear that python 3 is the future (and present) and python 2.7 is the past (and present).
At sometime the transition time will be almost over and everybody will use python 3, except for some legacy stuff.
Archlinux has python3 as default, fedora and ubuntu will follow next year.
Because we are in a transition time, a newbie needs to deal with this topic at the moment.
As long as he doesn't needs a library wich only is supported in python 2.7 it would be a bad idea to start a new project in python 2.7.
So I hope that after the big ios 7 update, python 3 is next for pythonista :-)
I don't mind to have two pythonista version in the appstore. A python newbie needs to be confronted with this version stuff, at the moment.
Or your could make an in-app purchase for python 3, and later on at some time you can switch to python 3 as the default a make python 2 an in app purchase.
In pythonista you could have to separate workspaces and environments one for python 2 and one for python 3.
Python 3 is now five years old!! https://mail.python.org/pipermail/python-dev/2013-December/130673.html
+1 for python 3.
please make it happen.
i also like the idea of an in app purchase.
I would be happy to pay all over again to get Python 3.
My guess would be that a single app that supports both Python 2 and 3 would be too big and confusing both for the developer and the user.
Remember that Python has all those "batteries included" standard library modules as well as extensive documentation so it would be a big executable. The current Pythonista is already a 40MB download from the App Store. Size matters but there is also the confusion factor...
The standard libraries are often the same but sometimes subtly different between Python 2 and Python 3. How does the user specify whether a particular script should be run as P2 or P3? What about text typed into the command line interpreter? Context sensitive help has a similar problem: Does help display the routine from the P2 docs or the P3 docs? Also, for the developer it is confusing to build and test all bugs in both P2 and in P3 in the same build. As bug reports come in, are the for P2 or P3, etc.
If OMZ were to dare to take on Python 3 then I would gladly purchase the new product from the App Store because it would be a very serious investment of his time and focus to deliver a great Python 3 to iOS developers.
For a cautionary tale about divided focus, see another Python app for iOS that put out 8 different versions of their Python app before abandoning its community at the beginning of this year. It is better to have a single great Pythonista that is updated and supported than divide focus too early.
New year! New hope for a python 3 version of pythonista :-)
@omz some new thoughts about this topic?
Given that Python PEP 373 projects that Python 2.7.9 will be released in May 2015 and that Python PEP 404 makes clear that there will never be a Python v2.8, there are just one more year of Python 2 bug fixes. NOTE: This EOL deadline was later extended 5 additional years to 2020 as discussed later in this thread.
Given all the progress that the community has made on Python 3, it would be good to see Pythonista move forward to Python 3 as well.
I believe all the included third-party modules should now support Python 3, so they should no longer be a hold up.