Commit Graph

4912 Commits

Author SHA1 Message Date
Tino Keitel e30181949c Document 1.3.2-1 Debian package 2013-10-01 10:57:01 +02:00
Tino Keitel 6255e32e10 Depend on recent libsynthesis, to pull in the fix for #694005 2013-09-25 13:12:14 +02:00
Tino Keitel f08b7c1eb4 Build with --as-needed and with hardening flags enabled 2013-09-25 13:12:14 +02:00
Tino Keitel 1e4baae4e1 Raise debhelper compatibility level to 9 2013-09-25 13:12:14 +02:00
Tino Keitel 7fef193c5a Use multiarch paths for shared object files 2013-09-25 13:12:14 +02:00
Tino Keitel 50dea7cfed New upstream release
Closes: #682280
Closes: #684077
Closes: #694004
Closes: #722044
2013-09-25 13:11:50 +02:00
Tino Keitel 82f46d6191 Install syncevo-local-sync helper, required for CardDAV/CalDAV
syncevo-local-sync is missing, but it is required for certain sync
operations, e.h. DAV sync.

Closes: #679657
Thanks: Gregor Herrmann for the patch.
2013-06-18 12:00:22 +02:00
Tino Keitel b837bb9e67 Merge branch 'upstream' 2013-06-18 11:52:25 +02:00
Tino Keitel aa72f6fd12 1.2.99.1-1.1 package 2013-04-11 08:51:19 +02:00
Patrick Ohly 8e3493c2e9 NEWS, autotools: 1.3.2 release 2012-11-25 18:46:43 -08:00
Patrick Ohly e13863daec D-Bus testing: support ENV with = inside variable value
Found while (accidentally) setting an ENV variable with a = inside the
value part: splitting into name and value may only split once, at the first
equal sign.
2012-11-25 18:02:06 -08:00
Patrick Ohly fe01bf0d87 CardDAV: "--status target-config@" aborts (FDO #56263)
"--status target-config@..." cannot really report on the status of the target
side of the sync, because nothing in the command line identifies *which* sync
is meant to be reported on: the same target config can be used in multiple
sync configs, therefore the meta data which tracks changes is attached to the
sync config, not the target config.

It should not abort, though, which happened because the backend had not
been properly initialized in this particular code path. Now it reports
the total number of items and zero changes.

Long term a dedicated error message would be better (see FDO #57145).
2012-11-25 18:02:06 -08:00
Patrick Ohly 38d77d6af6 autotools: Boost was not found in src/gdbus*
If Boost was installed in a non-default location, it was not found
when compiling the gdbus lib because the necessary compiler flags
were not used for it.
2012-11-25 18:02:06 -08:00
Patrick Ohly 5d99d86269 D-Bus server: localize auto sync notifications
The notification texts were already localized, but using localization was not
turned on in the D-Bus server. The code which was meant to turn it on was
incomplete.

The setlocale() is required and was only done indirectly in syncevolution.org
binaries if the KDE platform module was installed. Now it is done in main() as
part of the process setup. Removed the incomplete setup code from the notify
backend completely (instead of fixing it) because a plugin should not modify
the process state like that.

As part of adding a test for this feature, a new environment was added: the
SYNCEVOLUTION_LOCALE_DIR environment variable can be set to the locale
directory which contains the different translations.

The English default text was already tested. The German translation gets
activated via env variables in the same test and checks that localization
works.

Now that translation is working, better ensure that English is selected
in those tests which expect English notifications.
2012-11-25 17:57:23 -08:00
Patrick Ohly f2583ff174 D-Bus testing: auto-sync multiple times
Running an auto-sync multiple times was missing and promptly broke
during the auto-sync logic rewrite for SyncEvolution 1.3.
2012-11-05 10:28:46 +01:00
Patrick Ohly d4b85f9c62 auto sync: only synced once (FDO #56667)
A successful sync was incorrectly treated like a sync with a permanent
failure, which prevents further automatic syncing.

Adding a check for "status okay" fixes that problem. A unit test for
this case will be comitted separately.
2012-11-05 10:28:46 +01:00
patrick.ohly@intel.com 547aa46fc5 D-Bus testing: fixed typo in test name 2012-10-15 04:28:33 -07:00
patrick.ohly@intel.com 512ac00acc testing: avoid 'foo=bar' at start of command line
bash does not recognize that as a variable assignment. Happened
on the new nightly test server. Putting the env command in front
of the assignment fixes the problem.
2012-10-15 04:25:20 -07:00
patrick.ohly@intel.com f5b5915bec D-Bus testing: avoid hogging the CPU during process shutdown
While waiting for the processes to quit, at least sleep for short
periods of time. Generally a good idea, and seems to be necessary
on the new nightly test setup to give the processes enough CPU time
to really shut down.
2012-10-15 04:25:20 -07:00
patrick.ohly@intel.com fd539a5f46 testing: ignore some valgrind errors in EDS 3.6
Allocating memory during process shutdown doesn't matter. The other
leak is small.
2012-10-15 04:25:20 -07:00
patrick.ohly@intel.com 4a0ef6f51f HTTP Proxy: useProxy=0 overrides http_* env variables
Previously, if http_proxy was set, a proxy was used even if
explicitly disabled. This prevented disabling the use of a proxy
which only made sense in some cases, like accessing something
that runs locally. Explicitly telling SyncEvolution to ignore
http_proxy is necessary because it doesn't support no_proxy.

This change became necessary in the new nightly test server,
which depends on http_* env vars for communication with external
servers.
2012-10-15 04:25:20 -07:00
Patrick Ohly 1b93d51e03 NEWS: include DUE date fix in 1.3.1 2012-10-05 10:27:02 +00:00
Patrick Ohly e8adfadcee vCalendar 1.0 + tasks: DUE date could be shifted by a day (FDO #55238)
Because of incomplete support for time conversion, the due date
could get mixed up when phone and PC were set to something other
than UTC.

Reported and fixed by Peter Jan.
2012-10-05 10:22:23 +00:00
Patrick Ohly 5007e1609a NEWS, configure: prepared 1.3.1 2012-10-05 09:48:22 +00:00
Patrick Ohly 4051f173e3 D-Bus testing: avoid false negative in testAutoStart
Running EDS and possibly Akonadi caused dbus-session.sh to
return a failure despite the actual command working fine,
because the daemons returned 133 as status. Avoid starting
them in the first place, because they are not needed.
2012-10-05 09:41:29 +00:00
Patrick Ohly 298ee48e61 syncevolution.org: syncevolution-evolution had incorrect dependencies
Installation on older Linux distros was not possible because the ebook/ecal
package dependencies were named incorrectly, for example libebook-1.2-10
instead of libebook1.2-10. Only more recent packages have the extra
dash, for example libebook-1.2-12.

Reported by Mariusz Sokolowski.
2012-10-05 06:40:16 +00:00
Patrick Ohly 42c2e0d203 GTK-3 UI: fixed compile problem
The GTK-3 UI depends on a class from gio-unix-2.0 and failed
to compile on Fedora Core 16 because the configure checks for
that lib (and thus the compiler flags) were missing:

src/gtk3-ui/sync-ui.c:30:33: fatal error: gio/gdesktopappinfo.h: No such file or directory

Reported by Peter Robinson.
2012-10-05 06:39:26 +00:00
Patrick Ohly 108f4c8da1 Curl: allow using it in the D-Bus server
In the past, using curl as HTTP transport in the syncevo-dbus-server
was prevented, leading to "unsupported transport type is specified in
the configuration". The reason was that using curl would block the
server and make it unresponsive on D-Bus.

This reason has gone away, because now the HTTP traffic happens in a
separate process. Thus now it is allowed to use curl in the
syncevo-dbus-server.
2012-10-03 14:55:44 +02:00
Patrick Ohly 9665e950e3 command line: fix output of --import for directories
The running count at the start of the line (#0, #1, ...) was
not incremented when reading individual files from a directory.
2012-10-03 14:49:46 +02:00
Patrick Ohly 49608e282e Funambol: work around PHOTO TYPE=image/jpeg, II
The final version of the fix hadn't made it into the source code.

RFIND() needs a non-zero offset, otherwise it'll not find the slash.
2012-09-13 13:59:08 +02:00
Patrick Ohly 98ea7e5a4b NEWS: include information about syncevo-http-server fix
Only affects pre-releases.
2012-09-10 15:12:24 +02:00
Patrick Ohly af59e95e2d syncevo-http-server: fixed printing of server debug output
Python failed to call logSyncEvoOutput() after adding the additional
'process' parameter to LogOutput because it extracts all four
parameters and then cannot pass them to logSyncEvoOutput().

Now logSyncEvoOutput() uses the new process information to instantiate
a logger with the right prefix, using 'sync' as fallback for messages
without that information (as before).
2012-09-10 14:54:29 +02:00
Patrick Ohly de77d5796d NEWS, autotools: release 1.3 2012-09-10 11:56:05 +02:00
Patrick Ohly da963cc93e testing: ignore Google ActiveSync removeProperties failure
Fails because Google keeps sending the (or at least some)
PHOTO data.
2012-09-05 15:03:59 +00:00
Patrick Ohly 8badef94c7 testing: more general suppression for libdl crash
The crash also happened without the openaux function being involved.
2012-09-05 12:23:04 +00:00
Patrick Ohly 54de172408 testing: update Exchange test cases (X-RADIO)
Adapted the name of the X-RADIO extension. activesyncd now uses
X-EVOLUTION-RADIO instead of making up its own string.
2012-08-31 19:19:20 +00:00
Patrick Ohly c21ed00ae6 testing: ignore one-time leak
It could be a leak caused by SyncEvolution not handling an incoming
message. Not entirely sure. Only seems to happen once, so ignore it.
2012-08-31 19:17:49 +00:00
Patrick Ohly d4258ba9d7 testing: updated system suppressions
Need to update rules to detect known problems (gcrypt and libdb).
2012-08-31 19:16:44 +00:00
Patrick Ohly 49a7f72ce2 testing: FN not supported for ActiveSync
Have to ignore the lost FN for Exchange and Google. It is the
protocol itself which doesn't support it, which became clearer
after removing some false mapping to FN in activesyncd.
2012-08-31 19:14:31 +00:00
Patrick Ohly bcc98e01d8 testing: ignore some known ActiveSync problems
Exchange disagrees with SyncEvolution regarding some timezones.
Ignore for now.

testReadItem404 with Google fails differently than expected
because Google does not support the Fetch operation.

testExtensions fails with both because the synccompare tweaks for
ActiveSync get disabled in that test.

One way syncing is not supported for ActiveSync (depends on old
sync keys, which tend to be no longer supported by the ActiveSync
server).
2012-08-31 19:10:38 +00:00
Patrick Ohly dc50fa5b51 testing: fixed testAddBothSides*
Both testAddBothSides* tests need similar patching of the test data.
The second version of that code was incomplete. Fixed by moving
into a common method.
2012-08-31 19:09:02 +00:00
Patrick Ohly 000e1e3fd6 D-Bus: explicitly flush messages
When using GIO D-Bus, sometimes messages created shortly before
shutting down were not sent. Must flush a connection explicitly.
A NOP when using libdbus.
2012-08-31 19:06:29 +00:00
Patrick Ohly c3049f3eb5 ActiveSync: avoid dangling const char pointer
The m_account variable was set to a temporary std::string. Better
copy use a std::string for m_account.
2012-08-31 19:04:20 +00:00
Patrick Ohly a15e8be1c2 local sync: fix timeout with local sync with libdbus
When using libdbus instead of GIO D-Bus (as done by syncevolution.org
binaries and SyncEvolution on Maemo), local sync may have aborted
after 25 seconds when syncing many items with a D-Bus timeout error:

[ERROR] sending message to child failed: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Reported by Toke Høiland-Jørgensen for Harmattan. Somehow not encountered
elsewhere.

Root cause is the use of the default D-Bus timeout of 25 seconds
instead of disabling the timeout altogether. Fixed by using
DBUS_TIMEOUT_INFINITE and INT_MAX as fallback.
2012-08-23 21:35:35 +02:00
Patrick Ohly d56c1b7b8f KDE: check for D-Bus to avoid crash in KApplication (BMC #25596)
Some unnamed version of KDE crashes in KApplication when invoked
without a D-Bus session. The reporter ran into this when compiling
from source, because the SyncEvolution binary is invoked as part of
the build process, which ran outside of a D-Bus session.

Avoid the crash by checking for a D-Bus session bus with
QDBusConnection::sessionBus().isConnected() before instantiating
KApplication. The QDBusConnection API does not say explicitly when it
connects to the daemon, but testing shows that in practice this
detects missing env variables and an unreachable daemon right away as
expected, while passing when the daemon can be contacted.

Instantiating KApplication was added for KWallet support. Without
D-Bus, KWallet does not work either, therefore throw an explicit error
when the lack of D-Bus was detected.
2012-08-16 18:49:52 +02:00
Patrick Ohly b7736253f3 Funambol: work around PHOTO TYPE=image/jpeg
A combination of Funambol Android and Funambol server recently led to
the Funambol server sending PHOTO data with TYPE=image/jpeg. This is
invalid and caused EDS to reject the photo (Vladimir Elisseev,
"[SyncEvolution] issues with syncing photos").

Work around the problem by only keeping the part of the type after the
last slash, if there is any. For image/jpeg and similar types that
leads to the desired value and does not affect valid values, because
those do not contain a slash
(http://www.iana.org/assignments/media-types/image/index.html).
2012-08-14 09:27:49 +02:00
Patrick Ohly f7718ebb48 D-Bus server + GIO D-Bus: fix auto-activation (Debian bug #599247)
When syncevo-dbus-server was started on demand by the D-Bus daemon,
then it registered itself with the daemon before it was ready to
serve requests. Only happened in combination with GIO D-Bus and
thus was not a problem before 1.2.99.x.

One user-visible effect was that the GTK UI did select the default
service when it was started for the first time, because it could not
retrieve that information from syncevo-dbus-server.

The fix consists of delaying the name acquisition. That gives the
caller a chance to register D-Bus objects first, before completing the
connection setup. The semantic change is that
dbus_bus_connection_undelay() must be called on new connections which
have a name (a NOP with libdbus).

This patch tries to minimize code changes. The downside of not
changing the GDBusCXX API more radically is that the bus name must be
attached to DBusConnectionPtr, where it will be copied into each
reference to the connection. Hopefully std::string is smart enough to
share the (small) data in this case. Should be solved cleaner once
libdbus support can be deprecated.

A test for auto-activation and double start of syncevo-dbus-server
is also added.
2012-08-13 22:17:38 +02:00
Patrick Ohly a987801c14 NEWS, autotools: updated for 1.2.99.4 2012-08-07 09:27:21 +02:00
Patrick Ohly bc71ae15c0 D-Bus libdbus: avoid compiler warning
One method was still virtual, from the time when the class had a base
class. Remove the "virtual" keyword because a) it causes a compiler
warning in recent g++ about a class with non-virtual destructor with a
virtual method and b) it makes the generated code unnecessarily
complex.
2012-08-07 09:12:45 +02:00
Patrick Ohly e72eeef426 config: improved 'maxlogdirs' documentation
The old explanation made it sound like nothing would get deleted by
default ("If set, ..."). That's not correct, by default only 10
sessions are kept.

Also explain the behavior of deleting intermediate sessions first.
2012-08-07 09:09:18 +02:00