To be honest the best part of Calibre, the `ebook-convert` tool, is already broken out from the rest of it. It's similar to pandoc though in my opinion often does a nicer job.
Even the best codebase can't effortless be ported. Calibre seems to have something around 25 MB of python-code, several external plugins, some C-code and other languages. Transition of this would take quite some time.
Additionally, there is the problem of compability. Configuration in Calibre is python-code, and on several corners the user can mod stuff. Any transition would need to make sure to not brake things to hard.
Python2 will be at end of support next year. That means slowly it will become harder and harder to make calibre runable on modern systems. 3rd-party librays will decline and receive no updates. Python2-interpreter will not be installable out-of-the-box. There will be no security-updates or new features.
Python2 as a platform will slowly die and any application depending on it will die with it. Though, this won't become a serious problem in the next years, but more like 5-10+ years.
To be honest, I doubt corporations will give Python 2 up easily. Currently Python 2 codebase in use in production is probably fairly huge and is just working. Look at how hard it is to convince enterprises to give up Internet Explorer even though Microsoft itself says they should really end using it. Someone like Red Hat will probably keep maintaining Python 2 for at least some years more.
Indeed, but companies have full control over their software and used OS-Versions. They can virtualize, package or even compile themself, and fix problems in their own space.
But calibre is desktop-software, it depends on the OS, the GUI-Framework and whats more... Though, it's actually only a bigger deal for linux, beacuse on Windows and Mac OS is custom to deliver compiled versions from the Project itself. Also there is not wayland-situation on windows and Mac OS, which might break GUI-Libs. But as Calibre has so many different gears it's depending on, there is a good chance that something will break after a certain point.
> Someone like Red Hat will probably keep maintaining Python 2 for at least some years more.
Actually, Red Hat is already dropping python2 for their next enterprise-version as I read. They will probably still have a somewhat maintainend version available somehow, but it's obvious that python2 is slowly phasing out now. And many remaining companies are now starting transition too as EOL is near.
At this point you can already can predict that python2 will have reached minimal levels of usage in 5 years.
Every time I drag a book file (whatever a format, whatever a source) to Calibre it can only guess the title and the author from the file name (although ebook formats like fb2, epub and mobi usually have this data embedded inside them). It can't even extract the cover (something CoolReader on Android does easily). Then I have to copy-paste ISBN manually and click "download metadata". I have always suspected the feature is there (it seems unreasonable to be missing from such a tool) but doesn't work for some weird reason. I use Calibre 3.39.1 from AUR on Manjaro.
I use calibre from community packages on archlinux, it has absolutely no problems reading metadata (authors, titles and covers, and tags etc when present) from epub / mobi / pdf / etc.
I'm using Calibre 3.35 on Debian Testing and I have all authors, tags, categories, series, everything automatically imported to my library for many books from many sources. Maybe there's a library dependency missing somewhere? Any debug logs?
I'm not at my main workstation at home, so I cannot compare now, but it's a very strange situation.
Perhaps you mean you use Calibre to download books from particular sources so Calibre exchanges metadata with the source server directly? I add files manually by dragging them to the Calibre window and expect it to extract metadata (like the book autor, title, ISBN and cover picture) from the file.
I usually buy ebooks through Humble Bundle, download all formats and then import them into calibre. For 2 of 3 formats the metadata will be extracted without problems.
Only one is usually lacking. I think it's mobi or epub, but never bother to pin it down because I just combine then in one entry anyway, and then the metadata will be merged together.
Calibre has usually no problem with extracting metadata from files, independant from the source.
I can't comment on the Python2.x dependencies though.