• sgillespie's avatar
    Improve error message when importing an unusable package · df0f148f
    sgillespie authored
    If a module cannot be found because it is ignored or from an unusable
    package, report this to the user and the reason it is unusable.
    Currently, GHC displays the standard "Cannot find module error". For
    <no location info>: error:
        Could not find module ‘Control.Monad.Random’
        Perhaps you meant
          Control.Monad.Reader (from mtl-2.2.2)
          Control.Monad.Cont (from mtl-2.2.2)
          Control.Monad.Error (from mtl-2.2.2)
    GHC does, however, indicate unusable/ignored packages with the -v flag:
    package MonadRandom-0.5.1-1421RgpXdhC8e8UI7D3emA is unusable due to
    missing dependencies:
    With this change, I took that message and added it to the output of the
    "Cannot find module" message.
    Reviewers: bgamari, dfeuer
    Reviewed By: bgamari
    Subscribers: Phyx, dfeuer, rwbarton, thomie, carter
    GHC Trac Issues: #4806
    Differential Revision: https://phabricator.haskell.org/D4783
Packages.hs 89.2 KB