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

Re: inter libraries dependencies again



On Sun, Feb 02, 2003 at 11:12:07AM +0100, Stefano Zacchiroli wrote:
> On Mon, Jan 27, 2003 at 08:53:22AM +0100, Sven Luther wrote:
> > > IMO we should fallback on >=/<< dependencies for build-dependencies and
> > > keep on using virtual names for dependencies.
> > But what about using only the >= dependencies and dropping the << ones ?
> 
> [ I'm assuming that your question is related to build-dependencies ]

Yes, ...

> Uhm ... well yes, we can drop the << and avoid some auto builders delay,
> but we still have to reupload a new package each time we like it to be
> rebuilt against a new library bumping the >= dependency ...

We have to reupload again anyway when there is an incompatible change to
the ocaml compiler or to one of the other library dependencies. The <<
would just help to guarantee that the older library is not built with
the newer ocaml or dependant library, in case that there is some delay
with the autobuilders. Such a library will not be installable though,
since we still use the virtual dependencies to make sure of that.
Again, if there is an incompatible change to one of the dependencies
(ocaml or libraries), then we have to upload a new package anyway.

BTW, i am just thinking of something, for ocaml at least, i could use
dummy packages, so we can go on with our virtual dependencies trick, and
still satisfy the autobuilders.

It would go like this :

ocaml (source) 3.06-16 would have the following packages :

  ocaml-base (3.06-16)

  ocaml-base-3.06-1 (3.06-16) which depends on ocaml-base (= 3.06-16)

  ocaml (3.06-16) which depends on ocaml-base (= 3.06-16)

  ocaml-3.06-1 (3.06-16) which depends on ocaml (= 3.06-16)

  same for native compilers, i don't care for the sources.

This has the added advantage that when we upload 3.07, i can upload a
ocaml-3.06-1 (source) which would have only the ocaml-base-3.06-1 and
ocaml-3.06-1 packages.

Mmm, actually, i can do it the other way around, have a ocaml-3.06-1
source now, which would contain the ocaml-base-3.06-1 and ocaml-3.06-1
packages, and have a dummy ocaml source, which would contain dummy ocaml
and ocaml-base depending on the 3.06-1 ones. When there is a new
release, i keep the ocaml-3.06-1 package around, upload the ocaml-3.07
one, and when it is built on all arches, i can upload the ocaml package,
which now depends on the ocaml-3.07 one.

This would allow us to keep the benefit of virtual packages for ocaml in
dependencies and build-dependencies, and still play nice with the
autobuilders. Also, it would allow us to switch from one version of
ocaml to the other more smootly, without even needing to reupload the
older ocaml package as it is done now. 

That said, i don't really believe that this can also be done for the
libraries, it would be too compliacted ...

That said, if we look at C libraries, the new policy is to have the so
number in the package name, maybe we could do something similar, what do
you think about it, Stefano ?

Friendly,

Sven Luther



Reply to: