
On Thu, 13 Dec 2012 11:41:14 +0100, Petr P
For each package, gather the list of the licenses of everything it depends on. I think this would help considerably people who don't want or can't use software licensed under a particular license (most often (L)GPL). In particular, we can have a BSD package that depends on a LGPL package, and this is fine for FOSS developers. But for a commercial developer, this can be a serious issue that is not apparent until one examines *every* transitive dependency.
This idea is a bit vague, because a dependency is actually a range of packages, which in theory could have different licenses. But I suppose this will rarely happen in practice, so it'd be safe just to take the last package in the range (or maybe take all licences of the packages in the range).
cab[0] can do that, for installed packages:
cab deps -i -r -a vector
will generate a list of licenses for the packages that vector depends
upon, like this:
base 4.3.1.0 BSD3 ""
ghc-prim 0.2.0.0 BSD3 ""
rts 1.0 BSD3 ""
ffi 1.0 BSD3 ""
integer-gmp 0.2.0.3 BSD3 ""
ghc-prim 0.2.0.0 BSD3 ""
rts 1.0 BSD3 ""
ffi 1.0 BSD3 ""
rts 1.0 BSD3 ""
ffi 1.0 BSD3 ""
primitive 0.4.0.1 BSD3 "Roman Leshchinskiy