unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* packaging the add-on libs...
@ 2002-10-10  5:03 Rob Browning
  2002-10-10  7:12 ` tomas
  2002-10-10 12:51 ` Greg Troxel
  0 siblings, 2 replies; 12+ messages in thread
From: Rob Browning @ 2002-10-10  5:03 UTC (permalink / raw)



I spoke with Marius a little while back about some of the complexities
involved in properly managing the versioning of our add-on libs, both
those we provide, and those provided by others, and working on
packaging guile 1.6 makes some of these issues clearer and more
immediate.

Consider libguile-srfi-srfi-4-v-1 which will be linked against a
particular libguile.  What guarantees are we going to make about
future releases of this add-on lib?  Do we guarantee that we'll always
change its major number whenever we release a new libguile?  It seems
like we must, since otherwise we could have outside apps or libs
linked against a set of add-on libs that point to a mixed set of
libguile versions.

As an example, say libguile13 ships with libguile-foo-v-1 and
libguile-bar-v-7, and libguile14 ships with libguile-foo-v-2 and
libguile-bar-v-7.  At this point we have a problem.  Any older app on
the system that was originally linked against libguile13,
libguile-foo-v-1, and libguile-bar-v-7 would still have all its
package depdendencies satisfied and would link at runtime without any
problems (at least I think it would), but it would be using libguile13
via foo and libguile14 via bar.

Presuming my analysis is right, I guess maybe we can just try to make
sure the rules about versioning your add-on libraries are clear, but
I'm concerned that a lot of people (especially people writing add-on
libs outside the core -- if we end up with a lot of them) may not
always remember or know the rules, and it seems like the resulting
bugs could be subtle and hard to track down.

One clear solution might be to just establish the convention that you
always embed the libguile major version number in the add-on lib's
name.  This seems like it would eliminate the possibility for error on
this front, but is a little unusual. i.e. instead of
libguile-srfi-srfi-4-v-1, etc., you'd have:

  libguile12-srfi-srfi-4-v-1
  libguile12-srfi-srfi-13-14-v-3
  libguile12-foo-bar-v-4

etc. 

Thoughts?

-- 
Rob Browning
rlb @defaultvalue.org, @linuxdevel.com, and @debian.org
Previously @cs.utexas.edu
GPG=1C58 8B2C FB5E 3F64 EA5C  64AE 78FE E5FE F0CB A0AD


_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/guile-devel


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2002-10-14 11:34 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-10-10  5:03 packaging the add-on libs Rob Browning
2002-10-10  7:12 ` tomas
2002-10-10 15:22   ` Rob Browning
2002-10-11  9:41     ` tomas
2002-10-11 15:59       ` Rob Browning
2002-10-14 11:34         ` tomas
2002-10-11 16:14       ` Rob Browning
2002-10-11 17:10         ` Greg Troxel
2002-10-11 18:26           ` Rob Browning
2002-10-11 20:37             ` Greg Troxel
2002-10-10 12:51 ` Greg Troxel
2002-10-10 15:37   ` Rob Browning

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).