Hi all,
I'm trying to run
$ stack exec -- sensei-web SomeFile.hs
in a project with a stack file. (`sensei-web` is a tool that invokes `ghci` to compile code and run test-suites, similar to `ghcid`.) The project adds a custom version of the package `cereal` in its stack file. Unfortunately, I already have the snapshot version of `cereal` installed in my `$HOME/.stack`. Here you can see that I have both packages available:
$ stack exec -- ghc-pkg list cereal
/home/shahn/.stack/programs/x86_64-linux/ghc-7.10.3/lib/ghc-7.10.3/package.conf.d
/home/shahn/.stack/snapshots/x86_64-linux/lts-6.3/7.10.3/pkgdb
cereal-0.5.2.0
/home/shahn/project-dir/.stack-work/install/x86_64-linux/lts-6.3/7.10.3/pkgdb
cereal-0.4.1.1
I expect the same problem to appear when trying to do e.g.:
$ stack exec ghci ...
$ stack exec runhaskell ...
$ stack exec doctest ...
$ stack exec ghcid ...
$ stack exec dead-code-detection ...
Is there a good way to hide `cereal-0.5.2.0`? Either through environment variables or through something in the `.ghci` file in that project?
Generally it'd be nice if there was a way to let `stack` create an environment, where `ghc` (i.e. `ghc` the executable, `ghci`, `runhaskell` and `ghc` the library) just works. Not sure that's feasible though.
Thanks for any advice,
Sönke