1505 lines
67 KiB
Text
1505 lines
67 KiB
Text
SyncEvolution 0.9 -> 0.9.1, 06.10.2009
|
||
======================================
|
||
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
|
||
|
||
Mobical and Memotoo are now officially supported.
|
||
|
||
Memotoo uses vCard 2.1 with several Evolution specific extensions. It
|
||
uses iCalendar 2.0, however, without actually supporting the advanced
|
||
features of it. Times are converted to UTC and meeting information are
|
||
lost.
|
||
|
||
Mobical uses vCard 2.1 and vCalendar 1.0 as data formats, with the
|
||
result that many properties used in Evolution are not supported by the
|
||
server. In particular calendar support is very limited (known issues
|
||
when events are in time zones different from the one selected locally
|
||
and on the server, no support for meetings). For details see
|
||
README.mobical.
|
||
|
||
*** Beware *** that the Mobical SyncML password is *not* the same as
|
||
the one for their web site. Log into mobical.net, the go to "my accounts
|
||
>> configure new device >> manual settings" to find the SyncML
|
||
credentials.
|
||
|
||
It is now possible to compile database backends outside of
|
||
SyncEvolution, install them and have SyncEvolution use them
|
||
automatically like any other backend. The backend API has been
|
||
enhanced considerably. Backend developers now have access to a modular
|
||
set of utility classes that can be mixed into a specific
|
||
implementation.
|
||
|
||
The sqlite demo backend can be enabled and compiled again with
|
||
--enable-sqlite. It demonstrates how to map directly from the
|
||
Synthesis field list to some internal format (an SQLite database
|
||
schema in this case).
|
||
|
||
Other changes:
|
||
|
||
* Resend messages to cope with intermittent loss of network
|
||
connectivity (Moblin Bugzilla #3427). See the new "ResendDuration"
|
||
and "ResendDelay" configuration properties for details.
|
||
|
||
* The logging of added and updated items was enhanced. Events,
|
||
tasks and memos are logged with a short description instead of
|
||
just the local ID. The description for contacts was improved.
|
||
|
||
* The sync UI allowed to enable calendar and task synchronization
|
||
with Google although Google does not support that (MB#5871).
|
||
In new installations this is prevented now by clearing the URI
|
||
for those data categories.
|
||
|
||
* Importing work and home phone numbers from Google into desktop
|
||
Evolution works better, because SyncEvolution now adds the "VOICE"
|
||
flag expected by Evolution (MB#6501).
|
||
|
||
* SyncEvolution command line uses the GNOME keyring when
|
||
the new --keyring option is given.
|
||
|
||
* SSL certificate checking with Google is enabled by default
|
||
and enabled in Moblin, because libsoup in that distro has
|
||
the necessary fix. Without that fix, all connection attempts
|
||
fail. The binaries on syncevolution.org are compiled with
|
||
--disable-ssl-certificate-check, so users who want the
|
||
additional security must enable it.
|
||
|
||
* syncevolution.org binaries should be compatible with a wider
|
||
range of Evolution releases again (MB#6552).
|
||
|
||
* Some sync UI enhancements (describe sync services, avoid crash
|
||
with very long input in some of the text boxes (MB#5219), set
|
||
application icon, improved some strings).
|
||
|
||
* Improved checks which logs in the logdir belong to the current
|
||
server (MB#5215).
|
||
|
||
* Improved sanity checking of integer configuration parameters
|
||
(MB#6500).
|
||
|
||
Known issue:
|
||
|
||
* Mobical and Memotoo do not have a description in the GUI yet.
|
||
|
||
* ZYB.com is not supported because of a known anchor handling
|
||
problem in the server (MB#2424).
|
||
|
||
|
||
SyncEvolution 0.8.1 -> 0.9, 12.08.2009
|
||
--------------------------------------
|
||
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
|
||
|
||
This is a major new release, with first steps towards further improvements.
|
||
From this release on, the Synthesis SyncML engine will be the
|
||
underlying SyncML and data conversion engine.
|
||
|
||
A native GTK GUI is now included. The "sync-ui" program depends on a
|
||
backend D-Bus service ("synevo-dbus-server") and several auxiliary
|
||
files. Therefore, it only runs without hacks after installation in
|
||
/usr (possible with .deb, .rpm and binary .tar.gz archives, and
|
||
with "sudo make install", after compiling from source). The
|
||
normal command line tool still works without being installed.
|
||
|
||
In this release, the data handling model was changed from "all items
|
||
are sent verbatim to the SyncML server" to "parse and convert". The
|
||
argument for the former approach was that the SyncML server should be
|
||
the only entity in the system which does data conversion. The previous
|
||
releases already had to deviate from this approach to accommodate for
|
||
minor client/server incompatibilities and for vCard 2.1 support, so the
|
||
new approach just takes it one step further.
|
||
|
||
The main reason for going to full semantic conversion is vCalendar 1.0
|
||
support. Support by servers for iCalendar 2.0, the only format
|
||
supported by 0.8.1, is often still incomplete or even non-existent. By
|
||
doing the conversion on the client side, SyncEvolution is now able to
|
||
synchronize events and tasks with a wider variety of servers.
|
||
|
||
It is still true that properties not supported by a server cannot
|
||
be synchronized to other devices, so using a server with full
|
||
iCalendar 2.0 support is recommended. But in contrast to 0.8.1,
|
||
information that can be stored only locally is no longer lost when
|
||
receiving an incomplete update from the SyncML server, thanks to
|
||
intelligent merging, provided by the Synthesis engine. This depends on
|
||
an accurate description of the server's capabilities, which might not
|
||
be provided by all of them. This still needs to be tested in more detail.
|
||
|
||
Interoperability with servers tested extensively in this release.
|
||
The following servers are now supported:
|
||
|
||
* ScheduleWorld. There is very complete support for Evolution data. The
|
||
only known issues are around resuming from an interrupted sync.
|
||
|
||
* Google contact sync.
|
||
|
||
Google follows the vCard 2.1 specification, and thus does not support
|
||
some of the vCard 3.0 additions, nor some of the common extensions. As
|
||
a result, several properties are not synchronized (nickname, birthday,
|
||
spouse/manager, URLs, ...). Only one top-level organization seems to
|
||
be supported. For details, see README.google.
|
||
|
||
Regarding Google's SyncML support, refresh-from-client and
|
||
one-way-from-client sync modes are not supported. Deleting contacts
|
||
moves them out of the main address without deleting them permanently. When
|
||
adding such a contact again, the server discards the data sent by the
|
||
client and recreates the contact with the data that it remembered.
|
||
|
||
Because SSL certificate checking for Google works only with libsoup
|
||
if the platform has a patched libsoup
|
||
(http://bugzilla.gnome.org/show_bug.cgi?id=589323) or libsoup >=
|
||
2.28, certificate checking remains turned off by default for
|
||
Google. If your platform has a suitable libsoup (like Moblin 2.0),
|
||
then enable checking with:
|
||
|
||
syncevolution --configure \
|
||
--sync-property SSLVerifyServer=true \
|
||
--sync-property SSLVerifyHost=true \
|
||
google
|
||
|
||
* Funambol, with calendar and task support. Funambol supports iCalendar 2.0
|
||
in the current server, so this is enabled in the configuration template.
|
||
Not all iCalendar 2.0 features are supported by the server,
|
||
most notably support for meetings (drops attendees), meeting
|
||
invitations (drops UID), detached recurrences
|
||
(drops RECURRENCE-ID). See README.funambol for details.
|
||
|
||
Interoperability with the Funambol server was improved by adding
|
||
support for some vCard extensions (X-MANAGER/ASSISTANT/SPOUSE/ANNIVERSARY,
|
||
#2418). Lost ACTION property has a work around (#2422).
|
||
|
||
To enable that support in an existing configuration so that it
|
||
exchanges items in the more suitable iCalendar 2.0 format, use:
|
||
|
||
syncevolution --configure --source-type sync=two-way \
|
||
funambol calendar todo
|
||
syncevolution --configure --source-type type='calendar:text/calendar!' \
|
||
funambol calendar
|
||
syncevolution --configure --source-type type='todo:text/calendar!' \
|
||
funambol todo
|
||
|
||
Without the exclamation mark, format auto-negotiation would pick the
|
||
less capable vCalendar 1.0 format because that is marked as preferred
|
||
by the server.
|
||
|
||
|
||
*** WARNING ***: After switching from a previous release to the
|
||
current one, or vice versa, do a "syncevolution --sync
|
||
refresh-from-server" or "--sync refresh-from-client" (depending on
|
||
which side has the authoritative copy of the data) once, to get client
|
||
and server into a consistent state. Not doing so can result in
|
||
applying the same changes to the server multiple times, and thus
|
||
duplicates.
|
||
|
||
Other changes in detail:
|
||
|
||
* vCalendar 1.0 is now supported.
|
||
|
||
* Both libcurl and libsoup can be selected at compile time as HTTP(S)
|
||
transport mechanism.
|
||
|
||
* SF #2101015: Expect: 100-continue header results in 417 Error with proxy.
|
||
Should no longer occur with the HTTP transports in this release.
|
||
|
||
* SF #1874805: Syncing with Funambol results in loosing all-day property.
|
||
This now works thanks to the Synthesis data conversion rules.
|
||
|
||
* SF #2586600: Synchronisation with mobical.net fails in 0.8.1.
|
||
Works now, but there are some known issues (Bugzilla #3009)
|
||
and therefore mobical.net is not officially supported yet.
|
||
|
||
* SF #2542968: Separator for categories should not be escaped.
|
||
Done correctly by the Synthesis vcard conversion.
|
||
|
||
* bug fix: Evolution notes with only a summary and no description were
|
||
not sent correctly to the server. Instead of sending the summary,
|
||
an empty text was sent.
|
||
|
||
* CTRL-C no longer kills SyncEvolution right away. Instead it
|
||
asks the server to suspend the session. If that takes too
|
||
long, then pressing CTRL-C twice quickly will abort the sync
|
||
without waiting for the server (Warning, this may lead to a
|
||
slow sync in the next session).
|
||
|
||
* WBXML is enabled by default now, except for Funambol (#2415).
|
||
Using WBXML reduces message sizes and increases parsing
|
||
performance.
|
||
|
||
* New configuration templates can be added to
|
||
/etc/default/applications/syncevolution. These templates may contain
|
||
icons, which are used by the GUI (no icons shipped right now).
|
||
|
||
* Information about previous synchronization sessions is now stored in a
|
||
machine-readable format and can be accessed using the new
|
||
--print-sessions options. The output of this information is more
|
||
complete and more nicely formatted.
|
||
|
||
* --status now shows not only data changes since the last sync, but also
|
||
item changes (see README for the difference between the two).
|
||
|
||
* The new --restore option allows restoring local data to the state as
|
||
it was before or after a sync. For this to work, "logdir" must be set
|
||
(done by default for new configurations). The format of database dumps
|
||
was changed to implement this feature. Instead of in a flat file,
|
||
items are now saved as individual files in a directory. To get the
|
||
previous format back (for example, to import as one .vcf or .ics file
|
||
manually) concatenate these files.
|
||
|
||
* With –-remove, one can remove configurations. It leaves data files and
|
||
the local databases untouched.
|
||
|
||
|
||
Known issues:
|
||
|
||
* The GUI includes the number of locally deleted items during a
|
||
refresh-from-server sync in the number of "received changes"
|
||
(#5185), which is a bit misleading. This is a result of #3314,
|
||
which introduced changes not "received" from the server.
|
||
|
||
* When a network error occurs and the client
|
||
never notices that the connection to the server was lost,
|
||
it will hang forever, waiting for the server's reply (#3427).
|
||
|
||
* The file backend now works only for data formats understood
|
||
by SyncEvolution and the Synthesis engine. Items are parsed
|
||
when exchanging them among the backend, engine, and server,
|
||
in contrast to 0.8.1, where item content was not touched
|
||
locally (#5046).
|
||
|
||
* The ZYB.com server sends conflicting sync anchors, so
|
||
most syncs don't work as expected (#2424).
|
||
|
||
|
||
SyncEvolution 0.9 beta 3 hotfix -> 0.9 final, 12.08.2009
|
||
--------------------------------------------------------
|
||
|
||
Because SSL certificate checking for Google only works with libsoup if
|
||
the platform has a patched libsoup
|
||
(http://bugzilla.gnome.org/show_bug.cgi?id=589323) or libsoup >= 2.28,
|
||
certificate checking remains turned off by default for Google. If your
|
||
platform has a suitable libsoup (like Moblin 2.0), then enable
|
||
checking with:
|
||
|
||
syncevolution --configure \
|
||
--sync-property SSLVerifyServer=true \
|
||
--sync-property SSLVerifyHost=true \
|
||
google
|
||
|
||
Only minor changes:
|
||
* updated translations
|
||
* refresh-from-server syncs now report how many items were
|
||
deleted locally at the start of the sync (Bugzilla #3314).
|
||
The GUI includes the number of locally deleted items during a
|
||
refresh-from-server sync in the number of "received changes",
|
||
which is a bit misleading (#5185).
|
||
* fixed build issue on Fedora 11/g++ 4.4 (Bugzilla #5061)
|
||
* some build and test improvements
|
||
* proper fix for D-Bus error functions (#4919)
|
||
* improve sync-ui startup time by avoiding an unnecessary
|
||
copying of the sync config into itself (#5021)
|
||
* adapted tooltip style (used for SyncML server links) to new
|
||
Moblin theme, they weren't visible earlier (#5017)
|
||
* notify zone selector in Moblin 2.0 about sync-ui startup (#4752)
|
||
* sync-ui: minor layout change for fatal error situation
|
||
|
||
|
||
SyncEvolution 0.9 beta 3 -> 0.9 beta 3 hotfix, 23.07.2009
|
||
---------------------------------------------------------
|
||
|
||
Found additional Google limitation: the server drops photos if they
|
||
exceed a certain size. The limit is somewhere between 40KB (okay) and
|
||
80KB (dropped).
|
||
|
||
The last-minute workaround for Google/libsoup/gnutls (using http)
|
||
didn't work because apparently Google only supports SyncML over https
|
||
(Bugzilla #4551). Now the default configuration template uses https
|
||
with all certificate checking disabled. A patch for libsoup was
|
||
submitted to upstream.
|
||
|
||
Some error messages by the "syncevolution" command line tool were not
|
||
printed (#4676). The root cause was the intentional interception of
|
||
stderr to hide the noise printed by various system libraries
|
||
(#1333). Unfortunately remarks about incorrect command line options
|
||
were among swallowed messages. No good workaround available short of
|
||
disabling the redirection with SYNCEVOLUTION_DEBUG=1, so let's release
|
||
an update...
|
||
|
||
Other changes:
|
||
* updated translations
|
||
|
||
|
||
SyncEvolution 0.9 beta 2 -> 0.9 beta 3, 21.07.2009
|
||
--------------------------------------------------
|
||
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
|
||
|
||
Enabled calendar and task synchronization for myFunambol.com.
|
||
Not all iCalendar 2.0 features are supported by the server,
|
||
most notably support for meetings (drops attendees), meeting
|
||
invitations (drops UID), detached recurrences
|
||
(drops RECURRENCE-ID). See README.funambol for details.
|
||
|
||
Interoperability with the Funambol server was improved by adding
|
||
support for some vCard extensions (X-MANAGER/ASSISTANT/SPOUSE/ANNIVERSARY,
|
||
Bugzilla #2418). Lost ACTION property is worked around (#2422).
|
||
|
||
Synchronization with Google Contacts was enabled and tested.
|
||
A configuration template for that server is now provided. Google
|
||
follows the vCard 2.1 specification and thus does not support some
|
||
of the vCard 3.0 additions, nor some of the common extensions. As
|
||
a result, several properties are not synchronized (nickname, birthday,
|
||
spouse/manager, URLs, ...). Only one top-level organization seems to
|
||
be supported. For details, see README.google.
|
||
|
||
Regarding Google's SyncML support, refresh-from-client and
|
||
one-way-from-client sync modes are not supported. Deleting contacts
|
||
moves them out of the main address without deleting them permanently. When
|
||
adding such a contact again, the server discards the data sent by the
|
||
client and recreates the contact with the data that it remembered.
|
||
|
||
SSL certificate checking with libsoup (the default transport) is now
|
||
supported (#2431). However, libsoup/gnutls are very strict about SSL
|
||
certificate checking and reject version 1 certificates, like the one
|
||
used by Verisign for Google (#4551). At the moment the only solution
|
||
is to fall back to plain http in the Google configuration template.
|
||
|
||
CTRL-C no longer kills SyncEvolution right away. Instead it
|
||
asks the server to suspend the session. If that takes too
|
||
long, then pressing CTRL-C twice quickly will abort the sync
|
||
without waiting for the server (warning, this may lead to a
|
||
slow sync in the next session).
|
||
|
||
WBXML is enabled by default now, except for Funambol (#2415).
|
||
Using WBXML reduces message sizes and increases parsing
|
||
performance. It was not enabled initially in the 0.9 releases in order
|
||
to test this new feature more thoroughly. Old configs don't have an
|
||
explicit enableWBXML setting and therefore will automatically use the
|
||
new default.
|
||
|
||
Various bug fixes and improvements:
|
||
|
||
* only show servers in GUI which are tested and supported (Bugzilla #3336)
|
||
* a single log file is written in .html format (#3474)
|
||
* added several translations of the GUI
|
||
* lots of testing improvements, build binary packages again
|
||
|
||
UPGRADING
|
||
|
||
When enabling calendar and todo synchronization with Funambol
|
||
in an existing configuration, set the type so that iCalendar 2.0 is used:
|
||
syncevolution --configure --source-type sync=two-way funambol calendar todo
|
||
syncevolution --configure --source-type type='calendar:text/calendar!' funambol calendar
|
||
syncevolution --configure --source-type type='todo:text/calendar!' funambol todo
|
||
|
||
When creating a configuration anew, this is not necessary because the
|
||
configuration template contains those types.
|
||
|
||
|
||
SyncEvolution 0.9 beta 1 -> 0.9 beta 2, 12.06.2009
|
||
--------------------------------------------------
|
||
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
|
||
|
||
Major new feature: a GTK GUI! The "sync-ui" program depends on a
|
||
backend D-Bus service ("synevo-dbus-server") and several auxiliary
|
||
files. Therefore it only runs without hacks after "sudo make install",
|
||
in contrast to the normal command line which can be invoked directly.
|
||
|
||
New configuration templates can be added to
|
||
/etc/default/applications/syncevolution. These templates may contain
|
||
icons which are used by the GUI (no icons shipped right now).
|
||
|
||
Information about previous synchronization sessions is now stored in a
|
||
machine-readable format and can be accessed via the new
|
||
--print-sessions options. The output of this information is more
|
||
complete and nicer formatted.
|
||
|
||
--status now not only shows data changes since the last sync, but also
|
||
the item changes (see README for the difference between the two).
|
||
|
||
The new --restore option allows restoring local data to the state as
|
||
it was before or after a sync. For this to work, "logdir" must be set
|
||
(done by default for new configurations). The format of database dumps
|
||
was changed to implement this feature: instead of in a flat file,
|
||
items are now saved as individual files in a directory. To get the
|
||
previous format back (for example, to import as one .vcf or .ics file
|
||
manually) concatenate these files.
|
||
|
||
With --remove one can remove configurations. It leaves data files and
|
||
the local databases untouched.
|
||
|
||
Various bug fixes and improvements:
|
||
|
||
* compiles and works again on Debian Etch if Boost 1.35 is installed
|
||
from www.backports.org (without GUI, see Bugzilla #3358)
|
||
|
||
* uses XDG_CACHE_HOME (= ~/.cache) for logs and database dumps to
|
||
avoid interfering with .desktop search in XDG_DATA_HOME; the
|
||
directory there is automatically moved when running syncevolution
|
||
(Bugzilla #3309)
|
||
|
||
* re-enabled certain config options (clientAuthType, maxMsgSize, maxObjSize);
|
||
normally it shouldn't be necessary to modify those (Bugzilla #3242, #2784)
|
||
|
||
* fixed error handling of unexpected server reply in libsoup transport
|
||
(Bugzilla #3041)
|
||
|
||
* message logging is enabled at logLevel 3 (XML translation) and 4 (also
|
||
original XML or WBXML message)
|
||
|
||
* GTK GUI fixes since initial Moblin 2.0 beta: only start it once if
|
||
libunique is available (Bugzilla #3154), wrap text in change sync service"
|
||
button (Bugzilla #2064), sort sources alphabetically in UI (Bugzilla #2070)
|
||
|
||
|
||
SyncEvolution 0.8.1 -> 0.9 beta 1, 13.05.2009
|
||
---------------------------------------------
|
||
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
|
||
|
||
A major new release and the first step towards further improvements:
|
||
from this release onwards, the Synthesis SyncML engine is used as the
|
||
underlying SyncML and data conversion engine. The focus of this first
|
||
beta was to reach the same level of functionality and stability as in
|
||
0.8.1. Therefore this beta does not yet bring much new features; this
|
||
will be the focus of further beta releases until finally 0.9 will be a
|
||
full replacement for 0.8.1.
|
||
|
||
This release also switches from an "all items are sent verbatim to the
|
||
SyncML server" to a "parse and convert" data handling model. The
|
||
argument for the former approach was that the SyncML server should be
|
||
the only entity in the system which does data conversion. The previous
|
||
releases already had to deviate from this approach to accommodate for
|
||
minor client/server incompatibilities and for vCard 2.1 support.
|
||
|
||
The main reason for going to full semantic conversion is vCalendar 1.0
|
||
support. Support by servers for iCalendar 2.0, the only format
|
||
supported by 0.8.1, is often still incomplete or even non-existent. By
|
||
doing the conversion on the client side, SyncEvolution is now able to
|
||
synchronize events and tasks with a wider variety of servers.
|
||
|
||
It is still true that properties not supported by a server cannot
|
||
be synchronized to other devices, so using a server with full
|
||
iCalendar 2.0 support is recommended. But in contrast to 0.8.1,
|
||
information that can only be stored locally is no longer lost when
|
||
receiving an incomplete update from the SyncML server thanks to
|
||
intelligent merging provided by the Synthesis engine. This depends on
|
||
an accurate description of the server's capabilities, which might not
|
||
be provided by all of them - still needs to be tested in more detail.
|
||
|
||
*** WARNING ***: after switching from a previous release to the
|
||
current one or vice versa, do a "syncevolution --sync
|
||
refresh-from-server" or "--sync refresh-from-client" (depending on
|
||
which side has the authoritative copy of the data) once to get client
|
||
and server into a consistent state. Not doing so can result in
|
||
applying the same changes to the server multiple times and thus
|
||
duplicates.
|
||
|
||
Changes in detail:
|
||
|
||
* vCalendar 1.0 is now supported. Because this hasn't been tested that
|
||
much yet, events and tasks are still disabled in the Funambol default
|
||
configuration (SF #2635973).
|
||
|
||
* Both libcurl and libsoup can be selected at compile time as HTTP(S)
|
||
transport mechanism.
|
||
|
||
* SF #2101015: Expect: 100-continue header results in 417 Error with proxy
|
||
Should no longer occur with the HTTP transports in this release.
|
||
|
||
* SF #1874805: Syncing with Funambol results in loosing all-day property
|
||
This now works thanks to the Synthesis data conversion rules.
|
||
|
||
* SF #2586600: Synchronisation with mobical.net fails
|
||
Should work now because of the different SyncML implementation (untested).
|
||
|
||
* SF #2542968: separator for categories should not be escaped
|
||
Done correctly by the Synthesis vcard conversion.
|
||
|
||
* bug fix: Evolution notes with only a summary and no description were
|
||
not sent correctly to the server: an empty text was sent instead of
|
||
sending the summary
|
||
|
||
Known shortcomings in this release which will be fixed before the
|
||
final 0.9:
|
||
|
||
* Verbatim file backups of items on the SyncML server are currently
|
||
not possible: the SyncEvolution "file" backend still exists, but
|
||
all items are converted by the Synthesis engine and therefore must
|
||
be in a format supported by the engine.
|
||
|
||
* HTTPS can be used with libsoup, but certificate checking is always
|
||
disabled. Need to find a portable way to determine where the
|
||
certificate file is on various systems.
|
||
|
||
* Log file handling is not yet unified: the traditional client.log
|
||
contains only high-level SyncEvolution log entries. Low-level
|
||
SyncML and engine log entries are in sysync_*.html files.
|
||
|
||
* stdout and stderr messages from system libraries are visible on the
|
||
console. 0.8.1 used to redirect those into the client.log to hide
|
||
this noise; this will be added again. In the meantime, ignore
|
||
messages like "Deadlock potential - avoiding evil bug!". This is
|
||
liborbit telling us that it is (hopefully successfully) handling
|
||
something nasty.
|
||
|
||
|
||
SyncEvolution 0.8.1 -> 0.8.1a, 15.12.2008
|
||
-----------------------------------------
|
||
C++ client library: 7.0 plus some patches, see github
|
||
repository referenced in configure script.
|
||
|
||
A minor bug fix release, updating only necessary on Mac OS X.
|
||
|
||
* #2307976 "Trace/BPT trap - sync failure": occurs randomly in
|
||
Mac OS X specific transport layer of the Funambol C++ client
|
||
library. Avoided in 0.8.1a by using libcurl as transport,
|
||
as in 0.7.
|
||
|
||
|
||
SyncEvolution 0.8 -> 0.8.1, 11.10.2008
|
||
--------------------------------------
|
||
C++ client library: 7.0 plus some patches, see github
|
||
repository referenced in configure script.
|
||
|
||
A minor bug fix release, updating not really necessary.
|
||
The binary packages for Evolution are built now so that
|
||
one package works for all compatible Evolution releases,
|
||
including the new Evolution 2.24.
|
||
|
||
* Evolution calendar: regression in 0.8: one-way sync of virtual
|
||
birthday calendar (#2095433). "refresh-from-client" works again
|
||
for the birthday calendar. Other modes are not supported.
|
||
In contrast to previous releases SyncEvolution now does some
|
||
sanity checks that the sync mode is right.
|
||
* Mac OS X: removing old logdirs failed (#2087389). Fixed.
|
||
* SyncML client library: "Expect: 100-continue" header
|
||
resulted in 417 error with certain proxies (#2101015).
|
||
Now this header is always disabled; it doesn't make
|
||
much sense with SyncML anyway.
|
||
* The development of the Funambol C++ client library is now
|
||
tracked in a git repository on github.com. Modifications
|
||
and tags for SyncEvolution are checked in there. The
|
||
configure script checks out the right sources from there
|
||
automatically; can be controlled via --with-funambol-src
|
||
parameter.
|
||
* Evolution desktop: the version of the used Evolution libraries
|
||
is included in the "--version" output and log files.
|
||
* Cleaned up README. Kudos to Martin Wetterstedt for pointing
|
||
out mistakes in the README and the web site.
|
||
|
||
|
||
SyncEvolution 0.7 -> 0.8, 29.08.2008
|
||
------------------------------------
|
||
C++ client library: 7.0 plus compatibility patch for Synthesis
|
||
|
||
Updating user configuration: this version introduces a new, simplified
|
||
configuration layout. Old configurations still work. They can be
|
||
converted to the new format via a new "--migrate" command line option.
|
||
|
||
*** WARNING ***: this version uses a different change tracking for Mac
|
||
OS X address book, Evolution calendars, task lists and memos. After
|
||
switching from a previous release to the current one or vice versa, do
|
||
a "syncevolution --sync refresh-from-server" once to reset the change
|
||
tracking. Not doing so can result in applying the same changes to the
|
||
server multiple times and thus duplicates.
|
||
|
||
* New configuration file layout: following the freedesktop.org
|
||
recommendation, new configurations are stored in
|
||
$XDG_CONFIG_HOME/syncevolution or $HOME/.config/syncevolution if
|
||
XDG_CONFIG_HOME is not set. The old layout under
|
||
$HOME/.sync4j/evolution is still supported.
|
||
|
||
* New command line options: new configurations can be created by
|
||
syncevolution itself (--configure), including setting of all
|
||
configuration properties (--sync-property, --source-property).
|
||
The configuration can dumped to stdout (--print-config), with or
|
||
without comments explaining each property (--quiet). See the
|
||
README for details.
|
||
|
||
* The "evolutionsource" source property no longer has to be configured.
|
||
If left blank, the default client database will be synchronized.
|
||
|
||
* Selecting which kind of data is to be synchronized under a specific
|
||
source name is a lot easier now and the same on all supported
|
||
platforms: the SyncEvolution backends can be selected via aliases
|
||
(e.g. "contacts") and the format is specified via an optional
|
||
MIME type (e.g. "contacts:text/x-vcard"). In the unlikely situation
|
||
that multiple backends are active which can synchronize the same
|
||
kind of data, then the right one can be selected by the unique
|
||
name of the backend (e.g. "Evolution Address Book").
|
||
|
||
* New configurations automatically get a random client ID string.
|
||
Setting it manually is still possible, but no longer necessary.
|
||
Disabling unavailable data sources is also done automatically.
|
||
|
||
SyncEvolution checks that the backend is available and there is
|
||
at least one database (the first one will be synchronized unless
|
||
explicitly changed). If these checks fail and the sync source was
|
||
explicitly requested by the user by listing it after the server
|
||
name, then an error is printed and no configuration is written.
|
||
If the user wants the default setup, then the source is silently
|
||
disabled.
|
||
|
||
* All passwords can be read from stdin at runtime or an environment
|
||
variable (see "--sync-property password=?" or README for details).
|
||
Both avoids the less secure storing of plain text passwords in the
|
||
configuration files (SF #1832458).
|
||
|
||
* Detached recurrences: meeting series where some occurrences were
|
||
modified are now supported. Previously only the main event was
|
||
synchronized. All exceptions got lost when copying back from the
|
||
server. Requires a SyncML server which supports this. ScheduleWorld
|
||
was extended to do that.
|
||
|
||
* Fixed segfaults caused by logging certain data. The reason was an
|
||
API change in the client library's logging calls which the older
|
||
SyncEvolution code hadn't been adapted to. Did not normally occur,
|
||
but might have been the reason for SF #1830149 (unconfirmed).
|
||
|
||
* Time zone support: the time zones of incoming events are mapped
|
||
to native time zone definitions whenever possible. Currently
|
||
this works if the TZID follows the Olson naming scheme with a
|
||
location at the end. Matching the time zone has the advantage of
|
||
being able to update the time zone definition without having to
|
||
recreate the event. If matching fails and the VTIMEZONE definition
|
||
differs from one already imported earlier, then SyncEvolution works
|
||
arounds limitation in Evolution by renaming the time zone.
|
||
Previously the new event used the old and most likely out-dated
|
||
time zone definition.
|
||
|
||
***WARNING***: Evolution itself does not do either of these steps
|
||
itself yet, thus importing meeting invitations via Evolution still
|
||
fails in some cases. The code implementing the time zone handling
|
||
described above was written with inclusion into Evolution itself in
|
||
mind; a discussion with the Evolution developers about that is in
|
||
progress.
|
||
|
||
* On Maemo/Nokia Internet Tablets, calendar synchronization now
|
||
works because the new calendar change tracking no longer depends
|
||
on some of the backend calls which used to fail (SF #1734977).
|
||
|
||
* Added SSL configuration options: certificate checking can be
|
||
relaxed or disabled completely (SF #1852647).
|
||
|
||
* Added a new file backend: stores each SyncML item as a separate file
|
||
in a directory. The directory has to be specified via the database
|
||
name, using [file://]<path> as format. The file:// prefix is
|
||
optional, but the directory is only created if it is used.
|
||
|
||
Change tracking is done via the file systems modification time
|
||
stamp: editing a file treats it as modified and then sends it to the
|
||
server in the next sync. Removing and adding files also works.
|
||
|
||
The local unique identifier for each item is its name in the
|
||
directory. New files are created using a running count which
|
||
initialized based on the initial content of the directory to
|
||
"highest existing number + 1" and incremented to avoid collisions.
|
||
|
||
Although this sync source itself does not care about the content of
|
||
each item/file, the server needs to know what each item sent to it
|
||
contains and what items the source is able to receive. Therefore
|
||
the "type" property for this source must contain a data format
|
||
specified, including a version for it. Here are some examples:
|
||
- type=file:text/vcard:3.0
|
||
- type=file:text/plain:1.0
|
||
|
||
* Code restructuring: it is now possible to add new backends and thus
|
||
write SyncML clients for other kinds of data without touching any
|
||
line of code in SyncEvolution itself. All the required interfaces
|
||
are documented inside SyncEvolution itself. A HTML documentation can
|
||
be built via the new "make doc" target (requires Doxygen and dot).
|
||
|
||
The SyncEvolution framework itself never depended on GNOME or
|
||
Evolution, only the Evolution data sources did. If you want
|
||
support for other ways of storing your data, consider writing
|
||
a new data source - it is really easy. See EvolutionSyncSource
|
||
or TrackingSyncSource for details.
|
||
|
||
* Messages are printed to the screen immediately. More readable
|
||
log file format.
|
||
|
||
* Maemo: the useless ''list: unable to access calendars:
|
||
failure' error message is avoided. It was triggered by not having
|
||
memo support in Evolution Data Server. Cleaned up the code so that
|
||
it properly distinguishes between 'calendar', 'memo list' and
|
||
'task list'.
|
||
|
||
* added server template for MemoToo; note that the server has not been
|
||
tested
|
||
|
||
* added synchronization of Evolution memo summary
|
||
|
||
Most devices only synchronize plain text and do not have a
|
||
separate summary field. Such an extra summary field was added to
|
||
Evolution after memo support was initially implemented in
|
||
SyncEvolution, therefore SyncEvolution did not transmit that
|
||
field.
|
||
|
||
Added transmitting the summary by inserting it as first line of
|
||
the plain text blob *if* it is not already identical with the
|
||
first line. When receiving a memo, the summary is set from the
|
||
first line *without* removing the first line because the first
|
||
line might have been used as a normal part of the memo.
|
||
|
||
* Various other minor changes, fixes and lots of code cleanups.
|
||
|
||
* license cleanup: SyncEvolution is GPL v2 or later
|
||
|
||
|
||
SyncEvolution 0.8 beta 2 -> 0.8 final, 29.08.2008
|
||
-------------------------------------------------
|
||
C++ client library: 7.0 plus compatibility patch for Synthesis
|
||
|
||
* license cleanup: SyncEvolution is GPL v2 or later
|
||
|
||
|
||
SyncEvolution 0.8 beta 2 -> 0.8 beta 3, 17.08.2008
|
||
--------------------------------------------------
|
||
C++ client library: 7.0 plus compatibility patch for Synthesis
|
||
|
||
* Another revision of updating events in Evolution calendars:
|
||
the method introduced in 0.8 beta 1 for dealing with
|
||
detached recurrences did not work with the Evolution Exchange
|
||
Connector. Now both Exchange and local calendars pass the unit
|
||
tests again.
|
||
|
||
* minor code cleanup (testing, writing additional backends)
|
||
|
||
|
||
SyncEvolution 0.8 beta 1 -> 0,8 beta 2, 03.08.2008
|
||
--------------------------------------------------
|
||
C++ client library: 7.0 plus compatibility patch for Synthesis
|
||
|
||
* To prevent accidental sync runs when a configuration change
|
||
was intented, a new --run switch must be used when configuration
|
||
properties are given on the command line. When neither --run
|
||
nor --configure are specified, SyncEvolution prints an
|
||
error and refuses to do anything.
|
||
|
||
* Improved documentation for command line, in particular the synopsis.
|
||
|
||
* Added a new file backend: stores each SyncML item as a separate file
|
||
in a directory. The directory has to be specified via the database
|
||
name, using [file://]<path> as format. The file:// prefix is
|
||
optional, but the directory is only created if it is used.
|
||
|
||
Change tracking is done via the file systems modification time
|
||
stamp: editing a file treats it as modified and then sends it to the
|
||
server in the next sync. Removing and adding files also works.
|
||
|
||
The local unique identifier for each item is its name in the
|
||
directory. New files are created using a running count which
|
||
initialized based on the initial content of the directory to
|
||
"highest existing number + 1" and incremented to avoid collisions.
|
||
|
||
Although this sync source itself does not care about the content of
|
||
each item/file, the server needs to know what each item sent to it
|
||
contains and what items the source is able to receive. Therefore
|
||
the "type" property for this source must contain a data format
|
||
specified, including a version for it. Here are some examples:
|
||
- type=file:text/vcard:3.0
|
||
- type=file:text/plain:1.0
|
||
|
||
* Code restructuring: it is now possible to add new backends and thus
|
||
write SyncML clients for other kinds of data without touching any
|
||
line of code in SyncEvolution itself. All the required interfaces
|
||
are documented inside SyncEvolution itself. A HTML documentation can
|
||
be built via the new "make doc" target (requires Doxygen and dot).
|
||
|
||
|
||
SyncEvolution 0.8 alpha 1 -> 0.8 beta 1, 12.07.2008
|
||
---------------------------------------------------
|
||
C++ client library: the frozen 7.0 code, but before the release
|
||
|
||
* Added support for detached recurrences (aka modified instances of
|
||
a recurring event). Requires a SyncML server which supports this.
|
||
ScheduleWorld was extended to do that.
|
||
|
||
* Fixed segfaults caused by logging certain data. The reason was an
|
||
API change in the client library's logging calls which the older
|
||
SyncEvolution code hadn't been adapted to. Did not normally occur,
|
||
but might have been the reason for SF #1830149 (unconfirmed).
|
||
|
||
* when creating a config for the first time, only enable sync sources
|
||
which can be synchronized (SF #1991286)
|
||
|
||
The check for that was completely missing. Now SyncEvolution
|
||
checks that the backend is available and there is at least one
|
||
database (the first one will be synchronized unless explicitly
|
||
changed). If these checks fail and the sync source was explicitly
|
||
requested by the user by listing it after the server name, then
|
||
an error is printed and no configuration is written. If the user
|
||
wants the default setup, then the source is silently disabled.
|
||
|
||
* Fixed incorrect properties in some of the new server templates
|
||
(ScheduleWorld syncURL + calender URI, Funambol syncURL, ScheduleWorld
|
||
addressbook type)
|
||
|
||
* Device IDs must start with the "sc-pim-" prefix, otherwise myFUNAMBOL
|
||
may treat different devices as the single phone that myFUNAMBOL
|
||
supports, leading to unwanted slow syncs.
|
||
|
||
* Maemo package is build again so that backends are loaded dynamically:
|
||
installing Dates application is as it was with the 0.7 release
|
||
(SF #1993109). The useless ''list: unable to access calendars:
|
||
failure' error message is avoided. It was triggered by not having
|
||
memo support in Evolution Data Server. Cleaned up the code so that
|
||
it properly distinguishes between 'calendar', 'memo list' and
|
||
'task list'.
|
||
|
||
* added server template for MemoToo; note that the server has not been
|
||
tested
|
||
|
||
* added synchronization of Evolution memo summary
|
||
|
||
Most devices only synchronize plain text and do not have a
|
||
separate summary field. Such an extra summary field was added to
|
||
Evolution after memo support was initially implemented in
|
||
SyncEvolution, therefore SyncEvolution did not transmit that
|
||
field.
|
||
|
||
Added transmitting the summary by inserting it as first line of
|
||
the plain text blob *if* it is not already identical with the
|
||
first line. When receiving a memo, the summary is set from the
|
||
first line *without* removing the first line because the first
|
||
line might have been used as a normal part of the memo.
|
||
|
||
* removed --properties option: it wasn't implemented yet and won't be in 0.8
|
||
|
||
* fixed regression in alpha 1: setting sync mode during status query
|
||
or sync affected *all* sources, even the disabled ones. Now it only
|
||
affects the enabled ones, as intended. To enable disabled sync sources,
|
||
list them after the server name.
|
||
|
||
*** WARNING ***: this version uses a different change tracking for
|
||
for Mac OS X AddressBook. After switching from a previous release to the current
|
||
one or vice versa, do a "syncevolution --sync refresh-from-server"
|
||
once to reset the change tracking. Not doing so can result in applying
|
||
the same changes to the server multiple times and thus duplicates.
|
||
|
||
A similar change was necessary in 0.8 alpha 1 for Evolution calendar,
|
||
tasks, and memos. When switching from a version >= 0.8 alpha 1 to an
|
||
older version or vice versa also refresh the local databases.
|
||
|
||
0.8 alpha 1 did not create correct configurations. When you want to continue
|
||
using such a configuration, make sure that in addition to the obviously
|
||
wrong syncURLs also the less obvious ScheduleWorld config mistakes are fixed:
|
||
* calendar: uri=cal2
|
||
* addressbook: type=addressbook:text/vcard
|
||
* deviceId must start with "sc-pim-" if you synchronize with myFUNAMBOL,
|
||
otherwise there may be unwanted slow syncs when multiple devices with
|
||
a different deviceId connect. Note that changing the deviceId causes
|
||
a slow sync, so you should get client and server in sync before changing
|
||
the value, change it, then do a "--sync refresh-from-server".
|
||
|
||
|
||
SyncEvolution 0.7 -> 0.8 alpha 1, 19.04.2008
|
||
--------------------------------------------
|
||
C++ client library: a snapshot of the development version
|
||
|
||
Updating user configuration: this version introduces a new, simplified
|
||
configuration layout. Old configurations still work. They can be
|
||
converted to the new format via a new "--migrate" command line option.
|
||
|
||
*** WARNING ***: this version uses a different change tracking for
|
||
Evolution calendars, task lists and memos. After switching from a previous
|
||
release to the current one or vice versa, do a "syncevolution --sync
|
||
refresh-from-server" once to reset the change tracking. Not doing so
|
||
can result in applying the same changes to the server multiple times
|
||
and thus duplicates.
|
||
|
||
* New configuration file layout: following the freedesktop.org
|
||
recommendation, new configurations are stored in
|
||
$XDG_CONFIG_HOME/syncevolution or $HOME/.config/syncevolution if
|
||
XDG_CONFIG_HOME is not set. The old layout under
|
||
$HOME/.sync4j/evolution is still supported.
|
||
|
||
* New command line options: new configurations can be created by
|
||
syncevolution itself (--configure), including setting of all
|
||
configuration properties (--sync-property, --source-property).
|
||
The configuration can dumped to stdout (--print-config), with or
|
||
without comments explaining each property (--quiet). See the
|
||
README for details.
|
||
|
||
* The "evolutionsource" source property no longer has to be configured.
|
||
If left blank, the default client database will be synchronized.
|
||
|
||
* Selecting which kind of data is to be synchronized under a specific
|
||
source name is a lot easier now and the same on all supported
|
||
platforms: the SyncEvolution backends can be selected via aliases
|
||
(e.g. "contacts") and the format is specified via an optional
|
||
MIME type (e.g. "contacts:text/x-vcard"). In the unlikely situation
|
||
that multiple backends are active which can synchronize the same
|
||
kind of data, then the right one can be selected by the unique
|
||
name of the backend (e.g. "Evolution Address Book").
|
||
|
||
* New configurations automatically get a random client ID string.
|
||
Setting it manually is still possible, but no longer necessary.
|
||
|
||
* All passwords can be read from stdin at runtime or an environment
|
||
variable (see "--sync-property password=?" or README for details).
|
||
Both avoids the less secure storing of plain text passwords in the
|
||
configuration files (SF #1832458).
|
||
|
||
* Detached recurrences: meeting series where some occurrences were
|
||
modified are now supported. Previously only the main event was
|
||
synchronized. All exceptions got lost when copying back from the
|
||
server. ***WARNING***: such events are accepted by ScheduleWorld,
|
||
but not propagated to other clients. Under investigation.
|
||
|
||
* Time zone support: the time zones of incoming events are mapped
|
||
to native time zone definitions whenever possible. Currently
|
||
this works if the TZID follows the Olson naming scheme with a
|
||
location at the end. Matching the time zone has the advantage of
|
||
being able to update the time zone definition without having to
|
||
recreate the event. If matching fails and the VTIMEZONE definition
|
||
differs from one already imported earlier, then SyncEvolution works
|
||
arounds limitation in Evolution by renaming the time zone.
|
||
Previously the new event used the old and most likely out-dated
|
||
time zone definition.
|
||
|
||
***WARNING***: Evolution itself does not do either of these steps
|
||
itself yet, thus importing meeting invitations via Evolution still
|
||
fails in some cases. The code implementing the time zone handling
|
||
described above was written with inclusion into Evolution itself in
|
||
mind; a discussion with the Evolution developers about that is in
|
||
progress.
|
||
|
||
* On Maemo/Nokia Internet Tablets, calendar synchronization now
|
||
works because the new calendar change tracking no longer depends
|
||
on some of the backend calls which used to fail (SF #1734977).
|
||
|
||
* Added SSL configuration options: certificate checking can be
|
||
relaxed or disabled completely (SF #1852647).
|
||
|
||
* Adding support for new local data sources is easier now. The
|
||
SyncEvolution frame work itself never depended on GNOME or
|
||
Evolution, only the Evolution data sources did. If you want
|
||
support for other ways of storing your data, consider writing
|
||
a new data source - it is really easy. See EvolutionSyncSource
|
||
or TrackingSyncSource for details.
|
||
|
||
* Messages are printed to the screen immediately. More readable
|
||
log file format.
|
||
|
||
* Various other minor changes and fixes.
|
||
|
||
|
||
SyncEvolution 0.6 -> 0.7, 17.12.2007
|
||
------------------------------------
|
||
C++ client library: r_6_5_3_1
|
||
|
||
Updating user configuration: no relevant changes in this release. For those
|
||
who haven't done so already, enabling large object support is recommended
|
||
(see syncml/config.txt sample configs).
|
||
|
||
* added port for iPhone and Mac OS X Address Book
|
||
|
||
* fixed Nokia packaging problem which prevented installation
|
||
via the package manager unless it was in "red pill" mode
|
||
(SF #1781652)
|
||
|
||
* sync with eGroupware - lost or messed up telephones: SyncEvolution
|
||
incorrectly added TYPE=OTHER to phone numbers sent with e.g.
|
||
CELL instead of TYPE=CELL (SF #1796086). Another patch was
|
||
required for eGroupware itself to correctly map phone numbers
|
||
as sent by SyncEvolution, see Compatibility web page.
|
||
|
||
* added .deb packages
|
||
|
||
* adapted calendar event insert/update to Evolution 2.12: the UID needs to be
|
||
restored, otherwise the Evolution backend crashes (GNOME issue #488881)
|
||
|
||
* new feature: if the previous log directory is still available,
|
||
then local changes made since last sync can be queried
|
||
before starting a sync (new option --status) and will be
|
||
printed directly before a sync. Setting the "logdir" option
|
||
will automatically keep the most recent logs and database
|
||
dumps around.
|
||
|
||
* added command line options:
|
||
--sync|-s <mode>
|
||
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.
|
||
|
||
* default configurations now reference the normal Evolution databases
|
||
("Personal") thus requiring less changes to use. The account information
|
||
is now clearly marked as placeholder which needs to be entered.
|
||
|
||
* 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!
|
||
|
||
* support receiving plain text notes with \n and \r\n line breaks;
|
||
always send with \r\n
|
||
|
||
* added explicit error message when syncevolution is invoked
|
||
with incorrect names in the list of sources to synchronize:
|
||
previously it silently ignored unknown names
|
||
|
||
* improved output: less verbose ("extracting" items is now
|
||
logged at debug level and thus not normally shown) and more
|
||
informative printing of changes (table summarizes number of
|
||
changes on client and server, heading for comparison changed
|
||
to make it clear that it shows changes on the client)
|
||
|
||
* SyncCap is not generated unless syncModes are configured: added
|
||
a comment to example config (SF #1764123)
|
||
|
||
* improved error handling: catch errors during post-processing and
|
||
continue
|
||
|
||
|
||
SyncEvolution 0.7-pre2 -> 0.7, 17.12.2007
|
||
-----------------------------------------
|
||
C++ client library: r_6_5_3_1
|
||
|
||
* 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!
|
||
|
||
* support receiving plain text notes with \n and \r\n line breaks;
|
||
always send with \r\n
|
||
|
||
* added explicit error message when syncevolution is invoked
|
||
with incorrect names in the list of sources to synchronize:
|
||
previously it silently ignored unknown names
|
||
|
||
* added stack dumping in case of premature abort;
|
||
removed workaround for lost connection to Evolution Dataserver
|
||
again because the workaround itself caused random segfaults inside
|
||
glib
|
||
|
||
|
||
SyncEvolution 0.7-pre1 -> 0.7-pre2, 08.11.2007
|
||
----------------------------------------------
|
||
C++ client library: branch b_v65
|
||
|
||
Updating user configuration: no relevant changes in this release. For those
|
||
who haven't done so already, enabling large object support is recommended
|
||
(see syncml/config.txt sample configs). It is required for myFUNAMBOL to
|
||
synchronize very large address books and some users have reported segfaults
|
||
unless this option was enabled.
|
||
|
||
* iPhone bug fix: syncing contacts with photos was unreliable (export) and
|
||
crashed (import) because the API had not been called correctly
|
||
|
||
* iPhone + ScheduleWorld: when configured to use vcard3 (recommended!) then
|
||
contacts are exchanged as vCard 3.0
|
||
|
||
* iPhone + ScheduleWorld bugfix: importing vCard 3.0 did not correctly
|
||
classify the phone numbers. A sync with the new "--sync refresh-from-server"
|
||
option will fix this, assuming that the server has the correct data.
|
||
|
||
* Evolution: detect a crashed backend and abort SyncEvolution instead of
|
||
hanging forever.
|
||
|
||
* adapted calendar event insert/update to Evolution 2.12: the UID needs to be
|
||
restored, otherwise the Evolution backend crashes (GNOME issue #488881)
|
||
|
||
* new feature: if the previous log directory is still available,
|
||
then local changes made since last sync can be queried
|
||
before starting a sync (new option --status) and will be
|
||
printed directly before a sync. Setting the "logdir" option
|
||
will automatically keep the most recent logs and database
|
||
dumps around.
|
||
|
||
* added command line options:
|
||
--sync|-s <mode>
|
||
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.
|
||
|
||
* default configurations now reference the normal Evolution databases
|
||
("Personal") thus requiring less changes to use. The account information
|
||
is now clearly marked as placeholder which needs to be entered.
|
||
|
||
|
||
SyncEvolution 0.6 -> 0.7-pre1, 17.10.2007
|
||
-----------------------------------------
|
||
* C++ client library: tag "sdkcpp_6_0_9_1" (same as before)
|
||
* added support for Mac OS X/iPhone address book
|
||
* fixed Nokia packaging problem which prevented installation
|
||
via the package manager unless it was in "red pill" mode
|
||
* improved output: less verbose ("extracting" items is now
|
||
logged at debug level and thus not normally shown) and more
|
||
informative printing of changes (table summarizes number of
|
||
changes on client and server, heading for comparison changed
|
||
to make it clear that it shows changes on the client)
|
||
* example configs were in share/share directory (SF #1767329)
|
||
* Nokia 770/800: uninstallable package fixed by setting category
|
||
(SF #1781652)
|
||
* sync with eGroupware - lost or messed up telephones: SyncEvolution
|
||
incorrectly added TYPE=OTHER to phone numbers sent with e.g.
|
||
CELL instead of TYPE=CELL (SF #1796086). Another patch was
|
||
required for eGroupware itself to correctly map phone numbers
|
||
as sent by SyncEvolution, see Compatibility web page.
|
||
* SyncCap is not generated unless syncModes are configured: added
|
||
a comment to example config (SF #1764123)
|
||
* improved error handling: catch errors during post-processing and
|
||
continue
|
||
|
||
|
||
SyncEvolution 0.5 -> 0.6, 13.07.2007
|
||
------------------------------------
|
||
* C++ client library: tag "sdkcpp_6_0_9_1"
|
||
* added support for synchronizing Evolution notes (aka memos) as
|
||
plain text where the first line serves as summary; this is the
|
||
format understood by ScheduleWorld
|
||
* added support for synchronizing Evolution notes (aka memos) as
|
||
iCal 2.0 journal; not currently supported by any server and
|
||
untested
|
||
* revamped example configs and documentation: only one set of
|
||
config files for each server is provided, because this is more
|
||
likely to be needed by users
|
||
* example configs are now installed in share/doc/syncevolution,
|
||
enabled message limit and large object support in them
|
||
* added support for Nokia 770/800 (aka Maemo):
|
||
built with loadable modules so that it works with whatever
|
||
backends are installed, improved log handling to accomodate
|
||
for limited space on filesystem (see below), some workarounds
|
||
* added workaround for Nokia 770:
|
||
contacts are not really deleted unless the EDS-Sync with
|
||
instant messaging servers is activated; now SyncEvolution
|
||
will delete contacts marked as deleted by the GUI before
|
||
a sync if it finds any.
|
||
WARNING: if you use EDS-Sync and SyncEvolution, then give
|
||
EDS-Sync enough time after going online to finish its own
|
||
synchronization of modified/deleted contacts before starting
|
||
SyncEvolution.
|
||
* improved log handling: writing log and database dumps can be
|
||
disabled with "logdir=none", verbosity of log is controlled by
|
||
"loglevel", better handling of errors during initial database
|
||
access
|
||
* added workaround for Evolution bug #455274:
|
||
the separator for multiple categories in events and tasks
|
||
is not generated and interpreted according to iCalendar 2.0
|
||
by Evolution; as a consequence of that items sent to the server
|
||
had all categories merged into one and items imported into
|
||
Evolution only used one of the catories
|
||
http://bugzilla.gnome.org/show_bug.cgi?id=455274
|
||
* fixed off-by-one counting of months in backup directory names
|
||
* fixed error handling: a failed source was not forced into a slow
|
||
sync as required; one failed source prevented saving configs of
|
||
not-failed ones and thus forced those into an unnecessary slow
|
||
sync
|
||
* uses the Funambol C++ testing framework (which is based on the
|
||
previous SyncEvolution testing); now creates its configs
|
||
and (when using CLIENT_TEST_EVOLUTION_PREFIX=file://<path>)
|
||
also the Evolution databases automatically
|
||
* implemented synccompare as pure Perl script using Algorithm::Diff
|
||
instead of external diff tool
|
||
* synccompare did not figure out width of shell window as it should have
|
||
* better error handling if creating the before/after database dumps
|
||
fails (SF #1685637)
|
||
* workaround for Funambol 3.0 trailing = parser bug
|
||
|
||
UPGRADING
|
||
|
||
Old config files from 0.5 or older continue to work, but it is recommended
|
||
to set the following options to enable message size limits:
|
||
maxMsgSize = 8192
|
||
maxObjSize = 500000
|
||
loSupport = 1
|
||
|
||
|
||
SyncEvolution 0.6pre2 -> 0.6, 13.07.2007
|
||
----------------------------------------
|
||
* improved README/HACKING documents
|
||
* fixed the new example configs: use event/task for Funambol 6.0,
|
||
name was wrong
|
||
* added workaround for Evolution bug #455274:
|
||
the separator for multiple categories in events and tasks
|
||
is not generated and interpreted according to iCalendar 2.0
|
||
by Evolution; as a consequence of that items sent to the server
|
||
had all categories merged into one and items imported into
|
||
Evolution only used one of the catories
|
||
http://bugzilla.gnome.org/show_bug.cgi?id=455274
|
||
* added workaround for Nokia 770:
|
||
contacts are not really deleted unless the EDS-Sync with
|
||
instant messaging servers is activated; now SyncEvolution
|
||
will delete contacts marked as deleted by the GUI before
|
||
a sync if it finds any.
|
||
WARNING: if you use EDS-Sync and SyncEvolution, then give
|
||
EDS-Sync enough time after going online to finish its own
|
||
synchronization of modified/deleted contacts before starting
|
||
SyncEvolution.
|
||
|
||
|
||
SyncEvolution 0.6pre1 -> 0.6pre2, 23.04.2006
|
||
--------------------------------------------
|
||
* C++ client library: tag "sdkcpp_6_0_7" + revision 1.7 of
|
||
build/autotools/test/Makefile.am
|
||
* added support for synchronizing Evolution notes (aka memos) as
|
||
plain text where the first line serves as summary; this is the
|
||
format understood by ScheduleWorld, not the iCal 2.0 format
|
||
added in 0.6pre1
|
||
* improved log handling: writing log and database dumps can be
|
||
disabled with "logdir=none", verbosity of log is controled by
|
||
"loglevel", better handling of errors during initial database
|
||
access
|
||
* fixed off-by-one counting of months in backup directory names
|
||
* fixed error handling: a failed source was not forced into a slow
|
||
sync as required; one failed source prevented saving configs of
|
||
not-failed ones and thus forced those into an unnecessary slow
|
||
sync
|
||
* revamped example configs: only one set of config files for each
|
||
server is provided, because this is more likely to be needed
|
||
by users
|
||
* uses the Funambol C++ testing framework (which is based on the
|
||
previous SyncEvolution testing); now creates its configs
|
||
and (when using CLIENT_TEST_EVOLUTION_PREFIX=file://<path>)
|
||
also the Evolution databases automatically
|
||
|
||
|
||
SyncEvolution 0.5 -> 0.6pre1, 26.03.2006
|
||
----------------------------------------
|
||
* C++ client library: CVS snapshot from 26.03.2006
|
||
* added support for synchronizing Evolution notes (aka memos) as
|
||
iCal 2.0 journal
|
||
* added --enable-static-cxa = linking C++ runtime statically:
|
||
binaries produced for 0.6 will have less external
|
||
dependencies than the 0.5 binaries
|
||
* added hacks for Maemo/Nokia 770, including a build
|
||
mode with dynamically loadable modules (--enable-shared, --enable-maemo,
|
||
--with-patched-dbus)
|
||
* implemented synccompare as pure Perl script using Algorithm::Diff
|
||
instead of external diff tool
|
||
* synccompare did not figure out width of shell window as it should have
|
||
* better error handling if creating the before/after database dumps
|
||
fails (SF #1685637)
|
||
* example configs are now installed in share/doc/syncevolution,
|
||
enabled message limit and large object support in them
|
||
* workaround for Funambol 3.0 trailing = parser bug
|
||
|
||
UPGRADING
|
||
|
||
Old config files continue to work, but it is recommended
|
||
to set the following options to enable message size limits:
|
||
maxMsgSize = 8192
|
||
maxObjSize = 500000
|
||
loSupport = 1
|
||
|
||
|
||
|
||
SyncEvolution 0.4 -> 0.5, 12.11.2006
|
||
------------------------------------
|
||
* C++ client library revision "syncevolution-0-5":
|
||
- added support for sending changes in smaller chunks
|
||
("Large Object Support"): disabled by default, see updated
|
||
example configuration
|
||
- time is printed with GMT offset so that a server admin in
|
||
a different timezone can always figure out how a client log
|
||
relates to events on the server
|
||
- special item keys as they might be stored in some calendars after
|
||
importing non-Evolution events are now properly supported
|
||
* bug fix: in 0.4 it was necessary to manually configure the verDTD
|
||
or the Funambol 3.0a server would choke on the invalid SyncML during
|
||
the second synchronization with SyncEvolution; now this option is set
|
||
automatically
|
||
* added support and testing of transmitting just the changes
|
||
from client to server or vice versa; see "one-way-from-server/client"
|
||
in example configuration
|
||
* fixed/updated comments in the example configuration
|
||
* improved automated testing and fixed the problem that CPPUnit was not
|
||
found unless it was part of the system
|
||
* Now works on Maemo/Nokia 770: minor changes were necessary so that
|
||
the system address book can now be selected under the name "<<system>>.
|
||
Copying 300 contacts into the Nokia 770 went fine, but any further
|
||
attempt to synchronize suffered from timeouts inside the embedded
|
||
Evolution Data Server.
|
||
|
||
|
||
SyncEvolution 0.3 -> 0.4, 11.09.2006
|
||
------------------------------------
|
||
* C++ client library revision "syncevolution-0-4":
|
||
- added support for device information, required by some servers
|
||
- fixed incompatibilities with non-Funambol servers
|
||
- the user agent string can now be modified in the
|
||
spds/syncml/config.txt, but it is recommended to not set
|
||
it explicitly. Then SyncEvolution will automatically insert
|
||
its current version.
|
||
- #305795: for tasks the "text/x-todo" type from the configuration
|
||
was sent to servers instead of the correct "text/calendar"
|
||
provided by SyncEvolution itself
|
||
- sync modes "refresh-client/server" can now be specified as
|
||
"refresh-from-client/server" in the config
|
||
* updated default syncml/config.txt:
|
||
- firstTimeSyncMode has never been implemented in the library,
|
||
removed its documentation,
|
||
- added documentation for userAgent
|
||
- use "refresh-from-client/server"
|
||
* SF issue 1511951: support copying changes back from EGroupware
|
||
server by not expecting the UID of calendar items to be unmodified
|
||
* fixed a bug where after a refresh-from-client sync changes would
|
||
be sent to the server again during a two-way sync although the
|
||
server already had them
|
||
* implemented authentication for Evolution databases
|
||
* synccompare was removing too many parts of vCards with
|
||
single-value ORG properties
|
||
* improved error reporting when selected server is not configured
|
||
* changed vCard parser to make it compatible with servers
|
||
which send a verbatim semicolon as part of properties where
|
||
the semicolon has no special meaning
|
||
* If minor errors occur like not being able to insert an
|
||
item at the client or server side, then it is reported in the
|
||
log and output, but the next synchronization will be a normal
|
||
synchronization, not a forced slow one as in previous versions.
|
||
The old approach ensured that the problem was noticed and fixed,
|
||
but required user assistance. With the new approach synchronization
|
||
continues to work, although without fixing the root cause of
|
||
the problem.
|
||
* Workaround for bug in Evolution 2.0.6 (and perhaps other versions):
|
||
for calendars and task lists not all deleted items were reported
|
||
at once thus a single synchronization would only tell the server
|
||
about a subset of the changes. Repeating the synchronization would
|
||
eventually be told of all changes, so now this repetition is built
|
||
into the code which queries for changes and a single synchronization
|
||
is sufficient as it should be.
|
||
|
||
|
||
SyncEvolution 0.4 pre2 -> 0.4, 11.09.2006
|
||
-----------------------------------------
|
||
* adapted to C++ client library from CVS head, tagged as syncevolution-0-4:
|
||
devinfo.patch patch was merged with several changes to the API
|
||
* SF issue 1511951: support copying changes back from EGroupware
|
||
server by not expecting the UID of calendar items to be unmodified
|
||
|
||
|
||
SyncEvolution 0.4 pre1 -> pre2, 21.08.2006
|
||
------------------------------------------
|
||
* C++ client library revision "syncevolution-0-4-pre2":
|
||
most patches were merged into CVS head, but .patches/devinfo.patch
|
||
still needs to be applied manually when checking out from the
|
||
Funambol CVS instead of using the bundled version
|
||
* fixed a bug where after a refresh-from-client sync changes would
|
||
be sent to the server again during a two-way sync although the
|
||
server already had them
|
||
* implemented authentication for Evolution databases
|
||
* synccompare was removing too many parts of vCards with
|
||
single-value ORG properties
|
||
* improved error reporting when selected server is not configured
|
||
* use 7-bit quoted-printable encoding with explicit UTF-8 charset for
|
||
vCard 2.1 to avoid any potential confusion about the content; not
|
||
really necessary because SyncML specifies 8-bit UTF-8 as the default
|
||
* fix for 0.4 pre 1: sending CHARSET is not allowed (and not
|
||
needed) for vCard 3.0, so it was removed again (did not harm
|
||
either)
|
||
* fix for 0.4 pre 1: sending vCard 2.1 to Synthesis server did
|
||
not work because the new device info always mentioned 3.0 as
|
||
the preferred format - now the preferred format matches the one
|
||
that was configured and that thus will be used.
|
||
|
||
|
||
SyncEvolution 0.3 -> 0.4 pre 1, 2006-08-06
|
||
------------------------------------------
|
||
* C++ client library revision "funambol30ga" plus the patches
|
||
stored in its ".patches" directory:
|
||
- the user agent string can now be modified in the
|
||
spds/syncml/config.txt, but it is recommended to not set
|
||
it explicitly. Then SyncEvolution will automatically insert
|
||
its current version.
|
||
- now compatible with additional servers (fixed some SyncML
|
||
protocol issues, added support for sending device
|
||
information)
|
||
- revised API of the client library
|
||
- #305795: for tasks the "text/x-todo" type from the configuration
|
||
was sent to servers instead of the correct "text/calendar"
|
||
provided by SyncEvolution itself
|
||
- sync modes "refresh-client/server" can now be specified as
|
||
"refresh-from-client/server" in the config
|
||
* updated default syncml/config.txt:
|
||
- firstTimeSyncMode has never been implemented in the library,
|
||
removed its documentation,
|
||
- added documentation for userAgent
|
||
- use "refresh-from-client/server"
|
||
* changed vCard parser to make it compatible with servers
|
||
which send a verbatim semicolon as part of properties where
|
||
the semicolon has no special meaning
|
||
* If minor errors occur like not being able to insert an
|
||
item at the client or server side, then it is reported in the
|
||
log and output, but the next synchronization will be a normal
|
||
synchronization, not a forced slow one as in previous versions.
|
||
The old approach ensured that the problem was noticed and fixed,
|
||
but required user assistance. With the new approach synchronization
|
||
continues to work, although without fixing the root cause of
|
||
the problem.
|
||
* Workaround for bug in Evolution 2.0.6 (and perhaps other versions):
|
||
for calendars and task lists not all deleted items were reported
|
||
at once thus a single synchronization would only tell the server
|
||
about a subset of the changes. Repeating the synchronization would
|
||
eventually be told of all changes, so now this repetition is built
|
||
into the code which queries for changes and a single synchronization
|
||
is sufficient as it should be.
|
||
* Made it compile on Maemo 2.0, the Nokia 770 build environment, by
|
||
adding "--disable-ecal". Not tested yet, though.
|
||
|
||
|
||
SyncEvolution 0.3, 2006-06-27
|
||
-----------------------------
|
||
|
||
* added syncing of calendars and tasks as iCalendar 2.0
|
||
* added syncing of contacts as vCard 3.0
|
||
* tested extensively with sync.scheduleworld.com and
|
||
added an example configuration for it
|
||
* uses C++ client library revision "wmplugin_3_0_20"
|
||
which contains several bug fixes, among them proper
|
||
support for special characters and memory handling
|
||
fixes
|
||
* much nicer listing of changes made during a sync,
|
||
handled by the improved "synccompare" utility script
|
||
(formerly known as "normalize_vcard")
|
||
* improved automated testing
|
||
|
||
|
||
SyncEvolution 0.2, 2006-03-19
|
||
-----------------------------
|
||
|
||
* added automatic backup mechanism and log storage,
|
||
see "Automatic Backups and Logging".
|
||
* output no longer is the original log data, but rather
|
||
a human-readable report of errors and synchronization
|
||
results.
|
||
* "normalize_vcard" can now also compare two .vcf files
|
||
directly.
|
||
* improved unit tests to catch more errors
|
||
* hide certain differences in vcards coming back from
|
||
the server: duplication of extended vcard properties,
|
||
missing TYPE=OTHER
|
||
* fixed client library problems:
|
||
see http://forge.objectweb.org/tracker/?group_id=96&atid=100096
|
||
#304792, #304829
|
||
* added some more problems to the "Known Problems" section
|
||
|
||
|
||
SyncEvolution 0.1, 2006-03-13
|
||
-----------------------------
|
||
|
||
* initial release
|