~ubuntu-branches/ubuntu/lucid/syncevolution/lucid

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Bazaar Package Importer
  • Author(s): David Bremner
  • Date: 2010-02-26 15:45:00 UTC
  • mfrom: (1.2.1 upstream) (3.1.2 experimental)
  • Revision ID: james.westby@ubuntu.com-20100226154500-5918opy8ikxfaapa
Tags: 1.0+ds1~beta2a-1
* New upstream beta (Closes: #572640)
* According to http://bugzilla.moblin.org/show_bug.cgi?id=8758,
  syncevolution is now smarter about retrying in certain situations.
  (Closes: #565527).
* Update Standard-Version to 3.8.4 (No changes).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
SyncEvolution 1.0 beta 1 -> beta 2, 23.02.2010
 
2
==============================================
 
3
 
 
4
Several new features and some bug fixing. Despite some open issues
 
5
(see below), this release is ready for getting packaged in staging
 
6
areas of distros as replacement for 0.9.2.
 
7
 
 
8
As before, documentation for 1.0 is only available in the
 
9
"Development" section of syncevolution.org, including HOWTOs for
 
10
setting up the HTTP SyncML server and phones manually.
 
11
 
 
12
Setting up a phone became a bit easier with beta 2, because
 
13
SyncEvolution is now integrated with the GNOME Bluetooth panel: once a
 
14
device with SyncML client support is paired, a button offers to bring
 
15
up the sync-UI and configure or synchronize with that device. We do a
 
16
fuzzy match against the Bluetooth device name to find a suitable
 
17
template (not manufacturer/model, because that is not readily
 
18
available). Still not many (read: hardly any) templates available,
 
19
though.
 
20
 
 
21
The binaries on syncevolution.org are compiled with Bluetooth support.
 
22
libbluetooth2 or libbluetooth3 should be installed, but are not
 
23
essential. If there is no suitable version of it, the Bluetooth
 
24
channel has to be selected manually as part of the syncURL.
 
25
 
 
26
Unexpected slow syncs are prevented by default, in contrast to beta 1
 
27
where this feature was available but turned off. When an unexpected
 
28
slow sync is detected in a client, users have to follow the
 
29
instructions provided by the command line or sync-ui and choose how to
 
30
proceed (explicitly request slow sync, refresh from server or client,
 
31
restore from backup). SyncEvolution as server currently cannot prevent
 
32
slow syncs, even when initiating the sync with a phone.
 
33
 
 
34
In preparation for syncing automatically, logdir and database handling
 
35
was improved considerably. Backups use less disk space because
 
36
identical files share the same file content via hard links. This also
 
37
speeds up the synccompare Perl script. Database dumps and the
 
38
corresponding comparison are delayed until the session really runs,
 
39
which avoids doing needless work a) when the server a client tries to
 
40
contact is unreachable or down and b) by only including sources that
 
41
are really in use during a sync on the server side.
 
42
 
 
43
The Synthesis XML configuration was split up into different parts
 
44
which are assembled from /usr/share/syncevolution/xml. Files in
 
45
~/.config/syncevolution-xml override and extend the default files,
 
46
which my be useful when adding support for a new phone.
 
47
 
 
48
 
 
49
Summary of changes since 1.0 beta 1:
 
50
 
 
51
* sync-ui: recovery dialog (MB #8050), device setup, config usable with
 
52
  long strings (MB #9278), fixed displaying of source phases during sync
 
53
  (MB #9320)
 
54
* sync-ui + syncevo-dbus-server: integration with Bluez to detect paired
 
55
  devices (MB #9216, MB #7089), select template based on device name (MB #7838),
 
56
  detect network and Bluetooth connectivity (only with ConnMan, MB #7700),
 
57
  passwords stored in GNOME keyring by syncevo-dbus-server are shown with
 
58
  dots in sync-ui (MB #9169)
 
59
* Evolution addressbook backend: avoid picking CouchDB, second try (MB #7877)
 
60
* Evolution calendar backend: minor fix for change tracking when deleting
 
61
  a single instance of a recurring event
 
62
* build fixes: Bluetooth compatibility (MB #9289), use libical _r variant
 
63
  of calls because 0.43 has issues in the normal version, conflict with
 
64
  system libsynthesis and libsmltk (MB #9811)
 
65
* Horde: avoid confusing the server with a deviceId that starts like the
 
66
  ones used in old Funambol clients, helps with calendar sync (MB #9347)
 
67
* better reporting when SyncEvolution dies during a sync (only happend once
 
68
  when it wasn't installed properly, but still... MB #9844)
 
69
* performance improvements: synccompare much faster/database dumps consume
 
70
  less disk space/more intelligent about expiring obsolete session directories
 
71
  and backups/database accesses are reduced in several backends (MB #7708),
 
72
  shorter logs (MB #8092)
 
73
* slow sync detection: now also works in the case where the client detects
 
74
  an anchor mismatch and enabled by default (MB #2416)
 
75
* OBEX transport: some error handling changes and removal of polling, now
 
76
  also possible via sync-ui + syncevo-dbus-server (MB #9436)
 
77
* API changes: SyncSource introduces an "isEmpty" operation which is
 
78
  needed for the slow sync detection
 
79
* SyncML: split up configuration (MB #7712), increased default message size
 
80
  because the old one might have been too small for large DevInf structures
 
81
* several fixes for virtual data sources ("calendar+todo"): now works
 
82
  on client side, fixed naming on server (MB #9664), fixed error message
 
83
  for slow sync detection, supported in combination with sync-UI (MB #9535)
 
84
* fixes for shared configuration layout: finding sessions of peers in
 
85
  non-default context, adding sources affected peers in the same context
 
86
  (MB #9329), wrong context during --configure when using shortcut for peers
 
87
  in non-default context (MB #9338)
 
88
 
 
89
 
 
90
Known gaps for 1.0 final and beyond:
 
91
 
 
92
Redesigned and reimplemented D-Bus API, required by sync-UI:
 
93
- 'syncevolution' command line tool bypasses D-Bus server and runs
 
94
  sync sessions itself (MB #5043)
 
95
- availability of peers not detected when using NetworkManager
 
96
  (connected for HTTP, paired for Bluetooth; MB #7700)
 
97
 
 
98
SyncML server in general:
 
99
- suspend/resume support is untested (MB #2425)
 
100
- the progress events and statistics reported for a SyncML client
 
101
  are not generated when running as SyncML server, will require
 
102
  a fair amount of refactoring in the Synthesis engine (MB #7709)
 
103
 
 
104
HTTP SyncML server:
 
105
- a configuration must be created for each peer manually, including
 
106
  a remoteDeviceId value that contains the peer's SyncML device ID
 
107
  (MB #7838)
 
108
 
 
109
OBEX SyncML server ("sync with phones"):
 
110
- does not support phones which require a SAN 1.0 message (MB #9312)
 
111
- determining a working configuration for an unknown phone requires
 
112
  a bit of experimenting, which should be automated (MB #9862)
 
113
 
 
114
OBEX SyncML client:
 
115
- parsing of SAN message is rudimentary and depends on an existing local
 
116
  configuration, needs to be refined depending on which SyncML server software
 
117
  it is meant to work with (MB #6175)
 
118
 
 
119
Automatic sync (MB #6378):
 
120
- no support for the various server push notification mechanisms
 
121
- no intelligent detection of local changes
 
122
- no regular background sync, development is in progress
 
123
 
 
124
Upgrading from 1.0 beta 1: moving back and forth should work seamlessly
 
125
Upgrading from 0.9.x: see under beta 1
 
126
 
 
127
 
 
128
SyncEvolution 0.9.2 -> 1.0 beta 1, 26.01.2010
 
129
==============================================
 
130
 
 
131
Compared to the current stable release, 0.9.2, this beta release can also:
 
132
* synchronize directly with a phone over Bluetooth/OBEX
 
133
* accept Bluetooth/OBEX connections in cooperation with obexd 0.19
 
134
* run SyncEvolution as a rudimentary HTTP SyncML server
 
135
 
 
136
These feature were already available in a source-only 1.0 alpha
 
137
release. For the beta, we fixed some issues (nothing major)
 
138
and in addition to the source, also make binaries available. As
 
139
before, we hope to get feedback on where we are going with 1.0 and its
 
140
SyncML server and direct synchronization features. If you want to get
 
141
involved, now is a good time because a) there is something which works
 
142
and b) there is still time to influence the final 1.0, scheduled for
 
143
March 2010.
 
144
 
 
145
Documentation of the new features can be found in the "Development"
 
146
section (http://syncevolution.org/development) for HOWTOs or ask on
 
147
the mailing list (http://syncevolution.org/support).
 
148
 
 
149
Here is a more complete list of features compared to the stable
 
150
release. The full (and up-to-date) list can be retrieved from the
 
151
Moblin Bugzilla (MB) issue tracking system with this query:
 
152
http://bugzilla.moblin.org/showdependencytree.cgi?id=7892&hide_resolved=0
 
153
For changes compared to the 1.0 alpha please consult the
 
154
change log.
 
155
 
 
156
Implemented features are marked with a plus +, open ones with a minus -.
 
157
 
 
158
ZYB.com
 
159
+ now works thanks to a workaround for anchor handling (MB #2424)
 
160
- only contacts tested because everything is considered legacy
 
161
  by ZYB.com
 
162
 
 
163
Slow sync handling (MB #2416)
 
164
+ Unexpected slow syncs can be detected when running as client and
 
165
  if configured (see "preventSlowSync"), abort the session so that
 
166
  the situation can be analyzed. A refresh from client or server
 
167
  might be more suitable. Because this required manual intervention
 
168
  by the user, the feature is off by default.
 
169
- Catching slow syncs does not work yet when running as server and
 
170
  in one corner case in a client.
 
171
 
 
172
Improved sync-UI:
 
173
+ settings for HTTP servers are now done inside the list of
 
174
  all configs and server templates instead of poping up a
 
175
  separate window
 
176
+ uses the new D-Bus API
 
177
+ no longer uses private gconf key to select default peer,
 
178
  replaced by "defaultPeer" in SyncEvolution config
 
179
+ added recovery features like handling of unexpected slow syncs (MB #2416)
 
180
- restoring from backup only supported by command line (MB #8050)
 
181
- spinner to indicate network activity missing (MB #2229)
 
182
- interactive password request not implemented yet (MB #6376)
 
183
 
 
184
Command line:
 
185
+ fixed printing of rejected items (MB #7755)
 
186
+ improved error reporting (textual descriptions instead of plain
 
187
  error codes MB #2069, partial success MB #7755, record and show
 
188
  first ERROR encountered MB #7708)
 
189
+ can create new sources (MB #8424)
 
190
 
 
191
Redesigned and reimplemented D-Bus API, required by sync-UI:
 
192
+ central syncevo-dbus-server controls configurations and sync sessions:
 
193
  http://syncevolution.org/development/direct-synchronization-aka-syncml-server
 
194
+ accepts incoming SyncML connection requests and messages received by
 
195
  independent transport stubs (obexd, HTTP server, ...)
 
196
+ can be used by multiple user interfaces at once
 
197
+ fully documented, see src/dbus/interfaces
 
198
+ no longer depends on dbus-glib with hand-written glue code for C++,
 
199
  instead uses gdbus plus automatic C++ binding generated via C++ templates
 
200
- 'syncevolution' command line tool bypasses D-Bus server and runs
 
201
  sync sessions itself (MB #5043)
 
202
- availability of peers not detected (connected for HTTP, paired for
 
203
  Bluetooth; MB #7700)
 
204
- Bluetooth peers can only be configured via command line (MB #9216)
 
205
 
 
206
Revised configuration layout (MB #8048, design document at
 
207
http://syncevolution.org/development/configuration-handling):
 
208
+ several peer-independent sync and source properties are shared
 
209
  between multiple peers
 
210
+ they can be accessed without selecting a specific peer, by using an
 
211
  empty config name or with the new "@<specific context>" syntax
 
212
+ user interface in command line and D-Bus API unchanged
 
213
+ old configurations can be read and written, without causing
 
214
  unwanted slow syncs when moving between stable and unstable
 
215
  SyncEvolution versions
 
216
+ old configurations can be migrated with the "--migrate" command
 
217
  line switch; however, then older SyncEvolution can no longer
 
218
  access them and migrating more than one old configuration causes
 
219
  the second or later configuration to loose its "deviceId" property
 
220
  (which is shared now), causing a slow sync once
 
221
+ config names may contain characters that are not allowed in the
 
222
  file names used for the underlying files; will be replaced with
 
223
  underscores automatically (MB #8350)
 
224
- users of the sync-ui will not know about the --migrate option,
 
225
  so if they have only one configuration, it should be migrated
 
226
  automatically
 
227
 
 
228
SyncML server in general:
 
229
+ incoming connections are accepted by syncevo-dbus-server via
 
230
  the D-Bus Connection API; because this is a "personal SyncML
 
231
  server", all local data is meant to belong to a single user,
 
232
  and only one sync session can be active at any point in time
 
233
+ different users on the same machine can run their own server,
 
234
  as long as they ensure that listening for incoming connections
 
235
  does not conflict with each other (different port in HTTP)
 
236
+ the session of an HTTP client which stops sending messages expires
 
237
  after "RetryDuration" seconds instead of blocking the server
 
238
  forever (MB #7710)
 
239
- suspend/resume support is untested (MB #2425)
 
240
- automatic backup of server databases is inefficient (done
 
241
  even when client is not allowed to do a sync; always backs up
 
242
  all data, including sources which are not active; MB #7708)
 
243
- the progress events and statistics reported for a SyncML client
 
244
  are not generated when running as SyncML server, will require
 
245
  a fair amount of refactoring in the Synthesis engine (MB #7709)
 
246
- the Synthesis server example config contains workarounds for
 
247
  specific phones, but SyncEvolution does not currently use those;
 
248
  adding new workarounds should be made very simple (MB #7712)
 
249
 
 
250
HTTP SyncML server:
 
251
+ test/syncevo-http-server.py provides an experimental HTTP server
 
252
  based on Python and Twisted
 
253
- a configuration must be created for each peer manually, including
 
254
  a remoteDeviceId value that contains the peer's SyncML device ID
 
255
  (MB #7838)
 
256
 
 
257
OBEX SyncML server ("sync with phones"):
 
258
+ peers are contacted via a builtin transport that uses libopenobex (MB #5188)
 
259
+ Server Alerted Notification (SAN) message triggers syncs; server ID
 
260
  and URI are configurable (MB #7871)
 
261
- a configuration must be created for each peer manually, including
 
262
  a syncURL that contains the peer's MAC address (MB #7838)
 
263
- should be integrated into the system's Bluetooth pairing (MB #7089)
 
264
 
 
265
OBEX SyncML client:
 
266
+ obexd 0.19 contains a plugin which passes SyncML messages to syncevo-dbus-server
 
267
- parsing of SAN message is rudimentary and depends on an existing local
 
268
  configuration, needs to be refined depending on which SyncML server software
 
269
  it is meant to work with (MB #6175)
 
270
 
 
271
Automatic sync (MB #6378):
 
272
- no support for the various server push notification mechanisms
 
273
- no intelligent detection of local changes
 
274
- no regular background sync
 
275
- depends on safe handling of concurrent editing, which is blocked
 
276
  by merging of a new Evolution Data Server API (MB #3479)
 
277
 
 
278
Upgrading from 0.9.x:
 
279
 
 
280
* Upgrading and downgrading should work seamlessly when using existing
 
281
  configurations. But this being an alpha, better ensure that you have
 
282
  backups of both your data and your configurations in
 
283
  ~/.config/syncevolution.
 
284
 
 
285
* The new configuration layout is only used when creating new
 
286
  configurations or explicitly invoking "syncevolution --migrate" (see
 
287
  above). Such configs cannot be used by older SyncEvolution releases.
 
288
 
 
289
 
 
290
SyncEvolution 0.9.1 -> 0.9.2, 23.01.2010
 
291
========================================
 
292
Synthesis SyncML Engine version: see src/synthesis/ChangeLog
 
293
 
 
294
New Maemo 5/Nokia N900 calendar backend and packages, brought to you
 
295
by Ove Kaaven. These packages are available via the Maemo extras-devel
 
296
repository. Bug reports can be submitted both in http://bugs.maemo.org
 
297
and http://bugzilla.moblin.org. The latter is the tracker that is
 
298
monitored by the SyncEvolution team, which will also incorporate
 
299
patches. In general, Ove is the main maintainer of the new backend.
 
300
 
 
301
New XMLRPC backend, contributed by Franz Knipp/M-otion. It accesses
 
302
data inside a web service via a SOUP API and thus allows synchronizing
 
303
it via SyncML. See src/backends/xmlrpc/README for more information.
 
304
 
 
305
Added templates for Oracle Beehive and Goosync. Both are not currently
 
306
part of the regular testing.
 
307
 
 
308
In addition to that, 0.9.2 is an incremental update, with several
 
309
updated translations and addressing all of the issues reported by
 
310
users for 0.9.1:
 
311
 
 
312
- vCard dialects: added "X-GENDER/X-SIP" (used by Maemo) and X-SKYPE
 
313
  (used by Maemo and recent Evolution, MB #8948)
 
314
 
 
315
- Evolution Address Book: avoid picking CouchDB by default (MB #7877, evolution-couchdb #479110)
 
316
 
 
317
  CouchDB address books are appended at the end of the local database
 
318
  list, otherwise preserving the order of address books. The initial
 
319
  release of evolution-couchdb in Ubuntu 9.10 is unusable because it
 
320
  does not support the REV property.
 
321
 
 
322
  Reordering the entries ensures that the CouchDB address book is not
 
323
  used as the default database by SyncEvolution, as it happened in
 
324
  Ubuntu 9.10.  Users can still pick it intentionally via
 
325
  "evolutionsource".
 
326
 
 
327
- installation: templates now in $(datadir)/syncevolution/templates (MB #7808)
 
328
  This are files used internally, meant to be extended by distributors.
 
329
  Storing them in /etc is no longer supported, but also unlikely to be
 
330
  needed. Added warnings that these files cannot simply be copied into
 
331
  .config because they are not complete configurations.
 
332
 
 
333
- installation: "make install" populates $(docdir) (MB #7168)
 
334
  Previously README, COPYING, NEWS, and server READMEs were copied
 
335
  into syncevolution.org .tar.gz/.deb/.rpm archives as part of
 
336
  custom make rules and thus missing in other installations.
 
337
 
 
338
- building: --with-boost had no effect (MB#7856), detect incorrect
 
339
  use of --with-synthesis-src, workaround for lack of --with-docdir
 
340
  in older autoconf, do not unnecessarily depend on CPPUnit header
 
341
  files and GNOME/EDS libs (MB#8338), workaround for libtool bug
 
342
  ("cannot install `syncecal.la' to a directory not ending in ..."),
 
343
 
 
344
- clarified documentation of properties for file backend (MB#8146)
 
345
  
 
346
- stderr redirection: detect "error" messages and show them (MB#7655)
 
347
  The "GConf Error: Failed to contact configuration server..." error
 
348
  message was suppressed by the code which catches noise from libraries
 
349
  invoked by SyncEvolution. Now it is printed as ERROR, making it
 
350
  easier to detect why running SyncEvolution inside cron needs
 
351
  additional changes:
 
352
  http://www.estamos.de/blog/2009/05/08/running-syncevolution-as-cron-job/
 
353
 
 
354
- importing contacts from SyncML server without full name (MB#5664):
 
355
  Evolution expects the name to be set and shows an empty string if
 
356
  it is missing. Now the name is re-added by appending first, middle and
 
357
  last name.
 
358
 
 
359
- Evolution calendar: work around 'cannot encode item' problem (MB #7879)
 
360
  Happens when the calendar file contains broken events which reference
 
361
  a timezone that is not defined. Now the event is treated like one in
 
362
  the local timezone.
 
363
 
 
364
- "http_proxy" env variable is supported regardless which HTTP transport
 
365
  is used (MB#8177).
 
366
 
 
367
- avoid crashes when libecal sets neither error nor pointer (MB#8005)
 
368
  and when aborting a running sync in the syncevo-dbus-server (MB#8385)
 
369
 
 
370
- "--status" output: fixed missing total item counts (MB #9097)
 
371
 
 
372
 
 
373
Upgrading from 0.9.1:
 
374
 
 
375
* nothing to do, upgrading and downgrading should work seamlessly
 
376
 
 
377
 
1
378
SyncEvolution 0.9 -> 0.9.1, 26.10.2009
2
379
======================================
3
380
Synthesis SyncML Engine version: see src/synthesis/ChangeLog