Daniel P. Berrangé <berra...@redhat.com> writes: > The traditional way is for developers to update the dependancies to have > an explicit version against the library they require. eg if libvirt requires > some symbol introduced in nettle x.y, the maintainer would add > > Requires: nettle >= x.y > > the problem is that humans are fallible and so these versioned dependancies > frequently get missed, because package maintainers don't often have accurate > info on which min version is needed by a build.
I agree it's going to be a bit brittle to do that manually. E.g., in the example at hand, the package source code only used the old nettle_hashes symbol, but the new version of nettle headers turned that into a macro calling a new function. What I would suggest is filling out the >= x.y automatically based on the version of nettle header files actually used when compiling the package. As far as I see, that should be both reliable and fairly easy (get the version either from package metadata, or from nettle/version.h, whatever fits the package building tools best). It might sometimes produce an unnecessarily strict dependency (specifying a version higher than really necessary), but I think that's a lot better then erring in the other direction. > The only scope for errors here is when the > nettle developers are creating the symbol version file, That's me... And I imagine we'll get into the territory of subtle breakages the first time I mess up an update to that file. > and this is pretty > minor IME maintaining such version files for libvirt. How do you write testcases to verify that the version list is correct? Regards, /Niels -- Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677. Internet email is subject to wholesale government surveillance. _______________________________________________ nettle-bugs mailing list nettle-bugs@lists.lysator.liu.se http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs