Matthew Barnes [Thu, 2 Aug 2012 17:51:41 +0000 (13:51 -0400)]
EServerSideSource: Support creating/deleting remote resources.
Add "remote-creatable" and "remote-deletable" properties which work the
same as the "removable" and "writable" properties in terms of exporting
and unexporting D-Bus interfaces.
Add handlers for Create() and Delete() D-Bus method invocations, which
call e_source_remote_create() and e_source_remote_delete() respectively.
Override the remote_create_sync() and remote_delete_sync() methods to
ferry the request to an associated ECollectionBackend (or set an error
if there is no associated ECollectionBackend).
Matthew Barnes [Wed, 25 Jul 2012 16:55:49 +0000 (12:55 -0400)]
ESource: Add functions to create/delete remote resources.
Matthew Barnes [Fri, 20 Jul 2012 17:24:31 +0000 (13:24 -0400)]
ECollectionBackend: Add virual methods to create/delete resources.
Matthew Barnes [Thu, 19 Jul 2012 12:20:05 +0000 (08:20 -0400)]
Add D-Bus interfaces for remote resource management.
Defines two new D-Bus interfaces for data source object paths:
org.gnome.evolution.dataserver.Source.RemoteCreatable
Create() - creates a remote resource
org.gnome.evolution.dataserver.Source.RemoteDeletable
Delete() - deletes a remote resource
These methods will be invoked through ESource objects on the client
side. On the server side, the corresponding EServerSideSource will
receive the method invocation, but forward to an ECollectionBackend
to perform the actual operation.
Matthew Barnes [Mon, 23 Jul 2012 03:27:36 +0000 (23:27 -0400)]
Add e_source_registry_server_ref_backend().
Returns the ECollectionBackend for a given ESource, if one exists.
This works for any collection member: the "collection" ESource itself
as well as any of its hierarchical descendants.
Matthew Barnes [Thu, 2 Aug 2012 18:58:49 +0000 (14:58 -0400)]
Remove collection_backend_children_contains().
Decided I don't need this for the moment, so removing it to silence an
"unused-function" compiler warning.
Nilamdyuti Goswami [Fri, 3 Aug 2012 08:58:47 +0000 (14:28 +0530)]
Assamese translation updated
Sweta Kothari [Fri, 3 Aug 2012 06:31:37 +0000 (12:01 +0530)]
Updated gujarati file
Matthew Barnes [Fri, 3 Aug 2012 02:28:19 +0000 (22:28 -0400)]
Remove docs/reference/.gitignore from source control.
Matthew Barnes [Fri, 3 Aug 2012 02:27:47 +0000 (22:27 -0400)]
configure.ac: Remove redundant check for gio-unix-2.0.
Patrick Ohly [Mon, 23 Jul 2012 11:19:24 +0000 (11:19 +0000)]
libecal: fix memory leak after failed object creation
Apparently e_gdbus_cal_call_create_objects_sync() returns a muids
array even in case of failures. Free it when returning the error.
Found in SyncEvolution unit tests with valgrind.
Milan Crha [Thu, 2 Aug 2012 09:22:48 +0000 (11:22 +0200)]
Conditionally enable bug-buddy/gtk+ also for evolution-source-registry
Milan Crha [Thu, 2 Aug 2012 09:07:08 +0000 (11:07 +0200)]
Debug-print also error message on ERROR authentication
Dan Vrátil [Wed, 1 Aug 2012 19:25:33 +0000 (21:25 +0200)]
Fix a memory leak in e-cal-system-timezone.c
Piotr Drąg [Wed, 1 Aug 2012 13:47:34 +0000 (15:47 +0200)]
Updated POTFILES.in
Matthew Barnes [Tue, 31 Jul 2012 22:07:02 +0000 (18:07 -0400)]
Use e_backend_authenticate_sync() in backends.
Matthew Barnes [Tue, 31 Jul 2012 21:58:18 +0000 (17:58 -0400)]
ECollectionBackend: Implement authenticate_sync() method.
Matthew Barnes [Tue, 31 Jul 2012 21:49:13 +0000 (17:49 -0400)]
ECalBackend: Implement authenticate_sync() method.
Matthew Barnes [Tue, 31 Jul 2012 21:45:35 +0000 (17:45 -0400)]
EBookBackend: Implement authenticate_sync() method.
Matthew Barnes [Tue, 31 Jul 2012 21:32:10 +0000 (17:32 -0400)]
EBackend: Add authenticate() sync+async methods.
These are convenience functions providing a consistent interface for
backends running in either the registry service itself or a client
process communicating with the registry service over D-Bus.
Dynamically loaded backend classes need not implement these methods.
They will inherit a suitable method implementation from ECalBackend,
EBookBackend or ECollectionBackend.
Christian Hilberg [Mon, 30 Jul 2012 14:16:13 +0000 (16:16 +0200)]
CamelIMAPXServer: untagged handler descriptor needs untagged response code
* CamelIMAPXUntaggedRespHandlerDesc needs a member
for the IMAP untagged response code
* this does also simplify much the code which generates
the initial lookup tables for the untagged response
handlers
Christian Hilberg [Fri, 20 Jul 2012 16:12:33 +0000 (18:12 +0200)]
CamelIMAPXServer: fixed API function for running custom commands
* imapx_command_run() deadlocks every now and then
when running custom CamelIMAPXCommands
* imapx_command_run_sync() does not, so we're using
this one although it is definitely not the best
possible solution
* imapx_command_run_sync() expects a CamelIMAPXJob
to be set on the CamelIMAPXCommand, so we're
setting a local one if the command does not have
a job set
Fran Diéguez [Mon, 30 Jul 2012 00:40:39 +0000 (02:40 +0200)]
Updated Galician translations
Matthew Barnes [Sun, 29 Jul 2012 12:54:20 +0000 (08:54 -0400)]
Remove flex/bison dependencies.
configure says "You need bison to build evolution-data-server"
No, actually, you don't. In fact I have no idea why these were ever
needed. "git blame" shows the requirements were present even in the
initial evolution-data-server commit in 2003, and yet even back then
I can't find evidence that flex or bison were actually used.
Matthew Barnes [Sat, 28 Jul 2012 16:04:27 +0000 (12:04 -0400)]
Replace e_source_registry_server_queue_auth_session().
I realized ECollectionBackends are going to need a proper asynchronous
authentication function so they know when authentication is achieved.
e_source_registry_server_queue_auth_session() is a "fire-and-forget"
function with no way for the caller to know if and when authentication
is achieved.
The replacement function, e_source_registry_server_authenticate_sync(),
is a variation of e_source_registry_authenticate_sync() for use in the
registry service itself. It takes an EAuthenticationSession instead of
an ESource.
Since this API has not yet seen a stable release, I'm going to forego
deprecating the old function and just remove it. This is an API break,
and the libebackend soname has been bumped accordingly.
Matthew Barnes [Fri, 27 Jul 2012 22:23:56 +0000 (18:23 -0400)]
Bug 678893 - Allow concurrent authentication sessions
I wrote the original queuing algorithm for authentication requests to
serialize requests to ensure password prompts never pile up. But that
means requests for which a cached password exists may wait longer than
necessary, especially if an authentication session already in progress
is taking a long time to complete.
This was before I started using GcrSystemPrompt, which also serializes
requests to ensure password prompts never pile up. That frees us up to
process authentication requests for different data sources concurrently.
This commit simplifies the queuing algorithm significantly and also
makes it thread-safe so authentication requests can be submitted from
any thread. This is going to be important for ECollectionBackends.
Matthew Barnes [Mon, 23 Jul 2012 21:23:14 +0000 (17:23 -0400)]
ECollectionBackend: Convert the children queue to a hash table.
The hash table is used as a set (key == value). Also write simple
wrapper functions so all access to the hash table is thread-safe.
Milan Crha [Fri, 27 Jul 2012 10:36:42 +0000 (12:36 +0200)]
Bug #680687 - System timezone name differs from set in Gnome
Milan Crha [Thu, 26 Jul 2012 16:42:30 +0000 (18:42 +0200)]
Move e_pointer_tracker to camel
Thus it can be used in camel (and elsewhere) again.
Milan Crha [Thu, 26 Jul 2012 15:19:18 +0000 (17:19 +0200)]
Add only used message UIDs to virtual Trash/Junk data_cache
On removal from virtual Trash/Junk folder was also tried to remove
message UIDs from Unmatched folder, but because these virtual
Trash/Junk folders don't influence Unmatched folder, then it's
a no-op, except of a side-effect of adding all UIDs from the respective
folder into virtual Trash/Junk folder data_cache, which made only
exhausting memory usage for the application with no gain.
Milan Crha [Wed, 25 Jul 2012 17:47:35 +0000 (19:47 +0200)]
Bug #680013 - Deadlock in CalDAV calendar
Matthew Barnes [Wed, 25 Jul 2012 17:44:10 +0000 (13:44 -0400)]
Typos: "occurred" has two R's.
Milan Crha [Wed, 25 Jul 2012 11:14:28 +0000 (13:14 +0200)]
Bug #674696 - Crash from finish_operation, get_groups_cb in Google backend
Мирослав Николић [Tue, 24 Jul 2012 21:11:03 +0000 (23:11 +0200)]
Updated Serbian translation
Tom Tryfonidis [Tue, 24 Jul 2012 15:16:59 +0000 (18:16 +0300)]
Updated Greek translation
Milan Crha [Tue, 24 Jul 2012 14:42:06 +0000 (16:42 +0200)]
Make sure IMAP is connected before doing online operations
This is a replacement of store's connect lock.
Milan Crha [Tue, 24 Jul 2012 07:06:53 +0000 (09:06 +0200)]
Bug #680502 - Deadlock in contacts backend
Matthew Barnes [Mon, 23 Jul 2012 11:30:22 +0000 (07:30 -0400)]
EServerSideSource: Forgot to remove the AsyncClosure struct.
Matthew Barnes [Mon, 23 Jul 2012 11:24:11 +0000 (07:24 -0400)]
EServerSideSource: Remove clone of EAsyncClosure.
Can't remember why I copied EAsyncClosure there. Maybe it was before I
moved EAsyncClosure from Evolution to Evolution-Data-Server?
Kjartan Maraas [Mon, 23 Jul 2012 09:35:41 +0000 (11:35 +0200)]
Updated Norwegian bokmål translation
Matthew Barnes [Sun, 22 Jul 2012 14:47:29 +0000 (10:47 -0400)]
Synchronize with Evolution's git.mk.
It knows how to handle GSettings schemas.
Philip Withnall [Sun, 22 Jul 2012 11:49:50 +0000 (12:49 +0100)]
google: Fix removal of custom vCard attributes in Google address books
If a client had previously added a custom vCard attribute to a vCard in a
Google address book, subsequent removal of that attribute wouldn’t work,
since the backend wasn’t removing extended properties from the GData entries
when updating them.
Daniel Mustieles [Sat, 21 Jul 2012 16:42:19 +0000 (18:42 +0200)]
Updated Spanish translation
Matthew Barnes [Sat, 21 Jul 2012 16:10:26 +0000 (12:10 -0400)]
source_registry_server_create_sources_cb(): Fix error handling.
Matthew Barnes [Fri, 20 Jul 2012 23:01:19 +0000 (19:01 -0400)]
Cosmetic touchup to D-Bus interface definition.
Milan Crha [Fri, 20 Jul 2012 16:04:31 +0000 (18:04 +0200)]
Bug #680211 - Memory usage increases on each folder select
Milan Crha [Fri, 20 Jul 2012 06:10:12 +0000 (08:10 +0200)]
Prefer camel_folder_summary_peek_loaded() when removing CamelMessageInfo
Milan Crha [Thu, 19 Jul 2012 20:30:37 +0000 (22:30 +0200)]
Make sure loaded info is also freed before using camel_folder_summary_remove_uid()
The problem is that camel_folder_summary_remove_uid() doesn't free loaded
CamelMessageInfo, if there is any, it does only camel_folder_summary_remove(),
thus this might be done on each place, unfortunately.
Milan Crha [Thu, 19 Jul 2012 20:09:46 +0000 (22:09 +0200)]
Bug #677530 - Memory leaks in imapx code
Christian Hilberg [Thu, 19 Jul 2012 18:47:23 +0000 (20:47 +0200)]
camel-imapx-utils: fixed capability registration function
Andika Triwidada [Thu, 19 Jul 2012 11:46:21 +0000 (18:46 +0700)]
Updated Indonesian translation
Milan Crha [Wed, 18 Jul 2012 16:45:18 +0000 (18:45 +0200)]
Bug #679017 - Broken spool mbox file accounts
Chao-Hsiung Liao [Wed, 18 Jul 2012 11:30:37 +0000 (19:30 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Matthew Barnes [Tue, 17 Jul 2012 17:33:54 +0000 (13:33 -0400)]
Bug 680106 - Missing status message in camel_folder_refresh_info_sync()
Matthew Barnes [Tue, 17 Jul 2012 14:35:25 +0000 (10:35 -0400)]
Use template files to generate GEnumClass types.
Milan Crha [Tue, 17 Jul 2012 12:34:50 +0000 (14:34 +0200)]
Bug #551788 - Hangs when network changes
Daniel Mustieles [Mon, 16 Jul 2012 14:40:55 +0000 (16:40 +0200)]
Updated Spanish translation
Matthew Barnes [Sun, 15 Jul 2012 22:59:55 +0000 (18:59 -0400)]
Post-release version bump.
Matthew Barnes [Sun, 15 Jul 2012 22:42:02 +0000 (18:42 -0400)]
NEWS update for 3.5.4 release.
Matthew Barnes [Sun, 15 Jul 2012 19:17:03 +0000 (15:17 -0400)]
source_registry_ref_any_mail_identity(): Fix a typo.
Matthew Barnes [Sun, 15 Jul 2012 14:02:34 +0000 (10:02 -0400)]
online-accounts: Mail sources need to be writable.
Unfortunately there is not a clean separation between GOA-dictated
settings and user preferences in mail account ESource triplets, so they
all need to be writable and it's up to the client application to defend
the settings which must not be changed.
Matthew Barnes [Sun, 15 Jul 2012 14:01:18 +0000 (10:01 -0400)]
ECollectionBackend: Minor cleanup.
Ihar Hrachyshka [Sun, 15 Jul 2012 08:07:16 +0000 (11:07 +0300)]
Updated Belarusian translation.
Matthew Barnes [Sat, 14 Jul 2012 12:37:14 +0000 (08:37 -0400)]
Bug 559391 - Wrong number of unread mails in folder tree
This reverts part of the original fix for this bug which stopped reading
from the summary database and caused all kinds crazy message counts to
appear in Evolution's folder tree (often negative counts, or negative
counts cast to an unsigned integer).
Message counts are back to normal now.
Reverts part of commit
42489b26c45956c66186a5dc96083437cf7a579a.
Milan Crha [Fri, 13 Jul 2012 13:12:38 +0000 (15:12 +0200)]
Bug #578240 - Impossible to cancel search in search folders
Nilamdyuti Goswami [Fri, 13 Jul 2012 12:15:41 +0000 (17:45 +0530)]
Assamese translation updated
Chao-Hsiung Liao [Thu, 12 Jul 2012 01:04:21 +0000 (09:04 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Milan Crha [Wed, 11 Jul 2012 10:29:49 +0000 (12:29 +0200)]
Preset timeout on SoupSession-s to 90 seconds
Milan Crha [Mon, 9 Jul 2012 14:50:03 +0000 (16:50 +0200)]
The default namespace is an empty string in IMAP settings
Piotr Drąg [Mon, 9 Jul 2012 14:11:50 +0000 (16:11 +0200)]
Updated POTFILES.in
Fran Diéguez [Mon, 9 Jul 2012 12:58:18 +0000 (14:58 +0200)]
Updated Galician translations
Milan Crha [Mon, 9 Jul 2012 09:57:02 +0000 (11:57 +0200)]
Bug #677886 - Runtime warning from ESourceAlarms
Matthew Barnes [Sun, 8 Jul 2012 19:56:22 +0000 (15:56 -0400)]
Camel: Use folder display name is status messages when possible.
And also put the folder name in quotes.
Matthew Barnes [Sun, 8 Jul 2012 19:41:22 +0000 (15:41 -0400)]
camel_folder_expunge_sync(): Push a status message.
Matthew Barnes [Sun, 8 Jul 2012 16:16:54 +0000 (12:16 -0400)]
CamelSubscribable: Connect before [un]subscribing.
Matthew Barnes [Sun, 8 Jul 2012 16:08:09 +0000 (12:08 -0400)]
CamelSubscribable: Push status messages for blocking operations.
Matthew Barnes [Sat, 7 Jul 2012 13:32:30 +0000 (09:32 -0400)]
Bug 678602 - Inform server of client-side auth cancellations.
Matthew Barnes [Sat, 7 Jul 2012 12:00:31 +0000 (08:00 -0400)]
server_side_source_remove(): Disregard G_IO_ERROR_NOT_FOUND.
Matthew Barnes [Sat, 7 Jul 2012 01:46:18 +0000 (21:46 -0400)]
CamelStoreClass: Rename compare_folder_name to equal_folder_name.
CamelStoreClass has the following method:
GCompareFunc compare_folder_name;
Both the method name and call signature imply this is a strcmp()-style
function where a zero return value means the values are equal. But in
fact this method is used as an equality test where a zero return value
means the values are NOT equal.
Rename the method and change its call signature like so:
GEqualFunc equal_folder_name;
This is an API break but clearly a necessary one.
Matthew Barnes [Fri, 6 Jul 2012 20:45:22 +0000 (16:45 -0400)]
evolution-source-viewer.c: Fix a frequent runtime warning.
Kjartan Maraas [Fri, 6 Jul 2012 17:08:44 +0000 (19:08 +0200)]
Updated Norwegian bokmål translation
Matthew Barnes [Fri, 6 Jul 2012 04:21:31 +0000 (00:21 -0400)]
Remove source_extension_constructed().
Was written before GObject implemented its own constructed() method.
Matthew Barnes [Fri, 6 Jul 2012 04:20:39 +0000 (00:20 -0400)]
CamelImapSettings: Change namespace default to empty string.
Matthew Barnes [Fri, 6 Jul 2012 04:13:31 +0000 (00:13 -0400)]
Revert "Bug #678901 - Fake ESource::changed notifications"
This reverts commit
c982babcd69d1059ecbe01d2de9bade4073d9859.
Breaks "changed" notifications in EServerSideSource and causes
Bug 678842 - Enable GMail GOA Calendar doesn't add it to UI
Matthew Barnes [Thu, 5 Jul 2012 12:55:34 +0000 (08:55 -0400)]
evolution-source-viewer: Fix icon column alignment.
Matthew Barnes [Thu, 5 Jul 2012 12:43:52 +0000 (08:43 -0400)]
evolution-source-viewer: Change "UID" label to "Identity".
So it's consistent with the tree view column.
Matthew Barnes [Thu, 5 Jul 2012 11:43:42 +0000 (07:43 -0400)]
evolution-source-viewer: Add delete capability.
Easy way to get rid of botched or unwanted test accounts.
Matthew Barnes [Wed, 4 Jul 2012 20:38:34 +0000 (16:38 -0400)]
Bug 678903 - GConf migration omits so-called "send-only" accounts
Matthew Barnes [Wed, 4 Jul 2012 16:25:32 +0000 (12:25 -0400)]
Disregard G_FILE_ERROR_NOENT during GConf migration.
Not finding GConf XML files is a good thing!
Milan Crha [Wed, 4 Jul 2012 09:51:20 +0000 (11:51 +0200)]
Bug #559391 - Wrong number of unread mails in folder tree
Alexander Shopov [Fri, 29 Jun 2012 05:17:24 +0000 (08:17 +0300)]
Updated Bulgarian translation
Debarshi Ray [Tue, 3 Jul 2012 11:39:43 +0000 (13:39 +0200)]
Fix make distcheck
Milan Crha [Tue, 3 Jul 2012 09:17:51 +0000 (11:17 +0200)]
Bug #678901 - Fake ESource::changed notifications
Dimitris Spingos [Mon, 2 Jul 2012 04:34:08 +0000 (07:34 +0300)]
Updated Greek translation
Matthew Barnes [Sun, 1 Jul 2012 12:50:10 +0000 (08:50 -0400)]
Remove redundancy from CRITICAL message.
Matthew Barnes [Sun, 1 Jul 2012 11:50:59 +0000 (07:50 -0400)]
camel_provider_list(): Emit CRITICAL if camel_provider_load() fails.
Otherwise CamelProvider modules may be silently dropped without so much
as a console message.
Nguyễn Thái Ngọc Duy [Sat, 30 Jun 2012 03:10:34 +0000 (10:10 +0700)]
Updated Vietnamese translation
Nguyễn Thái Ngọc Duy [Sat, 30 Jun 2012 02:57:18 +0000 (09:57 +0700)]
po/vi: import from Damned Lies
Matthew Barnes [Thu, 28 Jun 2012 15:08:18 +0000 (11:08 -0400)]
libedata-cal.pc.in: Add a 'libexecdir' variable.
Matthew Barnes [Thu, 28 Jun 2012 15:07:29 +0000 (11:07 -0400)]
libedata-book.pc.in: Add a 'libexecdir' variable.