View Single Post
Old 01-30-2024, 04:21 AM   #16
kiwidude
Calibre Plugins Developer
kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.kiwidude ought to be getting tired of karma fortunes by now.
 
Posts: 4,652
Karma: 2162064
Join Date: Oct 2010
Location: Australia
Device: Kindle Oasis
Quote:
Originally Posted by BetterRed View Post
Kiwidude is the 'owner of the calibre plugin process'…i.e. it's his baby.
Stitching me up there BetterRed

While it is true I wrote the original Plugin Updater standalone plugin, most of which still exists in calibre, a very key part of this process was (quite appropriately) changed by Kovid. Which is that half hourly scraping of the forum index to the separate plugins website you mention. That part is "voodoo" to me - it was written by Kovid, I've never seen it and is also I believe what is responsible right now for whatever reasons rejecting those three plugins which I had added entries for in the forum index page.

I vaguely recall being told that Kovid's process downloads the zip files from the threads and presumably parses the files to use metadata inside them to determine things like plugin name, current version, dependent version etc. So the most obvious cause of problems is "going off script" with the plugin implementation and doing things at runtime - such as aliases, composing plugin name dynamically etc. Yes the plugin will "load" correctly when run, but my guess is that Kovid's parsing of the zips would have some fairly tight constraints about what it expects to find inside to pull out the metadata it needs.

This is all speculation based on how I think it would work - without actually ever seeing the code that does it

My advice to 0x6f677548 via PM was to just copy the approach from one of the other plugins that does appear in the index for each plugin type - don't go off script with them, keep things simple, name the plugins uniquely etc...
kiwidude is offline   Reply With Quote