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

Xapian nobody at xapian.org
Tue Nov 19 03:15:26 GMT 2019


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

 * milestone:  1.4.x => 1.5.0


Comment:

 [c46ddd7eaa2c8bc3730e169255f87f97f4ce6438] moves `RemoteTcpServer` from
 libxapian to xapian-tcpsrv, since it's only used in the latter.

 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`: 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`.

 This isn't 1.4 material at this point.

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



More information about the Xapian-tickets mailing list