Matthew Barnes [Wed, 6 Jul 2011 18:58:51 +0000 (14:58 -0400)]
CamelDataWrapper: Keep contents in a GByteArray.
Keep CamelDataWrapper contents in an internal GByteArray rather than a
CamelStream. The CamelStream was causing problems because it now needs
to be seekable, but in some cases we were getting a CamelStreamFilter
which is _not_ seekable.
Also add camel_data_wrapper_get_byte_array() for when you need direct
access to the contents. This is sometimes more convenient than copying
it into a memory stream, but carries a thread-safety risk if you're not
careful. Only CamelDataWrapper subclasses should really be using it.
This is another API and ABI break since CamelDataWrapper's CamelStream
pointer was a public struct member.
Matthew Barnes [Wed, 6 Jul 2011 11:39:43 +0000 (07:39 -0400)]
Remove camel_stream_printf().
GIO streams have no equivalent method, so removing this function forces
our code to look a bit more like it will when we move to GIO streams.
Also, camel_stream_printf() lacks GCancellable and GError arguments,
which inevitably leads to poor error handling in the providers.
libcamel soname has already been bumped for 3.1.4.
Matthew Barnes [Tue, 5 Jul 2011 20:43:59 +0000 (16:43 -0400)]
Avoid camel_stream_printf().
camel_stream_printf() is next on the chopping block.
Use g_strdup_printf() or a GString to construct a formatted string in
memory, pass to to camel_stream_write() in one go, and then check for
errors (unless it's a memory stream).
Chenthill Palanisamy [Wed, 6 Jul 2011 09:57:01 +0000 (15:27 +0530)]
post release version bump
Chenthill Palanisamy [Wed, 6 Jul 2011 09:44:03 +0000 (15:14 +0530)]
News update for 3.1.3.1 release
Daniel Mustieles [Wed, 6 Jul 2011 07:41:44 +0000 (09:41 +0200)]
Updated Spanish translation
Wylmer Wang [Wed, 6 Jul 2011 07:21:39 +0000 (07:21 +0000)]
Update Simplified Chinese translation.
Akhil Laddha [Wed, 6 Jul 2011 04:47:04 +0000 (10:17 +0530)]
Bug#654054 Fix eds build failure
Matthew Barnes [Tue, 5 Jul 2011 15:41:22 +0000 (11:41 -0400)]
camel_stream_vprintf() doesn't exist.
Remove its declaration from camel-stream.h.
Matthew Barnes [Tue, 5 Jul 2011 14:50:11 +0000 (10:50 -0400)]
Remove camel_stream_reset().
All use cases accounted for; they're all seekable streams, so use
g_seekable_seek() instead if you need to reset the cursor position.
Obviously an API break. The libcamel soname has already been bumped for
3.1.4 so we'll leave it be.
Matthew Barnes [Tue, 5 Jul 2011 13:20:47 +0000 (09:20 -0400)]
Prefer g_seekable_seek() over camel_stream_reset().
When a stream is obviously a file or memory stream (both of which
implement the GSeekable interface), use g_seekable_seek() instead of
camel_stream_reset().
This is helping me discover if it's safe to remove camel_stream_reset().
We want to eventually move to GIO streams, which have no reset method.
Matthew Barnes [Tue, 5 Jul 2011 13:36:13 +0000 (09:36 -0400)]
Camel: Remove some unnecessary type casts.
Matthew Barnes [Tue, 5 Jul 2011 11:07:23 +0000 (07:07 -0400)]
CamelImapWrapper: Use GError instead of errno.
Matthew Barnes [Tue, 5 Jul 2011 11:00:48 +0000 (07:00 -0400)]
camel_stream_process_connect(): Add GError parameter.
Fran Dieguez [Tue, 5 Jul 2011 09:29:17 +0000 (11:29 +0200)]
Updated Galician translations
Matthew Barnes [Tue, 5 Jul 2011 04:06:46 +0000 (00:06 -0400)]
camel_tcp_stream_ssl_enable_ssl(): Add GError parameter.
Matthew Barnes [Tue, 5 Jul 2011 03:44:58 +0000 (23:44 -0400)]
SMTP: Use GError instead of errno.
Matthew Barnes [Tue, 5 Jul 2011 03:30:56 +0000 (23:30 -0400)]
NNTP: Remove unnecessary <errno.h> includes.
Matthew Barnes [Tue, 5 Jul 2011 02:08:04 +0000 (22:08 -0400)]
POP3: Use GError instead of errno.
Mario Blättermann [Mon, 4 Jul 2011 19:50:28 +0000 (21:50 +0200)]
[l10n] Updated German translation
Mario Blättermann [Mon, 4 Jul 2011 19:48:37 +0000 (21:48 +0200)]
[l10n] Updated German translation
Matthew Barnes [Mon, 4 Jul 2011 14:53:37 +0000 (10:53 -0400)]
Camel: Fix Gtk-Doc notation in comment blocks.
Matthew Barnes [Mon, 4 Jul 2011 13:21:02 +0000 (09:21 -0400)]
Authorization domains are no longer used in password storage.
They are a relic of keyfile-based password storage, where the auth
domain was merely the keyfile group name. Keyring-based password
storage, which we now use exclusively, has no such concept.
Rename all "component_name" parameters in e-passwords.c to "unused" and
remove their argument guards from functions.
Remove all AUTH_DOMAIN definitions from ECredentials. Better to nip
that in the bud before we're stuck with those symbols. DO NOT bump the
libedataserver soname, however, since that would be highly disruptive to
distros and nothing uses ECredentials yet.
Remove the "domain" parameter from CamelSession password methods. Also
remove any mention of "auth_domain" URL parameters. This is a genuine
API break requiring a libcamel soname bump, but no one cares.
Chenthill Palanisamy [Mon, 4 Jul 2011 09:28:46 +0000 (14:58 +0530)]
post release version bump
Chenthill Palanisamy [Mon, 4 Jul 2011 08:46:23 +0000 (14:16 +0530)]
News update for 3.1.3 release
Fran Dieguez [Sun, 3 Jul 2011 16:04:10 +0000 (18:04 +0200)]
Updated Galician translations
Matthew Barnes [Tue, 28 Jun 2011 19:28:38 +0000 (15:28 -0400)]
libedata-cal cleanups.
Matthew Barnes [Sun, 3 Jul 2011 12:48:13 +0000 (08:48 -0400)]
Fix build break (my bad).
Matthew Barnes [Sat, 2 Jul 2011 18:52:01 +0000 (14:52 -0400)]
Update API documentation.
Matthew Barnes [Sat, 2 Jul 2011 15:46:04 +0000 (11:46 -0400)]
Coding style and whitespace cleanups.
Milan Crha [Fri, 1 Jul 2011 18:00:57 +0000 (20:00 +0200)]
Bug #650671 - Service connect/disconnect not cancelled properly
Matthew Barnes [Fri, 1 Jul 2011 14:56:59 +0000 (10:56 -0400)]
Require libgdata >= 0.9.1 for GNOME Online Accounts support.
Appearently there were more API changes since libgdata 0.9.0.
Milan Crha [Fri, 1 Jul 2011 12:44:48 +0000 (14:44 +0200)]
Bug #653476 - icaltimezone not copied completely with libical 0.43
This is based on Chen's findings and initial patch for the issue.
Once eds will depend on libical 0.46 this can be removed.
Daniel Nylander [Fri, 1 Jul 2011 07:54:55 +0000 (09:54 +0200)]
Updated Swedish translation
Raul Gutierrez Segales [Thu, 30 Jun 2011 15:09:34 +0000 (17:09 +0200)]
Bug #650126 - Add API to set the scroll policy of the Contacts container
Milan Crha [Thu, 30 Jun 2011 11:28:17 +0000 (13:28 +0200)]
Bug #653385 - ldaps fails with server using self-signed certificate
Travis Reitter [Wed, 29 Jun 2011 23:33:10 +0000 (16:33 -0700)]
Bump the required version of Vala for the bindings.
Closes: bgo#651722 - EDS vala bindings require newer version of Vala
Milan Crha [Wed, 29 Jun 2011 21:02:49 +0000 (23:02 +0200)]
e_cal_client_get_object() should not return VCALENDAR components
The e_cal_get_object() returns either detached instance, the master
object or the first object from the VCALENDAR component, thus make
ECalClient do this too.
This was discovered while fixing regression crash from bug #579779.
Hannie Dumoleyn [Wed, 29 Jun 2011 17:27:53 +0000 (19:27 +0200)]
Updated Dutch translation by Hannie Dumoleyn
Milan Crha [Wed, 29 Jun 2011 06:46:57 +0000 (08:46 +0200)]
Minor compiler warning fix (change #if to #ifdef)
Dan Vrátil [Wed, 29 Jun 2011 06:34:18 +0000 (08:34 +0200)]
Bug #224687 - Skip ignored destinations in destination_get_address()
Milan Crha [Wed, 29 Jun 2011 05:38:35 +0000 (07:38 +0200)]
Fix LDAP authentication and process authentication requests on idle
Matthew Barnes [Sun, 26 Jun 2011 11:54:44 +0000 (07:54 -0400)]
Add OAuth support to Google Contacts backend.
For ESources tagged with a "goa-account-id" property set by Evolution,
authenticate using OAuth 1.0 via libgoa-1.0 and libgdata 0.9.
Matthew Barnes [Mon, 27 Jun 2011 13:24:33 +0000 (09:24 -0400)]
libedata-book cleanups.
Milan Crha [Tue, 28 Jun 2011 09:46:39 +0000 (11:46 +0200)]
Minor compiler warning fix (change #if to #ifdef)
Dan Vrátil [Tue, 28 Jun 2011 09:39:54 +0000 (11:39 +0200)]
Bug #224687 - Create lists of lists
Raul Gutierrez Segales [Tue, 28 Jun 2011 07:05:47 +0000 (08:05 +0100)]
Vala bindings: we depend on gio-2.0
Milan Crha [Mon, 27 Jun 2011 09:29:36 +0000 (11:29 +0200)]
Allow asynchronous retrieval of EClient capabilities for easier caching
Matthew Barnes [Sun, 26 Jun 2011 11:50:50 +0000 (07:50 -0400)]
Fix build breaks when using libgdata 0.9.
Matthew Barnes [Sat, 25 Jun 2011 17:37:56 +0000 (13:37 -0400)]
Remove pointless ENABLE_THREADS define.
Of course we enable thread support. We love threads! And lots of
complex mutex locking! It's great job security. </sarcasm>
Raul Gutierrez Segales [Sat, 25 Jun 2011 12:03:13 +0000 (13:03 +0100)]
Introspection: fix annotation in e_vcard_add_attribute
Raul Gutierrez Segales [Sat, 25 Jun 2011 11:40:59 +0000 (12:40 +0100)]
Introspection: fix annotation in e_vcard_get_attribute
Matthew Barnes [Fri, 24 Jun 2011 22:51:22 +0000 (18:51 -0400)]
SMTP: Handle 235 code after initial AUTH command.
The server may accept the initial response in our AUTH command and
return a 235 (success) code without a 334 (continue) code, such as
for example with XOAUTH. Handle this correctly.
Matthew Barnes [Fri, 24 Jun 2011 15:29:04 +0000 (11:29 -0400)]
Make Camel's SASL framework more extensible.
Gather SASL mechanism names by traversing subclasses of CamelSasl
instead of hard-coding all known mechanism names. This allows
mechanisms to be added from outside of libcamel.
This adds a CamelServiceAuthType pointer to CamelSaslClass, which
changes the ABI. Statically registered subclasses can just point to a
static CamelServiceAuthType struct. Dynamically registered subclasses
should allocate a CamelServiceAuthType struct in their base_init class
method and free it in their base_finalize class method.
Adapt CamelSasl subclasses to the new approach.
Matthew Barnes [Fri, 24 Jun 2011 14:42:02 +0000 (10:42 -0400)]
CamelSasl: Coding style cleanups.
Colin Walters [Thu, 23 Jun 2011 19:17:14 +0000 (15:17 -0400)]
Fix a few srcdir != builddir issues
jhbuild will be defaulting to this soon.
Milan Crha [Thu, 23 Jun 2011 16:27:37 +0000 (18:27 +0200)]
Keep opening EClient-s till they report busy error
Milan Crha [Thu, 23 Jun 2011 16:26:53 +0000 (18:26 +0200)]
Make loading of ENameSelector on demand and cancellable
Milan Crha [Thu, 23 Jun 2011 06:44:13 +0000 (08:44 +0200)]
Reverting one line I added to Christophe's commit on my own
I added this change to Christophe's commit myself, and I didn't
notice that it is unnecessary change, thus I'm reverting it back.
Christophe notified me about my fault in bug #652173.
Christophe Dumez [Wed, 22 Jun 2011 14:18:21 +0000 (16:18 +0200)]
Bug #652173 - libebook: Delay client-side vCard parsing
Fran Diéguez [Tue, 21 Jun 2011 11:53:49 +0000 (13:53 +0200)]
Updated Galician translations
Milan Crha [Tue, 21 Jun 2011 10:27:40 +0000 (12:27 +0200)]
Bug #648468 - POP3 doesn't recover or claim error after lost connection
Milan Crha [Mon, 20 Jun 2011 11:56:46 +0000 (13:56 +0200)]
Bug #269413 - Search treats "4 weeks" and "1 month" as synonymous
Matej Urbančič [Sun, 19 Jun 2011 19:40:10 +0000 (21:40 +0200)]
Updated Slovenian translation
Daniel Mustieles [Sun, 19 Jun 2011 09:52:17 +0000 (11:52 +0200)]
Updated Spanish translation
Milan Crha [Wed, 15 Jun 2011 13:07:23 +0000 (15:07 +0200)]
Bug #565961 - Crash with recurring all-day event
Milan Crha [Wed, 15 Jun 2011 12:37:33 +0000 (14:37 +0200)]
Fix few memory leaks
Raul Gutierrez Segales [Tue, 14 Jun 2011 08:57:40 +0000 (09:57 +0100)]
Emit notification for EClient::opened property
From introspected bindings (i.e.: Vala) we can't
see the opened signal cause it overlaps with the
opened property. So we need to listen to notifications
on the property related to the signal.
Travis Reitter [Tue, 14 Jun 2011 13:58:02 +0000 (14:58 +0100)]
Fix sqlitedb-test build error.
Chenthill Palanisamy [Tue, 14 Jun 2011 12:25:03 +0000 (17:55 +0530)]
EBookBackendSqliteDD: Fix a missing comma in search contacts.
Milan Crha [Tue, 14 Jun 2011 11:22:50 +0000 (13:22 +0200)]
Bug #652530 - EClient - Notify about opening phase result first
Milan Crha [Tue, 14 Jun 2011 07:30:27 +0000 (09:30 +0200)]
Fix recently introduced compiler warnings in CalDAV calendar backend
Philip Withnall [Tue, 14 Jun 2011 07:19:04 +0000 (09:19 +0200)]
Bug #652392 - Port to libgdata 0.9.0
Milan Crha [Tue, 14 Jun 2011 06:51:15 +0000 (08:51 +0200)]
Do not use deprecated EBook/ECal API
Matthew Barnes [Mon, 13 Jun 2011 16:10:26 +0000 (12:10 -0400)]
Post-release version bump.
Matthew Barnes [Mon, 13 Jun 2011 16:08:21 +0000 (12:08 -0400)]
Gtk-Doc updates.
Matthew Barnes [Mon, 13 Jun 2011 16:08:09 +0000 (12:08 -0400)]
NEWS update for 3.1.2 release.
Matthew Barnes [Mon, 13 Jun 2011 14:24:19 +0000 (10:24 -0400)]
Coding style and whitespace cleanups.
Chenthill Palanisamy [Mon, 13 Jun 2011 10:50:44 +0000 (16:20 +0530)]
EBookBackendSqliteDB, e-sqlite3-vfs.[ch]: Add sqlitedb cache for addressbook. It can
be used as summary+cache.
Matthew Barnes [Sat, 11 Jun 2011 18:54:50 +0000 (14:54 -0400)]
CamelImapStore: Remove unused declarations.
Matthew Barnes [Fri, 10 Jun 2011 14:36:24 +0000 (10:36 -0400)]
CamelIMAPXFolder: Fix handling of "filter_junk" option.
Looks like a typo. Just stumbled on this by accident, but I wonder
if it has something to do with certain junk filtering bugs I've seen
reported by IMAPX users.
Alexander Larsson [Fri, 10 Jun 2011 12:41:46 +0000 (14:41 +0200)]
Fixup markup of e_vcard_attribute_add_param (takes ownership of param)
Alexander Larsson [Fri, 10 Jun 2011 10:10:49 +0000 (12:10 +0200)]
Annotate e_vcard_attribute_new (group name may be null)
Alexander Larsson [Fri, 10 Jun 2011 10:10:01 +0000 (12:10 +0200)]
Use the right free function in the boxed type for EVCardAttributeParam
We were using e_vcard_attribute_free, not e_vcard_attribute_param_free
Abduxukur Abdurixit [Fri, 10 Jun 2011 07:54:04 +0000 (09:54 +0200)]
Added UG translation
Kjartan Maraas [Thu, 9 Jun 2011 10:44:33 +0000 (12:44 +0200)]
Updated Norwegian bokmål translation
Chenthill Palanisamy [Tue, 7 Jun 2011 12:50:35 +0000 (18:20 +0530)]
CamelVeeFolder: Check for the presence of unmatched folder before
accessing full_name, error in previous commit.
Chenthill Palanisamy [Tue, 7 Jun 2011 10:51:25 +0000 (16:21 +0530)]
CamelVeeFolder: Adapt changes to unmatched_check_uid that was missed in commit -
6bc75c47f516301364d653140fcf82193d0a2d52 .
Chenthill Palanisamy [Tue, 7 Jun 2011 10:35:51 +0000 (16:05 +0530)]
CamelVeeFolder: Fix a hang in folder_change_change. do not read db in between a transaction
Patrick Ohly [Tue, 17 May 2011 07:45:24 +0000 (09:45 +0200)]
calendar: include rid in "objects-removed" ECalView signal
Since migration to D-Bus for libecal<->EDS communication, the
RECURRENCE-ID (rid) has not been sent in the "objects-removed" signal.
As a result, a backend could not communicate the removal of specific
recurrences.
This patch adds the rid after a newline to the string stored
internally and transferred via D-Bus. Because the newline is only
added when needed, traditional uid-only removals look the same as
before and continue to work with older versions of libecal. A uid+rid
combination will look like an unknown uid to an older libecal which
does not know how to split them. Therefore the D-Bus API is considered
unchanged and the interface number is not increased.
Whether clients really interpret "objects-removed" with empty rid (=
parent removed) or valid rid (= child removed) correctly is outside
the scope of this patch.
Patrick Ohly [Thu, 12 May 2011 12:04:37 +0000 (14:04 +0200)]
calendar file backend: support remove with CALOBJ_MOD_ONLY_THIS
Support for this capability is easy:
- report removal of the detached recurrence
- report error when not found
- avoid modifying the parent (= full_object)
Patrick Ohly [Thu, 12 May 2011 11:30:06 +0000 (13:30 +0200)]
calendar file backend: removal notification for detached recurrence, part 2
e_cal_remove_object_with_mod() can only return one pair of old/new
object pointers to the caller. When the function modifies the parent
and removes a detached recurrence, the removal of the detached
recurrence had to be deduced by clients from the modification of the
parent.
Now clients are explicitly informed about removal of the detached
recurrence in addition to the modification of the parent.
Patrick Ohly [Thu, 12 May 2011 09:05:59 +0000 (11:05 +0200)]
calendar file backend: removal notification for detached recurrence, part 1
If e_cal_remove_object_with_mod() was called for an appointment where
only a detached recurrence existed, no "objects-removed" signal was
triggered although it should have been.
Apparently Evolution avoids the problem by calling
e_cal_remove_component() instead in this case. Fixing the problem
makes writing clients easier (no special cases).
With this patch, remove_instance() itself decides what it reports back
to the caller. Note that it cannot report back both a modification and
a removal at the moment.
Patrick Ohly [Thu, 12 May 2011 07:48:37 +0000 (09:48 +0200)]
calendar file backend: white list check for supported CalObjModType
Explicitly check that the CalObjModType is supported before
starting to work on the appointment. Relies in libecal to reject
completely bogus modes with an "invalid parameter" error.
Patrick Ohly [Thu, 12 May 2011 07:36:59 +0000 (09:36 +0200)]
libecal: catch invalid CalObjModType values
This protects backends without their own parameter checking
from being invoked with invalid CalObjModType values. Note
that this only excludes values that haven't been defined.
Backends still need to check whether they support the
selected mode.
Patrick Ohly [Thu, 12 May 2011 07:29:16 +0000 (09:29 +0200)]
libecal: added CALOBJ_MOD_ONLY_THIS
The goal is to have an orthogonal API where each operation also
has an inverse operation. Adding a detached recurrence was
possible with e_cal_modify_object(), but removing it again
wasn't without modifying the parent appointment.
CALOBJ_MOD_ONLY_THIS in e_cal_remove_object_with_mod() provides
that inverse operation by avoiding the modifications to the
parent.
The semantic in e_cal_modify_object(), the other call taking a
CalObjModType, is unchanged. CALOBJ_MOD_ONLY_THIS is not valid there.
Because not all backends reject CALOBJ_MOD_ONLY_THIS when they don't
support it, a static capability CAL_STATIC_CAPABILITY_REMOVE_ONLY_THIS
is added that must be checked first before using CALOBJ_MOD_ONLY_THIS.
Patrick Ohly [Wed, 11 May 2011 14:59:51 +0000 (16:59 +0200)]
calendar file backend: support removing parent event with CALOBJ_MOD_THIS
It was possible to create a meeting series with just a detached event
(RECURRENCE-ID set) by importing a meeting invitation for that single
recurrence. It was not possible to arrive at that same state after
adding the parent event (the one with the RRULE) because
e_cal_remove_object_with_mod() removed all instances for
CALOBJ_MOD_THIS and empty rid.
This contradicts the intended semantic of e_cal_remove_object_with_mod():
"By using a combination of the @uid, @rid and @mod
arguments, you can remove specific instances. If what you want
is to remove all instances, use e_cal_remove_object instead."
This patch implements the desired semantic:
- e_cal_backend_file_remove_object(CALOBJ_MOD_THIS) now always
calls remove_instance().
- remove_instance() was extended to also work for the parent
event.
- That call removes the complete object if nothing is left
after removing the instance. This case must be handled by
the caller. The return value is the original object (if
it still exists) and NULL if not.
- Because the uid pointer into the object may become invalid
as part of the removal, a more permanent pointer has to
be provided by the caller.
Kjartan Maraas [Tue, 7 Jun 2011 09:04:59 +0000 (11:04 +0200)]
Updated Norwegian bokmål translation
Christophe Dumez [Mon, 6 Jun 2011 13:48:42 +0000 (16:48 +0300)]
e_book_backend_file_get_contact_list: Fix memory leak
vcard_dbt.data should be freed if it is not appended to
the contact list otherwise memory gets leaked.
Christophe Dumez [Mon, 6 Jun 2011 13:55:04 +0000 (16:55 +0300)]
e_contact_name_from_string(): Fix possible memory leak
The 'name' variable memory was leaked when name_str
is NULL.