#497: on package not found error: mention "cabal update" ---------------------------------+------------------------------------------ Reporter: Martijn | Owner: byorgey Type: enhancement | Status: new Priority: normal | Milestone: Component: cabal-install tool | Version: 1.6.0.1 Severity: normal | Resolution: Keywords: | Difficulty: very easy (<1 hour) Ghcversion: | Platform: ---------------------------------+------------------------------------------ Comment (by duncan): Applied. {{{ Thu Jun 11 18:12:33 BST 2009 Brent Yorgey <byorgey@cis.upenn.edu> * add message to 'package not found' error advising to run 'cabal update'. (#497) }}} There are two other cases we should think about: {{{ $ cabal install foo-2.0 Resolving dependencies... cabal: There is no available version of foo that satisfies ==2.0 }}} The point is, there is an older version of `foo`, just not the version they're asking for. This might also be done in the `disambiguateDependencies` function, or perhaps a separate check deps function that checks that there is at least some package that satisfies the dependency. Also: {{{ cabal install foo Resolving dependencies... No packages to be installed. All the requested packages are already installed. If you want to reinstall anyway then use the --reinstall flag. }}} This is the case when you're asking for the latest version, but you've already got the latest installed, at least the latest one that we know about. If the index is old at this point then we might not know about some later version. This is a bit harder to check up-front since it's not simply a matter of checking if the package is already installed (eg it might be registered but have broken or inconsistent deps). This error is currently reported in `Distribution/Client/Install.hs` once we discover that the proposed `InstallPlan` has no packages to be installed. This is probably the best place to report since we have access to the installed packages at that point. -- Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/497#comment:4> Hackage <http://haskell.org/cabal/> Hackage: Cabal and related projects