Commit Graph

260 Commits

Author SHA1 Message Date
Daniel Gröber 01dde80385 Bring test suite up to date 2015-03-05 17:35:28 +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 7438539ca5 Change primary license to AGPL-3 2015-03-03 21:09:18 +01:00
Daniel Gröber 52e3233f44 Introducing cabal-helper-wrapper
The idea here is to build cabal-helper with whatever version of Cabal
the user happens to be using (which we find by looking at
dist/setup-config) at runtime.

This way we can support literally any version of Cabal as long as the
actual cabal-helper still compiles.

I tried to only use interfaces in Cabal that have been there since at
least 1.16 so I'm hoping this shouldn't break too much.
2015-03-03 21:06:58 +01:00
Daniel Gröber ef96b926c7 Use cabal-helper to support Cabal >= 1.22 with any version of ghc 2015-02-08 12:43:35 +01:00
Daniel Gröber 405b814726 Add cabal-helper for decoding Cabal-1.22 setup-configs
.. without having to worry about Cabal version conflicts
2015-02-08 12:43:35 +01:00
Daniel Gröber 471a3ec358 Fix ghc-7.4 2015-02-08 12:43:35 +01:00
Daniel Gröber 11562b4fe7 Cleanup cabal file using extentions 2015-02-08 12:43:35 +01:00
Daniel Gröber 2b4fd77c28 Add GHC-7.10 support 2015-02-08 12:43:35 +01:00
Rob Everest 56cc237e26 Support where clauses, let bindings and case expressions in case splitting (fixes #395) 2014-11-03 00:15:12 +01:00
Daniel Gröber 37af8e368d Refactoring World, etc. and fix #387 2014-11-02 01:19:27 +01:00
Daniel Gröber f55c264d67 Set version to "0" in master 2014-10-31 12:45:16 +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 ab7059d5e4 Merge remote-tracking branch 'upstream/no-set'
Conflicts:
	Language/Haskell/GhcMod/Find.hs
2014-10-03 21:39:20 +02:00
Kazu Yamamoto c4929c54af getConfig runs "cabal configure" first if setup-config is invalid. 2014-09-23 21:28:03 +09:00
Kazu Yamamoto 7db266c22d adding World.hs. 2014-09-23 17:34:09 +09:00
Kazu Yamamoto 9974bcbf79 trying to fix travis ci. 2014-09-23 16:00:22 +09:00
Kazu Yamamoto e3e95adeb6 generating "autogen/" if not exist (#326). 2014-09-22 22:38:15 +09:00
Kazu Yamamoto 7382e1bf1d Misc module for ghc-modi. 2014-09-22 21:32:57 +09:00
Kazu Yamamoto 6f814a4378 restart a GhcMod session if the cabal file is changed. 2014-09-22 14:13:07 +09:00
Daniel Gröber 5a4bec8755 Rewrite `ghc-mod` command line frontend. 2014-09-18 10:45:14 +02:00
Daniel Gröber ab0347efaa monad-journal-0.4 fixes mtl dependency trouble 2014-09-16 22:37:04 +02:00
Daniel Gröber 8ca6f7d18b Temporarily restrict monad-journal version 2014-09-12 21:16:53 +02:00
Daniel Gröber e7073e79f5 Add PatternSynonyms test data to Extra-Source-Files 2014-09-12 21:16:43 +02:00
Daniel Gröber 690a64f5b5 Merge branch 'master' of https://github.com/robeverest/ghc-mod
Conflicts:
	Language/Haskell/GhcMod/CabalConfig.hs
2014-09-12 05:21:12 +02:00
Rob Everest 2c2e7782d2 Use the cabal configuration flags where possible when finalizing the PackageDescription. 2014-09-12 13:15:05 +10:00
Cary M. Robbins 8b01af6cde Handle LocalBuildInfo for Cabal 1.21; squash commits; fixes #343. 2014-09-12 04:50:29 +02:00
Daniel Gröber b9890a90ed ChangeLog 2014-09-12 04:01:58 +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
Daniel Gröber a7f00931c5 Rename List.hs -> Modules.hs 2014-08-28 11:41:03 +02:00
Daniel Gröber 7277d4d6c3 Bump version to 5.0.1.1 2014-08-24 14:49:30 +02:00
Daniel Gröber 7a6e37c57a Fix building with ghc 7.4 2014-08-24 14:41:30 +02:00
Daniel Gröber 5b32667060 typo 2014-08-21 00:32:46 +02:00
Daniel Gröber 252341ea41 Fix cabal.sandbox.config.in path in Extra-Source-Files 2014-08-21 00:27:32 +02:00
Kazu Yamamoto 23a8837632 adding missing elisp file. 2014-08-20 16:56:55 +09:00
Kazu Yamamoto 1e1505c535 removing warnings from spec. 2014-08-20 12:14:27 +09:00
Alejandro Serrano 77051545a4 Adde myself to Authors in cabal file 2014-08-19 18:35:10 +02:00
Daniel Gröber e696a66dfa Add myself to `Author` in ghc-mod.cabal 2014-08-19 05:24:28 +02:00
Daniel Gröber 271ff4e162 Catch `cabal configure` failure properly 2014-08-18 08:06:36 +02:00
Kazu Yamamoto 625d4661e7 fix #295. 2014-08-13 15:21:13 +09:00
Daniel Gröber 7388b50474 Add a test making sure pattern match failures on GhcModT work the way I expect 2014-08-06 20:42:34 +02:00
Daniel Gröber b978e1fd01 monad-journal fixes are upstream now 2014-08-06 19:43:52 +02:00
Daniel Gröber f311efd90c Rework GhcModT monad stack 2014-08-06 19:38:42 +02:00
Alejandro Serrano 7beea26082 Bump djinn-ghc version 2014-08-03 19:34:47 +02:00
Alejandro Serrano 9cc6476df1 Add better support for auto, with several options searched 2014-08-03 19:14:42 +02:00
Alejandro Serrano 9161757f95 First attempt to add auto 2014-08-01 17:08:23 +02:00
Kazu Yamamoto 07e461ff82 cleaning up conditions. 2014-07-25 13:34:20 +09:00