cabal repl failing silently on missing exposed-modules

Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on. The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude. Thanks!

Hi,
I'm not sure if that relate to this problem so please ignore me if not.
I had to spend quite a lot of time understanding what the issue had, when
as you I had forget to add an entry for `exposed-modules` and trying to
build...
Basically I had an error saying that a symbol was missing or something like
that (can remember the exact message), but every time I have that issue it
take me a while to realise I have forget the entry...
I think it's not a type error, it's kind of a linking error maybe that's
why the repl fail silently.
Anyway, I was wondering if it would be possible to give a more helpful
error message in such case.
Cheers
On 6 August 2014 15:18, cheater00 .
Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on.
The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude.
Thanks! _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- *Λ\ois* http://twitter.com/aloiscochard http://github.com/aloiscochard

The simplest thing to fix your case might be to emit an error when a
library is built with no exposed-modules (why would you build it
otherwise?)
On Wed, Aug 6, 2014 at 7:53 PM, Alois Cochard
Hi,
I'm not sure if that relate to this problem so please ignore me if not.
I had to spend quite a lot of time understanding what the issue had, when as you I had forget to add an entry for `exposed-modules` and trying to build... Basically I had an error saying that a symbol was missing or something like that (can remember the exact message), but every time I have that issue it take me a while to realise I have forget the entry...
I think it's not a type error, it's kind of a linking error maybe that's why the repl fail silently.
Anyway, I was wondering if it would be possible to give a more helpful error message in such case.
Cheers
On 6 August 2014 15:18, cheater00 .
wrote: Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on.
The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude.
Thanks! _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- Λ\ois http://twitter.com/aloiscochard http://github.com/aloiscochard

In the last email I meant that I don't see a reason to build a library
without exposed-modules, sorry!
On Wed, Aug 6, 2014 at 11:29 PM, cheater00 .
The simplest thing to fix your case might be to emit an error when a library is built with no exposed-modules (why would you build it otherwise?)
On Wed, Aug 6, 2014 at 7:53 PM, Alois Cochard
wrote: Hi,
I'm not sure if that relate to this problem so please ignore me if not.
I had to spend quite a lot of time understanding what the issue had, when as you I had forget to add an entry for `exposed-modules` and trying to build... Basically I had an error saying that a symbol was missing or something like that (can remember the exact message), but every time I have that issue it take me a while to realise I have forget the entry...
I think it's not a type error, it's kind of a linking error maybe that's why the repl fail silently.
Anyway, I was wondering if it would be possible to give a more helpful error message in such case.
Cheers
On 6 August 2014 15:18, cheater00 .
wrote: Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on.
The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude.
Thanks! _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- Λ\ois http://twitter.com/aloiscochard http://github.com/aloiscochard

Because it's actually not with a library but when building an executable,
sorry I should have specified that.
On 6 August 2014 22:31, cheater00 .
In the last email I meant that I don't see a reason to build a library without exposed-modules, sorry!
The simplest thing to fix your case might be to emit an error when a library is built with no exposed-modules (why would you build it otherwise?)
On Wed, Aug 6, 2014 at 7:53 PM, Alois Cochard
wrote: Hi,
I'm not sure if that relate to this problem so please ignore me if not.
I had to spend quite a lot of time understanding what the issue had, when as you I had forget to add an entry for `exposed-modules` and trying to build... Basically I had an error saying that a symbol was missing or something
that (can remember the exact message), but every time I have that issue it take me a while to realise I have forget the entry...
I think it's not a type error, it's kind of a linking error maybe
On Wed, Aug 6, 2014 at 11:29 PM, cheater00 .
wrote: like that's why the repl fail silently.
Anyway, I was wondering if it would be possible to give a more helpful error message in such case.
Cheers
On 6 August 2014 15:18, cheater00 .
wrote: Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on.
The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude.
Thanks! _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- Λ\ois http://twitter.com/aloiscochard http://github.com/aloiscochard
-- *Λ\ois* http://twitter.com/aloiscochard http://github.com/aloiscochard

If you haven't already, go file a bug on https://github.com/haskell/cabal/issues Edward Excerpts from cheater00 .'s message of 2014-08-06 15:18:04 +0100:
Hi, I have just spent some time trying to figure out why all of a sudden "cabal repl" silently exits without an error message. What helped was to take a project that could launch the repl and compare the cabal files to my new project. It turns out the exposed-modules entry was missing. I was wondering whether this behaviour was intentional, as I don't recollect this happening before, but I don't have older systems to test this on.
The reason I wanted to run a repl without editing exposed modules was to test some dependencies I pulled in to the sandbox with cabal install. The package in question didn't have any code of its own yet. In this case I would just expect ghci to load with the Prelude.
Thanks!
participants (3)
-
Alois Cochard
-
cheater00 .
-
Edward Z. Yang