Daniel Gröber
94ef8fae79
Enhance debug information
2015-04-12 02:48:54 +02:00
Daniel Gröber
ee4ee8765e
Fix weird resolveModule
double path issue
...
`mconcat` recurses into `Maybe a` which is not what I want, I just want
the first `Just` value
2015-04-12 02:48:54 +02:00
Daniel Gröber
d7984faf79
No double :
in logmsgs without a location
2015-04-12 02:48:54 +02:00
Daniel Gröber
2bf4c80580
Fix finding consistent component solution for targets
...
Union does the wrong thing, I wanted an intersection here.
2015-04-12 02:48:54 +02:00
Daniel Gröber
39a8ded102
Fix resolved component caching
2015-04-12 02:48:54 +02:00
Daniel Gröber
ca79f99c3e
Also add language options when resolving components
2015-04-12 02:48:54 +02:00
Daniel Gröber
6f59f07f00
Fix non canonicalized paths
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
d0ca3ee807
Fix MonadIO mess
2015-04-12 02:48:54 +02:00
Daniel Gröber
f3b4da7a0e
Use cabal-helper to get buildPlatform
2015-04-12 02:48:53 +02:00
Daniel Gröber
55216e4af3
ifdef for ghc < 7.10
2015-03-28 19:54:10 +01:00
Markus Hauck
e3812b49ec
GHC 7.10.0.20150123 fixes
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
2a02742f9e
Write autogen file when calling cabal configure
2015-03-28 02:32:47 +01: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
a97e07065e
Don't set -Wall on check
2015-03-15 20:48:05 +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
539c294dd4
Fix a bunch of relate exception handling problems
...
should handle exceptions outside of runGmlT otherwise we don't catch ghc
load related ones.
2015-03-09 22:04:04 +01:00
Daniel Gröber
7d7f848afb
Fix cabal-helper ignoring --with-* flags
2015-03-08 20:53:00 +01:00
Daniel Gröber
1ac71364a9
Fix use of (head . lines)
2015-03-08 17:33:09 +01:00
Daniel Gröber
a6d3f477bc
Add better handling for empty component assignments
2015-03-08 17:32:17 +01:00
Daniel Gröber
baf5cad809
Pass through --with-* options to cabal-helper
2015-03-07 19:37:19 +01:00
Daniel Gröber
85d4844a0d
Improve suggestions on inconsistent assignment
2015-03-06 19:49:26 +01:00
Daniel Gröber
e23772b1ed
Recache cabal-helper stuff when cabal-helper-* executable changes
2015-03-06 19:48:22 +01:00
Daniel Gröber
c05bd816e7
Add quiet option to decrease log level
2015-03-06 19:47:51 +01:00
Daniel Gröber
c8da5b8085
Fix line endings in logging output
2015-03-06 14:04:49 +01:00
Daniel Gröber
2151363dd6
Add back -d
option to modules
command
2015-03-05 19:38:18 +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
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
844bdea3db
Move symbolCache
to PathsAndFiles
2015-02-08 12:43:35 +01:00
Daniel Gröber
1c5a1c8b3e
Add util function for finding libexec binaries
2015-02-08 12:43:35 +01:00
Daniel Gröber
417cacbf81
Fix finding sandbox in sandbox only projects
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
Daniel Gröber
45d6b7d67a
Guess right sandbox pkg-db path on ghc version mismatch
...
If cabal.sandbox.config contains a "package-db:" declaration with the
wrong path and only the ghc version is wrong, for example:
```
package-db: <DIR>/.cabal-sandbox/x86_64-linux-ghc-7.8.3-packages.conf.d
```
Even though the user is using 7.10.0.20141222 `cabal repl` will correct
this and pass
```
-package-db <DIR>/.cabal-sandbox/x86_64-linux-ghc-7.10.0.20141222-packages.conf.d
```
to ghci, so obviously Cabal/cabal-install is doing some magic.
Conflicts:
Language/Haskell/GhcMod/PathsAndFiles.hs
2015-02-08 12:43:25 +01:00
Daniel Gröber
ce61f38f4d
Remove a bunch of dead code
2015-01-03 00:36:12 +01:00
klapaucius
fc7ce47e93
fix for varid bug in showExports & processExports
2014-12-24 22:17:36 +01:00
Dimitri 'phaazon' Sabadie
f023f4fc06
Fixed #422 .
2014-12-24 22:12:36 +01:00
Daniel Gröber
782f234981
Fix ghc-mod tempdirs not being removed on exit
2014-12-24 21:34:57 +01:00
Daniel Gröber
80e826a199
Prefix ghc-mod tmpdirs with "ghc-mod"
2014-12-24 21:34:39 +01:00
Daniel Gröber
9a8a3651d0
Fix findCabalFile
2014-11-03 00:45:27 +01:00
Daniel Gröber
506cf18885
Don't use fromJust
2014-11-03 00:33:23 +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
833d9ce058
$HOME/.cabal is not a cabal file
2014-11-03 00:04:15 +01:00
Daniel Gröber
94a60350c8
docs
2014-11-02 21:43:49 +01:00
Daniel Gröber
0cdbcb247b
Fix warning
2014-11-02 19:27:57 +01:00
Daniel Gröber
2af3383fad
Really fix newTempDir
on Windows
2014-11-02 19:02:05 +01:00
Daniel Gröber
37af8e368d
Refactoring World, etc. and fix #387
2014-11-02 01:19:27 +01:00
Daniel Gröber
14ee81e300
Allow GhcModError as an Exception and catch it in GhcModT's liftIO
2014-10-31 22:23:48 +01:00
Daniel Gröber
1797a53800
Fix newTempDir
on Windows
2014-10-31 12:42:03 +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
Kazu Yamamoto
33d6f38a20
removing a warning.
2014-10-06 15:55:16 +09:00
Kazu Yamamoto
ef371a7ebf
fixing tests.
2014-10-06 15:29:05 +09: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
9ed4aa8fdf
using void.
2014-09-23 14:55:56 +09:00
Kazu Yamamoto
735b80d0cc
exporting setupConfigFile.
2014-09-23 14:49:13 +09:00
Kazu Yamamoto
d831d6aa59
moving PackageDb stuff to GhcPkg.
2014-09-23 13:47:32 +09:00
Kazu Yamamoto
71bbd1c5d4
removing warnings.
2014-09-22 11:32:28 +09:00
Kazu Yamamoto
bc65c477d0
fixing typo.
2014-09-22 11:20:11 +09:00
Kazu Yamamoto
b96a8c6457
check does not use overrideGhcUserOptions again.
...
- workaround for #376
- logically reverting ec1b115cc1
2014-09-22 10:46:46 +09:00
Kazu Yamamoto
e8988c2f02
ghc-modi's "find" now catches up if packageDb is updated.
2014-09-20 12:25:46 +09:00
Daniel Gröber
5a4bec8755
Rewrite ghc-mod
command line frontend.
2014-09-18 10:45:14 +02:00
Daniel Gröber
34dd8c5bd9
Fix error when compiling with HSE < 1.16
2014-09-17 23:39:10 +02:00
Daniel Gröber
8f123dc7de
Fix compiling with HSE >= 1.16.0
2014-09-16 05:50:00 +02:00
Daniel Gröber
b96ef00248
formatting: FillSig.hs
2014-09-16 05:49:56 +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
1c8d1edb4d
Workaround for #340
2014-09-12 04:02:32 +02:00
Daniel Gröber
8889c2e8e5
note
2014-09-11 01:27:19 +02:00
Daniel Gröber
83d780015c
Use readProcess'
in PkgDoc.hs
2014-09-11 01:26:42 +02:00
Daniel Gröber
274b5d8e1c
Rephrase some docs
2014-08-29 17:21:38 +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
42c0e8f913
docs: Move GhcModError to right export category in Monad.hs
2014-08-24 14:19:56 +02:00
Alan Zimmerman
0944820dba
CaseSplit panic sorted. closes https://github.com/kazu-yamamoto/ghc-mod/issues/336
2014-08-23 14:06:26 +02:00
Kazu Yamamoto
d045001eb7
Letting "ghc-mod dumpsym" work on non-cabal directories.
2014-08-20 15:31:26 +09:00
Kazu Yamamoto
190dc2ac51
try to fix Travis CI.
2014-08-20 11:59:44 +09:00
Kazu Yamamoto
9456ea426d
fixing typos.
2014-08-19 17:18:36 +09:00
Kazu Yamamoto
a483f4f8b6
error messages are stored after NG, not printed in stderr.
2014-08-19 14:56:01 +09:00
Kazu Yamamoto
ad3a42844d
Merge pull request #330 from DanielG/dev-error
...
Remove dedicated exception handling in `check` completely
2014-08-19 11:52:09 +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
Kazu Yamamoto
af6de8c849
Merge pull request #329 from DanielG/dev-error
...
Remove `withErrorHandler`, use `liftExceptions` instead
2014-08-19 11:41:44 +09:00
Daniel Gröber
1b5917c70e
Remove withErrorHandler
, use liftExceptions
instead
2014-08-19 04:30:44 +02:00
Alejandro Serrano
5b78711842
Revert way to report errors when deferred as warnings
...
Fixes #310
2014-08-18 17:32:32 +02:00
Kazu Yamamoto
0fd8b9afd8
first try to resolve #322 .
2014-08-18 16:55:41 +09:00
Kazu Yamamoto
5a657b9df8
removing warnings
2014-08-18 15:24:38 +09:00
Daniel Gröber
271ff4e162
Catch cabal configure
failure properly
2014-08-18 08:06:36 +02:00
Daniel Gröber
f5d051dcef
Remove toGhcModT
it's not needed anymore.
2014-08-15 20:35:21 +02:00
Alejandro Serrano
10042c6b0c
Fix for GHC 7.4
2014-08-15 11:00:48 +02:00
Alejandro Serrano
57db768ed0
Fix for GHC 7.4
2014-08-15 10:46:52 +02:00
Alejandro Serrano
f584bf5d5b
Show error messages without qualification
2014-08-15 10:43:07 +02:00
Alejandro Serrano
6b62117381
Remove redundant typed hole warnings
2014-08-15 09:41:02 +02:00
Alejandro Serrano
7612229cc0
Keep all errors and warnings for code
2014-08-15 09:32:28 +02:00
Alejandro Serrano
fdbecdddce
Make better check in presence of typed holes
2014-08-14 20:51:49 +02:00
Alejandro Serrano
890658f9cb
Fix merge conflict, dropdown-list no longer needed
2014-08-14 18:02:58 +02:00
Daniel Gröber
bd28310e59
Don't fall back to sandbox if cabal file failes to parse
2014-08-12 00:02:39 +02:00
Daniel Gröber
b13465b588
Some docs in CabalConfig.hs
2014-08-11 23:48:15 +02:00
Daniel Gröber
fad99f466f
Export GhcModError(..)
2014-08-06 20:40:11 +02:00
Daniel Gröber
9e4f1c9057
add note
2014-08-06 19:38:42 +02:00
Daniel Gröber
cb28e9ec8f
Fix warning
2014-08-06 19:38:42 +02:00
Daniel Gröber
c98eb23bdf
Clean up getSymbolTable a bit more
2014-08-06 19:38:42 +02:00
Daniel Gröber
459106a6d5
Clean up Find.hs a bit
2014-08-06 19:38:42 +02:00
Daniel Gröber
f311efd90c
Rework GhcModT monad stack
2014-08-06 19:38:42 +02:00
Alejandro Serrano
43ac9036f9
Fixes on GHC < 7.8
2014-08-04 17:25:18 +02:00
Alejandro Serrano
d1a6618329
More package fixes for GHC < 7.8
2014-08-03 20:38:54 +02:00
Alejandro Serrano
d22e50d9e4
Small fix to compile in GHC < 7.8
2014-08-03 19:57:01 +02:00
Alejandro Serrano
9cc6476df1
Add better support for auto, with several options searched
2014-08-03 19:14:42 +02:00
Alejandro Serrano
3aa83e14dd
Show more than one Djinn completion
2014-08-02 09:52:36 +02:00
Alejandro Serrano
31a7ce3d19
Merge remote-tracking branch 'kazu/master'
2014-08-01 17:08:50 +02:00
Alejandro Serrano
9161757f95
First attempt to add auto
2014-08-01 17:08:23 +02:00
Kazu Yamamoto
d1daf6def9
Merge pull request #296 from serras/master
...
Add refinement and better support for typed holes in Emacs mode
2014-08-01 15:14:50 +09:00
Kenta Sato
92651fbb26
interpret backslash-escaped characters at the line boundary
2014-07-30 12:03:58 +09:00
Alejandro Serrano
e3853a49f1
Add fix for GHC 7.4
2014-07-27 14:11:54 +02:00
Alejandro Serrano
f1d0436467
Remove case splitting for type families
2014-07-27 12:20:46 +02:00
Alejandro Serrano
9b500da4b8
Another try at case split for type families
2014-07-26 13:07:45 +02:00
Alejandro Serrano
9b38818f66
Merge remote-tracking branch 'kazu/master'
2014-07-24 20:21:44 +02:00
Alejandro Serrano
361fe24be0
Start case splitting on type families (NOT working)
2014-07-24 20:21:05 +02:00
Alejandro Serrano
d9c6638493
Work on initial signature for type families
2014-07-24 20:20:30 +02:00
Kazu Yamamoto
10ef20b967
Merge pull request #293 from DanielG/dev-exec-path
...
Fall back to getProgName when exeutable name is not available
2014-07-21 11:11:25 +09:00
Daniel Gröber
0736516512
Document exposed parts of GhcMod.Monad
2014-07-21 00:27:12 +02:00
Daniel Gröber
ba9c70dff7
Fall back to assuming ghc-mid is on PATH when exeutable name is not available
2014-07-20 23:50:32 +02:00
Alejandro Serrano
eb5ec73ae1
Complete parenthesis on refinement
2014-07-20 13:33:36 +02:00
Alejandro Serrano
54d10684b9
Merge remote-tracking branch 'kazu/master'
2014-07-20 10:45:28 +02:00
Alejandro Serrano
ae49eab547
First steps in refinement
2014-07-19 12:11:34 +02:00
Alejandro Serrano
60e97d4579
Merge remote-tracking branch 'kazu/master'
2014-07-19 10:13:19 +02:00
Kazu Yamamoto
981051a642
implementing fallback from Simple to Intelligent.
2014-07-19 11:53:05 +09:00
Kazu Yamamoto
5abd75ea7d
fixing a infinite process loop.
2014-07-19 11:50:12 +09:00
Alejandro Serrano
6302d4882e
Merge remote-tracking branch 'kazu/master'
...
Conflicts:
Language/Haskell/GhcMod/Check.hs
Language/Haskell/GhcMod/FillSig.hs
Language/Haskell/GhcMod/GHCApi.hs
2014-07-18 17:12:52 +02:00
Alejandro Serrano
852d742796
Continue work on refinement
2014-07-18 17:09:02 +02:00
Kazu Yamamoto
0080f9b68c
Internal exports extra Monad stuff.
2014-07-18 15:42:05 +09:00
Kazu Yamamoto
30ddd655cd
export minimum Monad stuff from GhcMod.
2014-07-18 15:31:42 +09:00
Kazu Yamamoto
e1d9c3b881
clean up lookupSymbol.
2014-07-18 15:13:30 +09:00
Kazu Yamamoto
6d42354a5b
setMode and getMode
2014-07-18 14:55:21 +09:00
Kazu Yamamoto
7b079896b1
doc sectioning.
2014-07-18 14:55:08 +09:00
Kazu Yamamoto
26316262aa
converting GhcMonad to IOish.
2014-07-18 14:54:39 +09:00
Kazu Yamamoto
233f4cf05e
moving setFlags to Gap.
2014-07-18 11:09:11 +09:00
Kazu Yamamoto
0ce70ae22d
set Opt_SpecConstr just in case.
2014-07-18 10:52:57 +09:00
Daniel Gröber
3c04e78ba7
Don't rely on ghc-mod being in PATH
2014-07-17 16:17:17 +02:00
Daniel Gröber
3c1b560068
Short circuit export list when compiling spec
2014-07-17 16:15:02 +02:00
Daniel Gröber
4f0f5f09a6
Remove type Db
it's only used once and makes things less clear
2014-07-17 15:54:59 +02:00
Daniel Gröber
e61aaed023
Make readProcess'
more generic
2014-07-17 15:52:33 +02:00
Kazu Yamamoto
cffa7463eb
adopting hlint's suggestions.
2014-07-17 17:16:44 +09:00