[Cubicweb] CW app distribution with a not brand new cw version

Florent Cayré florent at secondweb.fr
Tue Apr 20 23:10:06 CEST 2010


first, I was really doubtful regarding apt-get inability to handle
exact version dependencies so I tested it on a very simple case :
test1 depending on test2 version 0.1.0-1, conflicting with test2 >=
0.1.1-1 and... it does really fail :

apt-get -s install test1
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
  test1: Depends: test2 (= 0.1.0-1) but it is not going to be installed
E: Broken packages

I am still surprised how naive apt-get is in this situation, always
trying to install the most up-to-date version of all dependencies,
ignoring the packages' indications...

Well, that said, I am not sure it is a good idea to write a helper
script that would compute the real dependencies and force apt-get
using its output versions as you suggest. I would rather prefer
distributing all needed packages in a customer dedicated repo (as you
do yourself I believe), as I already do anyway (but without any cw
package for the moment).

Your document addresses a bunch of other (more or less related) points
however, and is of great value for people working with cw (especially
public APIs imo). I would add some requirements though :

* move a lot of cw debian/control Recommends section content (if not
all) into Suggests section : "final" cubes (i.e. top-most cubes) can
easily add dependencies if needed ; adding --no-install-recommends to
apt-get install command is an ugly way not to install too much
packages (imo)

* make it easy (if not already done, in which case a pointer to the
corresponding doc would be highly appreciated in response to this
email ;-) ) to setup a development environment (using mercurial
forest) for a given cw version (and corresponding cubes dependencies),
and give another cw version a try

Thanks for all the work,

2010/4/20 Nicolas Chauvat <nicolas.chauvat at logilab.fr>:
> Hi,
> On Tue, Apr 20, 2010 at 05:19:26PM +0200, Sylvain Thénault wrote:
>> Configuration management with the debian packaging system
>> =========================================================
>> ...
> I second that.
>> Logilab:
>> * will maintain two public debian repositories: logilab-public and
>>   logilab-public-stable. The first one being kindof staging place for test of
>>   packages before they are allowed to move on the stable one.
>> * may decide everytime (once a year) to kill the bw compat code and procuce
>>   a X+1 release
> Let us replace 'Logilab:' with 'The team maintaining CubicWeb:' to
> include our fellow cubistas from SecondWeb, CreaLibre, etc.
> We do not want to break everything (even once a year) without
> discussing it on this list first.
> But again, the above scheme looks good because it makes it clear what
> are the public APIs and up to when backward compatibility is guaranteed.
> --
> Nicolas Chauvat
> logilab.fr - services en informatique scientifique et gestion de connaissances

Ce message est la propriété de SecondWeb et peut contenir des
informations confidentielles. Si vous n'êtes pas le destinataire
désigné, nous vous remercions de bien vouloir nous en aviser
immédiatement et de nous retourner ce message ou de le détruire, sans
faire un quelconque usage de son contenu, ni le communiquer ou le
diffuser, ni en prendre copie, électronique ou non.

This message is the property of SecondWeb and may contain confidential
information. If you are not the designated recipient, please notify us
immediately and return the message to us or destroy it, without making
any use whatsoever of the contents thereof. Furthermore you should not
forward or copy the message by electronic or other means.

More information about the Cubicweb mailing list