2007-03-26 Patrick Ohly * configure.in: streamlined dependencies and their checking * src/Makefile.am, configure.in: do not remove src/client-api unless it was copied by configure 2007-03-25 Patrick Ohly * src/Makefile.am, HACKING, configure.in, debian/rules: - fixed building synccompare for Maemo - added/fixed rules to build for Maemo - add new Algorithm::Diff files to source distribution * src/EvolutionContactSource.cpp: fixed uninitialized memory read under Maemo * src/normalize_vcard.pl: Algorithm::Diff: check whether files really have changed * src/Algorithm/copyright, src/Algorithm/README, src/Algorithm/Diff.pm, src/Algorithm/Artistic, src/normalize_vcard.pl, src/Makefile.am: - use Algorithm::Diff instead of external diff tool in synccompare; Algorithm::Diff is embedded in synccompare to keep it self-contained - tput must be called without redirection of stderr, otherwise it did not find the current number of columns 2007-03-24 Patrick Ohly * src/EvolutionContactSource.cpp: additional error check * src/EvolutionSyncSource.cpp: dlopen(RTLD_GLOBAL) fixes obscure libebook failures on Maemo; dlopen() errors can occur due to missing modules, only print as debug to avoid failure message after sync * etc/Makefile.am: also need to uninstall doc files, distcheck complains otherwise * src/vocl/VObject.cpp, src/EvolutionContactSource.cpp, src/testVCard.vcf: workaround for Funambol 3.0 trailing = parser bug * etc/localhost_1/spds/syncml/config.txt: enable large object support and max message limit by default * src/syncevolution.cpp, configure.in, dbus-timeout.patch, src/Makefile.am: added configurable hacks for Maemo (--enable-maemo): - set the (non-standard!) DBUS_DEFAULT_TIMEOUT; see dbus-timeout.patch - wrap e_book_from_string() to fix invalid parameter - don't use UTF-8 encoding in Perl script * src/normalize_vcard.pl: BusyBox's mktemp on Maemo requires parameter * etc/Makefile.am: new internal docdir was not actually used * debian/compat, debian/control: Maemo only has debhelper 4 * src/EvolutionSyncSource.cpp: fixed compile error without calendar support 2007-03-23 Patrick Ohly * src/EvolutionCalendarSource.cpp: added error checking for broken events which cannot be converted to iCal, e.g. because of a missing timezone definition (SF #1685637) * src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp: Errors while writing the initial datatbase dumps was not handled properly and led to a direct dump of the error exception. Now the error is logged first and the '.after' dump is skipped. * etc/Makefile.am: fixed compatibility problem with older automake/autoconf which does not have docdir yet 2007-03-19 Patrick Ohly * etc/Makefile.am: install into $(docdir), not etc; also use "funambol_*" instead of "localhost_" * debian/README.Debian: no special comment for Debian needed 2007-03-12 Patrick Ohly * debian/control, debian/copyright, debian/docs, debian/rules, debian/README.Debian, debian/changelog, debian/compat: added packaging for Debian 2007-03-11 Patrick Ohly * src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/syncevolution.cpp, src/EvolutionSyncClient.cpp, src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, configure.in: --enable-ecal/ebook are only enabled by default if the libs are present --enable-shared will build backends as modules which are loaded dynamically if possible (off by default) 2007-02-22 Patrick Ohly * src/async.patch: patch switches to async version of the Evolution API 2007-01-26 Patrick Ohly * src/EvolutionSyncClient.cpp: fixed free/delete [] mismatch 2007-01-22 Patrick Ohly * src/Makefile.am: fixed distdir target that broke in yesterday's commit 2007-01-21 Patrick Ohly * src/Makefile.am, configure.in: added --enable-static-cxx to link libstdc++ statically 2007-01-20 Patrick Ohly * test/runtests.py: fixed problem of deleting read-only install directories * etc/Makefile.am: memo config now also included for localhost, but disabled by default 2007-01-11 Patrick Ohly * test/runtests.py: added cross-compilation 2007-01-09 Patrick Ohly * configure.in: pass cross-compilation options through to configure of client library 2007-01-04 Patrick Ohly * src/Makefile.am, src/TestEvolution.cpp, src/testMemo.ics: added testing of memos * etc/localhost_1/spds/sources/addressbook_1/config.txt, src/EvolutionCalendarSource.h, src/EvolutionSyncSource.cpp, src/syncevolution.cpp, README, etc/Makefile.am: added support for synchronizing Evolution memos in iCalendar 2.0 VJOURNAL format * configure.in: bumped version, clean up copy of client library sources some more * src/Makefile.am: fixed problem with 'make dist' 2007-01-03 Patrick Ohly * src/EvolutionContactSource.cpp: avoid adding the non-standard TYPE=OTHER, better use HOME instead (that's also the default in the Synthesis server) * configure.in: autoconf checks must not be inside conditional code (fixes 'conditional AMDEP was never defined' error) 2006-12-17 Patrick Ohly * src/client-test-app.cpp: adapted to update test API * src/Makefile.am: ignore changes in autotools generated files * src/EvolutionSyncClient.cpp: fixed missing return code 2006-12-10 Patrick Ohly * src/TestEvolution.cpp, src/TestMain.cpp, src/client-test-app.cpp, src/syncevolution.cpp, src/EvolutionSmartPtr.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/EvolutionContactSource.h, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionCalendarSource.cpp, COPYING: copyright transfer to Funambol 2006-12-09 Patrick Ohly * src/client-test-app.cpp: adapted to new C++ client library test suite interface, finished configuration for calendars and tasks * src/normalize_vcard.pl: ignore differences caused by exporting vCard with ADR;TYPE=PARCEL instead of ADR;TYPE=OTHER 2006-12-07 Patrick Ohly * src/client-test-app.cpp: support testing with two clients 2006-12-05 Patrick Ohly * src/client-test-app.cpp: adapted contacts to full set of local tests * src/normalize_vcard.pl: avoid tput error when no valid terminal is set 2006-12-01 Patrick Ohly * configure.in, src/Makefile.am, src/client-test-app.cpp: use the new C++ client library testing framework 2006-11-27 Patrick Ohly * src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.cpp, src/vocl/VProperty.cpp: adapted to const qualifier changes in client library and fixed minor memory leak 2006-11-12 Patrick Ohly * test/runtests.py: added building of release packages, adapted to some more known server limitations * src/TestEvolution.cpp: renamed testRefreshSync to testRefreshFromServerSync and added testRefreshFromClient * src/normalize_vcard.pl: ignore known limitations of Synthesis server 2006-11-11 Patrick Ohly * NEWS, configure.in: 0.5 release * src/EvolutionContactSource.h, src/EvolutionSyncSource.h, src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, ChangeLog: messages about local changes are now logged as DEBUG and not INFO because they were confusing for users; now they are not visible in the final report 2006-11-11 Patrick Ohly * src/EvolutionContactSource.h, src/EvolutionSyncSource.h, src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, ChangeLog: messages about local changes are now logged as DEBUG and not INFO because they were confusing for users; now they are not visible in the final report 2006-11-04 Patrick Ohly * src/EvolutionSyncSource.cpp, src/TestEvolution.cpp, README, etc/localhost_1/spds/syncml/config.txt: added support and testing of one-way-from-client/server 2006-11-03 Patrick Ohly * src/TestEvolution.cpp: TaskSync tests for large object support failed because the test item didn't have the expected DESCRIPTION to stuff the item's size * HACKING, src/TestMain.cpp: allow running multiple tests by specifying them on the command line 2006-11-02 Patrick Ohly * README, etc/localhost_1/spds/sources/addressbook_1/config.txt: added warning about setting evolutionuser/password when not needed -> causes backend to hang * src/normalize_vcard.pl: PHOTO/NOTE update for EGroupware and Funambol portal * src/TestEvolution.cpp: use simpler data for update test, moved complex contact update into testComplexUpdate 2006-11-01 Patrick Ohly * src/normalize_vcard.pl: avoid that patterns accidentally run over line ends, added special cases for Funambol and EGroupware server * test/runtests.py: allow to build arbitrary combinations of client library and SyncEvolution * src/EvolutionContactSource.cpp: <> and <> can be used to reference the system and the default address books, respectively * src/Makefile.am: cppunit-config was not called when compiling C++ code, therefore it was only found if in the default search path * src/TestEvolution.cpp: made test coverage configurable 2006-10-29 Patrick Ohly * src/TestEvolution.cpp: added testLargeObjectBin, changed calendar UID so that without support for special characters in the key the sync fails * src/EvolutionSyncClient.cpp: VerDTD must be configured, otherwise Funambol 3.0a (but not 3.0b5) fails during the second sync * etc/localhost_1/spds/sources/addressbook_1/config.txt: documentation got the direction in refresh-from-client/server wrong 2006-10-28 Patrick Ohly * test/runtests.py: filter out private information from logs, added --tag parameter 2006-10-04 Patrick Ohly * src/EvolutionSyncClient.cpp: setting config is no longer necessary * src/TestEvolution.cpp: disabled testLargeObjectEncoded again, it requires a suitable server 2006-10-03 Patrick Ohly * src/TestEvolution.cpp: enabled encoded LargeObject support test * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h: adapted to new API * src/normalize_vcard.pl: ignore some known Synthesis data conversions 2006-09-28 Patrick Ohly * src/TestEvolution.cpp: force server to split large items when LargeObject support is enabled * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp, src/syncevolution.cpp: adapted to additional SyncSourceConfig parameter in SyncSource constructor, added testing of LargeObject support * src/testVCard.vcf: make names unique again 2006-09-16 Patrick Ohly * src/EvolutionCalendarSource.h, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.h: adapted to C++ client API change: supported datatypes now in config 2006-09-11 Patrick Ohly * test/runtests.py: removed default values, added egroupware testing, improved log file copying * NEWS: created entry for 0.3 -> 0.4 changes 2006-09-10 Patrick Ohly * src/TestEvolution.cpp: avoid refresh-from-server sync whenever possible because eGroupware server does not support it * src/normalize_vcard.pl: DTSTAMP may vary * README: minor updates for 0.4 * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp: do not treat requests to delete non-existant items as error, instead log the event (grep for DEBUG and non-existant) and proceed - this is currently necessary with ScheduleWorld server * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp: added missing space to error messages 2006-09-09 Patrick Ohly * src/EvolutionCalendarSource.cpp: do not overwrite the UID in an addItem operation even if we fall back to an update * src/EvolutionContactSource.cpp, src/TestEvolution.cpp: split TYPE parameter with commas into different parameters to help Evolution parse it (the overview display didn't handle this, the editor did) 2006-09-08 Patrick Ohly * src/TestMain.cpp: added TEST_EVOLUTION_ALARM to have some means of aborting when a test takes too long * src/EvolutionSyncClient.cpp: deviceId property was renamed -> restored compatibility with old configs * src/EvolutionSyncSource.cpp: added one-way from server/client 2006-09-07 Patrick Ohly * src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h: adapted to official DevInf API with one patch: config passed to SyncClient::conf() * src/EvolutionCalendarSource.cpp: beware to not overwrite valid UID with empty one (some tests broke due to this recent change) * src/Makefile.am: excluded automatically generated files from client-api-diff * src/TestMain.cpp: newline was missing after successfully completed test 2006-08-31 Patrick Ohly * src/EvolutionCalendarSource.cpp: SF issue 1511951: support copying changes back from EGroupware server by not expecting the UID of calendar items to be unmodified * src/TestMain.cpp: merged listeners so that failure message is generated in just one place 2006-08-30 Patrick Ohly * src/TestMain.cpp: print failure summary to cerr, like the rest of the messages 2006-08-27 Patrick Ohly * test/runtests.py: add number to preserve ordering of actions * test/runtests.py: added --skip option, made reporting a bit nicer * src/TestMain.cpp: added support for ignoring the failure of certain tests by listing them in TEST_EVOLUTION_FAILURES 2006-08-26 Patrick Ohly * test/runtests.py: executes CVS checkout, compilation and testing automatically 2006-08-19 Patrick Ohly * README: new server is www.estamos.de * configure.in: better error message when Evolution development files are missing * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h: moved reading of changes into helper function so that it can be used in the pre- and post-processing 2006-08-19 Patrick Ohly * README: new server is www.estamos.de * configure.in: better error message when Evolution development files are missing * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h: moved reading of changes into helper function so that it can be used in the pre- and post-processing 2006-08-17 Patrick Ohly * NEWS, src/EvolutionSyncSource.cpp, src/TestEvolution.cpp: ensure that after refresh-from-client items are not sent again * src/EvolutionCalendarSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp: changed list into a set to be more resilient against getting UIDs multiple times * src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.h, NEWS, README, src/EvolutionCalendarSource.cpp: implemented Evolution authentication 2006-08-15 Patrick Ohly * src/normalize_vcard.pl, NEWS: normalizing ORG must not extend into other properties 2006-08-14 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSmartPtr.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/syncevolution.cpp, NEWS: - rename qptr to eptr to avoid name clash with sstring - moved unref() into global name space so that more unref() functions can be added (otherwise local methods shadow the global functions) - use eptr for SourceList (wasn't destructed in case of error otherwise and logging in 0.4 pre continued to go to file) - check for server configuration and abort in prepare if none given with a suitable error message * NEWS, src/vocl/VObject.cpp: avoid CHARSET=UTF-8 without quoted-printable encoding 2006-08-13 Patrick Ohly * src/testVCard.vcf: added some more test cases for special characters * src/EvolutionContactSource.h: send configured vCard format as part of DevInf (Synthesis server gets confused otherwise) * src/vocl/VObject.cpp: do not send CHARSET for vCard 3.0, not needed and illegal 2006-08-06 Patrick Ohly * src/vocl/VObject.cpp: always treat single ; as normal character in single-value properties * NEWS, configure.in, src/Makefile.am, src/syncevolution.cpp: now compiles on Maemo * HACKING: added note about .patches * configure.in: C++ client library may or may not already contain the files generated by the autotools * etc/localhost_1/spds/sources/addressbook_1/config.txt: since adding the sync-mode-name.patch more comprehensible names are supported * src/TestEvolution.cpp, NEWS, src/EvolutionCalendarSource.cpp: workaround for incomplete result of e_cal_get_changes() * NEWS, README, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h, src/TestEvolution.cpp, src/syncevolution.cpp: - adapted to new SyncClient API: configuration tree handling is now part of the library - do not reset anchors after failure: allows to proceed with two-way sync 2006-08-06 Patrick Ohly * src/vocl/VObject.cpp: always treat single ; as normal character in single-value properties * NEWS, configure.in, src/Makefile.am, src/syncevolution.cpp: now compiles on Maemo * HACKING: added note about .patches * configure.in: C++ client library may or may not already contain the files generated by the autotools * etc/localhost_1/spds/sources/addressbook_1/config.txt: since adding the sync-mode-name.patch more comprehensible names are supported * src/TestEvolution.cpp, NEWS, src/EvolutionCalendarSource.cpp: workaround for incomplete result of e_cal_get_changes() * NEWS, README, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h, src/TestEvolution.cpp, src/syncevolution.cpp: - adapted to new SyncClient API: configuration tree handling is now part of the library - do not reset anchors after failure: allows to proceed with two-way sync 2006-07-27 Patrick Ohly * src/EvolutionSyncSource.h: ensure that deleted items have a sane datatype (in particular avoid text/x-todo) * src/EvolutionContactSource.cpp: fixed compiler warning 2006-07-25 Patrick Ohly * src/EvolutionContactSource.h, src/EvolutionCalendarSource.h: added inclusion of config.h (needed since adding ENABLE_ECAL/EBOOK) added meta information callbacks 2006-07-23 Patrick Ohly * configure.in, src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSmartPtr.h, src/EvolutionSyncSource.cpp, src/syncevolution.cpp: added --disable-ecal/ebook for installations without the required libs * src/EvolutionSyncClient.h: implemented more of the new meta info calls * etc/localhost_1/spds/syncml/config.txt: firstTimeSyncMode is not used 2006-07-18 Patrick Ohly * configure.in: bumped version * src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h: use the new SyncClient API to set a default 'SyncEvolution x.y' as HTTP user agent 2006-07-17 Patrick Ohly * src/testVCard.vcf, src/vocl/VObject.cpp: changed vCard 2.1 parser to make it compatible with servers which send a verbatim semicolon as part of properties where the semicolon has no special meaning 2006-07-14 Patrick Ohly * src/EvolutionContactSource.cpp: must always pass vCard through decoding/encoding to ensure that CHARSET is added as needed * src/TestEvolution.cpp: due to cut-and-paste error the ContactStress test was executed instead of Calendar/TaskStress * src/normalize_vcard.pl: ignore some more irrelevant differences with Synthesis server * src/vocl/VConverter.cpp, src/vocl/VConverter.h: fixed decoding of quoted-printable soft line breaks, fixed unfolding of vCard 2.1 * src/vocl/VObject.cpp: must add CHARSET=UTF-8 if non-ASCII character is found because default charset is not well-defined * src/testVCard.vcf: added folding and XML entities test cases 2006-07-08 Patrick Ohly * README, etc/localhost_1/spds/sources/addressbook_1/config.txt: emphasized the need to chose the right uri/type combination, in particular with ScheduleWorld 2006-07-02 Patrick Ohly * NEWS, etc/localhost_1/spds/syncml/config.txt: added support for setting HTTP user agent * src/TestEvolution.cpp: special characters in test cases were not escaped properly * src/TestEvolution.cpp: testMerge() dumps the result of conflict resolution, but no longer makes any assumptions about it 2006-06-27 Patrick Ohly * README: moved some content to new home page, added link to it * src/syncevolution.cpp: listing Evolution databases showed calendars twice instead of task lists 2006-06-26 Patrick Ohly * README: changed comments about Evolution versions affected by known problems * README: minor clarifications * etc/localhost_1/spds/syncml/config.txt: workaround for problems during slow-sync if items are split between different messages * src/EvolutionContactSource.cpp: clarified unknown name text * src/EvolutionContactSource.cpp, src/normalize_vcard.pl: added special handling of TEL;TYPE=PREF,VOICE 2006-06-22 Patrick Ohly * src/TestEvolution.cpp: added *Stress::testManyItems 2006-06-19 Patrick Ohly * src/EvolutionSyncClient.cpp: always use two digits in file name 2006-06-17 Patrick Ohly * src/EvolutionSyncSource.cpp: never executed delete since adding workaround (wrong brackets) * src/normalize_vcard.pl: remove redundant VALUE=DATE-TIME * src/testCalendar.ics: added test case with BYSETPOS=-1 * src/testCalendar.ics: added more special characters - double quotation marks currently not tested because of Evolution's invalid encoding of them * README: documented need to enter new address book to avoid 'EBookStatus returned 19' 2006-06-15 Patrick Ohly * src/normalize_vcard.pl, src/testTask.ics: relax comparison of RRULE BYDAY, modified task test case to always use its own VTIMEZONE * src/testVCard.vcf: added test case with empty EMAIL: property * src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h: added safety check to avoid segfaults if server sends no data for item * README: some more comments about compiling on Debian Sarge * src/Makefile.am: added Test.h to distribution * src/Makefile.am: added testTask.ics * etc/localhost_1/spds/syncml/config.txt, README, etc/localhost_1/spds/sources/addressbook_1/config.txt: clarified documentation and adapted to current status of SyncEvolution, ScheduleWorld and Funambol 2006-06-12 Patrick Ohly * Makefile.am: also add NEWS and COPYING to distribution * NEWS: comments on 0.3 * configure.in: bumped version to 0.3 * README: some more proof-reading - terms are still not used consistently * src/syncevolution.cpp, src/EvolutionContactSource.cpp: made output a bit nicer * src/vocl/vcardconverter.cpp, src/Makefile.am: also imported the vcardconverter program from the Funambol CVS * src/vocl/VObject.cpp: readded the removal of CHARSET 2006-06-12 Patrick Ohly * configure.in: bumped version to 0.3 * README: some more proof-reading - terms are still not used consistently * src/syncevolution.cpp, src/EvolutionContactSource.cpp: made output a bit nicer * src/vocl/vcardconverter.cpp, src/Makefile.am: also imported the vcardconverter program from the Funambol CVS * src/vocl/VObject.cpp: readded the removal of CHARSET 2006-06-12 Patrick Ohly * README: some more proof-reading - terms are still not used consistently * src/syncevolution.cpp, src/EvolutionContactSource.cpp: made output a bit nicer * src/vocl/vcardconverter.cpp, src/Makefile.am: also imported the vcardconverter program from the Funambol CVS * src/vocl/VObject.cpp: readded the removal of CHARSET 2006-06-11 Patrick Ohly * src/EvolutionCalendarSource.cpp: importing new timezones before their events works better (e.g. with Evolution 2.4) * README: added remark about Evolution 2.0.4 GUI problem with new VTIMEZONE defs * src/testCalendar.ics: use a TZID that no-one else knows * src/TestEvolution.cpp: testImport should leave the items imported - moved import/delete into its own test * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp: fixed several compiler warnings * src/normalize_vcard.pl: allow sync.scheduleworld.com to replace TZIDs * src/EvolutionSmartPtr.h: explicitly reference class member (required by g++ 4.1, but not g++ 3.3.5) * src/vocl/VConverter.h, src/vocl/VObject.cpp, src/vocl/VObject.h, src/vocl/VProperty.cpp, src/vocl/VProperty.h, src/vocl/posixadapter.h, src/EvolutionContactSource.cpp, src/Makefile.am, src/vocl/README, src/vocl/VConverter.cpp: added a copy of the relevant VOCL classes to be independent of incompatible changes upstream * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp: added sanity checks for using the results of Evolution's change tracking: invalid UIDs have been observed 2006-06-10 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionSmartPtr.h, src/EvolutionSyncSource.cpp: fixed memory leaks * configure.in: remove unwanted files in case someone has compiled in the sync4j src dir 2006-06-08 Patrick Ohly * src/testVCard.vcf: avoid trailing space at end of NOTE, might not be preserved 2006-06-06 Patrick Ohly * etc/localhost_1/spds/sources/addressbook_1/config.txt, etc/Makefile.am: fixed type for scheduleworld * src/TestEvolution.cpp: STATUS expected by libical * src/TestEvolution.cpp: split testDeleteAll into two tests, one for each method * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h: added support for custom timezones * src/testTask.ics: removed libical error message * src/testCalendar.ics: fixed invalid CREATED/LAST-MODIFIED, must be in UTC - broken by importing/exporting again, though 2006-06-05 Patrick Ohly * src/syncevolution.cpp: avoid copying incomplete type in catch * README, src/normalize_vcard.pl: ignore known problems with contact properties in scheduleworld 2006-06-01 Patrick Ohly * src/TestEvolution.cpp: got rid of the remaining files with :: in the name * src/TestEvolution.cpp: added test for add-update-download sequence * src/normalize_vcard.pl: adapted to syncing with sync.scheduleworld.com * src/EvolutionContactSource.cpp: added mapping for ADR;TYPE=OTHER for scheduleworld * etc/Makefile.am, etc/localhost_1/spds/syncml/config.txt: updated references to sync.scheduleworld.com * etc/localhost_1/spds/sources/addressbook_1/config.txt: comments explain how to obtain valid Evolution sources 2006-05-29 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionSyncSource.cpp: better error logging * src/testVCard.vcf: fixed typo * src/testCalendar.ics: adapted to scheduleworld.com * src/normalize_vcard.pl: use simpler diff output and transform into side-by-side oneself (simpler code, less fragile, handles UTF-8) 2006-05-28 Patrick Ohly * src/Test.h, src/TestEvolution.cpp, src/TestMain.cpp: avoid filenames with colons in the name 2006-05-27 Patrick Ohly * src/normalize_vcard.pl: adapt automatically to console size if tput is available * src/normalize_vcard.pl, README: made the diff output nicer: full items shown, separated by lines 2006-05-26 Patrick Ohly * src/normalize_vcard.pl: massage the full diff output so that it is easier to read and contains exactly the full vcard/vcalendar for each change * src/normalize_vcard.pl: added indention for nested BEGIN/END blocks in iCalendar * HACKING, src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, src/EvolutionSmartPtr.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp, src/syncevolution.cpp: cleaned up error reporting and exception handling 2006-05-25 Patrick Ohly * README, src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h: cleaned up error handling and logging, in particular when using multiple sources at once * configure.in: avoid copying temporary C++ API files * src/testVCard.vcf: added buffer overflow test case * src/EvolutionSyncSource.cpp, src/TestEvolution.cpp: added test for slow-sync and added handling of the STC_ALREADY_EXISTS encountered then; twinning is currently broken in Funambol 3.0 beta 3, see #305357 * README: added remark that text has to be exchanged as UTF-8 * src/testVCard.vcf: added test case with explicit CHARSET="UTF-8" to test how the updated client library deals with it 2006-05-24 Patrick Ohly * src/EvolutionSyncClient.cpp: utility was renamed 2006-05-05 Patrick Ohly * src/EvolutionCalendarSource.cpp: fixed new[]/free() mismatch 2006-05-01 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h: generate iCalendar items with VTIMEZONE definitions * README: added scheduleworld as preferred server 2006-04-26 Patrick Ohly * etc/Makefile.am, etc/localhost_1/spds/sources/addressbook_1/config.txt, src/EvolutionContactSource.cpp, src/EvolutionSyncSource.cpp: added possibility to choose between sending vCard 2.1 and 3.0 2006-04-24 Patrick Ohly * README: syncing multiple databases at the same time now worked okay * src/TestEvolution.cpp: avoid the problematic timezones in the basic tests * src/EvolutionCalendarSource.cpp: write the required PRODID and VERSION for iCalendar entries * src/normalize_vcard.pl: avoid eating the trailing newline after PHOTO * HACKING, etc/Makefile.am, etc/localhost_1/spds/syncml/config.txt, src/TestEvolution.cpp, src/normalize_vcard.pl: added support for testing against www.scheduleworld.com * src/normalize_vcard.pl: fixed the fix of EMAIL normalization... * src/normalize_vcard.pl: hide differences due to different PHOTO parameters, fixed EMAIL;INTERNET;OTHER 2006-04-23 Patrick Ohly * etc/Makefile.am, README: avoid problems with ChangeSourceUriSynclet by using sc-pim-ppc for second client * src/EvolutionContactSource.cpp: also treat INTERNET as TYPE 2006-04-17 Patrick Ohly * src/Makefile.am, src/TestEvolution.cpp, src/testTask.ics: added testing of tasks * HACKING: test names have changed * README: added warnings about known-problems * src/testCalendar.ics: temporarily removed some problematic characters (forge tracker #304786) * README, src/Makefile.am, src/TestEvolution.cpp, src/TestMain.cpp: - renamed normalize script to synccompare because it now applies to both calendar, tasks and contacts - temporary files in test suite now start with the name of the test they belong to * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/TestEvolution.cpp, src/testCalendar.ics, src/testTask.ics: - renamed "test" program to "TestEvolution" - copy original test cases to fit the name expected by TestEvolution and to have them in the build directory - handle merge with existing item in addItem(): return special status * src/normalize_vcard.pl: now also handles calendar comparison 2006-04-14 Patrick Ohly * src/EvolutionCalendarSource.h: added some support for inserting already existing item * src/TestEvolution.cpp: instantiate test for calendar * src/EvolutionCalendarSource.cpp: added some support for inserting already existing item 2006-04-12 Patrick Ohly * src/TestEvolution.cpp: refactored code so that test suites can be built from the base template TestEvolution class: currently defined are ContactSource (local tests) and ContactSync (synchronization with server), tests work exactly as before * src/EvolutionContactSource.cpp: text/x-vcard is more suitable for vcard 2.1 2006-04-09 Patrick Ohly * src/TestEvolution.cpp: made sleep configurable (off by default), synchronize only one source * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSmartPtr.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/TestEvolution.cpp, src/syncevolution.cpp, etc/Makefile.am, etc/localhost_1/spds/sources/addressbook_1/config.txt, README, configure.in: - added support for calendars and tasks: not yet tested automatically but manual tests show that it works in principle, albeit with some loss of attributes in the server for calendars (time zone) - removed "disabled" configuration option, use "sync = none" instead - added selection of databases to synchronize via additional command line parameters Source: - Refactored code so that EvolutionSyncSource contains the client-library facing code and commong logging/error handling. EvolutionContactSource and EvolutionCalendarSource (for both calendars and tasks) can now indicate errors via exceptions in all functions. 2006-04-06 Patrick Ohly * README, configure.in, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h, src/TestEvolution.cpp, src/syncevolution.cpp: adapted to head revision of Sync4j C++ client library * src/Makefile.am: testVCard.vcf was missing in source distribution 2006-03-26 Patrick Ohly * src/sync4j-client-api-sdkcpp_3_0_6a.diff: fix for #304805: testing return code of SyncClient::beginSync() 2006-03-19 Patrick Ohly * NEWS, README, configure.in, etc/localhost_1/spds/syncml/config.txt, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h, src/Makefile.am, src/syncevolution.cpp: - implemented automatic backups, logging and database comparison - prepared 0.2 release * src/EvolutionContactSource.cpp: set TYPE=OTHER also for EMAIL if no other type found * src/normalize_vcard.pl: ignore some more irrelevant vcard differences (TYPE=PREF, extra separators) * src/sync4j-client-api-sdkcpp_3_0_6a.diff, src/testVCard.vcf: when using quoted-printable, also encode non-ASCII for consistency 2006-03-19 Patrick Ohly * NEWS, README, configure.in, etc/localhost_1/spds/syncml/config.txt, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.h, src/Makefile.am, src/syncevolution.cpp: - implemented automatic backups, logging and database comparison - prepared 0.2 release * src/EvolutionContactSource.cpp: set TYPE=OTHER also for EMAIL if no other type found * src/normalize_vcard.pl: ignore some more irrelevant vcard differences (TYPE=PREF, extra separators) * src/sync4j-client-api-sdkcpp_3_0_6a.diff, src/testVCard.vcf: when using quoted-printable, also encode non-ASCII for consistency 2006-03-18 Patrick Ohly * src/Makefile.am, configure.in: make full copy of client lib C++ sources, added src/client-api-diff target to compare against original sources * src/sync4j-client-api-sdkcpp_3_0_6a.diff: changes for SyncEvolution not in Funambol CVS since sdkcpp_3_0_6a * src/TestMain.cpp: reset stdout/stderr before printing final result * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h: ensure that unique properties occur not more than once * src/TestEvolution.cpp: test adding multiple business phone numbers * src/Makefile.am, src/TestEvolution.cpp, src/testVCard.vcf, src/.cvsignore, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncSource.h: test for copying via server now transmits testVCard.vcf and also compares against it * src/normalize_vcard.pl: format normalized vcards with 60 columns for easier side-by-side diff 2006-03-18 Patrick Ohly * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h: ensure that unique properties occur not more than once * src/TestEvolution.cpp: test adding multiple business phone numbers * src/Makefile.am, src/TestEvolution.cpp, src/testVCard.vcf, src/.cvsignore, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncSource.h: test for copying via server now transmits testVCard.vcf and also compares against it * src/normalize_vcard.pl: format normalized vcards with 60 columns for easier side-by-side diff 2006-03-15 Patrick Ohly * src/.cvsignore, src/Makefile.am, src/normalize_vcard.pl, README: normalize_vcard can now also compare two files automatically; it's also installed without .pl suffix 2006-03-12 Patrick Ohly * README, configure.in: update README and version in preparation for release * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h: added workarounds for FBURL/CALURI and ADR without TYPE * src/.cvsignore, src/Makefile.am, src/TestEvolution.cpp, src/normalize_vcard.pl, README, configure.in: replaced verification with vcard comparion via normalize_vcard.pl * src/Makefile.am, etc/Makefile.am, .cvsignore, Makefile.am, autogen.sh: fixed maintainer-cleanup * .cvsignore, config.h.in, src/.cvsignore, src/Makefile.in, etc/.cvsignore, etc/Makefile.in, HACKING, Makefile.in, config.guess, config.sub, configure, depcomp, install-sh, ltmain.sh, missing, mkinstalldirs: removed pregenerated autotools files from CVS - use autogen.sh * src/.cvsignore, src/Makefile.am, src/Makefile.in, etc/Makefile.in, .cvsignore, HACKING, Makefile.am, Makefile.in, README, configure, configure.in: integrated compilation of Sync4j C++ client library + distribution of its source 2006-03-12 Patrick Ohly * README, configure.in: update README and version in preparation for release * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h: added workarounds for FBURL/CALURI and ADR without TYPE * src/.cvsignore, src/Makefile.am, src/TestEvolution.cpp, src/normalize_vcard.pl, README, configure.in: replaced verification with vcard comparion via normalize_vcard.pl * src/Makefile.am, etc/Makefile.am, .cvsignore, Makefile.am, autogen.sh: fixed maintainer-cleanup * .cvsignore, config.h.in, src/.cvsignore, src/Makefile.in, etc/.cvsignore, etc/Makefile.in, HACKING, Makefile.in, config.guess, config.sub, configure, depcomp, install-sh, ltmain.sh, missing, mkinstalldirs: removed pregenerated autotools files from CVS - use autogen.sh * src/.cvsignore, src/Makefile.am, src/Makefile.in, etc/Makefile.in, .cvsignore, HACKING, Makefile.am, Makefile.in, README, configure, configure.in: integrated compilation of Sync4j C++ client library + distribution of its source 2006-03-11 Patrick Ohly * aclocal.m4, autogen.sh, configure, configure.in, etc/Makefile.am, etc/Makefile.in, etc/localhost_1/spds/sources/addressbook_1/config.txt, src/.cvsignore, src/Makefile.am, src/Makefile.in, src/TestEvolution.cpp, src/normalize_vcard.pl, src/sync4jevolution.cpp, src/syncevolution.cpp, test/normalize_vcard.pl, .cvsignore, COPYING, HACKING, Makefile.am, Makefile.in, README: preparations for a release as 'SyncEvolution' * src/TestEvolution.cpp: restrict the usage of the problematic CALURI/FBURL to a few specific test cases 2006-03-11 Patrick Ohly * src/TestEvolution.cpp: restrict the usage of the problematic CALURI/FBURL to a few specific test cases 2006-02-26 Patrick Ohly * src/TestEvolution.cpp: check some more vcard fields (however, different order of entries still breaks comparison) * configure, configure.in: try most recent Evolution versions first, because shared objects are not upward-compatible 2006-02-04 Patrick Ohly * ChangeLog: started to use emac's vc-update-change-log to update the ChangeLog * etc/localhost_1/spds/sources/addressbook_1/config.txt: added support for the new refresh-client/server sync modes * README: added known problems and support section, updated compiling * src/EvolutionContactSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp: added support for the new refresh-client/server sync modes 2006-02-04 Patrick Ohly * README: added known problems and support section, updated compiling * etc/localhost_1/spds/sources/addressbook_1/config.txt, src/EvolutionContactSource.cpp, src/EvolutionSyncSource.h, src/TestEvolution.cpp: added support for the new refresh-client/server sync modes 2006-01-26 Patrick Ohly * README: added POHLY-SYNC4JEVOLUTION-CHECKED 2006-01-23 Patrick Ohly * src/EvolutionContactSource.cpp: removed redundant code * README, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/TestEvolution.cpp: added conflict handling 2006-01-21 Patrick Ohly * HACKING, src/TestMain.cpp: allow running just one test * src/TestEvolution.cpp, README: list the major features explicitly and improved tests to actually check copying/updating * HACKING: mention setup of unit testing * README: update to reflect current status * src/TestEvolution.cpp: minor changes to make it easier to debug 2006-01-08 Patrick Ohly * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/TestEvolution.cpp: added test cases for vcard conversion use VOCL classes to fix vcard encoding 2005-12-12 Patrick Ohly * src/EvolutionContactSource.cpp: a deleted item without data returns getDataSize() -1 2005-12-11 Patrick Ohly * HACKING, src/.cvsignore, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/TestEvolution.cpp: added unit testing for syncing, needs some support in core classes (overriding sync mode, full lists) 2005-12-10 Patrick Ohly * src/EvolutionContactSource.cpp, src/EvolutionSyncSource.h: implemented distinction between different sync modes: 'refresh' requires deleting items, scanning is different for full and partial sync * etc/.cvsignore, etc/Makefile.am, etc/Makefile.in, etc/localhost_1/spds/sources/addressbook_1/config.txt, etc/localhost_1/spds/syncml/config.txt, src/Makefile.in, test/normalize_vcard.pl, Makefile.am, Makefile.in, README, aclocal.m4, configure, configure.in: added testing of syncing * src/EvolutionContactSource.cpp, src/EvolutionSyncSource.h: added some more debug logging 2005-12-04 Patrick Ohly * src/EvolutionContactSource.cpp: more convervative logging 2005-12-03 Patrick Ohly * src/EvolutionSyncClient.cpp, src/sync4jevolution.cpp: fixed/extended error detection at the end of the sync * src/EvolutionContactSource.cpp, src/EvolutionContactSource.h: added logging of contact vcards added hack to make Evolution's vcard V3.0 compatible with Sync4j 2.3b3 (needs to be remove or made configurable) * src/EvolutionSyncSource.cpp: strip special characters, Evolution gets confused by them 2005-11-26 Patrick Ohly * README, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/Makefile.in, src/TestEvolution.cpp, src/sync4jevolution.cpp: implemented front-end based on new SyncML C++ config API implemented the new begin/endSync() callbacks explain the change tracking and error handling -> copying from server works, the other way around fails, probably because of vcard 3.0 parsing problems on the server 2005-11-25 Patrick Ohly * INSTALL, README, configure, configure.in, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/TestEvolution.cpp, src/sync4jevolution.cpp: adapted to Sync4j C++ client API 3.x * src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h: base class with functionality common to all Evolution sync sources 2005-11-05 Patrick Ohly * .cvsignore, HACKING, README, src/.cvsignore, src/EvolutionContactSource.cpp, src/EvolutionContactSource.h, src/EvolutionSmartPtr.h, src/Makefile.am, src/Makefile.in, src/TestEvolution.cpp, src/TestMain.cpp, src/sync4jevolution.cpp, src/valgrind.supp: first working version of SyncSource for Evolution contacts (requires Sync4j C++ API 2.0, not currently available) added unit testing 2005-10-08 Patrick Ohly * .cvsignore, AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, Makefile.in, NEWS, README, aclocal.m4, config.guess, config.h.in, config.sub, configure, configure.in, depcomp, install-sh, ltmain.sh, missing, mkinstalldirs, src/.cvsignore, src/Makefile.am, src/Makefile.in, src/sync4jevolution.cpp: setup framework