The redesign of the SyncEvolution config handling is now ready to be tried out by brave users. This is still in a very early stage, but I have spent a good amount of time this weekend writing unit tests for it, which all pass… after fixing several minor issues, like printing to stderr instead of stdout. Such issues easily escape manually testing, so writing these tests was really worthwhile.
If you want to try out the new command line interface, you must compile from source. Use the trunk of SyncEvolution and the “r_tested” tag of the client library. I have intentionally not rolled source tarballs yet because things will continue to change before a 0.8 beta.
Compared to the previous discussion I implemented a few aspects differently resp. added more features:
--configurecan be used to modify old-style configs. Only after using--migrateexplicitly is the old configuration moved to the new location.- Configuration properties which do not have to be set are commented out in the default .ini files.
--print-configexports all properties in an extended .ini file. The plan is to reimport such a file via--properties, but this has not been implemented yet. This could be used to edit all properties at once. Would that be useful?deviceIdis set to a random UUID when creating a new config and therefore no longer has to be set manually.- All Evolution backends use the first database by default and thus setting
evolutionsourceis also optional. - Selecting Evolution backends via
typeis a lot saner now. Aliases like “addressbook” do the right thing (TM) automatically. Choosing between vCard 2.1 and 3.0 is possible via an optional:text/x-vcardsuffix in the type.
All of the new options are properly documented in the README, but not yet in “syncevolution –help”.
Post a Comment