It is easy to find questions asking if one should start with python 2 or python 3, and it is a consensus that python 2 is the way to go as it is has more libraries and thus better supported.Python 3 was launched back on 2008 and this question already addressed a migration. As it was too soon, the solution was to wait.5 years have passed now and a good bunch of libraries already support python 3. At the time I write this question, according to this page 244 packages on pypi support python 3 while 156 does not. On the top 30 most downloaded packages, 24 support python 3Following this I feel safe enough to start migrating from python 2 to 3 and also avoiding telling people to start on python 2My reasons explained, the question is: What concerns should I have when migrating from python 2 to 3?Not just code syntax and replacements, as its easy to find a conversion tool to do the 80% of the job, but general concerns, like:Do virtual environments mechanism changes?Building, packaging and distribution differencesWill I have only cPython? (Looks like Jython has a long way to go to reach python 3)Multi threading/processing programming. Always a delicate subjectTesting. Any changes?What common things that I can still do like in python 2 but I should stop and start doing in an other way? I feel that a code replacement tool will change the code to make it just runnable, but it will not use the correct or better option if the option itself involves big changesps: This question was asked on stack overflow, but was closed as too broad. Anyway, I felt that the correct place is here
Migrating from python 2 to 3
python;migration