Closed impredicative closed 7 years ago
@impredicative 1) Why should I move? 2) Google Brain (!) in their started kit code for Kaggle NIPS competition use python 2 https://www.kaggle.com/c/nips-2017-defense-against-adversarial-attack/data and you tell people not to. Really?
The unfortunately reality is that others won't move to Python 3 unless you force them to by breaking compatibility with Python 2.
@impredicative or people just drop a package, for example and switch to more friendly
@impredicative I am very sympathetic to your cause. Personally, I write code that only works with Python 3.6 and above because it's so much nicer, and in fact, we originally implemented Foolbox for Python 3 only. Given that Python 2.7 will still be maintained until 2020 and many people and projects (see for example @ducha-aiki 's comment) still use Python 2.7, we decided to backport Foolbox to Python 2.7 so that Foolbox can be used by anyone. I am sure we will drop Python 2.7 support in the future and I am very much looking forward to it.
I will close this issue because it's not the agenda right now, but additional comments are appreciated.
@impredicative I am also sympathetic to your issue but we should keep in mind that Foolbox is a small package that will hardly make people switch to Python 3 (instead Foolbox would loose a lot of users). Such traction should come from larger and more popular packages like numpy or pandas. If they'd turn Python 3 only - which they will in 2020 - then many people would switch.
It is compatible packages like these that effectively keep users from moving to Python 3. The unfortunately reality is that others won't move to Python 3 unless you force them to by breaking compatibility with Python 2. This will also let you expand your choice of APIs to include what is offered only in Python 3.