Commit Graph

1056 Commits

Author SHA1 Message Date
Daniel Gröber e5c6d3e472 Start migrating Ghc -> GhcMod monad 2014-05-14 17:06:29 +02:00
Kazu Yamamoto 2d8faed072 using buffer-live-p (#256). 2014-05-14 06:45:31 +09:00
Kazu Yamamoto 94c4ae205d setting sentinel. 2014-05-14 06:39:50 +09:00
Kazu Yamamoto 7d81a357f7 making ghc-mod-running a global var (##255). 2014-05-14 05:25:37 +09:00
Kazu Yamamoto 7af19f5400 fixing a comment. 2014-05-14 05:07:33 +09:00
Kazu Yamamoto ce28a67e28 checking if the buffer exists (#256). 2014-05-14 05:05:49 +09:00
Kazu Yamamoto e9f38f10a2 dropping support of GHC 7.2 (#251). 2014-05-12 17:02:11 +09:00
Kazu Yamamoto d8388c0e43 Merge pull request #252 from eagletmt/suppress-empty-line
Suppress empty line
2014-05-11 21:47:27 +09:00
Kohei Suzuki ef375668d1 Suppress empty line 2014-05-11 00:30:02 +09:00
Kohei Suzuki bcd2dfcffc Add test for no errors case 2014-05-11 00:30:02 +09:00
Kazu Yamamoto d88dcde733 Merge pull request #251 from DanielG/dev-cabal1.16
Copy readMaybe/readEither from base for backwards compatibility
2014-05-10 21:15:01 +09: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 5492f0c5d1 Add license headers for code copied from Cabal 2014-05-10 13:43:27 +02:00
Kazu Yamamoto dd2d6aabd0 Merge pull request #250 from DanielG/dev-cabal1.16
Copy ComponentLocalBuildInfo from Cabal-1.18
2014-05-10 13:06:37 +09:00
Daniel Gröber f949e4be7a Copy ComponentLocalBuildInfo from Cabal-1.18
This way `configDependencies` works even when the Cabal version used by
cabal-install is later than the one used by ghc-mod.
2014-05-10 02:04:09 +02:00
Kazu Yamamoto 4ec7a5e505 Merge pull request #249 from DanielG/dev-cabal1.16
Fix reading setup-config with Cabal <= 1.16
2014-05-10 07:14:47 +09:00
Daniel Gröber 13930a9d7d Fix Cabal >= 1.18 2014-05-09 21:12:52 +02:00
Daniel Gröber 175635505d Fix warnings 2014-05-09 20:44:33 +02:00
Daniel Gröber 44b897c6a5 Print useful information when running spec 2014-05-09 20:37:55 +02:00
Daniel Gröber 8741323f5b Fix tests for Cabal <= 1.16 2014-05-09 20:37:15 +02:00
Daniel Gröber d1da6ab289 Make getSystemLibDir use `GHC.Paths` instead of running `ghc` 2014-05-09 20:36:20 +02:00
Daniel Gröber b8f9498f83 Fix reading of older Cabal `setup-config`s 2014-05-09 20:35:13 +02:00
Kazu Yamamoto 2e3b172b0e enabling -fno-warn- (#246). 2014-05-09 23:45:34 +09:00
Kazu Yamamoto c05b27b65b Merge pull request #248 from DanielG/dev-cabal-deps
Add support for getting pkgDeps with Cabal <= 1.16
2014-05-08 22:50:50 +09:00
Daniel Gröber fae4730ba5 Import HscTypes (HscEnv) with ghc <= 7.2 2014-05-08 13:14:44 +02:00
Daniel Gröber a7b2c86985 Fall back to Cabal 1.16 format on runtime if extracting fails 2014-05-08 12:59:52 +02:00
Daniel Gröber 4c93819da8 Fix ghc-7.8 2014-05-08 11:50:51 +02:00
Daniel Gröber 7b8540add1 Add support for getting pkgDeps with Cabal <= 1.16 2014-05-08 11:32:40 +02:00
Kazu Yamamoto b7d92417bc HasDynFlags is provided after 7.6. 2014-05-08 17:01:01 +09:00
Kazu Yamamoto cc3e728f03 fixing comment. 2014-05-08 16:51:15 +09:00
Kazu Yamamoto 8f091b4f70 fixing fails in travis. 2014-05-08 16:38:17 +09:00
Kazu Yamamoto 32d7fac5c2 Merge pull request #247 from DanielG/dev-rwst-io
Add MonadIO instance for RWST
2014-05-08 16:07:53 +09:00
Daniel Gröber 61207c13d3 Add MonadIO instance for RWST 2014-05-08 08:36:18 +02:00
Kazu Yamamoto 8561e7b656 To break cyclic import, this patch makes `GhcPkg.hs` independent from `Monad.hs`(refactoring for #244)
This removes `ghcPkgList`, `ghcPkgListEx` and `ghcPkgDbOpt`. I'm not sure
this is a right way to do.
2014-05-08 12:42:45 +09:00
Kazu Yamamoto f199ea9e2e removing warnings. 2014-05-08 10:49:40 +09:00
Kazu Yamamoto ec5e42a5ba Merge branch 'DanielG-dev-monad' 2014-05-08 10:40:56 +09:00
Kazu Yamamoto 410a7e00a2 Merge branch 'dev-monad' of git://github.com/DanielG/ghc-mod into DanielG-dev-monad 2014-05-08 10:39:06 +09:00
Kazu Yamamoto 89bd2ca08b Merge pull request #233 from DanielG/dev-pkgs
Make package dependencies consistent with Cabal
2014-05-08 10:24:23 +09:00
Kazu Yamamoto 9fba8c1020 Merge pull request #237 from bos/check-emacs-version
Check Emacs version at start
2014-05-08 10:22:28 +09:00
Daniel Gröber 5044cf7f56 Fix warnings 2014-05-05 09:43:14 +02:00
Daniel Gröber 81504de8bd spec: Be more forgiving for ghc opts in `getCompilerOptions` 2014-05-05 09:26:56 +02:00
Daniel Gröber 635830b527 Fix #242, ghcPkgList(Ex) on NixOS 2014-05-05 00:29:10 +02:00
Daniel Gröber 4e4d27e62d Use `componentsConfigs` instead of `configDependencies`
`configDependencies` was added in Cabal-1.20 but we're using 1.18 on travis.
2014-05-04 04:57:38 +02:00
Daniel Gröber ea427d60ba note: MonadIO class 2014-05-04 04:57:38 +02:00
Daniel Gröber 9d9f66e942 Remove `Maybe` from `cabalConfigDependencies` and `fromInstalledPackageId` 2014-05-04 04:57:38 +02:00
Daniel Gröber e74faa4a9d Add `add-source-timestamps` to gitignore 2014-05-04 04:57:38 +02: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 096a56e660 Hide `catch` from Prelude 2014-05-04 04:57:38 +02:00
Daniel Gröber f750d10a9a Cabal needs empty 00-index.cache and 00-index.tar in sanxbox 2014-05-03 15:38:27 +02:00