Re: NetworkManager 0.7 Released



On Sat, Nov 29, 2008 at 10:50:40PM -0500, Dan Williams wrote:
> On Sat, 2008-11-29 at 22:59 +0100, Sjoerd Simons wrote:
> Well... libnm-util did, but libnm-util for 0.6 was only meant to be used
> between the applet and NM itself.  libnm_glib ABI/API should be the same
> between 0.6 and 0.7, because the 0.7 libnm_glib actually includes all of
> the 0.6 libnm_glib.

The NM applet is still an external application though and libnm-util is still
a proper library. So proper library versioning is still something that needs to
be done. Especially if nothing actually used it, then bumping the soname
shouldn't be a hassle.

> What specifically doesn't work with the new libnm_glib that used to work
> with 0.6?  AFAIK any 0.6 app linked against libnm_glib should still be
> able to use the new libnm_glib.

Everything that uses nm_utils_essid_to_utf8 or nm_dbus_escape_object_path_item
for example, which were symbols exposed by libnm_glib. If these weren't meant
to be exposed then you might get away with not bumping the soname of -glib. As
only those that actually pay attention will notice.

> What _doesn't_ work is parallel-installing NM 0.6 and NM 0.7.

The deamon sure.

> Ideally we don't break the libnm-util or libnm-glib API/ABI for post-0.7
> unless we really have to, at which point the patch becomes useful...

I don't think sticking your head in the sand and ignoring everything before 0.7
is responsible upstream maintaince. Things do break in ways they shouldn't when
moving to 0.7 (the applet being the prime example here). Really bumping sonames
is relatively and there are no excuses for not doing them when needed.

But yes, proper library maintaince is hard and almost everybody gets it wrong
by not paying enough attention from the start to what actually their API/ABI
is...

  Sjoerd
-- 
The truth of a thing is the feel of it, not the think of it.
		-- Stanley Kubrick


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