Rank Stabilization Project GSOC 2016 ( Updated)

James Aylett james-xapian at tartarus.org
Thu Mar 10 11:31:35 GMT 2016

On Thu, Mar 10, 2016 at 04:59:15AM +0530, Tejas Ravichandran wrote:

> I would like to have more insight into the Learning to Rank Project and
> preferably some prior task/project that i could work on to get myself more
> equipped to contribute for the same.

Hi, Tejas -- we spoke briefly on IRC last night, but welcome to

There's a lot of detail already on the project's individual wiki page
but if anything's unclear or you have questions about any part of it
then please do ask them.

In terms of a small task to prepare, I'd recommend:

a. Get the existing xapian-letor code building (remote its
   .nobootstrap file), to make sure it actually compiles at all (one
   of the disadvantages of it being marked nobootstrap is it doesn't
   get automatically built by any of our test processes, so the code
   may not work with the latest compiler &c).

   In the state it's in, it's not useful code. (This is because the
   Xapian master branch only contains commits until just before one
   previous project introduced code with an inappropriate license.)
   But getting it to compile is a good first step. You could also
   check that you can compile 

b. Look at improving test coverage for the main Xapian library. Since
   unfortunately our lcov website is currently down, you'll want to
   install lcov yourself and generate a test coverage report (see
   for some pointers).

   The coverage report will indicate places in the core library where
   we have poor test coverage. Adding tests to cover a function or
   method that isn't tested at the moment will therefore improve the
   quality of our test suite.

   The LTR stabilisation project is going to be heavy on writing tests,
   so this is a good way to prepare for it. You'll want to use the
   same test harness that we use in xapian-core when you get to


  James Aylett, occasional trouble-maker

More information about the Xapian-devel mailing list