[Evolution] Bug#505249: evolution: silently fails to completely copy calendars
Cyrille Chépélov
cyrille at chepelov.org
Tue Nov 11 01:39:57 UTC 2008
Package: evolution
Version: 2.22.3.1-1
Severity: grave
Justification: causes non-serious data loss
Over the time, I have grown several local calendars in Evo (about a
hundred entries each). Turns out that verious versions of evo failed to
properly sanitize inputs, so some events are (properly) in UTF-8, others
(mostly events coming from Exchange or Notes parties) are in
iso-8859-15.
When trying to copy those calendars over to CalDAV, the copy initially
appeared to work, as in random events were successfully copied over and
evo did not complain. However, it turns out that Evo stopped prematurely
and silently.
Exporting the calendars as .ics files appears to produce complete files
(although I cannot be sure, it seems everything I expect to see there is
indeed exported). No software package I tried was able to successfully
use these .ics files, as the VEvents with mojibake typically stop the
process (davical's import, iceowl, etc.). Evolution is a major offender
here, as those VEvents *silently* stop the import process, with no clue
that it stopped prematurely other than missing events.
Proper correction of this bug is three-fold:
1. Evolution should never export .ics files with invalid UTF-8.
Ever. It should instead ask the user for help with the encoding.
2. Evolution should never store events without first sanitizing the
contents with respect to character sets. Asking the user in context (or
using the metadata that might be provided or inferred from the foreign
calendar) is easier right away than at export time, much later.
3. Evolution should never silently stop the import or copy process for
encoding issues. It should at the minimum reject (atomically) the
whole .ics file; a much nicer way would be to import valid entries and
produce a .ics file with the rejected entries. The best way would be to
provide a "clean-up" wizard asking the user for assistance to complete
the import task.
Thanks in advance
-- Cyrille
-- System Information:
Debian Release: lenny/sid
APT prefers testing
APT policy: (800, 'testing'), (600, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.26-1-686 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages evolution depends on:
ii dbus 1.2.1-3 simple interprocess
messaging syst
ii evolution-common 2.22.3.1-1 architecture independent
files for
ii evolution-data-server 2.22.3-1 evolution database backend
server
ii gconf2 2.22.0-1 GNOME configuration
database syste
ii gnome-icon-theme 2.22.0-1 GNOME Desktop icon theme
ii gtkhtml3.14 3.18.3-1 HTML rendering/editing
library - b
ii libart-2.0-2 2.3.20-2 Library of functions for 2D
graphi
ii libatk1.0-0 1.22.0-1 The ATK accessibility
toolkit
ii libbluetooth2 3.36-1 Library to use the BlueZ
Linux Blu
ii libbonobo2-0 2.22.0-1 Bonobo CORBA interfaces
library
ii libbonoboui2-0 2.22.0-1 The Bonobo UI library
ii libc6 2.7-14 GNU C Library: Shared
libraries
ii libcairo2 1.6.4-6 The Cairo 2D vector
graphics libra
ii libcamel1.2-11 2.22.3-1 The Evolution MIME message
handlin
ii libdbus-1-3 1.2.1-3 simple interprocess
messaging syst
ii libdbus-glib-1-2 0.76-1 simple interprocess
messaging syst
ii libebook1.2-9 2.22.3-1 Client library for
evolution addre
ii libecal1.2-7 2.22.3-1 Client library for
evolution calen
ii libedataserver1.2-9 2.22.3-1 Utility library for
evolution data
ii libedataserverui1.2-8 2.22.3-1 GUI utility library for
evolution
ii libegroupwise1.2-13 2.22.3-1 Client library for
accessing group
ii libexchange-storage1.2 2.22.3-1 Client library for
accessing Excha
ii libfontconfig1 2.6.0-1 generic font configuration
library
ii libfreetype6 2.3.7-2 FreeType 2 font engine,
shared lib
ii libgconf2-4 2.22.0-1 GNOME configuration
database syste
ii libglade2-0 1:2.6.2-1 library to load .glade
files at ru
ii libglib2.0-0 2.16.6-1 The GLib library of C
routines
ii libgnome-pilot2 2.0.15-2.4 Support libraries for
gnome-pilot
ii libgnome2-0 2.20.1.1-1 The GNOME 2 library -
runtime file
ii libgnomecanvas2-0 2.20.1.1-1 A powerful object-oriented
display
ii libgnomeui-0 2.20.1.1-2 The GNOME 2 libraries (User
Interf
ii libgnomevfs2-0 1:2.22.0-5 GNOME Virtual File System
(runtime
ii libgtk2.0-0 2.12.11-3 The GTK+ graphical user
interface
ii libgtkhtml3.14-19 3.18.3-1 HTML rendering/editing
library - r
ii libhal1 0.5.11-5 Hardware Abstraction Layer
- share
ii libice6 2:1.0.4-1 X11 Inter-Client Exchange
library
ii libldap-2.4-2 2.4.10-3 OpenLDAP libraries
ii libnm-glib0 0.7.0~svn4035-1 network management
framework (GLib
ii libnotify1 [libnotify1 0.4.4-3 sends desktop notifications
to a n
ii libnspr4-0d 4.7.1-4 NetScape Portable Runtime
Library
ii libnss3-1d 3.12.0-5 Network Security Service
libraries
ii liborbit2 1:2.14.13-0.1 libraries for ORBit2 - a
CORBA ORB
ii libpango1.0-0 1.20.5-2 Layout and rendering of
internatio
ii libpisock9 0.12.3-5 library for communicating
with a P
ii libpisync1 0.12.3-5 synchronization library for
PalmOS
ii libpixman-1-0 0.10.0-2 pixel-manipulation library
for X a
ii libpng12-0 1.2.27-2 PNG library - runtime
ii libpopt0 1.14-4 lib for parsing cmdline
parameters
ii libsm6 2:1.0.3-2 X11 Session Management
library
ii libsoup2.4-1 2.4.1-1 an HTTP library
implementation in
ii libusb-0.1-4 2:0.1.12-12 userspace USB programming
library
ii libx11-6 2:1.1.5-2 X11 client-side library
ii libxcb-render-util0 0.2.1+git1-1 utility libraries for X C
Binding
ii libxcb-render0 1.1-1.1 X C Binding, render
extension
ii libxcb1 1.1-1.1 X C Binding
ii libxcursor1 1:1.1.9-1 X cursor management library
ii libxext6 2:1.0.4-1 X11 miscellaneous extension
librar
ii libxfixes3 1:4.0.3-2 X11 miscellaneous 'fixes'
extensio
ii libxi6 2:1.1.3-1 X11 Input extension library
ii libxinerama1 2:1.0.3-2 X11 Xinerama extension
library
ii libxml2 2.6.32.dfsg-4 GNOME XML library
ii libxrandr2 2:1.2.3-1 X11 RandR extension library
ii libxrender1 1:0.9.4-2 X Rendering Extension
client libra
ii zlib1g 1:1.2.3.3.dfsg-12 compression library -
runtime
More information about the Pkg-evolution-maintainers
mailing list