View Single Post
Old 06-16-2018, 10:15 PM   #5
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,422
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Quote:
Originally Posted by yuvallanger View Post
We are a year and a half to Python 2's end of life:

https://pythonclock.org/

The number of Python2-supporting development tools and useful modules, used in the development and in user extensions of Calibre, will reduce considerably:

http://python3statement.org/

Would you be interested at least in supporting both Python 2 and Python 3?
That makes absolutely zero sense. If it was possible to support python 2 and python 3 in a reasonable amount of effort, it would be even easier to just support python 3 alone. Clearly the issue here is a matter of not having python 3 support to begin with, not some especial craving to see it work on python 2 anyway.

Quote:
There are ways to do it in a reasonable amount of effort.

https://docs.python.org/3/howto/pyporting.html
That guide is a propagandistic work written by an idealist with the not-unjustified desire to persuade people to port to python 3. It is, quite understandably, describing how easy it is in the best-case scenario.

calibre is most likely not that best-case scenario.

Quote:
There is also a way for you to apply for financial support from the PSF!

http://www.getpython3.com/#financial-support

I am also very eager to help, in whatever way that I can, as I use your wonderful program on a daily basis!
I'll tell you the best way to help.

You're not the first person to ask for calibre to be ported to python 3. It's been asked a number of times. Kovid's usual response is "if anyone would like to put in the effort to port calibre, I will gladly merge those contributions. But it cannot do so by breaking python 2 support or harming performance, given that python 2 is what it is currently using".

He's also mentioned that the first step would be to make all of calibre's current dependencies run on python 3, which is currently... not the case. e.g. https://github.com/python-mechanize/mechanize

How exactly do you go about saying that calibre needs to be ported to python 3, because its dependencies are going to drop python 2 support, when the truth of the matter is that today, it has dependencies which have never been ported to python 3 to begin with?

I'm shocked, absolutely shocked I tell you, that not one person has ever taken him up on his offer!
Everyone seems to just sort of expect him to magically port calibre to python 3 with a wave of a magic wand, as though it's totally easy to port half a million lines of code which do a great deal of bytes manipulation (the single biggest pain point in python 2 vs python 3).

So by all means let us continue to demand a python 3 port, since apparently it's entirely realistic as long as some procession of users can state their expectations for it.
eschwartz is offline   Reply With Quote