View Single Post
Old 06-17-2011, 06:13 PM   #1034
meme
Sigil developer
meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.meme ought to be getting tired of karma fortunes by now.
 
Posts: 1,274
Karma: 1101600
Join Date: Jan 2011
Location: UK
Device: Kindle PW, K4 NT, K3, Kobo Touch
Version 1.7.0 released

A new version of the plugin is available. See my signature, or after upgrading to Calibre 0.8.6 just use the new built-in plugin updater feature!

Requires calibre 0.8.6

This should fix the integration with Reading List (the plugin formerly known as Book Sync). This version of the collections plugin will now wait for the Reading List to complete sending all books and information to the device before it starts - so the plugin will now correctly put books that you have just synced into collections. You should now be able to connect your Kindle, have your books sync to your device and have Kindle Collections create collections for the new books automatically.

As part of getting the syncing to work, I changed the plugin to run some of the jobs (create in particular) in the background - so if they take longer than a couple of seconds the plugin will no longer stop you from using calibre while it runs.

And to support requests about merging duplicate calibre collection names, the plugin will now merge the books from collections in calibre that have the same name. So if you have an Author named Foo, and a Series called Foo, and you create from both columns, the books in both of those columns will end up in Foo. Previously the plugin just warned you of a clash and dropped one set of books. The only caveat is if you use a prefix/suffix with your columns. The plugin will obey the setting of ignore prefix-suffix, so if you have it set to the normal ignore-prefix=true, and your 2 columns have different prefixes only 1 collection will be created - although it will contain the books from both columns. This is because once the first collection is written out, the ignore-prefix=true setting tells the plugin to replace it with the 2nd column. You can avoid this by setting ignore-prefix=false - the only consequence of this is that if you change the prefix for a column the plugin won't automatically convert the names and you'll end up with collections using the old prefix and new prefix. Since I'm not detailing all that in the first post, we'll just deal with questions as they come up

Oh, and although it doesn't affect anything at the moment, I added some code to re-read the book information from the device once the collections are written out. This is done as a background job after the collections are created and only takes a few more seconds to run. The purpose is to force calibre to re-read the latest collection information from the kindle so that it can populate the Device Tab list of collections with the latest information. Unfortunately calibre still needs to be updated to actually understand how to read collection information from Amazon mobi files, so in practice there won't be any visible change to the collections list at this point.


Updates:
- Changed create/preview/view to background jobs to avoid blocking calibre and to support Reading List correctly
- Changed collections to merge when multiple Calibre columns have the same collection name
- Added code to refresh collection list in Device Tab after create (but all collections won't be visible until calibre is updated to correctly show Kindle collections)
- Fixed issue with rare crash if a particular book's timestamp could not be read
- Moved warning about books being manually edited to report instead of dialog
- Removed unnecessary extra call to get device info which confused job percentage complete
- Modified dialogs to be called only by parent job to support background jobs
- Requires Calibre 0.8.6 - in order to support jobs and syncing correctly
meme is offline