Commit Graph

27 Commits

Author SHA1 Message Date
70a9fcdf9c Rename libeshell to libevolution-shell.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-shell.
2013-05-28 09:56:30 -04:00
6c9a3243c9 Rename libeutil to libevolution-util.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-util.
2013-05-28 09:56:30 -04:00
bed06d9ec3 Move the contact map widgets to addressbook/gui/widgets.
Move the supporting widgets for the contact maps feature alongside
EABContactDisplay.  Removing them from libeutil helps isolate our usage
of libchamplain so it's not imposed on the entire application, and even
3rd party software.  That libchamplain is an optional dependency only
further complicates the matter.

Ideally I'd like to somehow isolate this feature in an extension module,
but we currently lack sufficient hooks for such an extension.  So this
arrangement will have to suffice for now.
2012-12-12 14:33:47 -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
2c4ae5e768 Coding style and whitespace cleanup. 2012-11-10 15:54:43 -05:00
704b78d23b Replace deprecated GLib symbols (as of GLib 2.34.x) 2012-11-06 16:21:37 +01:00
d84ba383ac Adapt to CamelJunkFilter API changes. 2012-10-16 11:24:06 -04:00
c539a9ec20 Remove e_mail_junk_filter_available().
Because we now check for junk filtering software in configure, junk
filtering modules can now safely assume the required junk filtering
software is installed.  No more having the module installed but not
the required software.  If this invariant is broken, an error will
be shown for each new message received.
2012-09-30 23:26:23 -04:00
f186c2a874 spamassassin: Delay spamd tests until needed using GOnce.
Avoid blocking the available() method with synchronous tests that,
it turns out, do cause a noticable delay.
2012-09-30 23:26:23 -04:00
0d0654c19f Check for SpamAssassin during configure.
If the spamassassin and sa-learn programs cannot be found with
AC_PATH_PROG, configure will abort with an error message.

You can then either:
a) install the SpamAssassin software
b) specify the path with SPAMASSASSIN=/path/to/spamassassin and/or
   SA_LEARN=/path/to/sa-learn
c) pass --disable-spamassassin to configure to exclude the module

This also drops the "spamc" and "spamd" GSettings keys.
2012-09-30 23:26:23 -04:00
c85109fc32 Coding style and whitespace cleanup. 2012-08-19 14:17:55 -04:00
782d59da7b Bug 678347 - Put spamd pid/socket files in $XDG_RUNTIME_DIR 2012-06-19 23:26:48 -04:00
6c05b09be1 Do not call g_object_notify() when property didn't change 2012-06-18 15:35:44 +02:00
94daae3dba Remove the last remaining usage of GConf 2012-06-15 09:04:08 +02:00
250c3cade5 Rename Evolution module libraries.
Drop the "libevolution" prefix so it's not so verbose and also
consistent with upcoming evolution-data-server module libraries.

  libevolution-module-foo.so --> module-foo.so
2012-05-10 13:16:48 -04:00
61ae36351b Introduce libemail-engine and libemail-utils.
These libraries are bound for E-D-S so they live at the lowest layer of
Evolution for now -- even libeutil can link to them (but please don't).

This is the first step toward moving mail handing to a D-Bus service.
2012-01-18 23:48:47 -05:00
e64d6fe05c Miscellaneous cleanups. 2011-11-22 20:43:04 -05:00
2e60b6a4a2 Tweak GSettings schemas.
- Don't use the term "eplugin" for modules.

- Use the term "plugin" instead of "eplugin" for plugins.

- Split SpamAssassin settings into a separate schema.
2011-11-22 20:42:56 -05:00
adf6645d52 Fix some GSettings runtime issues. 2011-11-22 20:42:46 -05:00
fa4a42d741 Migrate SA extension to GSettings 2011-11-01 17:26:07 +01:00
1f38f4d92c Simplify library dependency flags.
We have a confusing array of nearly-identical CFLAGS/LIBS definitions in
configure.ac.  Time to simplify.  Instead let's just have one definition
that includes all the libraries provided by Evolution-Data-Server (incl.
Camel).  That, in combination with GNOME_PLATFORM, gives us most of what
we need for compliation and linking, and we can sprinkle definitions for
additional library dependencies in Makefile.am's as needed.
2011-10-04 22:27:14 -04:00
4fc04af617 Bug 655507 - Crash on startup when initializing spamassassin
I keep forgetting to not use G_PARAM_STATIC_STRINGS in modules...
2011-08-03 09:40:40 -05:00
67f8c4f095 SpamAssassin: Add a missing linker flag. 2011-07-19 09:24:26 -05:00
8c2d09db62 SpamAssassin: Silence spamd's debugging chatter. 2011-07-14 23:43:51 -04:00
794bc48920 SpamAssassin: Try harder to kill spamd on exit.
References to EMailSession are leaking like crazy, so the module's
finalize() method never gets called, and we never kill our spamd.

Until I can track down all the reference leaks, kill the spamd process
in response to a "EShell::prepare-for-quit" signal instead of from the
module's finalize() method.  (Maybe that's a better long-term solution
anyway?)
2011-07-14 13:50:30 -04:00
0d3c32b33c SpamAssassin: Don't wait for termination when spawning spamd. 2011-07-14 12:05:49 -04:00
8dfd4278a7 Convert junk filtering EPlugins to EExtensions.
We now have a proper junk mail filtering API.  All junk filtering
extensions must subclass EMailJunkFilter for user preferences and
availability testing, and implement the CamelJunkFilter interface
for the actual junk filtering and learning operations.

The bogofilter module should be feature-equivalent to its former
EPlugin.  The spamassassin module is far more complex.  It's nearly
feature-equivalent to its former EPlugin, but I ditched the spamd
respawning code since it seemed unnecessary for a mail client to
have to deal with.  If there's a huge outcry from users about it
I'll reluctantly put it back, but I don't expect one.

This gets us a step closer to killing off EConfig, and eventually
the EPlugin framework itself.
2011-07-13 22:46:26 -04:00