On 09/30/2015 01:22 PM, Rich Freeman wrote: > On Wed, Sep 30, 2015 at 2:35 AM, Paweł Hajdan, Jr. > <phajdan...@gentoo.org> wrote: >> On 9/29/15 3:32 PM, Rich Freeman wrote: >>> The thing is that I think the libressl authors are shooting themselves >>> in the feet. When upstreams do this sort of thing they think they're >>> making the upgrade path easier by not changing their symbol names. In >>> reality, they're making the upgrade path harder by preventing >>> side-by-side adoption of the new solution. >> >> Yeah, it's not that obvious how to handle it best. >> >> Curious - how would the alternative look like? My reasoning is that if >> upstream changes symbols, that makes it easy for a distro to install it >> side-by-side. However, for anything to use such modified lib, they'd >> need to change all callers to use the alternative function names, >> wouldn't they? > > Essentially, or somebody has to write a wrapper library. But, once > you start changing the APIs everybody has to start tweaking their code > anyway to use the modified function prototypes. Of course, they only > need to tweak the 10% of functions that changed, and not all of them. > > Effectively it would mean that the new library would start out with > zero users, which is why nobody does it that way. However, I think > the end result is worse, unless you maintain strict compatibility. > > It hasn't been as much of a problem with mariadb because they haven't > gone changing all their APIs/protocols/etc. > > This is the sort of thing that Java was trying to stop with their > compatibility requirements, and what a lot of companies try to do with > trademark. The problem is that trademark doesn't really extend well > into things like symbol names and APIs. > > Perhaps the in-between solution would be for forking upstreams to > preserve the same symbol names as long as the APIs are identical, and > change them when they are not. I don't really see that having any > more impact on downstream consumers than silently changing the APIs > and it would probably get rid of the symbol collision problem. >
Again: can you take that to libressl mailing list or start another thread?