Commit Graph

395 Commits

Author SHA1 Message Date
Alan Zimmerman
c9e5a20a3e Merge remote-tracking branch 'dxld/master' into opts-in-lib 2016-02-15 15:56:55 +02:00
Daniel Gröber
be6ba3f875 Merge remote-tracking branch 'pikajude/ghc-8' 2016-02-14 12:35:29 +01:00
Daniel Gröber
20c999e098 Time to kill GHC 7.4 support 2016-02-14 10:10:28 +01:00
Daniel Gröber
daeb5018f3 Add DynFlagsTH to exposed-modules 2016-02-14 08:50:49 +01:00
Daniel Gröber
2e4c2b5228 Check session validity via equality on DynFlags 2016-02-14 08:42:45 +01:00
Daniel Gröber
b4de82632e Relax some upper bounds for GHC 8 2016-02-14 08:42:45 +01:00
Alan Zimmerman
b02dfb9ce3 Cleaning up 2016-02-09 22:34:25 +02:00
Alan Zimmerman
5f070b8428 Rebalance between lib and exe 2016-02-09 22:24:46 +02:00
Alan Zimmerman
1cc97db24f Move the CLI parser definitions into the lib
So they can be used by library clients to parse and pass in the
appropriate ghc-mod Options.
2016-02-08 22:34:20 +02:00
Jude Taylor
8ef0f52199 GHC 8 readiness 2016-02-04 10:54:55 -08:00
Daniel Gröber
566dbebe29 Merge release-5.5.0.0 into master (using imerge) 2016-01-17 21:03:28 +01:00
Daniel Gröber
54fe4a0edb Replace fromJust with fromJustNote everywhere 2016-01-13 04:56:39 +01:00
Daniel Gröber
33e9751390 Fix writeAutogen when no systemwide ghc is installed (#660) 2016-01-10 22:19:33 +01:00
Nikolay Yakimov
68689bfcfd Use Binary for 'find' communication channel 2016-01-09 17:27:21 +03:00
Nikolay Yakimov
dfa0e7e31e Use new hlint API 2016-01-05 11:34:38 +03:00
Daniel Gröber
d3c159821a Update cabal file Authors field
Welcome to the club @lierdakil :)
2016-01-04 21:43:20 +01:00
Daniel Gröber
ab1fa9cc13 Bump version to 5.5.0.0 2016-01-04 20:36:27 +01:00
Daniel Gröber
7bbaa35f56 Reinstate cwd setup, this time with locking 2016-01-04 20:15:55 +01:00
Daniel Gröber
ec5a362179 Add AsyncSymbolDb to fix runGhcMod race condition for good 2016-01-04 05:27:31 +01:00
Daniel Gröber
cde7ac77f0 Add missing extra-src files 2016-01-04 01:23:46 +01:00
Daniel Gröber
699ce178cb Split L.H.GM.Monad.Types module 2016-01-04 01:23:46 +01:00
Daniel Gröber
7374f1ba17 Add 'test' command for running QuickCheck props 2015-12-28 13:57:24 +01:00
Nikolay Yakimov
92f53f7b3b Monadic pretty opt desc builder 2015-12-20 13:48:47 +03:00
Nikolay Yakimov
2306fbf9e5 Import pretty-print from optparse
instead of depending on ansi-wl-pprint
2015-12-20 08:47:52 +03:00
Nikolay Yakimov
c3cf416097 Rename module ShellEscape → ShellParse 2015-12-20 08:26:49 +03:00
Nikolay Yakimov
feae07da5b Shell-like syntax for interactive mode 2015-12-20 06:05:43 +03:00
Nikolay Yakimov
2921df2d31 Relax optparse-applicative dependency 2015-12-10 01:26:05 +03:00
Nikolay Yakimov
41d7988972 Use readMaybe from Language.Haskell.GhcMod.Read 2015-12-06 02:29:30 +03:00
Nikolay Yakimov
9fd738ec97 Optparse GHC 7.4 compatibility 2015-12-06 01:36:09 +03:00
Nikolay Yakimov
ad16b739eb Optparse-applicative 2015-12-05 23:55:12 +03:00
Daniel Gröber
9c845315f4 Relax haskell-src-exts dependency 2015-11-26 16:08:03 +01:00
Daniel Gröber
604f2c18b0 Fix upper bounds on binary for ghc<7.10 2015-11-26 14:52:25 +01:00
Daniel Gröber
b923e2662d Switch to using binary instead of cereal. 2015-11-18 20:51:37 +01:00
Daniel Gröber
f7d4f15778 Fix wrong upper bound on cereal 2015-11-12 13:08:58 +01:00
Daniel Gröber
3bd28e90ed Fix cabal file parse error 2015-11-05 23:07:57 +01:00
Daniel Gröber
6ea3b12b48 Add upper bounds to build-depends
thanks cabal-bounds :)
2015-11-05 21:22:37 +01:00
Daniel Gröber
e74a6c05b8 Bump cabal-helper dependency 2015-10-05 17:38:12 +02:00
Daniel Gröber
2c90e7a700 Bump version to 5.4.0.0 2015-09-16 05:30:07 +02:00
Daniel Gröber
7e565df923 Fix stdoutGateway line buffering 2015-09-16 05:13:20 +02:00
Daniel Gröber
0b2a3458fd Move stack code into seperate module 2015-09-15 05:25:54 +02:00
Daniel Gröber
6ad71af001 Don't swallow ghc's verbose output 2015-09-08 06:44:02 +02:00
Daniel Gröber
7ae22a9226 Fix tests 2015-09-08 06:20:12 +02:00
Daniel Gröber
5713fd9908 Fix custom package-db stack for non Cabal projects 2015-09-07 07:20:16 +02:00
Daniel Gröber
be293db503 Update for cabal-helper >= 0.6 2015-09-07 05:15:35 +02:00
Daniel Gröber
2a0414f368 Pass stack ghc paths down to cabal-helper 2015-08-31 04:17:33 +02:00
Daniel Gröber
8fa3a1e3cf Add missing copyright notice for NotCPP to srcdist 2015-08-20 03:46:20 +02:00
Daniel Gröber
b25dbc2416 Merge branch 'stack-support' 2015-08-20 02:14:55 +02:00
Daniel Gröber
04b78d2719 Merge branch 'master' of https://github.com/Oblosys/ghc-mod 2015-08-20 02:05:40 +02:00
Daniel Gröber
78bdf86a95 Fix all the stack related things 2015-08-19 09:17:41 +02:00
scturtle
cbb8feb0ad Add test project in cabal file 2015-08-19 09:17:30 +02:00
Daniel Gröber
50ab2091d6 Add missing test files 2015-08-19 07:02:57 +02:00
Martijn Schrage
7ac5aca5a5 Use https in Location url to get clickable link on hackage web page 2015-08-18 17:13:54 +02:00
Daniel Gröber
bb3a948912 Fix over-qualified error messages (Fix #551) 2015-08-18 09:26:53 +02:00
Nikolay Yakimov
f4aea2c08a Add new test-files to .cabal 2015-08-17 00:26:43 +03:00
Nikolay Yakimov
eb28035753 Some file mapping tests 2015-08-15 21:07:35 +03:00
Nikolay Yakimov
31020c4112 Move withMappedFile to Language.Haskell.GhcMod.Utils 2015-08-15 21:06:57 +03:00
Nikolay Yakimov
5b0cca0353 Added withMappedFile utility function
Works pretty much as `withTempFile`, except looks
mapping up and uses temp. file only when necessary.
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
3790fca20b Initial support for file redirection
Rewrite, taking discussion into consideration
2015-08-15 20:41:10 +03:00
Daniel Gröber
97124afc4c Bump version to 5.3.0.0 2015-08-14 10:36:33 +02:00
Daniel Gröber
d3a98d90c4 Bump cabal-helper dependency 2015-08-14 09:14:53 +02:00
Daniel Gröber
09c3c5603c Fix missing newlines 2015-08-13 09:01:58 +02:00
Daniel Gröber
2806f702d9 Start implementing line-prefix stuff
readProcess wrapper still missing from CabalHelper
2015-08-13 06:47:12 +02:00
Daniel Gröber
9b286cc4e1 Fix cabal-helper >= 0.5 2015-08-12 09:04:09 +02:00
Daniel Gröber
11243e5304 Add in-memory caching otherwise everything is slow 2015-08-11 07:38:25 +02:00
Daniel Gröber
2cd4d6bd80 Bind ghc-modi executable to right ghc-mod exe 2015-08-11 02:02:08 +02:00
Daniel Gröber
bad431a758 Bump cabal-helper depdendency 2015-08-10 09:07:41 +02:00
Daniel Gröber
369b5c5d6e Bump cabal-helper dependency 2015-08-10 08:14:38 +02:00
Daniel Gröber
c4d534ba1c Make sure preprocessed module are on the module path 2015-08-10 06:44:35 +02:00
Daniel Gröber
8439f12cb0 Let Cabal determine the package-db stack 2015-08-07 07:31:08 +02:00
Daniel Gröber
2c9b79449a Add missing test data to extra-source-files 2015-08-06 04:22:51 +02:00
Daniel Gröber
1a53582a21 Add failing test for missing warnings #507 2015-08-05 08:01:23 +02:00
Daniel Gröber
ec008fbd1e Bump cabal-helper dependency 2015-08-03 05:47:16 +02:00
Daniel Gröber
509f43999f cabal-helper-0.3.5.0 is broken... 2015-07-06 18:41:34 +02:00
Daniel Gröber
49515b3eb8 Fix #487, Modules from sandbox not visible 2015-06-05 22:45:52 +02:00
Daniel Gröber
1e381a12a9 Remove some unnecessary dependencies from ghc-modi 2015-06-04 14:15:59 +02:00
NightRa
7b3a84bc74 Remove the data-default dependency 2015-05-28 00:22:04 +03:00
Daniel Gröber
d9bc2092ab Remove dead code 2015-05-06 16:14:37 +02:00
Daniel Gröber
192fc220cc Fix some tests 2015-04-29 01:22:37 +02:00
Daniel Gröber
fb19d021ca Fix a few warnings 2015-04-14 21:39:11 +02:00
Daniel Gröber
ca79f99c3e Also add language options when resolving components 2015-04-12 02:48:54 +02:00
Daniel Gröber
523f43c3c9 Fix some tests 2015-04-12 02:48:54 +02:00
Daniel Gröber
744f2c232c Update cabal meta data 2015-03-28 19:13:51 +01:00
Daniel Gröber
80d91776c5 Cleanup and some fixes 2015-03-28 19:13:48 +01:00
Daniel Gröber
90d9577f8d Factor out cabal-helper into a package 2015-03-15 20:48:55 +01:00
Daniel Gröber
e0bd4c6984 Update ghc-mod.cabal maintainer field 2015-03-05 17:35:29 +01:00
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