[Hackage] #643: Cabal should warn & detect when no modules are imported/used from a declared dependency

Hackage trac at galois.com
Sun Mar 14 17:54:21 EDT 2010


#643: Cabal should warn & detect when no modules are imported/used from a
declared dependency
-----------------------------+----------------------------------------------
  Reporter:  guest           |        Owner:      
      Type:  enhancement     |       Status:  new 
  Priority:  low             |    Milestone:      
 Component:  Cabal library   |      Version:  HEAD
  Severity:  normal          |     Keywords:      
Difficulty:  hard (< 1 day)  |   Ghcversion:      
  Platform:                  |  
-----------------------------+----------------------------------------------
 For context, see:

 http://www.haskell.org/pipermail/libraries/2010-March/013115.html
 http://www.haskell.org/pipermail/libraries/2010-March/013155.html
 http://www.haskell.org/pipermail/libraries/2010-March/013157.html

 Not a few Haskell packages had declared in their .cabal files that they
 used the 'haskell98' package; but they never imported anything from
 haskell98 (such as the Monad or List modules), as proven by simply
 removing the dependency and noting that it continued to compile.

 Apparently the authors were mistaken about the use, had updated the old
 module imports, or believed haskell98 did something it didn't.

 The authors never knew, because neither GHC, Cabal, nor cabal-install
 would ever warn about the superfluous dependency. Given that dependencies
 can cause failures quite easily via bit-rot or the diamond dependency
 problem, otiose deps are quite bad.

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



More information about the cabal-devel mailing list