DebuggingEvolution
ContentsBRTableOfContents |
Introduction (work in progress)
What we generically call Evolution is in fact a collection of binary and source packages:
1. Evolution Data Server
evolution-data-server
evolution database backend server
evolution-data-server-common
architecture independent files for Evolution Data Server
evolution-data-server-dbg
evolution database backend server with debugging symbols
evolution-data-server-dev
Development files for evolution-data-server (meta package)
libcamel<version>
The Evolution MIME message handling library
libcamel<version>-dev
Development files for libcamel
libebook<version>
Client library for evolution address books
libebook<version>-dev
Client library for evolution address books (development files)
libecal<version>
Client library for evolution calendars
libecal<version>-dev
Client library for evolution calendars (development files)
libedata-book<version>
Backend library for evolution address books
libedata-book<version>-dev
Backend library for evolution address books (development files)
libedata-cal<version>
Backend library for evolution calendars
libedata-cal<version>-dev
Backend library for evolution calendars (development files)
libedataserver<version>
Utility library for evolution data servers
libedataserver<version>-dev
Utility library for evolution data servers (development files)
libedataserverui<version>
GUI utility library for evolution data servers
libedataserverui<version>-dev
GUI utility library for evolution data servers (development files)
libegroupwise<version>
Client library for accessing groupwise POA through SOAP interface
libegroupwise<version>-dev
Development files for libegroupwise
libexchange-storage<version>
Backend library for evolution calendars
libexchange-storage<version>-dev
Backend library for evolution calendars (development files)
2. Evolution
evolution
groupware suite with mail client and organizer
evolution-common
architecture independent files for Evolution
evolution-dbg
debugging symbols for Evolution
evolution-dev
development library files for Evolution
evolution-plugins
standard plugins for Evolution
evolution-plugins-experimental
experimental plugins for Evolution
3. Evolution Exchange
evolution-exchange
Exchange plugin for the Evolution groupware suite
Additionally, Evolution uses libgtkhtml3.14 to format HTML email (either for viewing or printing). There are many other packages that Evolution depends on, of course.
How to file
Bugs should be filled under the correct package -- so, for example, if you find a bug on libcamel, the correct package is Evolution-Data-Server, not Evolution. Nevertheless, if you are unsure -- but it is an Evolution* bug --, file it under any of the Evolution packages; we will, eventually, find the correct package and reassign the bug as needed (and even reassign it out of Evolution, if the Evolution error is a consequence of some other package).
No matter what, we do need to have a good description of the issue, and supporting documentation (see below for details).
Debugging procedure
First of all: try to identify what is wrong. We usually have bugs on:
User interface - require a detailed description of the issue, steps to reproduce and screen captures where appropriate. For example, [https://bugs.launchpad.net/ubuntu/+source/evolution-data-server/+bug/12430 bug 12430].
Program crash - Log files from the crash incident are required to track down these. Almost always, this will require the reporter to file in a nice backtrace (since most of the times we cannot reproduce it :-(). For example, see [https://bugs.launchpad.net/ubuntu/+source/evolution-data-server/+bug/106504 bug 106504].
Incorrect results - for example, connection errors, deleted emails are not deleted, etc. For example (and to keep with time issues) [https://bugs.launchpad.net/ubuntu/+source/evolution-data-server/+bug/67955 bug 67955].
- Wishlists - a product feature that is either absent, or should be modified to suit the reporter's view of usability.
- Package selection - Help to find the right package (may be specific to category -- a bug filed as ubiquity may in fact be a casper d-i bug, an xorg bug may be an xorg-driver bug, etc.)
Now, verify if you can reproduce the issue. If you can, try to describe in details all steps you needed to go thru to have the issue. If this is a program crash, make sure you have all necessary debugging symbols packages installed -- see DebuggingProgramCrash for the necessary changes to the repositories lists. What symbols packages to install... varies with the problem. Obviously, the Evolution* ones should be in, but what others will depend on the specific issue.
If you cannot reproduce the issue you will have to ask the reporter to do it.
Once you have collected all data you believe is needed... its time to check upstream.
Non-bugs
How to recognise common issues arising from hardware failures, common feature requests and other invalid bugs for this category. Advice how triage them and stock responses.
Also see
DebuggingProcedures for generic debugging on Ubuntu, and specially
DebuggingProgramCrash on how to setup your machine to get a meaningfull backtrace
[http://www.gnome.org/projects/evolution/bugs.shtml A Quick Guide to Evolution Bug Hunting] on the upstream suggestions
[http://www.go-evolution.org/Main_Page the Evolution Wiki] for details on what is going on, and documentation on the internals