Matthew Barnes [Tue, 8 Jan 2013 15:00:30 +0000 (10:00 -0500)]
CamelObject: Suppress state file warnings for old IMAP accounts.
CamelImapFolder had a persistent "check-folder" property whose value was
recorded in Camel's binary state files under tag 0x2500. This property
is not present in CamelIMAPXFolder, but we may still be reading the tag
for accounts that were migrated from IMAP to IMAPX. Check for that tag
value while reading state files and suppress the runtime warning.
Christian Kirbach [Tue, 8 Jan 2013 13:47:27 +0000 (14:47 +0100)]
Updated German translation
Matthew Barnes [Sat, 5 Jan 2013 06:02:37 +0000 (01:02 -0500)]
weather: Fix build break.
Matthew Barnes [Fri, 4 Jan 2013 19:52:07 +0000 (14:52 -0500)]
ECalBackendFile: Override the ETimezoneCache methods.
This backend stores time zone data directly in an icalcomponent,
so it needs to override the ETimezoneCacheInterface implementation
provided by ECalBackend, which uses a hash table.
Matthew Barnes [Fri, 4 Jan 2013 18:03:43 +0000 (13:03 -0500)]
Remove e_cal_backend_store_put_timezone().
Use the ETimezoneCache API instead:
cache = e_cal_backend_store_ref_timezone_cache (store);
e_timezone_cache_add_timezone (cache, zone);
g_object_unref (cache);
This is another API break. 3rd party backends will have to be adjusted.
Matthew Barnes [Fri, 4 Jan 2013 17:50:30 +0000 (12:50 -0500)]
Remove e_cal_backend_store_get_timezone().
Use the ETimezoneCache API instead:
cache = e_cal_backend_store_ref_timezone_cache (store);
zone = e_timezone_cache_get_timezone (cache, tzid);
... do what you gotta do with zone ...
g_object_unref (cache);
This is another API break. 3rd party backends will have to be adjusted.
Matthew Barnes [Thu, 3 Jan 2013 16:49:44 +0000 (11:49 -0500)]
ECalBackend: Remove internal_get_timezone() method.
No longer needed since ECalBackend implements ETimezoneCache.
Use e_timezone_cache_get_timezone() instead.
Removed functions:
e_cal_backend_internal_get_timezone()
This is another API break. 3rd party backends will have to be adjusted.
Matthew Barnes [Thu, 3 Jan 2013 16:35:15 +0000 (11:35 -0500)]
ECalBackendSExp: Take an ETimezoneCache instead of ECalBackend.
Here's the real reason for the ETimezoneCache interface.
By changing ECalBackend parameters to ETimezoneCache (an interface which
ECalBackend implements), we abstract away the requirement for a calendar
backend when performing S-expression evaluation.
Since ECalClient also implements the ETimezoneCache interface, this opens
the possibility of allowing client-side S-expression evaluation. (Would
first require moving ECalBackendSExp to libecal, plus of course a rename
to omit the "Backend" part.)
Affected functions:
e_cal_backend_sexp_match_object()
e_cal_backend_sexp_match_comp()
This is another API break. 3rd party backends will have to be adjusted.
Matthew Barnes [Thu, 3 Jan 2013 15:26:51 +0000 (10:26 -0500)]
ECalBackendStore: Add a "timezone-cache" construct-only property.
Instead of keeping its own an internal hash table of icaltimezones, have
ECalBackendStore take an ETimezoneCache in e_cal_backend_store_new().
Usually the ETimezoneCache will be an ECalBackend, which implements the
ETimezoneCache interface and owns the ECalBackendStore. For that reason,
the store only keeps a weak reference on its ETimezoneCache to avoid a
reference cycle.
New functions:
e_cal_backend_store_ref_timezone_cache()
This is an API break. 3rd party backends will have to be adjusted.
Matthew Barnes [Thu, 3 Jan 2013 15:05:10 +0000 (10:05 -0500)]
e_cal_backend_store_set_default_timezone(): Remove const qualifier.
Same justification as previous commit.
Matthew Barnes [Thu, 3 Jan 2013 14:52:07 +0000 (09:52 -0500)]
e_cal_backend_store_put_timezone(): Remove const qualifier.
Semantics have not changed, but the const qualifier is unnecessary.
None of the icaltimezone API uses const, not even the "get" functions.
So to declare an icaltimezone parameter as const creates type casting
awkwardness on our end.
Matthew Barnes [Thu, 3 Jan 2013 14:13:21 +0000 (09:13 -0500)]
Remove unused e_cal_backend_cache_remove_timezone().
Matthew Barnes [Thu, 3 Jan 2013 14:11:17 +0000 (09:11 -0500)]
Remove unused e_cal_backend_store_remove_timezone().
Matthew Barnes [Thu, 3 Jan 2013 14:22:53 +0000 (09:22 -0500)]
Remove unused e_cal_backend_store_remove().
Matthew Barnes [Thu, 3 Jan 2013 13:37:26 +0000 (08:37 -0500)]
ECalBackend: Implement the ETimezoneCache interface.
Matthew Barnes [Wed, 2 Jan 2013 19:28:14 +0000 (14:28 -0500)]
ECalClient: Implement the ETimezoneCache interface.
Matthew Barnes [Wed, 2 Jan 2013 19:26:14 +0000 (14:26 -0500)]
Add ETimezoneCache interface.
Several classes (both client-side and server-side) cache icaltimezone
instances internally, indexed by their TZID strings. Classes which do
this should implement ETimezoneCacheInterface to provide a consistent
API for accessing time zone data.
Matthew Barnes [Wed, 2 Jan 2013 16:18:44 +0000 (11:18 -0500)]
Merge ECalBackendFileStore into ECalBackendStore.
ECalBackendStore is an abstract base class [1], and ECalBackendFileStore
is a subclass that stores calendar components in an iCalendar file. But
ECalBackendFileStore is the only subclass in existence, so the abstract
base class is unnecessary.
Have ECalBackendStore implement ECalBackendFileStore by default and drop
ECalBackendFileStore as a separate class. The operations are written as
virtual class methods, so we can still override the class methods from a
new subclass if a need should arise.
New functions:
e_cal_backend_store_new()
Removed functions:
e_cal_backend_file_store_new()
[1] Or at least is supposed to be abstract. Someone forgot to define
the GType with G_DEFINE_ABSTRACT_TYPE.
Matthew Barnes [Thu, 3 Jan 2013 18:16:55 +0000 (13:16 -0500)]
Bump libedata-cal shared object name.
I'll be changing parts of the API in subsequent commits.
Matthew Barnes [Fri, 4 Jan 2013 16:28:40 +0000 (11:28 -0500)]
Remove unused LIBSOUP_REQUIRED definition.
Matthew Barnes [Fri, 4 Jan 2013 16:22:30 +0000 (11:22 -0500)]
Use version-based libsoup warnings.
Apparently libsoup IS already using versioned deprecations. Excellent!
Use SOUP_VERSION_MAX_ALLOWED to warn if we accidentally use symbols that
were introduced in libsoup versions subsequent to our minimum requirement.
Use SOUP_VERSION_MIN_REQUIRED to suppress libsoup deprecation warnings by
version so we can clean them up incrementally.
Hashem Nasarat [Wed, 2 Jan 2013 20:54:11 +0000 (15:54 -0500)]
Bug 691033 - Avoid using LIBSOUP_DISABLE_DEPRECATED
Prevent E-D-S builds from suddenly breaking because of new deprecations
in libsoup. Case in point: soup_session_sync_new().
If libsoup starts using versioned deprecations like glib and gtk+ are
already doing, then we can disable libsoup symbols that were deprecated
in versions older than our minimum requirement. That would allow us to
clean up deprecations gradually rather than dealing with bugs like this.
Nilamdyuti Goswami [Wed, 2 Jan 2013 11:51:05 +0000 (17:21 +0530)]
Assamese translation updated
Piotr Drąg [Mon, 31 Dec 2012 19:53:54 +0000 (20:53 +0100)]
Updated POTFILES.in
Matthew Barnes [Mon, 31 Dec 2012 03:12:19 +0000 (22:12 -0500)]
google: Add EGDataOAuth2Authorizer.
This will eventually replace EGDataGoaAuthorizer once we require
GNOME Online Accounts 3.8. It obtains an OAuth 2.0 access token
using e_source_get_oauth2_access_token_sync() and avoid a direct
dependency on GNOME Online Accounts (or similar frameworks).
E-D-S 3.8 will still support older versions of GNOME Online Accounts,
which use OAuth 1.0a for Google authentication. So the earliest that
EGDataGoaAuthorizer will die is E-D-S 3.9.1.
Matthew Barnes [Sat, 29 Dec 2012 17:42:24 +0000 (12:42 -0500)]
google-backend: Populate [Authentication] group for contacts.
Set the Host to "www.google.com" and Method to either "OAuth2" or
"ClientLogin", depending on whether EOAuth2Support is available.
A temporary corner case occurs when using an older GNOME Online Accounts
version, which uses OAuth 1.0a instead of 2.0 for Google authentication.
In that case, the Method will say "ClientLogin" but the Google address
book backend will ignore it and use its EGDataGoaAuthorizer.
Matthew Barnes [Sat, 29 Dec 2012 00:45:04 +0000 (19:45 -0500)]
gnome-online-accounts: Implement EOAuth2Support interface.
Matthew Barnes [Sat, 29 Dec 2012 14:42:08 +0000 (09:42 -0500)]
collection_backend_child_added: Inherit OAuth 2.0 support.
Collection children will inherit the collection source's EOAuth2Support
object if set. That way OAuth 2.0 availability is consistent across the
entire collection, even if it's not USED by all sources in the collection.
Matthew Barnes [Sat, 29 Dec 2012 14:01:03 +0000 (09:01 -0500)]
EServerSideSource: Add "oauth2-support" property.
This is the object providing OAuth 2.0 support by implementing the
EOAuth2Support interface. Setting this property to a non-NULL value
automatically exports the OAuth2Support D-Bus interface.
New functions:
e_server_side_source_ref_oauth2_support()
e_server_side_source_set_oauth2_support()
Matthew Barnes [Fri, 28 Dec 2012 23:21:30 +0000 (18:21 -0500)]
libebackend: Add EOAuth2Support interface.
Standard server-side interface to be implemented by E-D-S modules
providing OAuth 2.0 support for ESources.
Matthew Barnes [Fri, 28 Dec 2012 16:56:08 +0000 (11:56 -0500)]
ESource: Add get_oauth2_access_token_sync() class method.
Obtains an access token and its expiry in seconds for data sources that
support OAuth 2.0.
This also adds corresponding asynchronous class methods.
New functions:
e_source_get_oauth2_access_token_sync()
e_source_get_oauth2_access_token()
e_source_get_oauth2_access_token_finish()
Matthew Barnes [Fri, 28 Dec 2012 13:37:39 +0000 (08:37 -0500)]
Add OAuth2Support D-Bus interface.
Backends will be able to obtain OAuth 2.0 access tokens through this
interface instead of talking directly to an "online accounts" service.
Matthew Barnes [Mon, 31 Dec 2012 14:02:00 +0000 (09:02 -0500)]
Add e_source_registry_server_find_extension().
Server-side equivalent of e_source_registry_find_extension().
Use it in e_source_registry_server_ref_backend().
Matthew Barnes [Mon, 31 Dec 2012 13:50:30 +0000 (08:50 -0500)]
e-source-registry.c: Minor code reordering.
Daniel Mustieles [Mon, 31 Dec 2012 11:17:57 +0000 (12:17 +0100)]
Updated Spanish translation
Rafael Ferreira [Thu, 27 Dec 2012 01:38:37 +0000 (23:38 -0200)]
Updated Brazilian Portuguese Translation based on branch gnome-3-6
Matthew Barnes [Fri, 28 Dec 2012 14:01:49 +0000 (09:01 -0500)]
Fix typo in libedataserver API docs.
Matthew Barnes [Thu, 27 Dec 2012 15:14:51 +0000 (10:14 -0500)]
Further API doc cleanups.
Matthew Barnes [Thu, 27 Dec 2012 14:52:54 +0000 (09:52 -0500)]
private: Fix cross-references to D-Bus interfaces in API docs.
Matthew Barnes [Thu, 27 Dec 2012 14:09:32 +0000 (09:09 -0500)]
private: Add generated DocBook files to BUILT_SOURCES.
Matthew Barnes [Thu, 27 Dec 2012 13:19:33 +0000 (08:19 -0500)]
private: Reduce the number of sections in API docs.
Combine the interface, proxy, and skeleton APIs for each D-Bus
interface into one Gtk-Doc section. GNOME Online Accounts does this
and it's cleaner and easier to navigate from the Table of Contents.
Nilamdyuti Goswami [Thu, 27 Dec 2012 15:30:32 +0000 (21:00 +0530)]
Assamese translation updated
Fran Diéguez [Mon, 24 Dec 2012 23:01:07 +0000 (00:01 +0100)]
Update Galician translations
Fran Diéguez [Mon, 24 Dec 2012 22:59:15 +0000 (23:59 +0100)]
Updated Galician translations
Dimitris Spingos [Mon, 24 Dec 2012 15:01:07 +0000 (17:01 +0200)]
Updated Greek translation
Matthew Barnes [Mon, 24 Dec 2012 13:48:52 +0000 (08:48 -0500)]
Bug 665371 - Decommission legacy IMAP backend
"IMAPX" is now our one and only IMAP backend for Camel. \o/
Matthew Barnes [Mon, 24 Dec 2012 13:43:53 +0000 (08:43 -0500)]
Add automatic IMAP to IMAPX account migration.
Uses the new "tweak-key-file" ESourceRegistryServer signal.
Matthew Barnes [Mon, 24 Dec 2012 05:19:20 +0000 (00:19 -0500)]
Fix some file header comments.
Matthew Barnes [Mon, 24 Dec 2012 04:37:25 +0000 (23:37 -0500)]
ESourceRegistryServer: Add a "tweak-key-file" signal.
This signal is emitted from e_source_registry_server_load_file() just
prior to instantiating an EServerSideSource. Signal handlers can tweak
the GKeyFile content as necessary and return TRUE to write the modified
content back to disk.
For the purposes of tweaking, it's easier to deal with a plain GKeyFile
than an ESource instance. An ESource, for example, does not allow key
file groups to be removed.
The return value is cumulative. If any signal handler returns TRUE,
the GKeyFile content is written back to disk.
Unfortunately this breaks the libebackend ABI because I forgot to add a
pool of reserved pointers to the ESourceRegistryServerClass. Do so now,
since we have the opportunity.
Matthew Barnes [Mon, 24 Dec 2012 12:37:42 +0000 (07:37 -0500)]
IMAPX: Avoid duplicating messages in real Junk or Trash.
This is more a problem with Junk, but fixing both to keep the logic
consistent. When synchronizing a real Junk folder, we were copying
all messages marked as "junk" from Junk to Junk -- duplicating them
each time. After running for a couple days I caught my Junk folder
with thousands of duplicate messages.
Matthew Barnes [Sat, 22 Dec 2012 14:22:40 +0000 (09:22 -0500)]
IMAPX: Ask server to handle "body-contains" searches.
This isn't as sophisticated/convoluted as the version in the older IMAP
backend, but it still beats downloading the entire message as we've been
doing. There's no caching of past search results. I'm not convinced the
performance gain is worth the extra complexity. If I'm wrong or I change
my mind, search result caching can always be added later.
Matthew Barnes [Sun, 23 Dec 2012 21:34:38 +0000 (16:34 -0500)]
Revert "Fix build"
This reverts commit
6a243777a56279325847323342492769ce942cf3.
This is wrong. The bus name is not the same as the object path.
Dan Vrátil [Sun, 23 Dec 2012 21:03:30 +0000 (22:03 +0100)]
Fix build
Matthew Barnes [Sun, 23 Dec 2012 15:54:04 +0000 (10:54 -0500)]
CamelIMAPXJob: Protect the CamelFolder.
Move the CamelFolder pointer to CamelIMAPXJob's private section to
ensure thread-safety and consistent reference counting.
Had a crash just now in camel_imapx_server_get_job_queue_info() due to
a dangling CamelFolder pointer. Further investigation found that some
methods assign "job->folder" a new reference (but in some cases never
unref it!) and other methods just do a straight assignment.
Technically this is an API/ABI break, but not bumping Camel's soname
because it does not affect evolution-kolab, the only known 3rd party
consumer of IMAPX APIs.
Matthew Barnes [Sun, 23 Dec 2012 15:08:40 +0000 (10:08 -0500)]
CamelFolder: Make string properties thread-safe.
Use an internal mutex to guard the strings, and add thread-safe accessor
functions:
camel_folder_dup_full_name()
camel_folder_dup_display_name()
camel_folder_dup_description()
Kjartan Maraas [Sun, 23 Dec 2012 11:19:46 +0000 (12:19 +0100)]
Updated Norwegian bokmål translation
Kjartan Maraas [Wed, 19 Dec 2012 13:26:06 +0000 (14:26 +0100)]
Updated Norwegian bokmål translation
Matthew Barnes [Sun, 23 Dec 2012 05:06:05 +0000 (00:06 -0500)]
Update the MAINTAINERS file.
Matthew Barnes [Sat, 22 Dec 2012 19:12:02 +0000 (14:12 -0500)]
Bug 689124 - Increase Camel's TCP read/write timeout
This is a partial revert of the hack for bug 551788, which decreased the
TCP read/write timeout from 4 minutes to 1 minute.
This causes IMAP IDLE connections to timeout prematurely if the server
sends untagged keep-alive messages at an interval greater than 1 minute.
Dovecot's "imap_idle_notify_interval" setting defaults to 2 minutes.
Reset the TCP read/write timeout back to 4 minutes.
Matthew Barnes [Sat, 22 Dec 2012 16:50:53 +0000 (11:50 -0500)]
Gah, screwed up the CamelFolderSearchFlags values.
Matthew Barnes [Sat, 22 Dec 2012 16:36:44 +0000 (11:36 -0500)]
Deprecate camel_folder_search_construct().
Register callbacks with CamelSExp from the constructed() method.
Matthew Barnes [Sat, 22 Dec 2012 14:08:50 +0000 (09:08 -0500)]
camel-search-private cleanups.
Matthew Barnes [Wed, 19 Dec 2012 18:34:27 +0000 (13:34 -0500)]
imapx_get_filename() should be static.
No idea why this function was made public. It's just a class method
implementation and can be invoked through camel_folder_get_filename().
Not going to bump the libcamel soname over this. Nothing external is
using it.
Matthew Barnes [Wed, 19 Dec 2012 18:27:11 +0000 (13:27 -0500)]
CamelFolderSearch cleanups.
Matthew Barnes [Wed, 19 Dec 2012 17:47:24 +0000 (12:47 -0500)]
CamelIMAPXFolder: Fix compiler warnings.
Matthew Barnes [Wed, 19 Dec 2012 16:14:51 +0000 (11:14 -0500)]
IMAPX: Don't recheck flags before moving to real Junk/Trash.
Out of paranoia, I made imapx_folder_claim_move_to_real_trash_uids()
recheck that the queued message UIDs still had a DELETED flag before
moving them to a real Trash folder. That turned out to be breaking
things because we _remove_ the DELETED flag when synchronizing, so
it's not going to still be set when we're ready to move messages.
Remove the uncertainty and rename public functions to reflect this:
- camel_imapx_folder_maybe_move_to_real_junk()
+ camel_imapx_folder_add_move_to_real_junk()
- camel_imapx_folder_maybe_move_to_real_trash()
+ camel_imapx_folder_add_move_to_real_trash()
Matthew Barnes [Wed, 19 Dec 2012 15:27:03 +0000 (10:27 -0500)]
IMAPX: Fix DELETED flag sync when using real Trash folder.
After copying messages to a real Trash folder and then tagging them for
deletion, we immediately expunge. Now the IMAPX expunge operation first
synchronizes message flags with the server, which is sensible. But when
using a real Trash folder, this extra sync was causing deleted messages
to keep coming back from the grave like zombies.
The problem was when using a real Trash folder, the internal operation
that synchronizes flags first clears any DELETED flags. Normally that's
what we want, except when we're about to expunge since expunging depends
on those DELETED flags. So make an exception for this case.
Daniel Mustieles [Wed, 19 Dec 2012 12:26:16 +0000 (13:26 +0100)]
Updated Spanish translation
Nilamdyuti Goswami [Wed, 19 Dec 2012 07:33:58 +0000 (13:03 +0530)]
Assamese translation updated
Mathias Hasselmann [Wed, 19 Dec 2012 00:41:59 +0000 (01:41 +0100)]
test-server-utils: Don't rely on command line parsing for "rm -rf"
Let's be nice to people with spaces in their path names.
Matthew Barnes [Mon, 17 Dec 2012 16:14:44 +0000 (11:14 -0500)]
IMAPX: Support non-virtual Junk/Trash folders.
Some webmail clients designate specific IMAP folders as Junk and Trash,
such that when a message is deleted or determined to be spam, a copy of
the message is appended to the designated folder, the original message
is flagged as DELETED and the folder containing the original message is
immediately expunged.
This is significantly more expensive than simply flagging the message as
DELETED or JUNK. But users that access their mail by both Evolution and
webmail frequently complain of seeing what appear to be duplicate Junk
and Trash folders in Evolution [1].
This commit allows IMAPX stores to be configured to mimic these webmail
clients and hide their Junk and Trash virtual folders. IMAPX will mimic
the "copy-and-expunge" webmail client behavior each time it's commanded
to synchronize message flags with the server.
[1] So much so that it earned its own page in the user manual:
http://library.gnome.org/users/evolution/stable/mail-two-trash-folders.html.en
Matthew Barnes [Sun, 16 Dec 2012 16:43:01 +0000 (11:43 -0500)]
libecal: Move EDataCalCallStatus back to libedata-cal.
I'm encountering a build break in Evolution on an older environment.
It goes something like this...
/* In X11/X.h */
#define Success 0
/* In libecal/e-cal-types.h */
typedef enum { Success, ... } EDataCalCallStatus;
After pre-processing, the compiler gets
typedef enum { 0, ... } EDataCalCallStatus;
which of course is a syntax error.
It's our own fault for violating our own namespace. The enum definition
was moved from libedata-cal to libecal fairly recently (by me) to resolve
a circular dependency, but it appears libecal does not really require the
enum values. Move the typedef back to libedata-cal as a quick Band-Aid.
The EDataCalCallStatus enum is redundant anyway and I plan to remove it.
Equivalent error values are provided by EClientError and ECalClientError,
and calendar backends should be using them directly. There's no need for
separate but equal client and server-side error value definitions.
This is technically an API break, but I'm not going to bump the libecal
soname over this. The enum definition is clearly intended for backends,
and because it was moved to libecal only recently, I'm fairly certain no
client applications are using it.
Matthew Barnes [Tue, 18 Dec 2012 12:42:52 +0000 (07:42 -0500)]
CamelIMAPXFolder cleanups.
Tristan Van Berkom [Mon, 17 Dec 2012 10:29:10 +0000 (19:29 +0900)]
Removing LIBEDATASERVERUI_CURRENT/REVISION/AGE definitions
These definitions in configure.ac are now meaningless since
the removal of libedataserverui (just a cleanup).
Matthew Barnes [Sun, 16 Dec 2012 14:40:07 +0000 (09:40 -0500)]
Post-release version bump.
Matthew Barnes [Sun, 16 Dec 2012 14:07:03 +0000 (09:07 -0500)]
NEWS update for 3.7.3 release.
Matthew Barnes [Sat, 15 Dec 2012 16:19:35 +0000 (11:19 -0500)]
Fix untracked files in test-server-utils.
Matthew Barnes [Sat, 15 Dec 2012 15:36:04 +0000 (10:36 -0500)]
Deprecate E_AUTHENTICATION_SESSION_KEYRING_ERROR.
Matthew Barnes [Sat, 15 Dec 2012 13:37:38 +0000 (08:37 -0500)]
Suppress g-ir-scanner warnings.
They're far too noisy, and make it difficult to spot new C compiler
warnings, which are the only ones I care about. We can enable them
again when we're serious about cleaning them up. In the meantime,
they're just getting in the way.
Matthew Barnes [Sat, 15 Dec 2012 12:42:14 +0000 (07:42 -0500)]
Revert "ESourceRegistry: Do not mandate builtin sources."
This reverts commit
78340f9274d5c2ee0f52507f935f97d6b92f513e.
This violates a key invariant of the get_default() and especially
get_builtin() functions: that they never return NULL.
Tristan Van Berkom [Thu, 13 Dec 2012 13:22:19 +0000 (22:22 +0900)]
Ported ECalClient tests to use ETestServerFixture framework
Now the majority of ECalClient tests use the fixture, some tests
have been moved out of the unit test targets instead and remain
as functional tests (to be run manually)
Tristan Van Berkom [Thu, 13 Dec 2012 09:55:19 +0000 (18:55 +0900)]
Ported ECal tests to new test framework
NOTES:
o Removed test-ecal-open, thats tests by the test fixture of the framework
o Some tests fail because verification of created cal objects is broken
o Some tests moved from the unit test suite because they dont make
sense as unit tests (or are more difficult to port), those tests
can still be run with a running/installed data server.
Tristan Van Berkom [Wed, 12 Dec 2012 10:35:59 +0000 (19:35 +0900)]
Ported all tests in tests/ebook/client to use new test framework
'make check' now passes in ebook except for a few cases which geniunely fail.
Conflicts:
tests/libebook/client/Makefile.am
tests/libebook/client/test-client-custom-summary.c
Tristan Van Berkom [Wed, 12 Dec 2012 07:34:32 +0000 (16:34 +0900)]
Ported EBook (deprecated) test cases to use the new test-server-utils scaffold.
Note that test-ebook-remove is removed, this is executed in every test case
implicitly and asserted by the test scaffold
Tristan Van Berkom [Tue, 11 Dec 2012 09:22:49 +0000 (18:22 +0900)]
Adding test-server-utils
A library with text fixtures for testing ESourceRegistry, EBookClient and
ECalClient in a self contained fashion.
Tristan Van Berkom [Thu, 13 Dec 2012 07:14:19 +0000 (16:14 +0900)]
ESourceRegistry: Do not mandate builtin sources.
This patch removes return_if_fail() critical warnings from
e_source_registry_ref_[default,builtin]_address_book() and
e_source_registry_ref_[default,builtin]_calendar(). This
avoids the console warnings when running make check.
Also, this patch fixes several locations in EDS where the
above functions blindly expect an #ESource to be returned.
Tristan Van Berkom [Thu, 13 Dec 2012 06:46:45 +0000 (15:46 +0900)]
Added EDS_ADDRESS_BOOK_MODULES and EDS_CALENDAR_MODULES
Allows specification of alternative paths to search for modules
for addressbook and calendar. Note that these *replace* the default
system path, not augment it. This is intended to ensure that we
dont load installed modules from the system when running test cases.
Tristan Van Berkom [Wed, 12 Dec 2012 05:23:30 +0000 (14:23 +0900)]
Removing e-source-registry-test.c and e-test-dbus-utils.[ch]
The source registry test checks if sources can be created in the
registry, this is already asserted by e-test-server-utils in
the fixture test. Removing the e-test-dbus-utils.[ch] and
tests/tools directory in favour of new testing framework added in
test-server-utils directory.
Milan Crha [Fri, 14 Dec 2012 16:42:41 +0000 (17:42 +0100)]
Introduce cancellable locks
There are currently two cancellable lock types, one extends GMutex,
the other extends GRecMutex, in a way that the waiting for a lock
can be cancelled.
Milan Crha [Fri, 14 Dec 2012 14:25:55 +0000 (15:25 +0100)]
Introduce CamelSession::trust_prompt()
This way a trust-prompt dialog from EUserPrompter service can be used
with all its features and a view consistency between components.
Milan Crha [Thu, 13 Dec 2012 10:46:28 +0000 (11:46 +0100)]
Bisect Gtk+ calls into separate files
This way it'll be easier to provide other
than Gtk+ GUI implementations of the prompts.
Milan Crha [Wed, 12 Dec 2012 22:27:28 +0000 (23:27 +0100)]
Workaround file description leak from e_source_registry_authenticate_sync()
This workarounds a file descriptor leak (a GMainContext leak) partly
caused by GDBusConnection. See bug #690126 for more details:
https://bugzilla.gnome.org/show_bug.cgi?id=690126
It influeces also EUserPrompter.
Piotr Drąg [Wed, 12 Dec 2012 21:19:36 +0000 (22:19 +0100)]
Updated POTFILES.in
Matthew Barnes [Mon, 10 Dec 2012 13:19:32 +0000 (08:19 -0500)]
Remove libedataserverui.
Evolution is the only consumer of libedataserverui. The library has
been merged into Evolution's own libeutil which is not restrained by
backward-compatibility promises.
Nilamdyuti Goswami [Wed, 12 Dec 2012 09:25:32 +0000 (14:55 +0530)]
Assamese translation updated
Mathias Hasselmann [Fri, 7 Dec 2012 12:37:50 +0000 (13:37 +0100)]
libebook-contacts: Document EBookQueryTest
Mathias Hasselmann [Tue, 11 Dec 2012 09:50:49 +0000 (10:50 +0100)]
tests: Add a few missing license headers
Milan Crha [Tue, 11 Dec 2012 17:38:49 +0000 (18:38 +0100)]
[trust-prompt] Add certificate viewer and "issuer*" parameters
Colin Walters [Mon, 10 Dec 2012 18:42:11 +0000 (13:42 -0500)]
Make ENamedParameters a fully boxed type
Introspection doesn't handle well typedefs as a general rule, but
typedefs for container types are particularly problematic. This ends
up breaking the vala build, but the resulting .gir is also unusable by
bindings.
In this case, I think it's actually cleanest to make ENamedParameters
a fully opaque type even to C. The parts of the Evolution code that
were peeking inside ENamedParameters really wanted a helper function
anyways to create a gchar **.
Therefore, this is a net code cleanup.
https://bugzilla.gnome.org/show_bug.cgi?id=689871
Milan Crha [Mon, 10 Dec 2012 13:48:27 +0000 (14:48 +0100)]
Bug #579315 - Identify filter names in filtering errors