2007-12-17 Patrick Ohly * Makefile.am, README, etc/source-config.txt, test/runtests.py: fixed building of .deb (docdir and description) - the new checkinstall --docdir=: syntax is used to avoid adding the name twice - description-pak was not created and thus missing from package 2007-12-15 Patrick Ohly * src/EvolutionSyncClient.cpp: disabled the background glib event loop again because it caused segfaults Without the event loop SyncEvolution will get stuck again in EDS API calls when the EDS dies, but that is the lesser evil. 2007-12-10 Patrick Ohly * src/EvolutionSyncClient.cpp: myFUNAMBOL does not like empty types in the capability, so always send a valid (even if wrong) type 2007-12-09 Patrick Ohly * src/EvolutionMemoSource.cpp: text/plain requires \r\n line breaks: - send in that format now - accept both \r\n and \n line breaks for incoming memos 2007-12-07 Patrick Ohly * src/EvolutionSyncClient.cpp: avoid empty strings in DevInf structure, they might cause failures with myFUNAMBOL 2007-12-06 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, src/EvolutionMemoSource.cpp: Implemented support for sending/receiving all VEVENTs with the same UID as one SyncML item. This turned out to be incompatible with what most SyncML servers do, so it will be necessary to switch to a model where each VEVENT is one item and the LUID is UID+RECURRENCE-ID. * README: fixed typo in getting started section * HACKING: added list of debug packages 2007-12-01 Patrick Ohly * src/client-test-app.cpp: dump core if test fails instead of simply exiting * test/runtests.py: added the possibility to run under valgrind * src/EvolutionSyncClient.cpp: avoid including invalid information about inactive sources in DevInf by clearing it * src/EvolutionMemoSource.h: need to set mime type, required for correct DevInf (expected by Synthesis server) 2007-11-30 Patrick Ohly * src/EvolutionContactSource.cpp: bugfix: vCard 3.0 with mixed case were not converted properly to vCard 2.1 by SyncEvolution (must convert to upper case because vCard 2.1 only allows that), leading to problems with mapping phone numbers in the Funambol server. Diagnosed and reported by Paul McDermott, thanks a lot! * test/runtests.py: - changed configure/build so that it also builds .deb (default prefix + DESTDIR for install) - updated config for servers 2007-11-28 Patrick Ohly * src/EvolutionSyncClient.cpp: avoid delivering SIGALRM to background thread - glib/ebook crash when that happens * src/client-test-app.cpp: avoid lengthy objdump -l -C output in error handler, exit to prevent repeated segfault invocation 2007-11-22 Patrick Ohly * src/EvolutionSyncClient.cpp: added better error message when 'syncevolution' is started with non-existant sources as parameter 2007-11-21 Patrick Ohly * src/client-test-app.cpp, configure.in: Added stack dumping in case of SIGABRT, SIGSEGV, SIGILL. Both valgrind and glibc backtrace() are used: the former automatically looks up source code, the later can handle stack back traces out of a signal handler. objdump is called so that the addresses printed by backtrace() can be associated with source code. 2007-11-10 Patrick Ohly * src/AddressBookSource.cpp: last minute fix for iPhone 0.7 pre2: removed debug output * src/EvolutionSyncClient.cpp: clarified post-sync comparison by adding 'Changes applied to client during synchronization' 2007-11-08 Patrick Ohly * src/EvolutionContactSource.cpp: Evolution 2.12 generates contacts with e.g. TYPE=VOICE,WORK. This needs to be split into TYPE=VOICE;TYPE=WORK when converting to 2.1, otherwise myFUNAMBOL drops the phone numbers with the (in 2.1) incorrect TYPE * README, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/syncevolution.cpp: - revised an updated usage instructions (myFUNAMBOL instead of Funambol) - added dumping of local changes before sync (works best with logdir) - added command line options: --sync|-s Temporarily synchronize the active sources in that mode. Useful for a 'refresh-from-server' or 'refresh-from-client' sync which clears all data at one end and copies all items from the other. --status|-t The changes made to local data since the last synchronization are shown without starting a new one. This can be used to see in advance whether the local data needs to be synchronized with the server. --quiet|-q Suppresses most of the normal output during a synchronization. The log file still contains all the information. --help|-h Prints usage information. --version Prints the SyncEvolution version. * HACKING: separated compile and release instructions * etc/source-config.txt: let the default source configs access the default Evolution databases: less work for users to configure it 2007-11-05 Patrick Ohly * src/AddressBookSource.cpp: fixed iPhone photo import/export: that API wasn't as expected and therefore was called incorrectly. Importing photos crashed, exporting them may have failed randomly and/or picked the wrong size of the photo. 2007-11-04 Patrick Ohly * src/AddressBookSource.cpp, src/AddressBookSource.h, src/vocl/VObject.cpp, src/vocl/VObject.h: when configured to use ScheduleWorld card3 URI, then switch to sending vCard 3.0 (easier to parse by SW); always dump contacts as vCard 3.0 (avoids quoted-printable in synccompare output) * src/vocl/VProperty.cpp: bug fix: TYPE with multiple comma-separated values (vCard 3.0, e.g. TYPE=WORK,VOICE) was not decoded as intended => downloading into iPhone from SW card3 URI did not set type correctly * src/EvolutionSyncClient.cpp: dump user name, date and SyncEvolution at beginning of debug log * etc/syncml-config.txt: Replaced guest/guest credentials with "your SyncML server account name" and "your SyncML server password" to make it clear that something must be entered there. Some servers also really have "guest/guest" demo accounts. 2007-11-03 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp: Detect unexpected crashes of the Evolution Data Server. A workaround for the fact that the synchronous EDS API calls block infinitely in that case. - drive default glib event look in background thread - listen for "backend-died" signals - if triggered, print a message ("Evolution Data Server has died unexpectedly, database no longer available.") and abort the process (other error handling is impossible) - for contacts instead of "database" "contacts" is printed * src/EvolutionCalendarSource.cpp: adapted calendar event insert/update to Evolution 2.12: the UID needs to be restored, otherwise the Evolution backend crashes (GNOME issue #488881) 2007-11-01 Patrick Ohly * src/AddressBookSource.cpp: fixed compile errors on Mac OS X 2007-10-25 Patrick Ohly * Makefile.am, src/shlibs.local: added package release number and dependency calculation for local Evolution libs without installed .debs * test/Makefile.am: ClientTest.cpp and synccompare.pl are back in C++ library 2007-10-24 Patrick Ohly * src/Makefile.am: synccompare.pl wasn't found in client library because search rule had the wrong directory * src/syncevolution.cpp: workaround for dependency on size_t in client library Log.h: include stddef.h first * src/vocl/VObject.cpp, src/vocl/VProperty.cpp: adapted to ArrayList::remove() -> removeElementAt() renaming 2007-10-23 Patrick Ohly * src/DeviceManagementNode.cpp: same patch as in client library: chop trailing white spaces 2007-10-17 Patrick Ohly * Makefile.am: added packaging via checkinstall as deb (working) and rpm (somehow not working) 2007-10-14 Patrick Ohly * src/AddressBookSource.cpp: - consistently ignore all empty strings when reading vcard - interpret date time stamps relative to current system time zone (like GUI does) * src/EvolutionSyncClient.cpp: improved error handling: catch errors during post-processing and continue * etc/source-config.txt: SF #1764123: SyncCap is not generated unless syncModes are configured: added a comment to example config * src/EvolutionSyncClient.cpp: added a table which summarizes the changes made on client and server * src/EvolutionSyncClient.cpp: replaced ambiguous 'Modifications:' with 'Changes applied during synchronization:' * etc/Makefile.am, etc/syncml-config.txt: use myFUNAMBOL instead of localhost for funambol demo config * src/AddressBookSource.cpp: avoid setting empty strings: the iPhone GUI adds redundant space around the empty property (e.g. middle name) * test/synccompare.pl: perl is not installed as /usr/bin/perl on iPhone: let /usr/bin/env find it * src/AddressBookSource.cpp, src/AddressBookSource.h: use vCard 2.1 instead of 3.0 for iPhone: avoids parsing problems in myFUNAMBOL * configure.in: reset version to alpha (less than pre) 2007-10-13 Patrick Ohly * README: updated package commands for Debian 4.0 * test/synccompare.pl: ScheduleWorld no longer drops department/office * src/EvolutionSyncClient.cpp: fixed segfault due to unintentional infinite recursion in new throwError() call 2007-10-12 Patrick Ohly * src/EvolutionContactSource.cpp: SF #1796086: also added all the other predefined TYPE values from vCard 2.1/3.0 * test/ClientTest.cpp: temporary fork of 1.25: handle testComplexUpdate where some (but not all) sources have a complex update item * src/EvolutionSyncSource.cpp: fixed compile error with enabled modules (missing comma) 2007-10-11 Patrick Ohly * src/AddressBookSource.cpp, src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/EvolutionSyncSource.cpp: added workaround for missing exception handling on iPhone (http://code.google.com/p/iphone-dev/issues/detail?id=48) 2007-10-10 Patrick Ohly * Makefile.am, SyncEvolution.plist.in, configure.in: added iPhone Installer.app packaging 2007-10-07 Patrick Ohly * HACKING: added compile/packaging information * src/AddressBookSource.h, src/EvolutionSyncClient.cpp, configure.in, src/AddressBookSource.cpp: problem with C++ output stream (http://code.google.com/p/iphone-dev/issues/detail?id=48): throws exception although everything is fine - disabled exceptions in one case and replaced with ANSI C calls in another IPHONE define now in configure (cleaner). Creating contacts twice (during dump and when sending) caused crash - ref counting problem? Disabled any CFRelease() for now on iPhone. compile error fix for Mac OS X (probably more necessary) * src/AddressBookSource.cpp: removed debug output which was added to track down crashes and now is no longer useful * src/AddressBookSource.cpp, src/AddressBookSource.h: added comments, some cleanups 2007-10-06 Patrick Ohly * src/AddressBookSource.cpp: workarounds for ABMutableMultiValueRef on iPhone: - cannot be released - cannot be turned into a string improved phone number mapping => all properties enabled now 2007-10-04 Patrick Ohly * HACKING, configure.in, src/AddressBookConstants.cpp, src/AddressBookSource.cpp, src/AddressBookSource.h: port to iPhone: lots of hacks and debug output, none of the multiprops supported yet (use unknown format in API) * src/syncevolution.cpp: disable buffering to stdout/stderr: ensures that printf output appears immediately without explicit fflush() * src/EvolutionContactSource.cpp: SF #1796086: sync with EGW: lost or messed up telephones - SyncEvolution incorrectly added TYPE=OTHER to phone numbers sent with e.g. CELL instead of TYPE=CELL 2007-09-24 Patrick Ohly * debian/changelog, debian/control: SF #1781652: Nokia 770/800: uninstallable package fixed by setting category * src/Makefile.am: removed patching of CATEGORIES (recent client library has the fix) added possibility to update/commit test suite files in SyncEvolution test dir, then later move them back to client library * src/AddressBookConstants.cpp, src/Makefile.am: workaround if address book library misses constants * src/client-test-app.cpp: fixed compile errors 2007-08-25 Patrick Ohly * etc/Makefile.am: fixed SF 1767329: example configs were in share/share directory * src/DeviceManagementNode.h, src/SQLiteSyncSource.cpp: fixed compile error * src/EvolutionSyncSource.cpp, src/client-test-app.cpp: unsuccessful attempt to work around the 'one address book per user' limitation in order to get automated sync testing working * src/AddressBookSource.cpp, src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp: less verbose INFO logging: extracting items is now logged as DEBUG 2007-08-24 Patrick Ohly * test/synccompare.pl, src/AddressBookSource.cpp, src/AddressBookSource.h, src/Makefile.am, src/vocl/VProperty.cpp: added custom vcard 3.0 <-> AddressBook conversion: needed to make vcard representation close to what SyncML servers understand 2007-08-21 Patrick Ohly * src/AddressBookSource.cpp, src/AddressBookSource.h, src/DeviceManagementNode.cpp, src/DeviceManagementNode.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/client-test-app.cpp, src/syncevolution.cpp: finished change tracking, update and delete - still needs improved import/export with own functions because Address Book vcard parser merges X- properties into NOTE and cannot update contact 2007-08-19 Patrick Ohly * configure.in, src/AddressBookSource.cpp, src/AddressBookSource.h, src/EvolutionSmartPtr.h, src/EvolutionSyncSource.cpp, src/Makefile.am, src/client-test-app.cpp: added initial support for Mac OS X address book: no change tracking, no updating * src/SQLiteSyncSource.cpp: fixed incorrect extraction of text columns from SQLite 2007-08-13 Patrick Ohly * src/EvolutionCalendarSource.h, src/EvolutionSyncSource.cpp, src/EvolutionSyncSource.h, src/Makefile.am, src/SQLiteContactSource.cpp, src/SQLiteContactSource.h, src/SQLiteSyncSource.cpp, src/SQLiteSyncSource.h, src/client-test-app.cpp, src/syncevolution.cpp, src/vocl/VObject.cpp, src/vocl/VObject.h, configure.in: added a sync source which stores contacts in a SQLite database 2007-07-13 Patrick Ohly * etc/source-config.txt, etc/Makefile.am: fixed name of example source configs (broke during the changes for 0.6 pre) 2007-06-28 Patrick Ohly * src/EvolutionContactSource.cpp, src/client-test-app.cpp: Maemo address book delete support works now: one has to search for X-OSSO-CONTACT-STATE:DELETED manually 2007-06-27 Patrick Ohly * src/EvolutionContactSource.cpp, src/client-test-app.cpp: - added test for X-OSSO-CONTACT-STATE:DELETED handling - contacts marked for deletion are now deleted by SyncEvolution (but code fails test...) - made it possible to run client-test with EDS-DBus 2007-06-25 Patrick Ohly * src/Makefile.am: when using older test data fix the broken CATEGORIES 2007-06-24 Patrick Ohly * README: fixed invalid path names * src/EvolutionCalendarSource.cpp: workaround for Evolution bug in the calendar import/export: Evolution uses \, as separator for CATEGORIES, but the standard specifies a plain comma. The effect was that multiple categories were treated as one category with commas by ScheduleWorld. Events imported into Evolution were stored incorrectly and the GUI only used the last category. As a workaround SyncEvolution now converts back and forth between , and \, 2007-06-19 Patrick Ohly * HACKING: updated testing instructions 2007-04-21 Patrick Ohly * src/EvolutionSyncSource.cpp, src/EvolutionSyncClient.cpp: fixed error handling: a failed source was not forced into a slow sync, one failed source prevented saving configs of not-failed ones * src/EvolutionSyncClient.cpp, etc/localhost_1/spds/sources/addressbook_1/config.txt, etc/localhost_1/spds/syncml/config.txt, etc/source-config.txt, etc/syncml-config.txt, etc/Makefile.am, README, HACKING: - improved logging: log file and backup can be avoided with logdir=none, loglevel is configurable - fixed off-by-one counting of months in backup directory names - only one example configuration per server, users typically do not need the _1/2 suffices and the testing system no longer has to be configured manually either - documented the switch from the original SyncEvolution testing to its successor, the generic Funambol C++ client testing framework 2007-04-15 Patrick Ohly * src/client-test-app.cpp: fixed compile problem on Debian 3.1/older gcc * src/client-test-app.cpp, src/EvolutionSyncSource.cpp, src/Makefile.am, src/EvolutionMemoSource.cpp, src/EvolutionMemoSource.h, etc/localhost_1/spds/sources/addressbook_1/config.txt, src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h, etc/Makefile.am: added synchronization of Memos as plain text * HACKING: added note about building Maemo package with fakeroot 2007-04-14 Patrick Ohly * debian/rules: avoid unwanted dependencies caused by optional modules * debian/changelog, configure.in: bumped to 0.6 pre2 * src/client-test-app.cpp: minor changes about ifdef ENABLE, added comment avoid vcard21, FIXED itodo20 type 2007-04-12 Patrick Ohly * src/client-test-app.cpp: always set encoding, we might have to overwrite an encoding set earlier 2007-04-11 Patrick Ohly * src/EvolutionContactSource.cpp: type OTHER was converted to PARCEL when sending to server, but PARCEL was then not converted back to OTHER, but rather into HOME * src/client-test-app.cpp: - source type was not set in new configs as intended - fixed confusion with source index vs. type (broke testing of e.g. ical20) 2007-04-09 Patrick Ohly * src/EvolutionCalendarSource.cpp, src/EvolutionContactSource.cpp: avoid not freeing error/overwriting error when trying again * src/client-test-app.cpp: fixed incorrect mapping from selected source to type * src/EvolutionSyncClient.cpp: always summarize ERROR/INFO messages at the end, even if sync didn't start - there might be errors which prevent starting it 2007-04-06 Patrick Ohly * src/Makefile.am: need to declare new files so that it gets included in distribution 2007-04-02 Patrick Ohly * src/Makefile.am: fixed distribution after taking several files from C++ client library 2007-04-01 Patrick Ohly * src/client-test-app.cpp: added CLIENT_TEST_EVOLUTION_PREFIX which overrides the evolutionsource setting in test configs; default SyncEvolution_Test_ * src/EvolutionCalendarSource.cpp: avoid e_cal_new_system_memos(), it breaks compilation with older Evolution * src/EvolutionContactSource.cpp, src/client-test-app.cpp, src/EvolutionCalendarSource.cpp, src/EvolutionCalendarSource.h: added the possibility to create databases if evolutionsource is set to a file:// uri * src/Makefile.am: explicit dependency on modules is needed for client-test 2007-03-31 Patrick Ohly * src/Algorithm/Artistic, src/Algorithm/Diff.pm, src/Algorithm/README, src/Algorithm/copyright, src/EvolutionClientConfig.h, src/EvolutionSyncClient.cpp, src/EvolutionSyncClient.h, src/Makefile.am, src/client-test-app.cpp: synccompare and test suite are now taken from C++ client library 2007-03-26 Patrick Ohly * debian/control, debian/changelog, README, NEWS, ChangeLog, HACKING: various release preparations * 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