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

Re: Small package or big dependencies?



Hi Joachim.

Excerpts from Joachim Breitner's message of Ter Ago 03 11:30:05 -0300 2010:
> Am Dienstag, den 03.08.2010, 09:41 -0300 schrieb Marco Túlio Gontijo e
> Silva:
> > Excerpts from Joachim Breitner's message of Ter Ago 03 09:10:05 -0300 2010:
> > (...)
> > > Am Dienstag, den 03.08.2010, 09:45 +0200 schrieb Giovanni Mascellani:
> > > > Il 02/08/2010 22:16, Marco Túlio Gontijo e Silva ha scritto:
> > > > > If gitit demands the exact version of libhgc6-filestore-data, this would not
> > > > > happen.  Or maybe some versioning constraint that is garanteed to work with the
> > > > > version of filestore that was used to build gitit.  For me, it seems that this
> > > > > is the most general solution, and I'd go with it.
> > > > 
> > > > Given that this solution (-data package with strict dependencies) seems
> > > > to be the only one without possible break scenarios, I'll implement
> > > > that. Of course, if better ideas will come up, I'll change the
> > > > implementation.
> > (...)
> > > The problem is that such a dependency will have to be added to gitit, so
> > > debian/rules of gitit will have to figure out the correct version, and
> > > install it into the Depends line via a substvars.
> > 
> > I think this kind of dependency constraints should ideally be specified in the
> > .cabal file, so that the debian maintainer will only need to add them to
> > debian/control.  I don't think we should strict to the exact version of the
> > library package that was used to make the build.  Sometimes upstream developers
> > may break things, but that should not be the usual scenario.
> 
> I can’t follow you. What .cabal file should sepcify what dependency?

gitit's .cabal file.

> Note that the format of a library’s data files should not be considered
> part of the API of the library and the library maintainers are free to
> change the data in a new version, while retaining the API. In our
> example, gitit’s dependency on filestore specifies which version of
> filestore gitit expects to build, not which version of the filestore
> data the filestore code (which gets linked into gitit) expects.

Yes, I was under the assumption that if gitit's .cabal file has a constraint
like, for instance, >= 4 && < 5, it would work witht the data files from all
versions in this range, even if the build occurred with another version.  Maybe
this is a too strong assumption.

If it is, the code to include a dependency with the exact version can be
incorporated to haskell-devscripts, although it'll surely need a manual
specification of the -data packages the built package should depend on.

Greetings.
(...)
-- 
marcot
http://wiki.debian.org/MarcoSilva

Attachment: signature.asc
Description: PGP signature


Reply to: