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

Xapian nobody at xapian.org
Sat May 6 22:52:20 BST 2023


#63: Improve visibility annotations for the library
-------------------------+-------------------------------
 Reporter:  Olly Betts   |             Owner:  Olly Betts
     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
-------------------------+-------------------------------
Comment (by Olly Betts):

 We can't just move `ReplicateTcpClient` and link it only into `xapian-
 replicate` because it uses `RemoteConnection` so we'd need to expose that
 in the library ABI instead.  Similarly for `ReplicateTcpServer`.

 I tried this and then had to move various other things around and add ABI
 visibility to `TcpClient` as well as `RemoteConnection`.

 In exchange, I removed ABI visibility from `ReplicateTcpClient`,
 `ReplicateTcpServer` and `TcpServer`.

 I need to check if this is actually a win in terms of symbols in the ABI.
 `TcpClient` is just a single method in a namespace (so one symbol) but
 `RemoteConnection` has quite a lot of methods.

 Maybe more refactoring could establish a cleaner split point.
-- 
Ticket URL: <https://trac.xapian.org/ticket/63#comment:28>
Xapian <https://xapian.org/>
Xapian


More information about the Xapian-tickets mailing list