The code base is a nightmare and still uses Python 2. I'm not surprised it hasn't been forked, although I'm a little surprised it hasn't been replaced.
Frankly, the software is just fine for most needs, and the person in charge is still active, so the desire to replace it just hasn't materialized.
EDIT: Looks like somebody actually took the initiative to port it to Python 3.
Calling the codebase a nightmare is the understatement of the year. I tried forking it at some point. I don't think I could reasonably even attempt describe the codebase in a way that wouldn't get me banned from HN, and most likely the rest of the internet.
An article title such as "Popular open source software Calibre has a codebase that isn't just bad, it's outright dangerous" would definitely make me click.
If you feel strongly, please do this. It adds value. The creator might really benefit from it.
How would you feel if someone came out with an article about "echelon's code isn't just bad, it's outright dangerous" and wrote a whole article attacking and shaming you, just because you might benefit from it?
Sure you might benefit, but there are much more constructive, kinder ways to do it. Even if he and his code aren't great, Goyal's done a lot of free public service here. Let's not be dicks.
> I'm not surprised it hasn't been forked, although I'm a little surprised it hasn't been replaced.
Shouldn't be all that surprising. Things are harder than people think, and only a few people are willing to stake actual skin in the game instead of just complain.
Also, Calibre is already a niche tool. All of my friends/family have a Kindle, they all use Amazon's default send-the-kindle feature, and none of them probably even know how to get the physical ebook file out of the Amazon system nor care.
And ebook file management just isn't a very sexy problem to solve beyond a proof of concept weekendware effort. Surely most people aren't spending much time in Calibre anyways. I know I just use it intermittently to load the next 10 books onto my ereader. It's not a part of my life I'm very passionate about changing.
Frankly, the software is just fine for most needs, and the person in charge is still active, so the desire to replace it just hasn't materialized.
EDIT: Looks like somebody actually took the initiative to port it to Python 3.