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

Xapian nobody at xapian.org
Wed Dec 2 22:44:55 GMT 2015


#63: Improve visibility annotations for the library
-------------------------+------------------------------
 Reporter:  olly         |             Owner:  olly
     Type:  enhancement  |            Status:  assigned
 Priority:  low          |         Milestone:  1.4.x
Component:  Library API  |           Version:  SVN trunk
 Severity:  minor        |        Resolution:
 Keywords:               |        Blocked By:
 Blocking:               |  Operating System:  Linux
-------------------------+------------------------------
Changes (by olly):

 * milestone:  1.3.5 => 1.4.x


Comment:

 And [4b3e73c87dac176437b985faebc50ebfecad566a] cleans up `ChertCursor` and
 `ChertTable`.

 Updated list of where `XAPIAN_VISIBILITY_DEFAULT` is used outside of
 `include/xapian/' in xapian-core:

  * api/replication.h: Replication was originally an external API, but we
 weren't entirely happy with it.  Perhaps whatever that was ought to be
 sorted out and these made external API features.  `DatabaseMaster` and
 `DatabaseReplica` need to be visible for `xapian-replicate` and `xapian-
 replicate-server`.  There was some discussion of the idea that replication
 should be split into creating changesets, transporting changesets and
 applying changesets, so you could transport the changeset files by other
 means (replication by sneakernet, etc), but I think that's out of scope
 for 1.3.x at this point.
  * net/: `RemoteServer`, `RemoteTcpServer`: Used by `xapian-progsrv` and
 `xapian-tcpsrv`.  Perhaps ought to be available via the API to allow other
 forms of remote server.
  * net/: `ReplicateTcpClient`, `ReplicateTcpServer`: Used by `xapian-
 replicate` and `xapian-replicate-server`.  It seems silly we need these as
 well as the (originally public) API above - I guess it's for the TCP
 support code.
  * net/tcpserver.h: `TcpServer` used via subclasses in `bin/xapian-
 tcpsrv.cc` and `bin/xapian-replicate-server.cc`.

 I think we need to punt on the rest for this development cycle.  The only
 quick change I can see is making them public APIs, which wouldn't actually
 reduce the symbol count.

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



More information about the Xapian-tickets mailing list