Daniel Gröber
d0ca3ee807
Fix MonadIO mess
2015-04-12 02:48:54 +02:00
Daniel Gröber
7019cbcfa1
Implement better caching for target options
2015-03-28 02:32:44 +01:00
Daniel Gröber
90d9577f8d
Factor out cabal-helper into a package
2015-03-15 20:48:55 +01:00
Daniel Gröber
6756f1d10b
Get rid of some warnings with ghc-7.8
2015-03-11 13:17:24 +01:00
Daniel Gröber
baf5cad809
Pass through --with-* options to cabal-helper
2015-03-07 19:37:19 +01:00
Daniel Gröber
f0ea445a9b
Cleanup errors and logging a bit
2015-03-05 17:35:28 +01:00
Daniel Gröber
bc71877dcf
Change the way cabal-helper is built a bit
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
34dd9de83c
Add Show instance for Options
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
5a4bec8755
Rewrite ghc-mod
command line frontend.
2014-09-18 10:45:14 +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
Kazu Yamamoto
190dc2ac51
try to fix Travis CI.
2014-08-20 11:59:44 +09: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
Daniel Gröber
c1c7dcec20
Rename ghcOpts
-> ghcUserOptions
2014-08-13 19:28:08 +02:00
Daniel Gröber
e0bbd91eba
Remove GMECabal, GMEGhc constructors from GhcModError for now
2014-08-12 21:11:35 +02:00
Daniel Gröber
c0652c0321
Move GhcModError to Types.hs
2014-08-12 18:23:50 +02:00
Daniel Gröber
81c58585a2
Add functions for dealing with packages, modules and bindings to GHCApi
2014-07-11 10:43:51 +02:00
Daniel Gröber
9f94bc863c
Add Module
type
2014-07-11 05:44:31 +02:00
Daniel Gröber
ebfb740a2e
Move convert
to it's own module.
2014-05-14 17:06:30 +02:00
Kohei Suzuki
ef375668d1
Suppress empty line
2014-05-11 00:30:02 +09:00
Kazu Yamamoto
c45415a367
cleaning up check, splice flag and logger.
2014-04-26 17:54:15 +09:00
Kazu Yamamoto
0c1469e53c
<package>:<module> style.
...
refactoring for #159 .
2014-04-24 11:26:30 +09:00
Kazu Yamamoto
3b3b767556
Merge branch 'dev-dynflags' of https://github.com/DanielG/ghc-mod into DanielG-dev-dynflags
...
Conflicts:
Language/Haskell/GhcMod/GHCApi.hs
2014-04-23 12:20:18 +09:00
Daniel Gröber
c9ca3a6d76
Clean up DynFlags initialization
2014-04-23 04:04:41 +02:00
Kazu Yamamoto
b8a151421d
removing fixme.
2014-04-22 12:34:35 +09:00
Kazu Yamamoto
b3fd99fa7d
using Builder.
2014-04-22 11:28:27 +09:00
Kazu Yamamoto
8983cf2d88
lineSeparator are only used in toList/toPlain.
2014-04-21 15:58:36 +09:00
Kazu Yamamoto
3d03cff06b
refactoring for lineSeparator.
2014-04-21 14:58:25 +09:00
Kazu Yamamoto
e09b406ee8
ToString String and doctest.
2014-04-21 09:45:00 +09:00
Kazu Yamamoto
4389dea800
-l for check.
2014-04-18 17:28:12 +09: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
abb9ecd8ac
style.
2014-04-16 11:59:00 +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
Kazu Yamamoto
955b1b4091
user package db options for both GHC and ghc-pkg.
2014-03-28 12:05:11 +09:00
Kazu Yamamoto
1f7e7dea3b
adding doc.
2014-03-28 11:10:18 +09:00
Kazu Yamamoto
16e050439d
removing fast/slow code.
2014-03-17 15:56:00 +09:00
Naohiro Aota
a0db24b0a5
Extend Package to include id
...
This commit
1. rename Package with PackageBaseName
2. Pacakge = (PackageBaseName, Maybe String) to save its id
3. Expose packages with id if available
2014-01-30 20:45:30 +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
668e9e4771
Removing GHCVersion.
2013-09-20 17:21:10 +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
f0e191dc98
Eq and Show for CompilerOptions.
2013-09-20 11:21:31 +09:00
Kazu Yamamoto
97da4e9be1
Defining CompilerOptions.
2013-09-19 15:58:50 +09:00
Kazu Yamamoto
45751e3926
Exporting more low level APIs.
2013-09-16 09:56:08 +09:00
Kazu Yamamoto
5e53841451
improving doc.
2013-09-05 14:35:28 +09:00
Kazu Yamamoto
ed5ac820d6
adding LineSeparator.
2013-09-03 14:40:51 +09:00
Alan Zimmerman
e487a535eb
Rename GhcModLowLevel to GhcMod.Internal and document exposed items.
2013-08-26 18:28:21 +02:00
Kazu Yamamoto
089d490607
writing docs.
2013-05-20 14:28:56 +09:00
Kazu Yamamoto
bac4bbbcf3
Changing GHCMod as a library.
2013-05-17 10:00:01 +09:00