Commit Graph

86 Commits

Author SHA1 Message Date
Daniel Gröber 3bf84fb64a Cleanup some redundant constraint warnings 2016-05-22 02:53:51 +02:00
Daniel Gröber e495c55a8d Use existence of cabal/stack as cradle indicator
Also add some more "info" logging for which cradle was picked.
2016-05-14 20:18:06 +02:00
Daniel Gröber 49b5c4bb2d Fix severity prefix doubling (#689) 2016-01-09 23:22:27 +01:00
Daniel Gröber 7bbaa35f56 Reinstate cwd setup, this time with locking 2016-01-04 20:15:55 +01:00
Nicolas Rolland bff86be69f some refactoring 2015-11-27 11:15:25 +01:00
Nicolas Rolland d0ea69b61b handling logging level 2015-11-27 11:15:25 +01:00
Nicolas Rolland 06323ac20f adding logging to findCradle methods 2015-11-27 11:15:25 +01:00
Daniel Gröber ca2992d83c Remove redundant constraint from runGhcModT 2015-10-29 18:52:51 +01:00
Daniel Gröber 413bac085d Fix sharing stdout Chan with multiple threads 2015-09-16 05:13:20 +02:00
Daniel Gröber 5b02cc1bb0 Make sure stdoutGateway is flushed before exiting. 2015-09-14 10:12:01 +02:00
Daniel Gröber 56902bfe2d Don't mess with cwd, causes too many race conditions
I would just fork() but we have to support WinDOS, gah.
2015-09-14 10:12:01 +02:00
Daniel Gröber 55f278853a Fix tests more 2015-09-14 07:11:45 +02:00
Daniel Gröber ba14e1790c Fix tests 2015-09-14 05:59:38 +02:00
Daniel Gröber 4536ac545d Make sure stdoutGateway is running during findCradle' 2015-09-14 05:40:32 +02:00
Daniel Gröber 41de8b8b2e Sandwich new Monad layer GmOutT into transformer stack
This way we can have access to some options pre Cradle setup which
should fix the output interleaving problems I was observing.
2015-09-01 10:32:27 +02:00
Daniel Gröber 0b65487e50 Stderr output pre-GhcModT for stack cradle 2015-08-31 07:49:06 +02:00
Daniel Gröber 09c3c5603c Fix missing newlines 2015-08-13 09:01:58 +02:00
Daniel Gröber 2806f702d9 Start implementing line-prefix stuff
readProcess wrapper still missing from CabalHelper
2015-08-13 06:47:12 +02:00
Daniel Gröber f023d939e2 Fix GHC 7.10 warnings 2015-08-03 05:46:51 +02:00
Daniel Gröber 539c294dd4 Fix a bunch of relate exception handling problems
should handle exceptions outside of runGmlT otherwise we don't catch ghc
load related ones.
2015-03-09 22:04:04 +01:00
Daniel Gröber 82bb0090c0 Refactoring to use cabal-helper-wrapper
This turned out to be quite involved but save for this huge commit it's
actually quite awesome and squashes quite a few bugs and nasty
problems (hopefully). Most importantly we now have native cabal
component support without the user having to do anything to get it!

To do this we traverse imports starting from each component's
entrypoints (library modules or Main source file for executables) and
use this information to find which component's options each module will
build with. Under the assumption that these modules have to build with
every component they're used in we can now just pick one.

Quite a few internal assumptions have been invalidated by this
change. Most importantly the runGhcModT* family of cuntions now change
the current working directory to `cradleRootDir`.
2015-03-05 17:35:24 +01:00
Daniel Gröber 7438539ca5 Change primary license to AGPL-3 2015-03-03 21:09:18 +01:00
Daniel Gröber ef96b926c7 Use cabal-helper to support Cabal >= 1.22 with any version of ghc 2015-02-08 12:43:35 +01:00
Daniel Gröber 2b4fd77c28 Add GHC-7.10 support 2015-02-08 12:43:35 +01:00
Dimitri 'phaazon' Sabadie f023f4fc06 Fixed #422. 2014-12-24 22:12:36 +01:00
Daniel Gröber 782f234981 Fix ghc-mod tempdirs not being removed on exit 2014-12-24 21:34:57 +01:00
Daniel Gröber 506cf18885 Don't use fromJust 2014-11-03 00:33:23 +01:00
Daniel Gröber 14ee81e300 Allow GhcModError as an Exception and catch it in GhcModT's liftIO 2014-10-31 22:23:48 +01:00
Daniel Gröber 9ac128aa6f Fix #387, Pattern match failure in GhcPkg 2014-10-30 01:10:56 +01:00
Kazu Yamamoto bc65c477d0 fixing typo. 2014-09-22 11:20:11 +09:00
Rob Everest 2c2e7782d2 Use the cabal configuration flags where possible when finalizing the PackageDescription. 2014-09-12 13:15:05 +10:00
Daniel Gröber 274b5d8e1c Rephrase some docs 2014-08-29 17:21:38 +02:00
Daniel Gröber a0ae09a3e6 Give readProcess' more sensible error messages.
Also a bunch of refactoring for GhcModError
2014-08-28 15:57:49 +02:00
Daniel Gröber 1b5917c70e Remove `withErrorHandler`, use `liftExceptions` instead 2014-08-19 04:30:44 +02:00
Kazu Yamamoto 0fd8b9afd8 first try to resolve #322. 2014-08-18 16:55:41 +09:00
Daniel Gröber 271ff4e162 Catch `cabal configure` failure properly 2014-08-18 08:06:36 +02:00
Daniel Gröber f5d051dcef Remove `toGhcModT` it's not needed anymore. 2014-08-15 20:35:21 +02:00
Kazu Yamamoto d5733874e0 using <$> 2014-08-14 11:14:46 +09:00
Kazu Yamamoto 2875275fc0 hlint suggestions. 2014-08-14 11:11:02 +09:00
Daniel Gröber ec1b115cc1 In `check`, apply ghcUserOptions after setting -Wall 2014-08-13 19:28:08 +02:00
Daniel Gröber c1c7dcec20 Rename `ghcOpts` -> `ghcUserOptions` 2014-08-13 19:28:08 +02:00
Daniel Gröber 0fa870efa6 Fix ghc<=7.6 2014-08-12 18:54:48 +02:00
Daniel Gröber edeb57a6a4 note 2014-08-12 18:24:39 +02:00
Daniel Gröber fa65d7269e Add a test for gmsGet/Put 2014-08-12 18:24:39 +02:00
Daniel Gröber 87c587993a Make `parseCabalFile` use MonadError 2014-08-12 18:24:39 +02:00
Daniel Gröber e345c92edb Make GhcModT's MonadState instance pass through
..to the underlying monad
2014-08-12 18:23:50 +02:00
Daniel Gröber c0652c0321 Move GhcModError to Types.hs 2014-08-12 18:23:50 +02:00
Daniel Gröber bd28310e59 Don't fall back to sandbox if cabal file failes to parse 2014-08-12 00:02:39 +02:00
Daniel Gröber fad99f466f Export GhcModError(..) 2014-08-06 20:40:11 +02:00
Daniel Gröber cb28e9ec8f Fix warning 2014-08-06 19:38:42 +02:00