View Single Post
Old 12-02-2013, 06:16 PM   #33
davidfor
Grand Sorcerer
davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.
 
Posts: 24,907
Karma: 47303748
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
I started having a look at this again to add support for the Kobo devices. I found some problems.

Firstly, if you change the column used to store the the annotations, you are prompted that the existing annotations will be moved. The choices are "Yes do it", or "No don't change the column". I think there should be a "Change the column but don't move the current annotations".

Then, when I clicked "Yes", I had the following error:

Code:
calibre, version 1.13.0
ERROR: Unhandled exception: <b>AttributeError</b>:'Struct' object has no attribute 'log_location'

calibre 1.13  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):
  File "calibre_plugins.annotations.config", line 292, in annotations_destination_changed
  File "calibre_plugins.annotations.common_utils", line 889, in move_annotations
AttributeError: 'Struct' object has no attribute 'log_location'
The last thing is that I use several libraries. In my test library, I added a column called "Annotations" and selected it. Later, while using another library which doesn't have that column, I opened the Annotations configuration. And had the following error:

Code:
calibre, version 1.13.0
ERROR: Unhandled exception: <b>TypeError</b>:'NoneType' object has no attribute '__getitem__'

calibre 1.13  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):
  File "calibre_plugins.annotations.config", line 273, in annotations_destination_changed
  File "calibre_plugins.annotations.common_utils", line 737, in existing_annotations
TypeError: 'NoneType' object has no attribute '__getitem__'
After that, the configuration dialog is shown with no fields and calibre crashes. Windows shows the "calibre.exe has stopped working" error with the usual check online or close options.

The problem here is that custom columns are library specific. This option should be in the library specific preferences rather than the calibre preferences.
davidfor is offline