
Hello Richard, Thanks for the comments. I've created a wiki page here: https://ghc.haskell.org/trac/ghc/wiki/TemplateHaskell/PackageKeyChanges
packageVersionString :: Package -> String -- maybe use a newtype here? or the proper Cabal datatype? packageName :: Package -> String -- use the old PkgName here? or is that confusing?
packageDependencies :: Package -> Q [Package] -- could be very useful in printing debugging information. Then, if you're writing a library that -- is sensitive to dependency versions, you can print this info out when you panic
OK, we can plan on adding this information.
I'm -1 on #3 if it will break code. You can already get current package information through the `qLocation` function.
This is true. However, qLocation returns a String. Should we change it to return a PkgKey? (Could break users of the information.) I don't know know if the name and version should get newtyped. If we do newtype them, should qLocation also be updated accordingly? Thanks, Edward