I've been doing a substantial amount of upgrading to the Synchronization code in Jäger over the last couple of days. The impetus for this is our upcoming Bloglines integration (coming in the next 3 days), but in fact the code was a squirrelly mess and needed some refactoring anyway. I've made the UI a little easier to understand also, I hope.
Synchronization is now to a couple of modules in the source tree. A number of modules that were only partially or not at all used have been removed. Here's what's left:
Modules that describe the settings, handle communications, and so forth:
- BlogSync.py
- BlogSyncBloglines.py
- BlogSyncFTP.py
Modules that invoke synchronization:
- BlogSyncDialog.py (File > Synchronization > Synchronize Now...)
- BlogManagerMixinSync.py
Modules that let the user set up synchronization (File > Synchronization > Settings...):
- BlogSyncPreferences.py
- BlogSyncPreferencesBloglines.py
- BlogSyncPreferencesFTP.py
I won't spend any time describing the code itself here. I've added a lot of documentation internally and the object-oriented nature of the code should make it pretty easy to follow.

