#423 Bundling exception request (copylib) for TommyDS library used in SnapRAID
Closed: Fixed None Opened 5 years ago by brouhaha.

In the package review of SnapRAID package (bug #1055366), reviewer Christopher Meng points out that there SnapRAID contains a bundled library TommyDS, by the same author, Andrea Mazzoleni. Upstream does not provide a method for building TommyDS as a shared library, but I set out to do that, and submitted a package review (bug #1089523). I emailed the patches to build TommyDS as a shared library to the author, in case he wanted to merge them.

In an email reply, Mr. Mazzoleni strongly recommended against this course of action. He says "TommyDS is not designed to be a dynamic library. It makes a big uses of inlines, meaning that it exposes a lot of internal details of the library, making ABI version management very difficult. In fact, even using the same version, with different compiler options may result in incompatible binaries."

He also raises the issue that he extensively tests SnapRAID with the bundled version of TommyDS, to ensure data integrity, and would not want it to be built with a different version of TommyDS that it hasn't been tested against.

I think the "different compiler options" wouldn't be a problem for Fedora since it will be compiled with %{optargs}, but the other issues seem legitimate. It also appears that there are at least a few manifest constants in the TommyDS headers that are intended to be tweakable for application-specific tuning.

I request that TommyDS be granted a bundling exception as a copylib.

It does not appear that TommyDS is presently used in any other Fedora package, nor that there has been any other expressed intention to package it for Fedora.

info SnapRAID is allowed to bundle TommyDS library for the following reasons: Same upstream for both, tweaking header values to configure the library at buildtime (copylib), and SnapRAID is the only user of TommyDS. Please see us again if any of that changes. Approved (+1:5, 0:0, -1:0)

Metadata Update from @toshio:
- Issue assigned to tibbs

2 years ago

Login to comment on this ticket.