[Hackage] #889: Add option to list recursive dependencies of a package along with their licenses

Hackage cvs-ghc at haskell.org
Tue Sep 27 23:20:54 CEST 2011


#889: Add option to list recursive dependencies of a package along with their
licenses
---------------------------------+------------------------------------------
  Reporter:  joeyadams           |        Owner:      
      Type:  enhancement         |       Status:  new 
  Priority:  normal              |    Milestone:      
 Component:  cabal-install tool  |      Version:  HEAD
  Severity:  normal              |     Keywords:      
Difficulty:  unknown             |   Ghcversion:      
  Platform:                      |  
---------------------------------+------------------------------------------
 It should be possible to list all of the dependencies of a package,
 including their licenses.  This would be useful for:

  * Developers writing proprietary applications.

  * Developers who don't want their liberally-licensed libraries to be
 "upgraded" to the GPL or similar by subtle dependencies.

 Attached is a simple patch that makes cabal-install list this information
 when the verbosity level is 2 or higher.  Sample usage:

 {{{
 $ cabal install --verbose=2 --dry-run gnutls
 Reading available packages...
 Resolving dependencies...
 base         BSD3
 bytestring   BSD3
 ffi          BSD3
 ghc-prim     BSD3
 gnutls       GPL (Just (Version {versionBranch = [3], versionTags = []}))
 integer-gmp  BSD3
 monads-tf    BSD3
 rts          BSD3
 transformers BSD3
 In order, the following would be installed:
 monads-tf-0.1.0.0 (new package)
 gnutls-0.1 (new package)
 }}}

 This is a quick hack, as I am not familiar with the Cabal codebase.  This
 should probably be wrapped as a {{{--list-licenses}}} command line switch.
 Pretty-printing licenses would be a plus.

 I am already finding this feature useful, and hope others will too.

-- 
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/889>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects



More information about the cabal-devel mailing list