guile-devel
[Top][All Lists]
Advanced

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

Re: api differences between 1.4 and 1.6


From: Thien-Thi Nguyen
Subject: Re: api differences between 1.4 and 1.6
Date: Tue, 19 Feb 2002 15:45:04 -0800

   From: Rob Browning <address@hidden>
   Date: Tue, 19 Feb 2002 09:40:15 -0600

   You mean jump the interface number to 20?  I guess we could do that,
   but will that work right with respect to libtool and (retroactively)
   inserting older updates like 12, 13, 14, etc.?  (See "Libtool's
   versioning system" node in libtool info).

   Libtool's model looks like it was primarily designed to handle
   monotonic increases and doesn't want you to pick the major numbers
   directly yourself, so I want to make sure that trying to leave
   "headroom" will actually work the way we want it to.  Anyone know
   offhand?

based on the above cited info page, my reasoning is thus:

libtool handles "compatibility ranges" of versions, where compatibility
is roughly defined as availability of a certain symbol (uniquely naming
some object).  between release A and B, if no symbols are deleted, B is
said to be compatible w/ A, and so the range specified by B's `CURRENT -
AGE' can include A.

in our case, we know apriori that there are a non-zero number of deleted
symbols between libguile 9.0.0 and the libguile released w/ guile-1.6.x,
necessitating an AGE of 0 for that release.  this explicit declaration
of non-compatibility is what frees us to set its CURRENT arbitrarily (to
answer the "is it possible" question).

now to answer the "why" question: this freedom can be used in many ways,
including not using it, but IMHO a good use would be to help migration
in some way.  migration is best served w/ small steps; impulse functions
from space didn't really help the dinosaurs, like they say.  we have
already identified a symbols (the lt_* provided by libltdl) that can be
removed as a group and there are probably other such smallish groupings,
each of which can be mapped to a step, i.e., a change in CURRENT.

does this make sense?

thi



reply via email to

[Prev in Thread] Current Thread [Next in Thread]