[Xapian-tickets] [Xapian] #63: Improve visibility annotations for the library

Xapian nobody at xapian.org
Fri Jul 17 15:09:07 BST 2009


#63: Improve visibility annotations for the library
-------------------------+--------------------------------------------------
 Reporter:  olly         |        Owner:  olly     
     Type:  enhancement  |       Status:  assigned 
 Priority:  low          |    Milestone:  1.2.0    
Component:  Library API  |      Version:  SVN trunk
 Severity:  minor        |   Resolution:           
 Keywords:               |    Blockedby:           
 Platform:  Linux        |     Blocking:           
-------------------------+--------------------------------------------------
Changes (by olly):

  * milestone:  1.1.4 => 1.2.0


Comment:

 I've removed three symbols which didn't need to be visible at all.  All
 the rest seem to be currently used.

 We could improve things further by having a "standalonetest" which '''does
 not''' link to libxapian, and move some of the internaltest testcases
 there.

 But there are some obstacles:

   * testsuite.cc currently pulls in backendmanager stuff (which is
 shouldn't really anyway
     as this is meant to be a generic test harness).

   * testsuite.cc has a catch for Xapian::Error (again, it shouldn't
 really).  Richard's
     idea to fix this is a call-back function - we can use the {{{catch
 (...)}}} and
     rethrow trick that xapian-bindings uses to rethrow the exception in
 the callback
     function and process it there.

   * Some of the internals tested aren't as standalone as perhaps they
 ought to be - e.g.
     mixing generic and Xapian-specific code in the same file, throwing
 Xapian::Error
     subclasses from otherwise generic code.

 Also, if it is just a case of changing a non-API symbol from visible to
 hidden, that isn't
 an ABI breaking change, as no user code should be linked to that symbol.
 So we can address
 this in 1.2.x without issues.

 So I'm going to bump the milestone now.

-- 
Ticket URL: <http://trac.xapian.org/ticket/63#comment:14>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list