Commit Graph

206 Commits

Author SHA1 Message Date
Kazu Yamamoto
cee1b83daa the first step to create SymbolDB via a file. 2014-07-17 11:57:19 +09:00
Kazu Yamamoto
fdfa70e27a removing -threaded 2014-07-15 11:51:52 +09:00
Kazu Yamamoto
89a4db2345 Merge pull request #288 from DanielG/dev-pkgs
Make `GhcMod` be `GhcModT (ErrorT IO)`
2014-07-15 11:49:10 +09:00
Daniel Gröber
68212d46a1 Fix cabal file 2014-07-15 01:53:06 +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
Kazu Yamamoto
d98cedc9c0 Merge pull request #287 from DanielG/dev-untangle
Untangle Monad.hs and GHCApi.hs and some other changes
2014-07-12 14:27:43 +09:00
Daniel Gröber
503e8cbe06 Move DynFlag related functions from GHCApi to another module 2014-07-12 02:57:19 +02:00
Kazu Yamamoto
53394d3075 ver bumps up.
Major version is now 5 because of a lot of API changes.
2014-07-11 14:09:10 +09:00
Daniel Gröber
4b6a687bc1 Migrate the remaining parts of the exposed API to GhcMod a 2014-07-11 03:13:38 +02:00
Daniel Gröber
d696214816 We really don't want mtl < 2.0 (different API) 2014-07-10 20:56:57 +02:00
Kazu Yamamoto
2091eb6027 Revert "workaround for #277"
This reverts commit ef2087b379.
2014-07-03 22:39:49 +09:00
Kazu Yamamoto
ef2087b379 workaround for #277 2014-07-03 22:10:15 +09:00
Alejandro Serrano
c06ee75fbb Fix building errors on ghc < 7.8 and tests 2014-06-28 23:18:49 +02:00
Alejandro Serrano
2ab6991d95 Move code to new FillSig module
- Clean up a lot of code
2014-06-27 18:38:15 +02:00
Alejandro Serrano
40cd5b7deb Haskell part of case splitting working! 2014-06-25 18:09:24 +02:00
Alejandro Serrano
5fa536714f Initial code generation working
- Added fallback with haskell-src-exts
2014-06-22 18:03:34 +02:00
Alejandro Serrano
a45fb4c6f5 Move case split and sig. generation to own files
- Created SrcUtils module for shared functionality
2014-06-21 11:38:44 +02:00
Daniel Gröber
2b4f780296 Add TestUtils to other-modules 2014-05-14 20:56:14 +02:00
Daniel Gröber
8324dd96ae Don't expose Convert 2014-05-14 18:54:56 +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
96a85fe953 Copy readMaybe/readEither from base >= 4.7 for backwards compatibility 2014-05-10 13:43:46 +02:00
Daniel Gröber
b8f9498f83 Fix reading of older Cabal setup-configs 2014-05-09 20:35:13 +02:00
Kazu Yamamoto
8f091b4f70 fixing fails in travis. 2014-05-08 16:38:17 +09:00
Daniel Gröber
3b5b9f8fcf Expose Language.Haskell.GhcMod.Monad 2014-05-04 04:57:38 +02:00
Daniel Gröber
c50b4f5a38 ghc-mod deserves it's own monad
Having to call `findCradle` and `initializeFlagsWithCradle` everywhere
we interact with ghc-mod's API doesn't seem very Haskell-like to me I
think we should provide a Monad that has a run function that already
does all those tedious tasks for us.

The `GhcMod` monad is basically a wrapper around `RWST r w s IO` with an
instance for `GhcMonad`

Having a `Reader` allows us to pass `Options` to runGhcMod and not have
to worry about passing it everywhere, `Cradle` is also stored in the
reader environment on initialization.

Writer and State are just there for future use.

I've included a `toGhcMod` function that turns a `Ghc a` into a `GhcMod
a` this will make it easy to transition everyting to using the `GhcMod`
monad instead of `Ghc` without breaking the build or test suite for
extended periods of time.

Conflicts:
	ghc-mod.cabal
2014-05-04 04:57:38 +02:00
Daniel Gröber
77605c6daf Add fromInstalledPackageId 2014-05-03 15:36:10 +02:00
Daniel Gröber
6ad386d31e Add test data to Extra-Source-Files 2014-05-03 15:35:04 +02:00
Daniel Gröber
1c27e9ec4e Bump hspec dependency, should fix #236
`hspec-discover --no-main` was introduced in 1.8.2
2014-05-01 01:31:32 +02:00
Kazu Yamamoto
186485577d bootInfo as API. 2014-04-30 10:49:25 +09:00
Kazu Yamamoto
913fb72911 ErrMsg -> Logger. 2014-04-28 21:47:08 +09:00
Kazu Yamamoto
d2a92529fc fixing deps. 2014-04-24 22:30:18 +09:00
Kazu Yamamoto
4011826a6b ver bumps up. 2014-04-24 22:22:23 +09:00
Kazu Yamamoto
390c509144 find functions went to lib. 2014-04-24 17:02:50 +09:00
Kazu Yamamoto
bd34db1b07 using force just in case. 2014-04-22 13:32:33 +09:00
Kazu Yamamoto
1006cd4eec APIs in Ghc monad now go to GHCMod.Ghc. 2014-04-21 12:51:56 +09:00
Kazu Yamamoto
064e4af236 creating src/Boot.hs. 2014-04-21 11:57:14 +09:00
Kazu Yamamoto
ab5e082e81 --quiet back (#226). 2014-04-19 08:26:30 +09:00
Kazu Yamamoto
aecb9bc1e4 implementing suppressStdout/err. 2014-04-18 15:41:32 +09:00
Daniel Gröber
1639a7b2e0 Bring spec up to speed 2014-04-18 04:00:01 +02:00
Daniel Gröber
be4172b454 Add cabal.sandbox.config.in to Extra-Source-Files 2014-04-15 17:13:55 +02: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
e537624e65 ver bumps up. 2014-04-07 15:04:27 +09:00
Kazu Yamamoto
172645aa9f ver bumps up. 2014-04-03 10:02:04 +09:00
Kazu Yamamoto
f959a8029e ver bumps up. 2014-03-31 11:01:32 +09:00
Kazu Yamamoto
657a007b47 a new module. 2014-03-27 16:23:15 +09:00
Kazu Yamamoto
8238c632a8 using Data.Map if containers is old.
hoping passing travis tests.
2014-03-26 15:23:12 +09:00
Kazu Yamamoto
5c79376ca7 containers >= 0.5 for Data.Map.Strict. 2014-03-26 12:00:36 +09:00
Kazu Yamamoto
dc6424454e ghc-insert-module now uses ghc-modi. 2014-03-25 14:29:18 +09:00
Kazu Yamamoto
b40f162979 adding ghc-modi. 2014-03-19 10:23:47 +09:00