Commit Graph

54 Commits

Author SHA1 Message Date
1723ee0912 Fix mbox-to-Maildir conversion... again.
Commit ee5671fc fixed mbox-to-Maildir conversion for users upgrading
from Evolution 2.32, who had already migrated to XDG Base Directories.

But turns out, mbox-to-Maildir conversion was still broken for users
coming from Evolution 2.30 or earlier because the logic to move files
into XDG Base Directories was running *after* the conversion routine.
So the conversion routine found nothing to convert, and users were
left with a broken "On This Computer" mail store.

This commit runs the XDG Base Directory migration first on startup,
followed by the mbox-to-Maildir conversion.
2013-03-24 20:06:49 -04:00
6b53dd8da1 libeshell documentation cleanups. 2012-12-13 17:28:32 -05:00
d09d8de870 Consolidate base utility libraries into libeutil.
Evolution consists of entirely too many small utility libraries, which
increases linking and loading time, places a burden on higher layers of
the application (e.g. modules) which has to remember to link to all the
small in-tree utility libraries, and makes it difficult to generate API
documentation for these utility libraries in one Gtk-Doc module.

Merge the following utility libraries under the umbrella of libeutil,
and enforce a single-include policy on libeutil so we can reorganize
the files as desired without disrupting its pseudo-public API.

   libemail-utils/libemail-utils.la
   libevolution-utils/libevolution-utils.la
   filter/libfilter.la
   widgets/e-timezone-dialog/libetimezonedialog.la
   widgets/menus/libmenus.la
   widgets/misc/libemiscwidgets.la
   widgets/table/libetable.la
   widgets/text/libetext.la

This also merges libedataserverui from the Evolution-Data-Server module,
since Evolution is its only consumer nowadays, and I'd like to make some
improvements to those APIs without concern for backward-compatibility.

And finally, start a Gtk-Doc module for libeutil.  It's going to be a
project just getting all the symbols _listed_ much less _documented_.
But the skeletal structure is in place and I'm off to a good start.
2012-12-12 14:33:43 -05:00
a0957f73f6 Delay saving Evolution version until later in initialization.
Save the version after the startup wizard has had a chance to
run.  If the user chooses to restore data and settings from a
backup, Evolution will restart and the restored data may need
to be migrated.

If we save the version before the restart, then Evolution will
think it has already migrated data and settings to the current
version and the restored data may not be handled properly.
2012-07-02 18:42:16 -04:00
6cda29281f Record the actual Evolution version after migration.
Not the next stable version.  If migration needs to occur multiple times
during a development cycle for different reasons, we'll need an accurate
last-used-version stamp.
2012-07-02 14:19:33 -04:00
34eeda37d3 Remove UPGRADE_REVISION definition.
This is always '0'.

I've never changed it to anything else so it's a useless definition.
2012-07-02 12:48:42 -04:00
62a4fb0912 Remove "last-upgraded-version" GSettings key.
AFAICT, this key does nothing useful and only confuses me every time I
read the EShell migration code.

The "version" key records the most recently used Evolution version.
That's all we need for migration.  And since downgrading Evolution is
not supported, we can assume this value will only increase over time.
2012-07-02 11:52:01 -04:00
94daae3dba Remove the last remaining usage of GConf 2012-06-15 09:04:08 +02:00
2a39437ee9 Adapt to single-include E-D-S libraries. 2012-06-03 15:14:03 -04:00
3e05d86173 Adapt libeshell to the new ESource API. 2012-06-02 23:00:39 -04:00
7950d6a0c6 Adapt to libedataserver[ui] changes. 2012-04-21 17:07:15 -04:00
14f82dde34 Move EAlert* and e-xml-utils references from other part of the code to libevolution-utils. 2012-03-03 09:02:33 -05:00
23f5773903 Coding style and whitespace cleanup. 2012-02-20 10:04:25 -05:00
c75f58d01b Fix compiler warnings. 2011-11-22 14:34:11 -05:00
2dd62937f0 Build fixes 2011-10-13 17:23:54 +02:00
d4e8e2f809 Migrate most of the shell code to GSettings 2011-10-13 16:53:51 +02:00
c2288452b3 Bug 661542 - Weird "Cannot upgrade from version 0.xxxx" on first use
GConf's default value for the version key is an empty string, which
causes "sscanf (string, "%d.%d.%d", major, minor, micro)" to fail and
leaves the major/minor/micro variables uninitialized.

Instead, initialize the up front before reading the GConf key.
2011-10-12 09:31:17 -04:00
fcbbdfbd18 Coding style and whitespace cleanup. 2011-09-04 07:34:32 -04:00
f014ab82c8 Coding style and whitespace cleanups. 2011-06-08 13:14:48 -04:00
756c8abcb8 Bug #646109 - Fix use of include <config.h> to make sure translations work 2011-05-27 15:23:07 +02:00
4cfb84c573 Whitespace and coding style cleanups. 2011-05-07 18:48:38 -04:00
6ad4de8a4e Bug #644107 - Local addressbooks created without relative_uri set 2011-03-07 12:32:32 +01:00
40da2dc117 Typo in comment: s/datefime-formats/datetime-formats/ 2011-03-07 08:14:00 +01:00
c6fd77460f Coding style and whitespace cleanup. 2011-03-05 12:34:28 -05:00
8e33ff0fbb Merge duplicate local sources 2011-03-03 11:26:41 +01:00
863b9bf639 Bug #635087 - Leftover files after migration of config/data/cache to XDG directories 2010-11-23 10:46:54 +01:00
e3dda0436d Migrate the local store from mbox to maildir format 2010-11-23 02:04:03 +05:30
4e9050bc1e Whitespace and coding style cleanup. 2010-08-13 21:32:32 -04:00
e919c9724f Bug 625761 - Folder views not preserved after migration 2010-08-02 19:48:54 -04:00
1d2a02b658 Remove folder-tree-expand-state.xml while migrating. 2010-07-30 08:04:40 -04:00
69c904178f Avoid overwriting files while migrating. 2010-07-29 16:36:19 -04:00
eb5afa335d More XDG base directory migration tweaks. 2010-07-28 16:47:39 -04:00
432c2796c9 Migrate ~/.evolution/cache/tmp. 2010-07-28 13:22:26 -04:00
7ca5681a18 Remove .goutputstream-XXXXXX files during migration.
GIO had a bug for awhile where it would leave behind an empty
temp file with the pattern .goutputstream-XXXXXX if an output
stream operation was cancelled.  We've had several reports of
these files in config directories, so remove any we find.
2010-07-28 13:18:36 -04:00
d369274ae8 Add more debug messages to basedir migration.
If directory removal fails because the directory is not empty,
list the file names in that directory.
2010-07-28 10:57:52 -04:00
6affbe33e9 Migrate ~/.evolution to XDG base directories.
Migration runs just before the main loop starts.
It's just a sequence of local directory and file renames.
2010-07-27 08:58:50 -04:00
55c4f30db7 Bug 619811 - Bogus "Cannot update from version 0.0" dialog on start 2010-05-27 07:49:54 -04:00
797acc2445 Drop support for migrating from Evolution < 2.0.
There's too much ancient, crufty code there that we can't realistically
support anymore.  A workaround for those poor users still on 1.x is to
upgrade to some 2.x release first, then upgrade again to 3.x.  An error
dialog explaining this will be shown at startup.
2010-03-29 19:04:00 -04:00
ec73f5522f Coding style and whitespace cleanup. 2010-01-30 18:09:19 -05:00
1359e1e546 Bug 581604 - Permissions on mail/local folders are too open 2010-01-30 01:34:00 +05:30
cae22334fa Remove dead assignments found by clang. 2010-01-15 21:50:05 -05:00
31204c9cc2 Port all error code to use GObject-ified EAlert / EAlertDialog
The changes are mainly including the e-alert-header.h header instead of just
e-alert.h.  This allows us to include e-alert.h in non-UI situations when
necessary.
2009-12-07 12:25:23 -06:00
c2ee0afbc8 Rename EError to EAlert to match general use better
The EError mechanism is used both for error dialogs as well as basic alerts or
user prompts, so we should give it a more general name which matches this use.

This patch also cleans up a few includes of e-alert.h (formerly e-error.h) that
were not actually being used.

https://bugzilla.gnome.org/show_bug.cgi?id=602963
2009-11-30 13:33:04 -06:00
0da239224f port shell/ over to the new EError API
https://bugzilla.gnome.org/show_bug.cgi?id=602963
2009-11-30 13:31:19 -06:00
aa66a17e40 Test drive EIOActivity with a simple asynchronous function.
Rename e-fsutils to e-file-utils.  This is where we'll add asynchronous
functions for common file I/O operations with EActivity integration.

Start with e_file_replace_contents_async() (and corresponding finish()
function).  This is a simple wrapper for g_file_replace_contents_async()
which also returns an EActivity.  It replaces e_write_file_uri().

Also redesign EIOActivity to -contain- a GAsyncResult rather than
implement the interface for itself.  This is easier for now but I may
change my mind again when I figure out how to tie centralized error
reporting into the EActivity framework.
2009-11-07 14:01:46 -05:00
e06b88c4fd Bug #594471 - Shouldn't call e_error_new/run with NULL 'parent' 2009-10-13 16:24:10 +02:00
633b40bea1 Bug #593761 - Wrong dir for calendar local sources
- using _get_data_dir, not _get_config_dir in calendar's and similar
   ensure_sources functions

 - current executable version is stored in gconf, thus not every start is
   migrating done

 - applied changes which were using e_source_list_ensure_group calls

 - e_source_list_sync is called at the end of those ensure_sources, as it
   didn't work to me to see the Personal source after start when I had
   no "On this computer" group (the group was added, but the source wasn't)
2009-09-02 15:16:53 +02:00
624f48121f Fix up EShell API documentation. 2009-06-30 20:05:07 -04:00
8dc6bbd250 Get the "startup-wizard" plugin working again. 2009-06-30 10:47:59 -04:00
cc3a98fc1a Merge branch 'master' into kill-bonobo
Conflicts:
	a11y/widgets/ea-combo-button.c
	a11y/widgets/ea-combo-button.h
	addressbook/gui/component/addressbook-component.c
	addressbook/gui/component/addressbook-component.h
	addressbook/gui/component/addressbook-view.c
	addressbook/gui/component/addressbook-view.h
	addressbook/gui/component/component-factory.c
	addressbook/gui/widgets/e-addressbook-view.c
	addressbook/gui/widgets/eab-contact-display.c
	addressbook/gui/widgets/eab-gui-util.h
	addressbook/gui/widgets/eab-menu.c
	addressbook/gui/widgets/eab-menu.h
	addressbook/gui/widgets/eab-popup-control.c
	addressbook/gui/widgets/eab-popup-control.h
	addressbook/gui/widgets/eab-popup.c
	addressbook/gui/widgets/eab-popup.h
	calendar/gui/cal-search-bar.c
	calendar/gui/calendar-commands.c
	calendar/gui/calendar-component.c
	calendar/gui/comp-editor-factory.c
	calendar/gui/comp-editor-factory.h
	calendar/gui/control-factory.c
	calendar/gui/dialogs/comp-editor.c
	calendar/gui/e-cal-component-memo-preview.c
	calendar/gui/e-cal-component-memo-preview.h
	calendar/gui/e-calendar-table.c
	calendar/gui/e-memo-table.c
	calendar/gui/e-memos.c
	calendar/gui/e-tasks.c
	calendar/gui/gnome-cal.c
	calendar/gui/gnome-cal.h
	calendar/gui/itip-bonobo-control.c
	calendar/gui/itip-bonobo-control.h
	calendar/gui/main.c
	calendar/gui/memos-component.c
	calendar/gui/memos-control.c
	calendar/gui/memos-control.h
	calendar/gui/migration.c
	calendar/gui/migration.h
	calendar/gui/tasks-component.c
	calendar/gui/tasks-control.c
	calendar/importers/main.c
	composer/Makefile.am
	composer/e-composer-header-table.c
	composer/e-composer-header.c
	composer/e-composer-header.h
	composer/e-composer-name-header.c
	composer/e-composer-private.c
	composer/e-composer-text-header.c
	composer/e-msg-composer.c
	composer/e-msg-composer.h
	e-util/e-corba-utils.h
	e-util/e-logger.c
	e-util/e-logger.h
	e-util/e-util-labels.c
	e-util/e-util-labels.h
	em-format/em-format.c
	mail/Makefile.am
	mail/e-mail-shell-migrate.c
	mail/em-account-editor.c
	mail/em-account-editor.h
	mail/em-composer-prefs.c
	mail/em-composer-utils.c
	mail/em-composer-utils.h
	mail/em-folder-browser.c
	mail/em-folder-tree-model.c
	mail/em-folder-tree.c
	mail/em-folder-tree.h
	mail/em-folder-utils.c
	mail/em-folder-utils.h
	mail/em-folder-view.c
	mail/em-format-html-display.c
	mail/em-format-html.c
	mail/em-mailer-prefs.c
	mail/em-mailer-prefs.h
	mail/em-message-browser.c
	mail/em-message-browser.h
	mail/em-network-prefs.h
	mail/em-popup.c
	mail/em-utils.c
	mail/importers/Makefile.am
	mail/mail-component-factory.c
	mail/mail-component.c
	mail/mail-config-factory.c
	mail/mail-config-factory.h
	mail/mail-config.c
	mail/mail-dialogs.glade
	mail/mail-types.h
	plugins/calendar-weather/calendar-weather.c
	plugins/mail-account-disable/mail-account-disable.c
	plugins/select-one-source/select-one-source.c
	po/POTFILES.in
	shell/e-component-registry.c
	shell/e-component-registry.h
	shell/e-component-view.c
	shell/e-component-view.h
	shell/e-corba-config-page.c
	shell/e-corba-config-page.h
	shell/e-shell-constants.h
	shell/e-shell-settings-dialog.c
	shell/e-shell-settings-dialog.h
	shell/e-shell-window-commands.c
	shell/e-shell-window.c
	shell/e-shell.h
	shell/e-sidebar.c
	shell/e-sidebar.h
	shell/e-user-creatable-items-handler.c
	shell/e-user-creatable-items-handler.h
	shell/es-menu.c
	shell/es-menu.h
	shell/evolution-component.h
	shell/evolution-config-control.c
	shell/evolution-config-control.h
	shell/evolution-listener.c
	shell/evolution-listener.h
	shell/evolution-shell-component-utils.c
	shell/evolution-shell-component-utils.h
	shell/importer/evolution-importer-client.c
	shell/importer/evolution-importer-client.h
	shell/importer/evolution-importer-listener.c
	shell/importer/evolution-importer-listener.h
	shell/importer/evolution-importer.c
	shell/importer/evolution-importer.h
	shell/importer/evolution-intelligent-importer.c
	shell/importer/evolution-intelligent-importer.h
	shell/importer/intelligent.c
	shell/main.c
	shell/test/evolution-test-component.c
	shell/test/evolution-test-component.h
	widgets/menus/gal-view-instance.c
	widgets/menus/gal-view-menus.c
	widgets/menus/gal-view-menus.h
	widgets/misc/Makefile.am
	widgets/misc/e-activity-handler.c
	widgets/misc/e-activity-handler.h
	widgets/misc/e-charset-picker.c
	widgets/misc/e-combo-button.c
	widgets/misc/e-combo-button.h
	widgets/misc/e-config-page.h
	widgets/misc/e-dropdown-button.c
	widgets/misc/e-dropdown-button.h
	widgets/misc/e-filter-bar.c
	widgets/misc/e-info-label.c
	widgets/misc/e-info-label.h
	widgets/misc/e-multi-config-dialog.c
	widgets/misc/e-multi-config-dialog.h
	widgets/misc/e-search-bar.c
	widgets/misc/e-search-bar.h
	widgets/misc/e-task-bar.c
	widgets/misc/e-task-bar.h
	widgets/misc/e-task-widget.c
	widgets/misc/e-task-widget.h
	widgets/misc/test-dropdown-button.c
	widgets/misc/test-error.c
	widgets/misc/test-info-label.c
	widgets/table/e-table-example-1.c
2009-05-27 08:37:17 -04:00