Does anybody use Python 3 in a production level setting? I have been hearing, from the past couple of years, from a few of my well versed "Pythonista" friends, that they are apprehensive about shifting to Python 3, as there's still time for "x" library to embrace Python 3. What's your POV, and does anyone have a clear status on where things are regarding this matter, as of now?
I'm still waiting for web2py to shift to python3. From that moment on i'll start working in py3. I tried to work with both versions, but it simply isn't my thing. (Even though Nameko does make it a lot easier) . Still too much hassle and py2 still does the job well.
There used to be a lot of libs not ready for py3 but that's mostly old news. Some bigger frameworks like web2py and zato still cling to py2 but i think users harassed core developers so much they finally gave in.
Checking some of my dependencies I came across aweber_api still stuck at py2, as is the beanstalkc lib and most of all web2py. There are some others like an excel library which hasn't been updated in quite some time, but there will be others available for that.
So once my main framework has migrated i can begin migration a gazillion apps to py3 and see what i encouter. After that it's time to see when everything will go in production. Guess it will take another year or two?
Isn't it already? Pretty sure the official website lists 3.4 as stable.
I work with python and we had no problem using it in production. In fact it's kind of a hassle when I have to dive back in projects that are still 2...mostly because of random encoding errors that happens when someone forgets the 'u' before the string literal or the weird utf8 comment at the top...sigh u.u
I'm not sure but I also believe the error messages in python 3 to be way better. Which speeds up development.
As of library compatibility, not remembering any problem so far. Maybe if one or two (that you need) have compatibility issues, there's probably alternatives to it. Libraries that do not support python 3 tend to get left behind in my opinion.
Mandar Vaze
Remote Software Consultant
I used modern python (3.4 to be precise) in production more than year ago. It is ready for production for a LONG time.
Most of the libraries and frameworks now work with python 3, and some support only python3 like Django 2.x
So unless you are constrained by a library or framework that does not work on python3 (like web2py, as mentioned by @Remco) , there is no reason to use "legacy" python aka python2