Commit Graph

67 Commits

Author SHA1 Message Date
Daniel Gröber 90bcf63d6c stack: honor --with-stack when reading StackEnv 2016-08-27 14:16:13 +02:00
Daniel Gröber f35ebbbab9 Don't use MIN_VERSION for ghc 2016-07-17 23:33:23 +02:00
Daniel Gröber 2f31cf431a Refine project finding for stack using STACK_ENV 2016-07-11 05:43:21 +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 0e024c9b79 Fix broken logic in cradle 2016-05-14 20:17:11 +02:00
Daniel Gröber 3ae9204b95 Disable 'cabal' cradle when executable isn't found 2016-05-11 15:21:19 +02:00
Daniel Gröber 54fe4a0edb Replace fromJust with fromJustNote everywhere 2016-01-13 04:56:39 +01:00
Daniel Gröber 3bba2d1be9 Fix warning 2016-01-09 23:39:42 +01:00
Daniel Gröber bb3333efe3 Cleanup logging in Cradle 2016-01-09 23:21:59 +01:00
Nikolay Yakimov 9b512c3e6b Gracefully fail if stack couldn't be initialized 2016-01-08 19:17:43 +03:00
Nikolay Yakimov 3700fa00e6 Fix dist/setup-config path in stack cradle init. 2016-01-08 19:17:43 +03:00
Nicolas Rolland bff86be69f some refactoring 2015-11-27 11:15:25 +01:00
Nicolas Rolland e1d2de96c8 fixing tests for logging 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 16c69b2743 Disable stack support for ghc <7.8 2015-11-26 19:21:15 +01:00
Daniel Gröber 0b2a3458fd Move `stack` code into seperate module 2015-09-15 05:25:54 +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 211b957451 Fix race condition in stack support code 2015-09-11 03:52:28 +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 85722ab6f2 Cleanup 2015-08-24 15:11:05 +02:00
Daniel Gröber c5db06af0f Fix missing liftIO 2015-08-21 04:21:27 +02:00
Daniel Gröber 19e62b0a6a Inhibit stack support when dist/setup-config exists 2015-08-20 08:43:36 +02:00
Daniel Gröber 18a8c67d39 Take sandbox cfg into account for caches 2015-08-19 09:18:10 +02:00
Daniel Gröber 78bdf86a95 Fix all the stack related things 2015-08-19 09:17:41 +02:00
scturtle a285b42206 Refactor the hard-coding "dist" 2015-08-19 09:17:30 +02:00
scturtle 89c3faea05 Initilize test for stack project 2015-08-19 09:17:11 +02:00
scturtle 320b404a8c Yet another try to support Stack. 2015-08-19 09:17:11 +02:00
Daniel Gröber 28f06e035d Cleanup project type handling 2015-08-12 09:25:13 +02:00
Daniel Gröber 8439f12cb0 Let Cabal determine the package-db stack 2015-08-07 07:31:08 +02:00
Daniel Gröber f023d939e2 Fix GHC 7.10 warnings 2015-08-03 05:46:51 +02:00
Daniel Gröber 14c097530e Fix stray tempdir 2015-06-02 12:27:11 +02:00
Daniel Vigovszky 3b7d51d25a Removed unused function 2015-04-24 10:41:39 +02:00
Daniel Vigovszky 5d9d6f5630 Custom cradle support 2015-04-23 17:25:45 +02: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 417cacbf81 Fix finding sandbox in sandbox only projects 2015-02-08 12:43:35 +01:00
Daniel Gröber 9a8a3651d0 Fix `findCabalFile` 2014-11-03 00:45:27 +01:00
Daniel Gröber 2af3383fad Really fix `newTempDir` on Windows 2014-11-02 19:02:05 +01:00
Daniel Gröber 37af8e368d Refactoring World, etc. and fix #387 2014-11-02 01:19:27 +01:00
Daniel Gröber 1797a53800 Fix `newTempDir` on Windows 2014-10-31 12:42:03 +01:00
Daniel Gröber 9ac128aa6f Fix #387, Pattern match failure in GhcPkg 2014-10-30 01:10:56 +01:00
Kazu Yamamoto d045001eb7 Letting "ghc-mod dumpsym" work on non-cabal directories. 2014-08-20 15:31:26 +09:00
Kazu Yamamoto cffa7463eb adopting hlint's suggestions. 2014-07-17 17:16:44 +09:00
Daniel Gröber dc5ba6d00d Add newGhcModEnv for allowing multiple active sessions
Conflicts:
	Language/Haskell/GhcMod/Monad.hs
2014-07-10 21:14:47 +02:00
Daniel Gröber 2381f6e1ab More refactoring of package handling
- 'GhcPkg' now parses 'ghc-pkg -v list' output directly to also get the
  package-id

- Remove unused field 'cradlePackages' in Cradle

- Remove 'getPackageDbPackages' and use 'ghcPkgListEx' instead
2014-04-18 03:59:46 +02:00
Kazu Yamamoto 145c27a129 hlint hack. 2014-04-16 11:52:49 +09:00
Daniel Gröber 30b8366526 Refactor the way packages databases are handled
- cradle now stores a list of active package databases instead of only
  the user store (if present).

- rename `cradlePackageDb` -> `cradlePkgDbStack` as that`s what the ghc
  documentaion calls this kind of thing

- `getPackageDbPackages` now returns names of all visible packages in
  the given directory. Also the implementation now uses `ghc-pkg`
  instead of manually looking at the package database
2014-04-15 05:15:50 +02:00
Kazu Yamamoto 3bfbbb8b5c supporting sandbox only (without cabal) to fix #164. 2014-03-30 17:28:57 +09:00