mlampert wrote: ↑
Sun Apr 28, 2019 5:39 am
For 0.19 development, can we ignore python 2 compatibility ?
And can I start removing the constructs to support both (for Path)?
What type of constructs are these? Does it matter that much? Or is it just a question of removing one or two extra lines (if Python 2...).
My personal opinion is that there is no need to remove anything. I mean, I certainly wouldn't add new Python 2 support, but leaving the old code doesn't really hurt, or does it? The file size may become insignificantly smaller, but that's about it.
If your intention is to really break things for old users and force them to use Python 3, then go ahead, but I don't think that's exactly right. Or do you plan on using Python 3 features that really improve execution of the code? Then it would make sense, but only if the improvement is really noticeable, otherwise, why bother with premature optimization?
I know Python 2's end of life is 2020, but I personally wouldn't remove any old code until it is well after that, say, 2025. Remember that end of life doesn't mean the Python 2 interpreter ceases to exist, it just means the Python Foundation won't provide any more patches. There will be computers running Python 2 environments forever, as long as they turn on.