View Single Post
Old 10-12-2013, 12:24 AM   #1
Sabardeyn
Guru
Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.Sabardeyn ought to be getting tired of karma fortunes by now.
 
Sabardeyn's Avatar
 
Posts: 644
Karma: 1242364
Join Date: May 2009
Location: The Right Coast
Device: PC (Calibre), Nexus 7 2013 (Moon+ Pro), HTC HD2/Leo (Freda)
Plugin version reporting during error

Just a thought that occurred to me while reading the Generate Cover plugin's most recent thread. Not sure how useful this might be to the programmers, but I thought it might cut down on a round of messages simply because the info is already included. I am not sure if this might lead to some "false positives" with the cause for an error though. (That is, the inclusion of a plugin's name might imply the error is plugin related when the error doesn't have anything to do with the plugin itself but rather poor input.)

When the user requests a plug in to perform an operation, have the plug in pass along a name and version number to calibre as the first steps in that operation. Prior to any data manipulation of any kind. In this way, if an error results and a log is posted, the calibre version number and the plug in name and version number are shown automatically.

So, something like this:
calibre, version 1.6.0
<plugin_name>, version <plugin_version>
ERROR: Unhandled exception: <b>Exception</b>:Pixel cache allocation failed `' @ error/cache.c/OpenPixelCache/4017

calibre 1.6 isfrozen: True is64bit: False
Windows-7-6.1.7601-SP1 Windows ('32bit', 'WindowsPE')
('Windows', '7', '6.1.7601')
Python 2.7.5
Windows: ('7', '6.1.7601', 'SP1', 'Multiprocessor Free')
Traceback (most recent call last):

I'm assuming there would be two string variables: plugin_name and plugin_version.

When the plugin's operation successfully completes it should clear these two variables so that the next operation can reset them as needed. Since this could be from the same or a different plugin, or from calibre itself, clearing the variables will prevent mistaken reporting.

Like I said, random thought. Use or discard as you see fit.
Sabardeyn is offline   Reply With Quote