tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Add curses_version() in curses(3)



On Wed, Aug 28, 2019 at 10:42:13PM -0400, Thor Lancelot Simon wrote:
> On Wed, Aug 28, 2019 at 01:54:54AM +0100, Roy Marples wrote:
> > > > > 
> > > > > Where 8.2 is taken from the .so version?
> > > > > 
> > > > > Roy
> > > 
> > > I think that it would be confused with NetBSD release and it could be
> > > meaningless/confusing for downstream users that just pick the code as is
> > > and can pick different major/minor.
> > 
> > Then I'm against this being added because it adds nothing of value.
> > 
> > I note that PD curses also supports curses_version() with something similar
> > to my proposal.
> 
> The problem with using the solib version is that it may differ on
> platforms derived from NetBSD even if the curses API is exactly the same.
> 
> This would, for example, have been the case on EQ/OS which I maintained
> at Coyote Point - we bumped all the shlib versions at least once because
> of a change to libc.

Sorry, hit send a little early and left out the ugliest detail.

The problem then really is that if, let's say, my EQ/OS libcurses had
reported 9.2 for a libcurses that was called 8.2 in NetBSD, when NetBSD
bumps its libcurses to 8.2 for real API-change reasons within libcurses,
my version will look like it has the API change but actually it won't.

You really don't want to use the solib version for this sort of thing
because it will not mean the same thing on different platforms for the
exact same version of the code implementing the API, because it must be
bumped every time the library's *ABI* changes -- and that must be done
every time some library upon which _it_ depends changes, in turn.

A version like __NetBSD_Version should be used.

- 
 Thor Lancelot Simon	                                     tls%panix.com@localhost
  "Whether or not there's hope for change is not the question.  If you
   want to be a free person, you don't stand up for human rights because
   it will work, but because it is right."	--Andrei Sakharov


Home | Main Index | Thread Index | Old Index