[FTS Xapian] Beta release

Joan Moreau jom at grosjo.net
Mon Jan 14 19:32:47 EET 2019


It is indeed better is you use the issue tracker of github:
https://github.com/grosjo/fts-xapian/issues 

I updated the Readme accordingly 

On 2019-01-14 14:24, Stephan Bosch wrote:

> Op 14-1-2019 om 13:40 schreef Aki Tuomi: 
> 
>> Just to remind that now that there is a github repo for fts-xapian, you could maybe open these issues there instead?
> Although README.md currently says:
> 
> "Please feel free to send your questions, together with the dovecot log file, to jom at grosjo.net <mailto:jom at grosjo.net> or to the dovecot ML dovecot at dovecot.org <mailto:dovecot at dovecot.org>."
> 
> Regards,
> 
> Stephan.
> 
> Aki
> 
> On 14.1.2019 14.29, Odhiambo Washington wrote: Testing a compile on FreeBSD.
> 
> gmake[2]: Entering directory '/usr/home/wash/Tools/Dovecot/fts-xapian/src'
> /bin/sh ../libtool  --tag=CXX   --mode=compile c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/opt/dovecot2.3/include/dovecot      -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp
> libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp  -fPIC -DPIC -o .libs/fts-backend-xapian.o
> fts-backend-xapian.cpp:3:10: fatal error: 'xapian.h' file not found
> #include <xapian.h>
> ^~~~~~~~~~
> 
> Well, I installed xapian-core and the xapian.h is in /usr/local/include/
> 
> I can overcome the fatal error by doing:
> 
> env CPPFLAGS=-I/usr/local/include PANDOC=false ./configure --prefix=/opt --with-dovecot=/opt/dovecot2.3/lib/dovecot/
> 
> Is that something that you can address within the code or we (*BSD) have to live with it?
> 
> During `make`, the following warning is generated:
> 
> /bin/sh ../libtool  --tag=CXX   --mode=compile c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot  -I/usr/local/include -I/opt/dovecot2.3/include/dovecot      -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp
> libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I.. -I/opt/dovecot2.3/include/dovecot -I/usr/local/include -I/opt/dovecot2.3/include/dovecot -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp  -fPIC -DPIC -o .libs/fts-backend-xapian.o
> fts-backend-xapian.cpp:486:14: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
> i_warning(e.get_msg().c_str());
> ^~~~~~~~~~~~~~~~~~~
> fts-backend-xapian.cpp:486:14: note: treat the string as an argument to avoid this
> i_warning(e.get_msg().c_str());
> ^
> "%s",
> 1 warning generated.
> 
> Is that something you can look into as well?
> 
> On Mon, 14 Jan 2019 at 11:43, Joan Moreau <jom at grosjo.net <mailto:jom at grosjo.net>> wrote:
> 
> THank you Odhiambo. I updated accordingly
> 
> On 2019-01-14 08:07, Odhiambo Washington wrote:
> 
> In your README.md, perhaps "This project intends to provide a
> straightforward and simple *procedure *to configure FTS plugin
> for Dovecot, leveraging the efforts by the Xapian.org team." is
> better??
> Also in the part after cloning from git:
> ./configure --prefix=/usr --with-dovecot=/path/to/dovecot [ This
> /path/to/dovecot is not obvious. Is it the dovecot binary or what??]
> 
> On Mon, 14 Jan 2019 at 09:42, Joan Moreau via dovecot
> <dovecot at dovecot.org <mailto:dovecot at dovecot.org>> wrote:
> 
> Thank you Stephan.
> 
> The version here shall be up and running :
> https://github.com/grosjo/fts-xapian
> 
> On 2019-01-14 00:07, Stephan Bosch wrote:
> 
> Op 13/01/2019 om 21:25 schreef Joan Moreau via dovecot:
> 
> I tried to combined it, the "autoreconf" errors are solved
> 
> Now, when I type "make install", the lib is not
> pushed into dovecot folder, but somewhere in
> /usr/local/...
> 
> How to adjust this to have it arriving in the proper folder ?
> 
> Depends on your system. It mostly a matter of setting a
> proper --prefix directory for configure, but other paths
> are configurable as well. I usually check what the
> official distribution package for Dovecot is doing and
> use that as a basis.
> 
> For Debian I use the following configure command:
> 
> ./configure --with-ldap=plugin --with-ssl=openssl
> --with-sql=plugin --with-lua=plugin --with-pgsql
> --with-mysql --with-sqlite \
> --with-gssapi=plugin --with-solr
> --with-ioloop=best --enable-maintainer-mode \
> --prefix=/usr --sysconfdir=/etc
> --libexecdir=/usr/lib --localstatedir=/var
> --mandir=/usr/share/man \
> --infodir=/usr/share/info
> --with-moduledir=/usr/lib/dovecot/modules
> --disable-rpath --disable-static
> 
> Regards,
> 
> Stephan
> 
> On 2019-01-13 21:01, Tuomi, Aki wrote:
> 
> You copied your Makefile.am there. Stephan made
> you a working version, can you try that?
> (sorry for dup)
> Aki
> -------- Original message --------
> From: Joan Moreau <jom at grosjo.net
> <mailto:jom at grosjo.net>>
> Date: 13/01/2019 21:39 (GMT+02:00)
> To: Stephan Bosch <stephan at rename-it.nl
> <mailto:stephan at rename-it.nl>>
> Cc: Aki Tuomi <aki.tuomi at open-xchange.com
> <mailto:aki.tuomi at open-xchange.com>>
> Subject: Re: [FTS Xapian] Beta release
> 
> I used the skeleton from Aki :
> https://github.com/grosjo/fts-xapian
> 
> However, when I try to act as a visitor, I reach teh follwoing error:
> 
> # autoreconf -vi
> autoreconf: Entering directory `.'
> autoreconf: configure.ac
> <http://configure.ac>: not using Gettext
> autoreconf: running: aclocal -I m4
> autoreconf: configure.ac
> <http://configure.ac>: tracing
> autoreconf: running: libtoolize --copy
> libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, '.'.
> libtoolize: copying file './ltmain.sh'
> libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
> libtoolize: copying file 'm4/libtool.m4'
> libtoolize: copying file 'm4/ltoptions.m4'
> libtoolize: copying file 'm4/ltsugar.m4'
> libtoolize: copying file 'm4/ltversion.m4'
> libtoolize: copying file 'm4/lt~obsolete.m4'
> autoreconf: running: /usr/bin/autoconf
> autoreconf: running: /usr/bin/autoheader
> autoreconf: running: automake --add-missing --copy --no-force
> configure.ac:9
> <http://configure.ac:9>: installing './compile'
> configure.ac:11
> <http://configure.ac:11>: installing './config.guess'
> configure.ac:11
> <http://configure.ac:11>: installing './config.sub'
> configure.ac:7
> <http://configure.ac:7>: installing './install-sh'
> configure.ac:7
> <http://configure.ac:7>: installing './missing'
> src/Makefile.am: installing './depcomp'
> /usr/share/automake-1.16/am/depend2.am
> <http://depend2.am>: error: am__fastdepCXX does
> not appear in AM_CONDITIONAL
> /usr/share/automake-1.16/am/depend2.am
> <http://depend2.am>: The usual way to define
> 'am__fastdepCXX' is to add 'AC_PROG_CXX'
> /usr/share/automake-1.16/am/depend2.am
> <http://depend2.am>: to 'configure.ac
> <http://configure.ac>' and run 'aclocal' and
> 'autoconf' again
> src/Makefile.am: error: C++ source seen but 'CXX' is undefined
> src/Makefile.am: The usual way to define 'CXX' is to add 'AC_PROG_CXX'
> src/Makefile.am: to 'configure.ac
> <http://configure.ac>' and run 'autoconf' again.
> src/Makefile.am:11: warning: variable
> 'NOPLUGIN_LDFLAGS' is defined but no program or
> src/Makefile.am:11: library has 'NOPLUGIN' as
> canonical name (possible typo)
> autoreconf: automake failed with exit status: 1
> 
> On 2019-01-13 20:24, Stephan Bosch wrote:
> 
> Oh, right, a distribution tarball doesn't include some of the
> necessary files for your repository like autogen.sh and
> .gitignore. The attached tarball includes all those and is ready
> for `git init`. The previous tarball was made with `make
> distcheck` from this one.
> 
> Regards,
> 
> Stephan.
> 
> Op 13/01/2019 om 20:14 schreef Stephan Bosch:
> 
> Hi Joan,
> 
> Op 13/01/2019 om 19:03 schreef Aki Tuomi:
> 
> Yes, from compiling point of view it is done.
> 
> Unfortunately what is not done is all the other work
> involved, such as fixing all the inevitable bugs it has
> and maintaining it. We do not want, at this moment, take
> up maintaining and developing yet another FTS plugin as
> we have plenty of things to do already.
> 
> I invite you to setup your own repository and provide
> this plugin from there, being the maintainer of this
> plugin. We can add a link to your plugin on our FTS page
> so people can also find it.
> 
> There are other plugins like this, e.g.
> https://github.com/st3fan/dovecot-xaps-plugin
> 
> I turned the code you provided into a separate plugin
> package. The distribution tarball is attached.
> 
> Notable changes:
> 
> - Added example copyright headers and COPYING and AUTHORS
> files. You should modify those to your preference.
> - Added README and INSTALL files (in markdown using Pandoc).
> Those need to be amended with details.
> - Amended the plugin code to display a debug message with the
> plugin name and version upon plugin load.
> 
> I advise you to turn this into a git repository and continue from there.
> 
> I do not recommend releasing this plugin with the
> -fpermissive flag and the resulting warning as it is now. But
> I'm assuming this is still a work in progress, so that is OK.
> 
> Regards,
> 
> Stephan.
> 
> On 13 January 2019 at 19:52 Joan Moreau <jom at grosjo.net
> <mailto:jom at grosjo.net>
> <mailto:jom at grosjo.net
> <mailto:jom at grosjo.net>>> wrote:
> 
> The only point here of this fts-xapian is to get rid
> of solr (because it
> is just a nightmare to setup) and squat (because it is considere
> obsolete).
> 
> I already sent the changed in
> configure.ac <http://configure.ac>, makefile.am
> <http://makefile.am>, etc.. in order
> to include it in the dovecot, and it compiles properly
> 
> The only remaining point is to push it in hte git (yes, everything is
> already done)
> 
> On 2019-01-13 18:45, Aki Tuomi wrote:
> 
> On 13 January 2019 at 17:05 Joan Moreau via
> dovecot <dovecot at dovecot.org
> <mailto:dovecot at dovecot.org>
> <mailto:dovecot at dovecot.org
> <mailto:dovecot at dovecot.org>>> wrote:
> 
> Hi
> 
> Please find attached the beta release of FTS
> Xapian, with the objective
> to replace fts_squat that is being deprecated.
> 
> Configuration is exactly the same as for fts_squat:
> 
> plugin {
> 
> plugin = fts fts_xapian (...)
> fts = xapian
> fts_autoindex = yes
> fts_enforced = yes
> fts_xapian = partial=2 full=20
> 
> This is installed on my production server
> (>120Gb of mailboxes), and I
> will observe it during the coming days.
> 
> I will definitely appreciate that this is added in the core git of
> docevot, in order to have a versionning of
> it, to remove squat and let
> ��           basic users able to avoid Solr alternative as much as possible.
> 
> Thanks
> 
> JM
> 
> Hi!
> 
> I still recommend you setup a, say, github
> repository for your plugin. We are not able to
> currently include your work in dovecot core as it
> is more work than just pushing the code into the
> repo. Maybe it can be included in the future.
> 
> If you want, I can help you in setting up the
> required configuration scripts and such to make
> it possible to compile it as plugin.
> 
> Then anyone can download it and install it for
> their dovecot, even if dovecot itself has been
> installed from packages, and also makes it
> possible for package maintainers to consider
> including it in distributions.
> 
> Aki
> 
> --     Best regards,
> Odhiambo WASHINGTON,
> Nairobi,KE
> +254 7 3200 0004/+254 7 2274 3223
> "Oh, the cruft.", grep ^[^#] :-) 
> 
> -- Best regards,
> Odhiambo WASHINGTON,
> Nairobi,KE
> +254 7 3200 0004/+254 7 2274 3223
> "Oh, the cruft.", grep ^[^#] :-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dovecot.org/pipermail/dovecot/attachments/20190114/e98ce866/attachment-0001.html>


More information about the dovecot mailing list