Commit Graph

60 Commits

Author SHA1 Message Date
Jonas Smedegaard 693ba4c3fe Import Upstream version 1.5.3 2021-09-29 23:01:46 +02:00
Patrick Ohly d1db2d30a1 Buteo: removed from source code
Pseudo-backend (really more like a plugin for Buteo) and testing
framework changes were removed because Buteo is obsolete.
2012-05-22 15:02:59 +02:00
Patrick Ohly 79c46670be autotools: depend on D-Bus
Local sync needs D-Bus and glib. Either libdbus or gio-dbus (in gio >=
2.26) are good enough.
2012-01-20 10:51:40 +01:00
Patrick Ohly 5589ac6117 testing: allow regex in CLIENT_TEST_SKIP/FAILURES
Both comma separated lists may now contain regular expressions, which
is very useful to ignore or skip one test for all data categories, for
example.

Because tests names did not have special characters in them, previous
values still work as before for a literal match against just one test.
2011-11-28 10:18:19 +01:00
Patrick Ohly 6481680f42 HACKING: updated recommended configure
Use --enable-warnings=fatal to catch errors (easier than setting flags)
and compile in one step with --with-synthesis-src (avoids mismatch).
2011-11-28 10:18:19 +01:00
Patrick Ohly a88ba0a091 autotools: use pcre for regular expressions
Added the necessary autotools rules to use pcre in the src binaries
and libsyncevolution. It's unconditionally required now, which makes
it possible to add code depending on it without having to worry about
the case without pcre.

The alternative to pcre with its C++ binding would have been
boost::Xpressive. pcre was chosen because it has UTF-8 support and is
more common.

boost::regex introduces an undesirable library dependency. The C POSIX
regex code has no C++ binding and does not support easy replacement.

README was updated accordingly.
2011-11-28 10:18:19 +01:00
Amarnath Valluri f0d45ac3a4 HACKING: describe database creation with EDS 2.32
Automatic database creation is not supported for EDS 2.32,
must be done manually.
2011-06-24 17:09:18 +02:00
Patrick Ohly b6861ed768 nightly testing: renamed ical20/itodo20/vcard30/text, removed vcard21 from Evolution backend (BMC #14972)
The distinction between vcard21 and vcard30 became mute in the Evolution
backend a while ago. Both tests ended up using the vCard 3.0 Evolution
tests data and the default uri for each server. This patch removes
the vCard 2.1 special case.

It also renames the tests and test data to reflect that they always
were Evolution specific. The new naming convention, also applied
to file, QtContacts, KCalExtended, XMLRPC, Maemo and Akonadi backends, is
now <backend>_contact/event/task/memo, with eds/file/qt/kcal/maemo/kde
as backend names.

The reasoning is:
- results in unique string (in particular no overlap with
  backend type names), easier to search for
- underscore already used before (in contrast to hyphen)
- no plural-s to keep the name shorter

The Akonadi backend should be using its own test data instead of
the Evolution ones.
2011-05-05 20:15:55 +08:00
Zhu, Yongsheng 486adfe673 HACKING: add one section to describe testing Buteo
Add one section in HACKING to describe how to test Buteo
in SyncEvolution. Maily show how to setup the environment
step-by-step.
2010-12-08 10:56:16 +01:00
Patrick Ohly 0859a8ce3d HACKING: added commit guidelines
This summarizes and documents established practices in
SyncEvolution, no new guidelines are added.
2010-09-25 08:09:29 -07:00
Patrick Ohly 55f3b2ddef README: replaced with README.rst, added man page (MBC #690)
This patch adds the necessary autotools rules a) to use README.rst
as README in distribution archives and b) to build a syncevolution.1
man page out of it.

The later depends rst2man. --with-rst2man can be used to force man page
creation on or off. Without an explicit choice, it is only built when
the tool is found.

Version and compile date are inserted automatically.
2010-05-04 13:49:54 +02:00
Patrick Ohly 98f83c5b3c syncevo-dbus-server/syncevolution-http-server.py: SyncML HTTP server
This uses the new combined client/server Synthesis engine. When
building shared modules, the engine is opened dynamically only
while needed, thus reducing overall memory consumption.

The HTTP server is implemented in Python, using the the 'twisted'
server framework because it can use the same glib event loop as the
D-Bus binding. This allows us to keep the same event loop running
forever and react to both kinds of events.

The server takes a base url (including host name and port)
and a default configuration as name. The host name is currently
ignored. It could be used to bind to a specific interface.

The path is what a client has to use as part of his sync URL
to synchronize against the default configuration. In addition
the client can add another path to select that as his server
configuration.

For example, if the script is called with
   http://localhost:9000/syncevolution default
then syncURL = http://localhost:9000/syncevolution will synchronize
against the configuration called "default". With syncURL =
http://localhost:9000/syncevolution/my_server, it will
synchronize against "my_server".
2009-10-07 18:15:45 +02:00
Chen Congwu 35ee636619 Dynamic loadable backends: repackage libsyncevolution to enable dynamic loadable backends
Install head files to a standard path, the remaining dependencies are
synthesis and boost
client-test is portable when ENABLE_MODULES is defined, no longer link to
backends libraries.

Add --enable-developer-mode, in which mode the backend scan path will be
under current build directory for development purposes.
2009-09-23 07:35:25 +02:00
Patrick Ohly 7849ce5703 HACKING: added remark about LINGUAS and Synthesis .so versions 2009-08-26 15:48:53 +02:00
Patrick Ohly c602de1c3e testing: skip certain tests by listing them in CLIENT_TEST_SKIP
The only way that I found not to execute a test was not to register
it in CPPUnit. FilterTest() does this by replacing a valid test
or test group with a dummy one, SkipTest, which just prints the
test name and that it is skipped.

Registering tests has to be intercepted at multiple levels:
- CPPUNIT_TEST in test suites
- ADD_TEST in ClientTest
- addTest in ClientTest

Not currently intercepted are complete test suites (CPPUNIT_TEST_SUITE).

The main purpose of this patch is to avoid running the time consuming
suspend and interrupt tests, but this feature might also be useful for
other tests, which is why it was implemented in a more general way.
2009-07-13 18:31:48 +02:00
Patrick Ohly 50f95180b5 logging: set SYNCEVOLUTION_DEBUG to disable redirection
The environment variable SYNCEVOLUTION_DEBUG is checked by
LogRedirect itself (instead of in its caller) so that all
users of the class behave identically. The value of the variable
currently doesn't matter. Later it might also be used to enable
or disable specific debugging aspects.
2009-07-10 08:43:37 +02:00
Patrick Ohly 4af8e2c03d docs + version: updated for 0.9 beta 1 2009-04-06 17:42:28 +02:00
Patrick Ohly b75f8c952d configure: fixed some checks (glib, boost, EDS)
Configure didn't check correctly for "glib": it invoked glib-config
but didn't notice when that command was missing. Removed that
check as it has been superseeded by "glib-2.0" anyway.

Boost wasn't checked for at all, although the Boost header files are
no longer bundled.

libecal and libebook are now obligatory unless explicitly disabled.
This catches a common mistake made by users: previously syncevolution
would compile, but without Evolution support. The drawback is that
on platforms without Evolution, support for it now must be disabled
explicitly.
2009-03-27 16:22:31 +01:00
Patrick Ohly 4ae40026a4 configuration: removed obsolete config options and added WBXML
Removed the "encoding" source option. It was of dubious usefulness
with Funambol and has meaning with Synthesis at all.

Removed dead code in EvolutionSyncConfig.

Added "enableWBXML" sync option. WBXML is used by default, but for
debugging disabling it might be useful: dumping WBXML doesn't seem
to work reliably.

Most Client::Sync tests use the default encoding, usually WBXML unless
changed via CLIENT_TEST_XML=1. Client::Sync::*::testItemsXML always
uses XML and Client::Sync::*::testItems always WBXML.
2009-03-25 14:43:49 +01:00
Patrick Ohly d71a296525 dist: fixed distcheck, bundle Synthesis
When --with-synthesis-src is used, then the Synthesis source code is compiled
automatically and included in a .tar.gz.

Added some missing EXTRA_DIST files.
2009-03-25 14:43:44 +01:00
Patrick Ohly 43f2c5fec5 removed all references to Funambol header files and definitions 2009-03-25 14:43:35 +01:00
Patrick Ohly bcc349a569 transport agent: replaced Funambol TransportAgent with own libsoup/libcurl classes
The new TransportAgent base class supports sending a message and waiting
for a reply. Implementations which block in either the send() (CurlTransportAgent)
or the wait() (SoupTransportAgent) call are possible.

The default implementation is compiled into libsyncevolution. configure
picks libsoup if available, otherwise libcurl. The default can be changed
via --enable-libcurl/libsoup, including not compiling any transport. Normally
that triggers a configure error because it leads to an unusable syncevolution
binary.

Derived EvolutionSyncClients can change the default via createTransportAgent().
2009-03-25 14:43:34 +01:00
Patrick Ohly 670d3d1011 HACKING: improved Synthesis instructions to work with --enable-shared 2009-03-25 14:43:33 +01:00
Patrick Ohly de8ee098e7 use Synthesis SDK to run a sync session
Copying SyncEvolution settings into the corresponding
Synthesis properties is implemented. A "syncevolution.xml"
with the client configuration must be in the current
directory. Currently it contains no configuration
for SyncEvolution data backends, only for SDK_textdb
addressbook.

As there is no synthesis.pc yet, use SYNTHESIS_CFLAGS=-Ifoo/include
and SYNTHESIS_LIBS=-Lfoo/lib -lsynthesissdk where foo is the
installation prefix of the Synthesis SDK.
2009-03-25 14:43:32 +01:00
Patrick Ohly 894c61951e improved handling of Funambol client library source
configure checks out the right source automatically. Subversion
and git are supported. When given an existing directory with sources,
out-of-tree compilation is used instead of making a copy first.


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@744 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-09-14 17:52:08 +00:00
Patrick Ohly 57c7976a96 use libcurl on all platforms
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@742 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-29 21:27:27 +00:00
Patrick Ohly ef6545eb28 version number must go into configure-pre.in
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@741 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-29 19:23:54 +00:00
Patrick Ohly e9922b617c version 0.8
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@740 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-29 19:12:02 +00:00
Patrick Ohly 319a873b57 removed obsolete LIBDBUS hack
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@729 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-17 08:50:42 +00:00
Patrick Ohly 05222fde44 corrected outdated config path
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@703 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-03 20:23:02 +00:00
Patrick Ohly adb587aba9 added BINSUFFIX for Mac OS X
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@676 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-07-14 18:40:52 +00:00
Patrick Ohly 1aa93e6cb2 simplified compiling for ppc/386 on Mac OS X
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@668 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-07-12 18:43:17 +00:00
Patrick Ohly b832ddaaed Maemo no longer uses patched libdbus
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@605 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-04-20 12:38:19 +00:00
Patrick Ohly 707c2226e4 generate ChangeLog from Subversion log
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@597 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-04-19 09:11:53 +00:00
Patrick Ohly d0885a01b0 added comment about pre-releases
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@589 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-04-17 18:19:03 +00:00
Patrick Ohly 173f7f0097 added SYNCEVOLUTION_CXXFLAGS: use it to set flags for SyncEvolution source files
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@536 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-03-24 21:41:20 +00:00
Patrick Ohly f7a9eb592d beware of the need to update 'stable' and 'chinook' repositories when releasing for Maemo
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@493 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-02-02 21:32:48 +00:00
Patrick Ohly 420afaf14b Replaced "is a" SQLiteSyncSource with "has a" SQLiteUtil instance in SQLiteContactSource.
This is a first step towards deriving SQLiteContactSource from a sync source base
class which does change tracking.


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@483 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-01-12 23:22:43 +00:00
Patrick Ohly 93e722f290 added list of debug packages
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@467 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-12-06 18:53:30 +00:00
Patrick Ohly 2ec73e7381 separated compile and release instructions
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@448 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-11-08 21:19:59 +00:00
Patrick Ohly e92b175b0d added compile/packaging information
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@404 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-07 19:24:54 +00:00
Patrick Ohly 4aa5372687 port to iPhone: lots of hacks and debug output, none of the multiprops supported yet (use unknown format in API)
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@399 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-04 20:54:27 +00:00
Patrick Ohly 937ed5ffc3 # release 0.6
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@375 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-07-09 20:24:21 +00:00
Patrick Ohly 83cfd5f201 updated testing instructions
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@369 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-06-19 17:36:45 +00:00
Patrick Ohly 614d3b5210 - improved logging: log file and backup can be avoided with logdir=none,
loglevel is configurable
- fixed off-by-one counting of months in backup directory names
- only one example configuration per server, users typically do not
  need the _1/2 suffices and the testing system no longer has to be
  configured manually either
- documented the switch from the original SyncEvolution testing to its
  successor, the generic Funambol C++ client testing framework


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@362 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-04-21 12:33:23 +00:00
Patrick Ohly 5cbc7c0e6d added note about building Maemo package with fakeroot
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@359 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-04-15 13:41:56 +00:00
Patrick Ohly 1bbbec4440 various release preparations
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@341 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-03-26 20:35:08 +00:00
Patrick Ohly 0a440c66ad - fixed building synccompare for Maemo
- added/fixed rules to build for Maemo
- add new Algorithm::Diff files to source distribution


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@336 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-03-25 20:19:42 +00:00
Patrick Ohly 96b85e9457 allow running multiple tests by specifying them on the command line
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@279 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-11-03 17:40:34 +00:00
Patrick Ohly 91024bd611 added note about .patches
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@200 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-08-06 15:48:20 +00:00