Commit Graph

132 Commits

Author SHA1 Message Date
Daniel Gröber
3f8cfadeff Fix overlapping global/command flag -q 2015-03-10 09:24:33 +01:00
Daniel Gröber
baf5cad809 Pass through --with-* options to cabal-helper 2015-03-07 19:37:19 +01:00
Daniel Gröber
c05bd816e7 Add quiet option to decrease log level 2015-03-06 19:47:51 +01:00
Daniel Gröber
2151363dd6 Add back -d option to modules command 2015-03-05 19:38:18 +01:00
Daniel Gröber
bee3ec35ec exe:ghc-mod: some output formatting changes 2015-03-05 17:35:28 +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
2b4fd77c28 Add GHC-7.10 support 2015-02-08 12:43:35 +01:00
Daniel Gröber
0eaa3d23d8 Fix documentation for root command 2015-02-07 15:22:10 +01:00
Daniel Gröber
129fe92de2 Improve error reporting for invalid command line arguments 2015-02-07 15:22:10 +01:00
Daniel Gröber
76180ca73a "modules" command was missing from ghc-mod usage 2014-12-24 22:35:21 +01:00
Daniel Gröber
37af8e368d Refactoring World, etc. and fix #387 2014-11-02 01:19:27 +01:00
Daniel Gröber
ff75811a76 Start migrating ghc-modi code to src/GHCMod.hs 2014-10-30 01:11:10 +01:00
Daniel Gröber
9ac128aa6f Fix #387, Pattern match failure in GhcPkg 2014-10-30 01:10:56 +01:00
Daniel Gröber
dbe66cbaa3 Fix #386, ghc-mod version should not check cabal configure 2014-10-20 22:33:58 +02:00
Daniel Gröber
6e92f28f43 Fix #391, Error on command -g when used before command despite --help output saying this is valid 2014-10-18 21:55:59 +02:00
Daniel Gröber
5a4bec8755 Rewrite ghc-mod command line frontend. 2014-09-18 10:45:14 +02:00
Daniel Gröber
a0289420f9 Cleanup ghc-mod help output 2014-09-16 05:45:20 +02: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
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
147dd90ee7 Remove dedicated exception handling in check completely
Exceptions are already caught at the top level so this is unnecessary.
2014-08-19 04:49:44 +02:00
Daniel Gröber
1b5917c70e Remove withErrorHandler, use liftExceptions instead 2014-08-19 04:30:44 +02:00
Daniel Gröber
271ff4e162 Catch cabal configure failure properly 2014-08-18 08:06:36 +02:00
Kazu Yamamoto
bc4bfe1752 -v option for ghc-mod (#304) 2014-08-14 12:03:59 +09:00
Daniel Gröber
c1c7dcec20 Rename ghcOpts -> ghcUserOptions 2014-08-13 19:28:08 +02:00
Daniel Gröber
f2ccea7f29 Fix error presentation 2014-08-13 19:28:08 +02:00
Daniel Gröber
f311efd90c Rework GhcModT monad stack 2014-08-06 19:38:42 +02:00
Alejandro Serrano
9161757f95 First attempt to add auto 2014-08-01 17:08:23 +02:00
Alejandro Serrano
6302d4882e Merge remote-tracking branch 'kazu/master'
Conflicts:
	Language/Haskell/GhcMod/Check.hs
	Language/Haskell/GhcMod/FillSig.hs
	Language/Haskell/GhcMod/GHCApi.hs
2014-07-18 17:12:52 +02:00
Kazu Yamamoto
cf0df26560 Monad.hs is now exported by GhcMod.hs. 2014-07-17 14:30:42 +09:00
Kazu Yamamoto
74e84e89ac deleting GhcMod.Ghc. 2014-07-17 14:04:28 +09:00
Alejandro Serrano
b21fa674ea Merge remote-tracking branch 'kazu/master' 2014-07-17 06:59:29 +02:00
Alejandro Serrano
c3722f7a20 Include 'refine' again 2014-07-17 06:59:10 +02:00
Kazu Yamamoto
cee1b83daa the first step to create SymbolDB via a file. 2014-07-17 11:57:19 +09:00
Alejandro Serrano
57bd408785 Merge remote-tracking branch 'kazu/master'
Conflicts:
	Language/Haskell/GhcMod.hs
	Language/Haskell/GhcMod/Check.hs
	Language/Haskell/GhcMod/FillSig.hs
	Language/Haskell/GhcMod/GHCApi.hs
	Language/Haskell/GhcMod/Ghc.hs
	src/GHCMod.hs
2014-07-16 19:01:43 +02:00
Alejandro Serrano
49437d82d9 Initial work on refining variable 2014-07-16 18:20:52 +02: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
56ad1a3c8c Control.Monad.Trans.MonadIO -> CoreMonad.MonadIO
they are different before ghc 7.8
2014-07-11 04:12:05 +02:00
Daniel Gröber
4b6a687bc1 Migrate the remaining parts of the exposed API to GhcMod a 2014-07-11 03:13:38 +02:00
Alejandro Serrano
323c1b5471 Initial support for adding body from signature 2014-06-10 21:34:05 +02:00
Alejandro Serrano
6854d417c0 Initial implementation of case splitting
- It doesn't handle vars correctly yet
2014-06-08 12:33:13 +02:00
Sami Niiranen
4037f5f8e1 Refactor error message for argument mismatch to be more generic
Previously an insufficient amount of arguments to e.g. the 'type' utility resulted in a "Too many arguments" feedback, which can be somewhat confusing. Now if the argument count does not match, a more generic error message is shown.
2014-05-18 10:53:32 +03:00
Daniel Gröber
80e2761f2f Ghc->GhcMod: finish Browse, Check 2014-05-14 18:05:40 +02:00
Daniel Gröber
f1535efcf2 Ghc -> GhcMod: Browse, Check 2014-05-14 17:06:29 +02:00
Daniel Gröber
e5c6d3e472 Start migrating Ghc -> GhcMod monad 2014-05-14 17:06:29 +02:00
Kazu Yamamoto
186485577d bootInfo as API. 2014-04-30 10:49:25 +09:00
Kazu Yamamoto
bb8df8cbdf bootInfo uses boot. 2014-04-30 10:39:39 +09:00
Kazu Yamamoto
c45415a367 cleaning up check, splice flag and logger. 2014-04-26 17:54:15 +09:00
Kazu Yamamoto
abc660cdfe showing GHC version. 2014-04-25 22:03:09 +09:00
Kazu Yamamoto
549d33d492 version command for ghc-mod/ghc-modi. 2014-04-25 14:09:32 +09:00
Kazu Yamamoto
6cca65b11e ghc-mod find (#203). 2014-04-24 21:08:45 +09:00
Kazu Yamamoto
0c1469e53c <package>:<module> style.
refactoring for #159.
2014-04-24 11:26:30 +09:00
Kazu Yamamoto
2e06c2f938 doc update. 2014-04-23 22:57:29 +09:00
Kazu Yamamoto
064e4af236 creating src/Boot.hs. 2014-04-21 11:57:14 +09:00
Kazu Yamamoto
df4dd97e48 ghc-mod debug does not need a file. 2014-04-21 11:31:15 +09:00
Kazu Yamamoto
12dac1f0a5 ghc-mod root does not need a file. 2014-04-21 11:22:39 +09:00
Kazu Yamamoto
e9859980ab info/type does not require module name.
Fallback was removed. See #199.
2014-04-11 11:51:25 +09:00
Kazu Yamamoto
02af334b94 imports Data.ByteString, System.FilePath, and System.Directory at booting. 2014-04-08 13:56:33 +09:00
Kazu Yamamoto
2dca76d0a1 fixing the help. 2014-03-31 11:38:07 +09:00
Kazu Yamamoto
99aeebfb6f for hlint. 2014-03-27 16:28:27 +09:00
Kazu Yamamoto
7ccb4ab045 "doc" command. 2014-03-27 16:23:27 +09:00
Kazu Yamamoto
856310e0fe closed import. 2014-03-27 14:46:33 +09:00
Kazu Yamamoto
d3d9eb1e2c Data.ByteString cannot be loaded if not specified in cabal file. 2014-03-27 14:24:38 +09:00
Kazu Yamamoto
1bad35aa95 fixing a bug for Data.ByteString. 2014-03-27 12:43:03 +09:00
Kazu Yamamoto
ee6dc2fc47 ghc-mod root. 2014-03-20 16:21:48 +09: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
Kazu Yamamoto
dfecb22123 Merge branch 'master' of git://github.com/mvoidex/ghc-mod into mvoidex-master
Conflicts:
	Language/Haskell/GhcMod/List.hs
2013-10-29 11:32:06 +09:00
mvoidex
94de367220 List modules with its packages 2013-10-28 12:22:18 +04:00
Kohei Suzuki
136e09e704 ghc-mod browse should take care of sandboxes 2013-09-27 12:25:41 +09:00
Kohei Suzuki
67166a4d75 ghc-mod list should take care of sandboxes 2013-09-27 12:23:53 +09:00
Kazu Yamamoto
5f0fcd0442 getCompilerOptions handles package-db options. 2013-09-20 17:15:41 +09:00
Kazu Yamamoto
49791fb6ea Supporting sandbox sharing.
Braking backword compatibility of findCradle.
2013-09-20 15:48:50 +09:00
Kazu Yamamoto
929c446f0f removing cabal-dev from help. 2013-09-06 13:27:30 +09:00
Niklas Hambüchen
4758a6043c check + expand: Allow passing in multiple files 2013-09-03 20:01:47 +09:00
Niklas Hambüchen
e7d746f115 Don't silently ignore superfluous command line arguments 2013-09-03 19:57:27 +09:00
Niklas Hambüchen
7fd7b36363 Implement help command as advertised in usage 2013-09-03 19:57:27 +09:00
Niklas Hambüchen
35f40b3ce9 Exit with status 1 on error 2013-09-03 19:57:27 +09:00
Kazu Yamamoto
fc77e05245 Adding "-b" command line option for line separator. 2013-09-03 14:47:41 +09: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