Christian Hilberg [Wed, 13 Jun 2012 11:07:36 +0000 (13:07 +0200)]
CamelIMAPXServer: moved handler code for untagged responses to individual functions
* this is the first step towards an extensible CamelIMAPXServer
w.r.t. untagged IMAP responses
* there is now one handler function per untagged response
* instead of one big switch statement, there will be a
table with pointers to the new handler function, which
will be indexed by the untagged response code
* this will eventually eliminate the switch statement
in imapx_untagged()
* the gperf dependency will be dropped in the process
Matthew Barnes [Tue, 26 Jun 2012 14:36:34 +0000 (10:36 -0400)]
Fix install failure in google backend.
Instead of linking to libebook-google-utils.la, just add its source
files directly to the libebookbackendgoogle module. So the code is
duplicated in the backend module and the noinst unit test library.
This was causing libtool to barf on bogus undefined reference errors
during install. Still don't really understand what libtool's problem
was -- maybe it didn't like the noinst library? Who knows.
Milan Crha [Tue, 26 Jun 2012 12:02:40 +0000 (14:02 +0200)]
Bug #678856 - Crash in add_instance() at e-cal-client.c:1311
Nilamdyuti Goswami [Tue, 26 Jun 2012 07:58:31 +0000 (13:28 +0530)]
Assamese translation reviewed
Philip Withnall [Mon, 25 Jun 2012 21:34:35 +0000 (22:34 +0100)]
google: Remove an outdated workaround for an EBookBackendCache bug
The bug itself was fixed in commit
d535d4b09c61a8277084ddce0cfafc737b69fab2,
two years ago.
Philip Withnall [Mon, 25 Jun 2012 21:25:20 +0000 (22:25 +0100)]
google: Remove the option to not cache Google Contacts data locally
We always download the entire contacts list, so there’s little point in not
caching it on disk. This saves bandwidth and speeds up initial access to the
address book. The cache file shouldn’t get unreasonably big, given that users
will typically only have a few hundred contacts in their address book.
Philip Withnall [Mon, 25 Jun 2012 20:43:35 +0000 (21:43 +0100)]
vala: Add custom overrides for e_contact_[get|get_const|set]()
They were using void* in Vala, which is generally a bad idea. In this case,
it was resulting in unavoidable memory leaks in libfolks (bug #678781).
This changes the functions to be simple generics instead.
Matthew Barnes [Mon, 25 Jun 2012 01:45:52 +0000 (21:45 -0400)]
Post-release version bump.
Matthew Barnes [Mon, 25 Jun 2012 01:32:57 +0000 (21:32 -0400)]
NEWS update for 3.5.3 release.
Matthew Barnes [Sun, 24 Jun 2012 21:28:06 +0000 (17:28 -0400)]
Camel string pool improvements.
Keep the pointer to the allocated string and the allocated string's
reference count together in a new StringPoolNode struct. This way a
StringPoolNode can be used as both the key and value in a GHashTable,
allowing the table to save some memory. Also use the slab allocator
for the fixed-size StringPoolNode instances.
Didn't do any real formal measurements for this so the actual reduction
in memory usage may be insignificant. If nothing else the code is more
readable now, and manipulating reference counts is less awkward.
Fran Diéguez [Sun, 24 Jun 2012 21:24:43 +0000 (23:24 +0200)]
Updated Galician translations
Matthew Barnes [Sun, 24 Jun 2012 16:52:48 +0000 (12:52 -0400)]
Coding style and whitespace cleanup.
Matthew Barnes [Sun, 24 Jun 2012 12:18:46 +0000 (08:18 -0400)]
libebook: Reference address books by UID instead of URI.
Breaks EContact and EVCard APIs, but merely making the names accurate.
Philip Withnall [Sun, 24 Jun 2012 11:35:23 +0000 (12:35 +0100)]
google: Remove use of ESourceExtensionSecurity
Google have required the use of SSL connections to Google Contacts for a
while, and libgdata has used SSL connections exclusively for even longer.
The ‘use_ssl’ option was completely ineffective and redundant.
Philip Withnall [Sun, 24 Jun 2012 11:09:29 +0000 (12:09 +0100)]
google: Remove an unused variable
It was always the case that: live_mode == (priv->bookviews != NULL)
Philip Withnall [Sun, 24 Jun 2012 08:55:46 +0000 (09:55 +0100)]
google: Add a new custom vCard property containing Google system groups
This can then be picked up by libfolks (and other interested clients) to
allow them to detect which system groups a Google contact is in. Previously,
they had to infer this from the categories the contact was in, which are
localised. This was tricky and fragile.
Helps: https://bugzilla.gnome.org/show_bug.cgi?id=676383
Matthew Barnes [Sun, 24 Jun 2012 03:32:25 +0000 (23:32 -0400)]
Deprecate EDbHash.
Apparently nothing uses it anymore.
Matthew Barnes [Sun, 24 Jun 2012 00:26:10 +0000 (20:26 -0400)]
ESource: Use a collation key for display name comparisons.
e_source_compare_by_display_name() gets called a lot. We've been
calling g_utf8_collate() each time, which is known to be slow when
comparing large numbers of UTF-8 strings.
We now stash a collation key during e_source_set_display_name()
by passing the UTF-8 display name to g_utf8_collate_key(). Then
in e_source_compare_by_display_name() we can simply call strcmp()
on the internal collation keys to compare display names.
Didn't take any real performance measurements other than seeing
e_source_compare_by_display_name() topping the charts in sysprof.
Matthew Barnes [Sat, 23 Jun 2012 15:35:11 +0000 (11:35 -0400)]
Add missing linker flags for libebook-google-utils.
Sasi Bhushan Boddepalli [Sat, 23 Jun 2012 04:41:20 +0000 (10:11 +0530)]
Updated Telugu Translation
Matthew Barnes [Fri, 22 Jun 2012 21:00:29 +0000 (17:00 -0400)]
Bug 678067 - Localized display names get stuck
Matthew Barnes [Fri, 22 Jun 2012 20:10:06 +0000 (16:10 -0400)]
ESource: Minor code cleanup.
Matthew Barnes [Fri, 22 Jun 2012 13:43:30 +0000 (09:43 -0400)]
camel-provider.h: Fix a typo.
Matthew Barnes [Fri, 22 Jun 2012 13:25:24 +0000 (09:25 -0400)]
CAMEL_PROVIDER_IS_STORE_AND_TRANSPORT: Handle NULL gracefully.
Evaluates to FALSE if the 'provider' pointer is NULL.
Matthew Barnes [Fri, 22 Jun 2012 12:49:48 +0000 (08:49 -0400)]
ESourceContacts: Only include local address books by default.
A more reasonable default than including all address books by default.
Weeds out large, remote address books that can take forever to query.
Matthew Barnes [Fri, 22 Jun 2012 12:19:58 +0000 (08:19 -0400)]
Bug 678618 - Runtime warning when clicking on top-level sidebar item
Matthew Barnes [Thu, 21 Jun 2012 17:21:56 +0000 (13:21 -0400)]
source_idle_changed_cb: Avoid a runtime warning.
Apparently it's possible for the 'changed' GSource to already be NULL
when we go to unref it in source_idle_changed_cb(). Not sure how that's
happening... possibly racing with dispose()? In any case just check for
NULL first.
Matthew Barnes [Thu, 21 Jun 2012 12:54:29 +0000 (08:54 -0400)]
EServerSideSource: Don't write changes to disk until exported.
If a collection backend is configuring an EServerSideSource from a
worker thread, avoid writing changes to disk prematurely.
Explicitly calling e_source_write_sync() still works as advertised
whether the source is exported or not.
Matthew Barnes [Thu, 21 Jun 2012 12:40:54 +0000 (08:40 -0400)]
EServerSideSource: Add an "exported" property.
Read-only boolean property indicates whether the source has been
exported over D-Bus. Basically just queries the registry server
for itself.
Daniel Mustieles [Thu, 21 Jun 2012 10:29:30 +0000 (12:29 +0200)]
Updated Spanish translation
Matthew Barnes [Wed, 20 Jun 2012 19:43:02 +0000 (15:43 -0400)]
Fix build failures when $(top_srcdir) != $(top_builddir).
Really need to get distcheck working again...
Nilamdyuti Goswami [Wed, 20 Jun 2012 16:05:27 +0000 (21:35 +0530)]
Assamese translation reviewed
Milan Crha [Wed, 20 Jun 2012 08:16:25 +0000 (10:16 +0200)]
ESource: Read/Write int64/uint64
Matthew Barnes [Tue, 19 Jun 2012 21:14:05 +0000 (17:14 -0400)]
Improve imapx_command_fetch_message_done().
Using a corrupted database table as an opportunity to improve code
readability and error handling.
Matthew Barnes [Tue, 19 Jun 2012 21:03:07 +0000 (17:03 -0400)]
camel_data_cache_get: Improve empty file handling.
When an empty cache file is detected, set a GError with a descriptive
error message in addition to returning NULL.
Matthew Barnes [Tue, 19 Jun 2012 19:17:04 +0000 (15:17 -0400)]
e_book_backend_file_open: Fix directory existence test.
In e_book_backend_file_open() we seem to be bailing out if the data
directory does not exist, but yet we don't create the directory until
further down.
Not sure if this is correct, but it seems to me we only want to check
for the data directory if 'only_if_exists == TRUE'.
Matthew Barnes [Tue, 19 Jun 2012 18:36:46 +0000 (14:36 -0400)]
EDataBookFactory: Improve error message for GOA connection failure.
Fallout from a debugging session.
The printed error message was simply
libedata-book-WARNING **: The given address is empty
which was not very helpful in tracking down the source.
Matthew Barnes [Tue, 19 Jun 2012 15:44:13 +0000 (11:44 -0400)]
camel_data_cache_get_filename: Remove unused GError parameter.
Don't want this parameter to result in unnecessary error handling.
Matthew Barnes [Tue, 19 Jun 2012 14:44:31 +0000 (10:44 -0400)]
imapx_command_fetch_message_done: Fix an error handling issue.
Matthew Barnes [Tue, 19 Jun 2012 12:40:46 +0000 (08:40 -0400)]
Bug 678378 - ESourceRegistry causes deadlock in gnome-shell
Avoid scheduling idle callbacks while populating the registry for the
first time during initialization, and therefore having to iterate the
main context to force those idle callbacks to be dispatched.
Instead call source_registry_add_source() directly, just during the
initial population. This will emit "source-added" signals from the
object manager thread, but no one will be listening.
Matthew Barnes [Tue, 19 Jun 2012 12:22:58 +0000 (08:22 -0400)]
ESourceRegistry: Split ESource creation into a standalone function.
Split ESource creation out of the "object-added" signal handler to
a standalone function -- source_registry_new_source() -- which the
signal handler now calls.
Matthew Barnes [Tue, 19 Jun 2012 11:33:40 +0000 (07:33 -0400)]
ESourceRegistry: Use g_main_context_ref_thread_default().
Slightly more convenient than g_main_context_get_thread_default(), which
requires checking for NULL before referencing the main context ourselves.
Sasi Bhushan Boddepalli [Tue, 19 Jun 2012 11:35:23 +0000 (17:05 +0530)]
Updated Telugu Translation
Matthew Barnes [Tue, 19 Jun 2012 02:07:20 +0000 (22:07 -0400)]
Deprecate EUri.
Help end the proliferation of redundant URI-parsing APIs. We avoid URIs
whenever possible now. When it can't be avoided, SoupURI is sufficient.
Matthew Barnes [Mon, 18 Jun 2012 20:01:27 +0000 (16:01 -0400)]
imapx_store_noop_sync: Don't return FALSE without setting a GError.
Philip Withnall [Mon, 18 Jun 2012 17:10:46 +0000 (18:10 +0100)]
edataserver: Remove libsoup from the introspection includes
Soup-2.4 doesnt’t get along with Vala at the moment, and is breaking the
folks build. The include can be re-added once libsoup is fixed.
This partially reverts
874cfbd0c6dbb130489c27e9b50e51d8da6da398.
Philip Withnall [Mon, 18 Jun 2012 16:24:22 +0000 (17:24 +0100)]
ecal: GIR annotation fixes
Various documentation comment fixes and annotation additions. Various APIs
have been marked as (skip) because they previously weren’t introspectable and
have been deprecated, so there’s little point making them introspectable and
cluttering the GIR file with them.
Philip Withnall [Mon, 18 Jun 2012 15:19:35 +0000 (16:19 +0100)]
ebook: GIR annotation fixes
Various documentation comment fixes and annotation additions.
Milan Crha [Mon, 18 Jun 2012 15:51:12 +0000 (17:51 +0200)]
Do not call g_object_notify() when property didn't change
Philip Withnall [Mon, 18 Jun 2012 15:12:36 +0000 (16:12 +0100)]
edataserver: GIR annotation fixes
Various documentation comment fixes, annotation additions, and the addition
of libsoup as a GIR include since it appears in some proxy API.
Philip Withnall [Mon, 18 Jun 2012 15:11:54 +0000 (16:11 +0100)]
build: Enable g-ir-scanner’s --warn-all option when building GIR files
This should make missing annotations and documentation comment problems
more obvious.
Philip Withnall [Mon, 18 Jun 2012 11:21:32 +0000 (12:21 +0100)]
edataserver: Add missing annotation to e_source_get_extension()
This is needed for folks.
See: https://bugzilla.gnome.org/show_bug.cgi?id=678309
Matthew Barnes [Mon, 18 Jun 2012 03:22:38 +0000 (23:22 -0400)]
Tighten up pkg-config files.
Remove redundancies. In particular, libedataserver-1.2 requires gio-1.2
so drop the explicit gio-1.2 requirement from all other libe* libraries.
Philip Withnall [Sat, 16 Jun 2012 10:45:56 +0000 (11:45 +0100)]
google: Make ‘rel’ and ‘label’ mutually exclusive for certain elements
Google lovingly decided to add an extra restriction on use of ‘rel’ and
‘label’ properties of elements in their Google Contacts API[1], meaning that
we need to prefer vCard X-GOOGLE-LABEL values over TYPE values and ignore
the TYPE values. If we don’t, the server will reject contact entries.
Closes: https://bugzilla.gnome.org/show_bug.cgi?id=675712
[1]: https://developers.google.com/google-apps/contacts/v3/reference#extraRestrictionsOnSomeElements
Philip Withnall [Sat, 16 Jun 2012 10:34:41 +0000 (11:34 +0100)]
google: Add some tests to Google address book backend
This is necessary to try and prevent regressions on the tangle of GData–vCard
conversion code which the backend is built around.
These few tests check the behaviour of phone numbers.
Helps: https://bugzilla.gnome.org/show_bug.cgi?id=675712.
Philip Withnall [Sat, 19 May 2012 22:45:27 +0000 (23:45 +0100)]
google: Split conversion functions from Google backend into a util lib
This is step 1 of the plan to add unit tests for the Google backend. This
is necessary to try and prevent regressions on the tangle of GData–vCard
conversion code which the backend is built around.
This was prompted by https://bugzilla.gnome.org/show_bug.cgi?id=675712.
Jordi Mallach [Sun, 17 Jun 2012 16:53:18 +0000 (18:53 +0200)]
Bug #678255 - edata-cal missing libebackend-1.2 requirement.
Matthew Barnes [Sun, 17 Jun 2012 14:37:30 +0000 (10:37 -0400)]
Remove -Werror from AM_INIT_AUTOMAKE.
Can't guarantee external software packages will not cause warnings.
Milan Crha [Fri, 15 Jun 2012 13:24:05 +0000 (15:24 +0200)]
Bug #678069 - Crash in _gdata_entry_update_from_e_contact()
Milan Crha [Thu, 14 Jun 2012 15:19:11 +0000 (17:19 +0200)]
Remove forgotten DBUS_GLIB_CFLAGS/LIBS, these are gone now
Nilamdyuti Goswami [Thu, 14 Jun 2012 14:35:38 +0000 (20:05 +0530)]
Assamese translation reviewed
Daniel Mustieles [Thu, 14 Jun 2012 11:48:12 +0000 (13:48 +0200)]
Updated Spanish translation
Milan Crha [Thu, 14 Jun 2012 09:00:51 +0000 (11:00 +0200)]
Remove forgotten debug function call
Milan Crha [Thu, 14 Jun 2012 08:40:10 +0000 (10:40 +0200)]
Port remaining bits from GConf to GSettings
Fran Diéguez [Wed, 13 Jun 2012 23:05:32 +0000 (01:05 +0200)]
Updated Galician translations
Milan Crha [Wed, 13 Jun 2012 10:16:16 +0000 (12:16 +0200)]
Disable cfs_try_release_memory() in dispose, rather than finalize
Milan Crha [Wed, 13 Jun 2012 08:51:44 +0000 (10:51 +0200)]
g_cancellable_reset() doesn't like NULL cancellable
Matthew Barnes [Wed, 13 Jun 2012 02:01:05 +0000 (22:01 -0400)]
server_side_source_write(): Fix file relocation.
Use the GFile's basename so we don't drop the '.source' file extension.
Matthew Barnes [Wed, 13 Jun 2012 01:14:32 +0000 (21:14 -0400)]
yahoo-backend: Implement dup_resource_id() method.
Matthew Barnes [Wed, 13 Jun 2012 01:06:06 +0000 (21:06 -0400)]
google-backend: Implement dup_resource_id() method.
Matthew Barnes [Tue, 12 Jun 2012 22:01:19 +0000 (18:01 -0400)]
cache-reaper: Also monitor the "sources" cache directory.
The "sources" cache directory now has the same directory structure as
the other cache directories in $XDG_CACHE_HOME/evolution, so the reaper
can clean up cached collection sources after the collection is deleted.
Matthew Barnes [Tue, 12 Jun 2012 21:50:10 +0000 (17:50 -0400)]
ECollectionBackend: Restore resources from cached key files.
Read all key files in the ECollectionBackend's cache directory during
initialization and create an ESource instance for each for them. Stash
these ESources in an "unclaimed resources" hash table. The backend can
claim an ESource by its resource ID (each backend class determines what
a resource ID means exactly), and then add it to the registry server.
All without breaking the public API. Whoopie!
Milan Crha [Tue, 12 Jun 2012 16:57:21 +0000 (18:57 +0200)]
Bug #677841 - Workaround for crash in imapx_command_append_message_done()
Daniel Mustieles [Tue, 12 Jun 2012 16:31:10 +0000 (18:31 +0200)]
Updated Spanish translation
Ihar Hrachyshka [Tue, 12 Jun 2012 14:49:02 +0000 (17:49 +0300)]
Updated Belarusian translation.
Matthew Barnes [Tue, 12 Jun 2012 11:50:05 +0000 (07:50 -0400)]
Bug 677933 - imapx_utils_init() called too early
Matthew Barnes [Mon, 11 Jun 2012 18:45:53 +0000 (14:45 -0400)]
ECollectionBackendClass: Add dup_resource_id() method.
Returns the resource ID for a given child source. A resource ID is
usually a unique, server-assigned identifier which is stored in the
child source in some backend-specific extension. The method allows
ECollectionBackend to extract the ID without knowing exactly how it
is stored. The method always returns a newly-allocated string.
Matthew Barnes [Mon, 11 Jun 2012 18:22:02 +0000 (14:22 -0400)]
Add e_collection_backend_get_cache_dir().
Returns the UID-based cache directory for an ECollectionBackend.
This will tie into EServerSideSource's "write-directory" property.
Matthew Barnes [Mon, 11 Jun 2012 17:26:52 +0000 (13:26 -0400)]
EServerSideSource: Add a "write-directory" property.
Defines the directory where data source changes are to be written,
which may not be the same directory as it was originally read from.
Defaults to the value returned by e_server_side_source_get_user_dir().
This allows an ECollectionBackend to override the default directory to
keep key files for backend-created data sources separate from key files
for user-created data sources.
Milan Crha [Tue, 12 Jun 2012 09:27:56 +0000 (11:27 +0200)]
Bug #668247 - Broken non-basic-latin folder name handling
Piotr Drąg [Mon, 11 Jun 2012 22:40:26 +0000 (00:40 +0200)]
Updated POTFILES.in
Matthew Barnes [Mon, 11 Jun 2012 14:01:07 +0000 (10:01 -0400)]
source-viewer: Add renderers for writable and removable.
Matthew Barnes [Mon, 11 Jun 2012 13:40:20 +0000 (09:40 -0400)]
source-viewer: Refactor the cell renderers.
Matthew Barnes [Mon, 11 Jun 2012 13:27:15 +0000 (09:27 -0400)]
source-viewer: Enable internationalization.
Milan Crha [Mon, 11 Jun 2012 06:44:48 +0000 (08:44 +0200)]
Fix typo in the code
Matthew Barnes [Sun, 10 Jun 2012 10:47:20 +0000 (06:47 -0400)]
Add 'evolution-source-viewer' test tool.
Displays the complete data source hierarchy as a tree view.
Individual data sources can be inspected in a read-only text view.
More enhancements to come, like the ability to delete data sources and
submit data source content changes.
Matthew Barnes [Sat, 9 Jun 2012 14:48:34 +0000 (10:48 -0400)]
imap[x]: Remove shell command option from user interfaces.
Do not expose the IMAP shell command option in user interfaces. I know
of only one user of this feature, and it's far too esoteric and eats up
too much screen real estate for Evolution's account editor.
The option is still supported, but the shell command needs to be set
directly in the account's key file now. Key files are easier to read
and edit than the old GConf XML blobs so I think this is a reasonable
requirement.
Same goes for "Number of cached connections to use" in IMAPX: most users
won't know what that means, so change it in the key file if you need to.
Matthew Barnes [Fri, 8 Jun 2012 21:25:32 +0000 (17:25 -0400)]
libebook: Include "libebook.h" when introspecting.
Matthew Barnes [Fri, 8 Jun 2012 18:04:34 +0000 (14:04 -0400)]
ESourceRegistry: Add (element-type ESource) annotations.
Matthew Barnes [Fri, 8 Jun 2012 15:47:53 +0000 (11:47 -0400)]
ldap: Avoid a race during finalize.
Remove the poll timeout before unbinding the LDAP to avoid a race.
Matthew Barnes [Fri, 8 Jun 2012 14:59:59 +0000 (10:59 -0400)]
Tweak mail account enabled states during migration.
Matthew Barnes [Fri, 8 Jun 2012 14:36:37 +0000 (10:36 -0400)]
Fix include paths for generated D-Bus headers.
Matthew Barnes [Fri, 8 Jun 2012 14:11:58 +0000 (10:11 -0400)]
private/Makefile.am: Specify path to interface files.
Matthew Barnes [Fri, 8 Jun 2012 12:22:15 +0000 (08:22 -0400)]
Bug 677687 - Broken migration of "namespace" IMAP setting
Milan Crha [Fri, 8 Jun 2012 12:37:38 +0000 (14:37 +0200)]
Bug #677642 - Critical warnings on vFolder change
Milan Crha [Fri, 8 Jun 2012 11:08:22 +0000 (13:08 +0200)]
Bug #676541 - Unreliable IMAP provider
Matthew Barnes [Fri, 8 Jun 2012 01:04:20 +0000 (21:04 -0400)]
Bug 677664 - Camel: Remove "SMTP Authentication" status message
Too jargony. Just leave it on "Sending message (xx%)".
Matthew Barnes [Thu, 7 Jun 2012 22:35:29 +0000 (18:35 -0400)]
Omit warning flags for generated GDBus code.
Matthew Barnes [Thu, 7 Jun 2012 22:08:33 +0000 (18:08 -0400)]
Silence warnings when building with GOA < 3.5.
Milan Crha [Thu, 7 Jun 2012 12:08:52 +0000 (14:08 +0200)]
Bug #677610 - Avoid modification of CPPFLAGS in Makefile.am