View Single Post
Old 05-10-2017, 03:44 PM   #51
DaltonST
Deviser
DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.
 
DaltonST's Avatar
 
Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
Quote:
Originally Posted by kovidgoyal View Post
@DaltonST I told you a long time ago to not use calibredb.exe to make changes to the calibre database and that doing so would break eventually (not to mention that it can lead to data corruption to have calibredb and the GUI potentially making changes to the library simultaneously).

You chose not to listen -- not much I can do about that.

As for deprecating plugins, I dont see much point. If you dont plan on fixing your plugins to use the proper database API instead of calibredb, then I suggest simply removing them from the plugin index after calibre 3 is released. Or if you want to leave them around, that's fine too. You can add some code to the plugins to popup a helpful error message if they detect they are running in calibre 3.

There are a few plugins that even today have not been ported to Qt 5 and so fail to run. Your plugins will simply become a part of that set.

Kovid,

[1] Adding custom columns to a CLOSED metadata.db cannot possibly cause corruption, because it is NOT the current GUI database.

[2] Adding custom columns to an OPEN metadata.db via a foreground GUI Plug-in that is clicked by the user to initiate the additions is exactly what Calibre does now in Preferences > Add your own columns. The GUI plug-ins in question force a restart to finish the process. The user's full attention is necessarily on the plug-in dialog during the entire process.

[3] Adding new books to a CLOSED metadata.db cannot possibly cause corruption.

[4] Deleting books from a CLOSED metadata.db cannot possibly cause corruption.

[5] Updating the authors of a CLOSED metadata.db cannot possibly cause corruption.

[6] Adding NEW books to an OPEN metadata.db cannot possibly cause corruption if the GUI Plug-in was manually instructed by the user to do so just then via a pushbutton, and has to remain open while calibredb.exe is spawned repetitively. The user's full attention is necessarily on the plug-in dialog during the entire process.


In short, your logic of your justification is spurious in my opinion, because it ignores the real world and does not consider the option of additional runtime parameters and internal checks for calibredb.exe to tell it what it is doing is safe or not. However, you fully own Calibre, so I will inform the users of your decision.



DaltonST
DaltonST is offline   Reply With Quote