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

Re: Upgrading libdbi-ocaml-dev in unstable brings in lots and lots of packages ...



On Mon, Aug 09, 2004 at 04:36:34PM +0200, Sven Luther wrote:
> If you have libdbi-ocaml-dev installed, and no driver or only some
> of them, will you still be able to use libdbi-ocaml-dev to develop
> software ? to build mod-caml for example ?

In the particular instance of mod_caml, there is no actual dependency
between mod_caml and ocamldbi any more.

mod_caml previously depended on a module called Dbi.Factory which was
part of ocamldbi.  However, I removed Dbi.Factory from ocamldbi, and
rewrite mod_caml to use a functor approach.  All mod_caml needs is a
module which contains a 'type connection' and various functions like
'val connect : ... -> connection' and 'val rollback : connection ->
unit'.  Modules that look like this happen to be supplied by ocamldbi,
but there is no actual necessary dependency.

If you have libdbi-ocaml-dev installed, but didn't have any drivers
installed, then the extent of your development work would be quite
limited.  You could write programs which linked to dbi.cma, but they
wouldn't do very much of interest.

As soon as you tried to use one of the drivers in libdbi-ocaml-dev,
eg. if you tried to link your program with dbi_postgres.cmo, then
you'd get an error.  You would need to install libpgsql-ocaml-dev to
proceed with the linking.  This would be fairly obvious, because the
way to link a PG program anyway is:

  ocamlc -I +pcre -I +postgres -I +dbi \
    pcre.cma postgres.cma dbi.cma dbi_postgres.cmo program.ml

However, think of the alternative!  Which is that we have a
libdbi-ocaml-dev with so many dependencies it needs half of X install
to make it work!

Reading the policy manual
(http://www.debian.org/doc/debian-policy/ch-relationships.html), this
seems like what they had in mind for "Suggests".

Rich.

-- 
Richard Jones. http://www.annexia.org/ http://www.j-london.com/
Merjis Ltd. http://www.merjis.com/ - improving website return on investment
MAKE+ is a sane replacement for GNU autoconf/automake. One script compiles,
RPMs, pkgs etc. Linux, BSD, Solaris. http://www.annexia.org/freeware/makeplus/



Reply to: