Commit Graph

42 Commits

Author SHA1 Message Date
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 2b4fd77c28 Add GHC-7.10 support 2015-02-08 12:43:35 +01:00
klapaucius fc7ce47e93 fix for varid bug in showExports & processExports 2014-12-24 22:17:36 +01: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
Kazu Yamamoto 26316262aa converting GhcMonad to IOish. 2014-07-18 14:54:39 +09:00
Kazu Yamamoto cee1b83daa the first step to create SymbolDB via a file. 2014-07-17 11:57:19 +09:00
Daniel Gröber f0bfcb8811 Use GhcModT everywhere and remove the GhcMod alias
Not doing this makes having GhcModT pretty pointless as users of the
library wouldn't be able to use custom inner monads as evey function for
dealing with GhcModT's would be constraint to (GhcModT IO) thus only
allowing IO as the inner monad.
2014-07-15 01:03:56 +02:00
Daniel Gröber b6896a481a Move `initializeFlagsWithCradle` to Monad.hs 2014-07-12 03:33:04 +02:00
Daniel Gröber 9f94bc863c Add `Module` type 2014-07-11 05:44:31 +02:00
Daniel Gröber 80e2761f2f Ghc->GhcMod: finish Browse, Check 2014-05-14 18:05:40 +02:00
Daniel Gröber ebfb740a2e Move `convert` to it's own module. 2014-05-14 17:06:30 +02:00
Daniel Gröber f1535efcf2 Ghc -> GhcMod: Browse, Check 2014-05-14 17:06:29 +02:00
Kazu Yamamoto 000076223f removing the third argument from initializeFlagsWithCradle. 2014-04-28 13:00:25 +09:00
Kazu Yamamoto c45415a367 cleaning up check, splice flag and logger. 2014-04-26 17:54:15 +09:00
Kazu Yamamoto 93dadfef44 error handling for browse. 2014-04-24 12:45:47 +09:00
Kazu Yamamoto e49fef6765 setTargetFiles now loads files. 2014-04-24 12:15:59 +09:00
Kazu Yamamoto 0c1469e53c <package>:<module> style.
refactoring for #159.
2014-04-24 11:26:30 +09:00
Kazu Yamamoto 79946f9a3d removing withGHCDummyFile. 2014-04-23 16:37:24 +09:00
Kazu Yamamoto 4764ff1acb ghc-modi boot. 2014-04-21 16:30:31 +09:00
Kazu Yamamoto 2f55a19d49 cleaning up APIs. 2014-04-21 12:46:14 +09:00
Kazu Yamamoto a6579c656b Displaying a qualified name if two unqualified names are conflict (#130). 2014-04-03 09:49:23 +09:00
Kazu Yamamoto 4fd7224c9c closed import. 2014-03-27 14:38:06 +09:00
Kazu Yamamoto 782da60d0c adding docs. 2014-03-26 12:09:02 +09:00
Kazu Yamamoto 38a3e32ac3 browseAll. 2014-03-25 11:14:16 +09:00
Kazu Yamamoto 16e050439d removing fast/slow code. 2014-03-17 15:56:00 +09:00
Kazu Yamamoto fb0222ff76 burying the gap. 2014-02-06 22:09:00 +09:00
Kazu Yamamoto 45154e6eb1 implementing fromTyThing. 2014-02-06 21:34:40 +09:00
Kazu Yamamoto 629cf409ae layout only. 2014-02-06 21:27:39 +09:00
Kazu Yamamoto 831fc67c8c Merge branch 'ghci-style-load2' of github.com:khorser/ghc-mod into khorser-ghci-style-load2
Conflicts:
	Language/Haskell/GhcMod/Browse.hs
2013-11-20 14:28:20 +09:00
Sergey Khorev 429cdfa83b Try loading a module if findModule failed for it 2013-11-20 08:57:45 +04:00
mvoidex 97c2c62c31 Local function rewritten to use justIf 2013-11-18 18:22:49 +04:00
mvoidex 444dd225e1 Added -q option to list fully qualified names with browse command 2013-11-17 22:31:47 +04:00
mvoidex d4505041a9 Added project opt to specify module package-id 2013-10-29 20:48:27 +04:00
Kohei Suzuki 136e09e704 `ghc-mod browse` should take care of sandboxes 2013-09-27 12:25:41 +09:00
Kazu Yamamoto 5e53841451 improving doc. 2013-09-05 14:35:28 +09:00
Kazu Yamamoto 1cd83ce2e0 showUnqualifiedPage is now in Doc.hs. 2013-07-14 17:07:30 +09:00
Kazu Yamamoto 9c5eec47ca Removing warnings.
Tests passed: GHC 7.4.2 and GHC 7.6.3
2013-07-05 16:43:54 +09:00
Daniil Frumin 9eb446e24b Moving all CPP stuff (that depends on GHC version) to Gap
- Moved some functions from Language.Haskell.GhcMod.Doc to Gap
- Moved HasType typeclass and some functions from Info to Gap
- Adjusted all the other modules to use necessary functions from Gap
  instead of the functions from modified modules
2013-07-02 12:48:44 +04:00
Kazu Yamamoto 089d490607 writing docs. 2013-05-20 14:28:56 +09:00
Kazu Yamamoto 849c308e5c Separating IO and Ghc. 2013-05-20 11:29:44 +09:00
mvoidex f2f3b120af Moving commands to Ghc monad 2013-05-19 01:16:37 +04:00
Kazu Yamamoto bac4bbbcf3 Changing GHCMod as a library. 2013-05-17 10:00:01 +09:00