Daniel Gröber
2af1da960b
Also catch exceptions thrown in IO
2015-09-01 10:29:21 +02:00
Daniel Gröber
899d583549
error
-> throw $ GMEProcess
2015-09-01 10:27:41 +02:00
Daniel Gröber
4aa75818d8
Fix tests
2015-08-31 08:32:31 +02:00
Daniel Gröber
0b65487e50
Stderr output pre-GhcModT for stack cradle
2015-08-31 07:49:06 +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
85722ab6f2
Cleanup
2015-08-24 15:11:05 +02:00
Daniel Gröber
c5db06af0f
Fix missing liftIO
2015-08-21 04:21:27 +02:00
Daniel Gröber
473f1e09c7
Rename withContext -> withInteractiveContext
2015-08-21 04:12:53 +02:00
Daniel Gröber
eceb34c8af
Merge branch 'master' of github.com:kazu-yamamoto/ghc-mod
2015-08-21 04:12:29 +02:00
Daniel Gröber
19e62b0a6a
Inhibit stack support when dist/setup-config exists
2015-08-20 08:43:36 +02:00
Kazu Yamamoto
797aef2a09
Merge remote-tracking branch 'origin/fix-loop'
2015-08-20 09:49:06 +09:00
Daniel Gröber
b25dbc2416
Merge branch 'stack-support'
2015-08-20 02:14:55 +02:00
Daniel Gröber
91f0c50b20
Merge branch 'file-redirection-2' of https://github.com/atom-haskell/ghc-mod
2015-08-20 02:10:05 +02:00
Daniel Gröber
23a48aa6c7
Use cabal-helper for stack
2015-08-19 09:18:10 +02:00
Daniel Gröber
18a8c67d39
Take sandbox cfg into account for caches
2015-08-19 09:18:10 +02:00
Daniel Gröber
78bdf86a95
Fix all the stack related things
2015-08-19 09:17:41 +02:00
scturtle
d660e7cd85
add 'StackProject' around
2015-08-19 09:17:30 +02:00
scturtle
a285b42206
Refactor the hard-coding "dist"
2015-08-19 09:17:30 +02:00
scturtle
89c3faea05
Initilize test for stack project
2015-08-19 09:17:11 +02:00
scturtle
320b404a8c
Yet another try to support Stack.
2015-08-19 09:17:11 +02:00
Daniel Gröber
e360f7eb44
Fix older GHCs
2015-08-19 09:05:57 +02:00
Kazu Yamamoto
b7cea06a52
Flushing stdout to solve infinite loop ( #542 ).
2015-08-19 15:02:00 +09:00
Alan Zimmerman
e198f68f2a
Rearrange loadTargets code.
...
The loadTargets function is exposed via the Internal module for use by
external programmes, such as HaRe.
Re-arrange to code so that it can still be called with a list of string
targets, as it was before.
2015-08-19 03:34:01 +02:00
Daniel Gröber
bb3a948912
Fix over-qualified error messages ( Fix #551 )
2015-08-18 09:26:53 +02:00
Daniel Gröber
90b1e452e2
Some pretty printing "improvements" (hopefully)
2015-08-18 04:54:10 +02:00
Daniel Gröber
f7149ba23f
Cleanup
2015-08-18 04:50:51 +02:00
Daniel Gröber
dd82cea996
Demote no-component-assignment warning to debug, Fix #552
2015-08-18 04:34:39 +02:00
Daniel Gröber
a383f46939
Fix nasty module graph caching issue
...
resolvedComponentsCache did not consider outgoing edges in the module
graph when computing the set of dependent files
i.e. for `A -> B, A -> C` `flatten` would give [B,C] instead of [A,B,C]
2015-08-18 04:27:02 +02:00
Anthony Cowley
78c5cea161
DeferErrors implies DeferTypedHoles in GHC >= 7.10
...
The Opt_DeferErrors flag should imply Opt_DeferTypedHoles. The proper
API for setting these flags that implements such implications is
unfortunately not exposed by GHC.
2015-08-17 15:14:44 -04:00
Alejandro Serrano
45f8194c0c
Set -fdefer-types-holes in case split
2015-08-17 14:54:10 -04:00
Nikolay Yakimov
3dea19b270
Fix getCanonicalFileNameSafe to work on all relevant ghc versions
2015-08-17 10:39:49 +03:00
Nikolay Yakimov
0d78ee4096
getCanonicalFileNameSafe is now best-effort canonicalizatoin
...
Canonicalizes longest init of path possible, and appends rest verbatim
2015-08-17 08:43:34 +03:00
Daniel Gröber
1f14ff08c6
Log exceptions as GmException
2015-08-17 06:52:56 +02:00
Nikolay Yakimov
ab19da08db
Removed redundant imports
2015-08-16 23:42:20 +03:00
Nikolay Yakimov
8ef8a86397
Unload mapped files before loading
2015-08-16 23:38:32 +03:00
Nikolay Yakimov
a5dae2a82d
Drop memory-mapped files, since ghc doesn't play well with those
...
All files are now "redirected", either user-created, or created by ghc-mod itself.
2015-08-16 23:20:00 +03:00
Nikolay Yakimov
654b172f5e
Add FileMapping support to HMG/preprocessFile
...
Post-rebase update
2015-08-16 18:22:27 +03:00
Nikolay Yakimov
d276b9bb7f
Remove redundant imports
2015-08-15 21:26:33 +03:00
Nikolay Yakimov
c96abfc422
Drop loadMappedFiles and move all loading code to progMain
2015-08-15 21:18:57 +03:00
Nikolay Yakimov
72c43a9210
Rename GmPprEnv fields rs* → gpe*
2015-08-15 21:07:36 +03:00
Nikolay Yakimov
e7329a9d24
Replace redirected filenames in info.
2015-08-15 21:07:36 +03:00
Nikolay Yakimov
8f931eb928
Fix problem with fileModSummary
2015-08-15 21:07:35 +03:00
Nikolay Yakimov
c5f71933f6
Canonicalize FilePath before lookup in withMappedFile
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
438b15463e
Move getCanonicalFileName(Safe) to Utils module
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
267edfebe3
Try best-guess tactic if file to be redirected doesn't exist
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
a0cf585939
Bugfix: canonicalize filename before trying to unload
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
31020c4112
Move withMappedFile to Language.Haskell.GhcMod.Utils
2015-08-15 21:06:57 +03:00
Nikolay Yakimov
d405ce7efa
Make linting work with mapped files
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
d3b1bf125b
Move reading source from stdin to frontend
2015-08-15 21:06:25 +03:00
Nikolay Yakimov
67102c92b8
Use cradleTempDir instead of getTemporaryDirectory in HMG
2015-08-15 21:02:42 +03:00
Nikolay Yakimov
de5ff87f19
Don't use infix call for type ctor
2015-08-15 20:58:45 +03:00
Nikolay Yakimov
1efacbef88
Use less generic name for reader monad/state in Logger
2015-08-15 20:58:45 +03:00
Nikolay Yakimov
2504f643e9
Replace mapped names with original ones in output
2015-08-15 20:58:45 +03:00
Nikolay Yakimov
f8a0325617
Load all mapped targets
2015-08-15 20:41:10 +03:00
Nikolay Yakimov
e70988e15f
Use MaybeT
instead of maybe (return Nothing)
2015-08-15 20:41:10 +03:00
Nikolay Yakimov
e72d72eb86
Workaround for GHC 7.4 bugs
2015-08-15 20:41:10 +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
585a9ef425
Fix doc
in non-cabal projects
...
..man those non-cabal projects are really getting me down. Who uses
those anwayways ;)
2015-08-14 10:30:42 +02:00
Daniel Gröber
623cddd8ca
Fix find
being slow on legacy-interactive
2015-08-14 06:48:56 +02:00
Daniel Gröber
887ab3c599
Don't try to create dist/ in non cabal projects, duh
2015-08-14 06:32:20 +02:00
Daniel Gröber
55bf578b87
Put line-prefix'es on exceptions too
2015-08-14 05:57:33 +02:00
Daniel Gröber
f998c63c73
Fix prepareCabalHelper when dist/ doesn't exist yet
2015-08-14 04:28:22 +02:00
Daniel Gröber
0b5de23ac9
Wrap dumpsym in stderr mangling readProc as well just in case
2015-08-14 03:51:50 +02:00
Daniel Gröber
cbfa26eb16
Make sure cabal-helper is ready before invoking dumpsym
2015-08-14 03:48:29 +02:00
Daniel Gröber
312a8c81fb
Merge branch 'HaRe' of https://github.com/alanz/ghc-mod
2015-08-13 10:17:14 +02:00
Alan Zimmerman
eafde94913
Expose functions for integration with HaRe
2015-08-13 09:49:51 +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
443650705c
Fix #532 , Use first component in cabal file for dangling modules in cabal projects
2015-08-12 10:44:41 +02:00
Daniel Gröber
28f06e035d
Cleanup project type handling
2015-08-12 09:25:13 +02:00
Daniel Gröber
a94d8977a9
Fix ghc-modi not working in non-cabal projects
2015-08-12 09:04:35 +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
05360e0660
Fix typo
2015-08-11 06:35:07 +02:00
Daniel Gröber
bad431a758
Bump cabal-helper depdendency
2015-08-10 09:07:41 +02:00
Daniel Gröber
bb22b643e9
Add version header to caches
2015-08-10 06:44:34 +02:00
Daniel Gröber
0abe1d6a53
Fix warning
2015-08-07 07:33:04 +02:00
Daniel Gröber
5fdaa6adea
Merge branch 'master' of https://github.com/meditans/ghc-mod
2015-08-07 07:32:26 +02:00
Daniel Gröber
8439f12cb0
Let Cabal determine the package-db stack
2015-08-07 07:31:08 +02:00
meditans
31d85a27b4
Added logging in refine
and auto
handlers
2015-08-06 11:49:01 +02:00
Daniel Gröber
f61dd0a9e6
Fix re-init of ghc-modi session after environment change
...
Using `dropSession` instead of a weird exception cludge
2015-08-05 08:52:52 +02:00
Daniel Gröber
6e28e07ca9
Fix #507
2015-08-05 08:01:25 +02:00
Daniel Gröber
d270e92951
Clean up L.H.GM.Target debug/vomit output a bit
2015-08-05 06:16:05 +02:00
Daniel Gröber
c9b6e95a30
Add Vomit log level and dumping to disk
2015-08-03 08:09:24 +02:00
Daniel Gröber
614522644b
Fix imports for ghc < 7.10
2015-08-03 07:51:23 +02:00
Daniel Gröber
6ef389a757
Merge branch 'Fix502' of https://github.com/acowley/ghc-mod
2015-08-03 05:48:15 +02:00
Daniel Gröber
84c0670fc4
docs
2015-08-03 05:47:16 +02:00
Daniel Gröber
75d4a2a9d6
Some debug logging for cabal configure
etc.
2015-08-03 05:47:16 +02:00
Daniel Gröber
f023d939e2
Fix GHC 7.10 warnings
2015-08-03 05:46:51 +02:00
Daniel Gröber
160cec86bb
Comment
2015-08-03 05:46:51 +02:00
Daniel Gröber
42e72b3816
Fix fileModuleName not working on CPP modules given by path
2015-08-03 05:46:51 +02:00
Anthony Cowley
e06e4d25df
More sensitive to cache invalidation.
...
This addresses a problem where changes to a .cabal file were not
invalidating the cache files.
2015-07-08 18:15:05 -04:00
Daniel Gröber
bfa0b965ee
Fix impredicativity related issue
...
See: https://ghc.haskell.org/trac/ghc/ticket/10443
2015-06-10 11:00:56 +02:00
Daniel Gröber
21087650d9
Fix travis
2015-06-07 03:36:50 +02:00
Daniel Gröber
acfc575e13
Make unknown component fallback message more clear
2015-06-07 02:45:50 +02:00
Daniel Gröber
bed42f10fe
Refactor L.H.G.Caching
2015-06-07 02:44:11 +02:00
Daniel Gröber
baf557d5bf
Comment
2015-06-07 01:53:41 +02:00
Daniel Gröber
49515b3eb8
Fix #487 , Modules from sandbox not visible
2015-06-05 22:45:52 +02:00
Daniel Gröber
6dd1195b7f
Merge remote-tracking branch 'sergv/master'
2015-06-02 12:30:15 +02:00
Daniel Gröber
14c097530e
Fix stray tempdir
2015-06-02 12:27:11 +02:00
Sergey Vinokurov
7b6eb55b11
Transform ModuleString and Expression type synonyms into newtypes
2015-06-02 10:43:29 +03:00
Sergey Vinokurov
6a65701397
Remove unused Module type
2015-06-02 10:43:29 +03:00
Sergey Vinokurov
4a9d578681
Improve style
2015-06-02 10:43:29 +03:00
Sergey Vinokurov
a23f1f3b75
Improve findVar function
2015-06-02 10:43:29 +03:00
Sergey Vinokurov
73b98573f4
Remove unused extractParens function and its tests
2015-06-02 10:43:29 +03:00
Sergey Vinokurov
57e2c112dc
Use package dbs defined by current cradle when dealing with SymbolDBs
2015-06-02 10:43:27 +03:00
Daniel Gröber
a2e4a5d683
Revert "use standard findFile instead of hand-rolled one"
...
This reverts commit b055098127
.
2015-05-20 12:05:22 +02:00
Daniel Gröber
a2abad53ac
Merge remote-tracking branch 'prezi/master'
...
Conflicts:
Language/Haskell/GhcMod/CabalHelper.hs
2015-05-20 11:37:17 +02:00
Sergey Vinokurov
84134e1fee
replace redundant liftM7 function with applicatives
2015-05-19 21:00:54 +03:00
Daniel Vigovszky
5f41e8828a
Revert "Not passing package db flags in default case"
...
This reverts commit 76e5af817a
.
2015-05-19 19:50:36 +02:00
Daniel Vigovszky
76e5af817a
Not passing package db flags in default case
2015-05-19 15:25:22 +02:00
Daniel Vigovszky
0bb1671238
Code cleanup
2015-05-19 14:08:18 +02:00
Sergey Vinokurov
f7717ee1ee
fix typo
2015-05-17 23:25:49 +03:00
Sergey Vinokurov
b055098127
use standard findFile instead of hand-rolled one
2015-05-17 23:25:49 +03:00
Daniel Gröber
e6fc3dd8d2
Fix tests
2015-05-08 00:06:08 +02:00
Daniel Gröber
e202fabc39
elisp: Fix usage of legacy-interactive
2015-05-06 23:13:24 +02:00
Daniel Gröber
0f1e653f7f
Change some logging stuff
2015-05-06 16:13:08 +02:00
Daniel Gröber
d11b12676e
Fix pretty printing of logging output
2015-05-05 16:09:54 +02:00
Daniel Gröber
c45a7f4b52
Fix caching for getGhcPkgOptions
2015-05-05 14:47:23 +02:00
Daniel Gröber
8b8f947b5e
Reinitialize GHC session when options change
2015-04-29 18:44:21 +02:00
Daniel Gröber
503562b9b6
Fix typo succ -> pred
2015-04-29 18:41:28 +02:00
Daniel Gröber
cf5dfa439c
Clarify HscInterpreted log message
2015-04-29 17:22:48 +02:00
Daniel Gröber
c831332185
Set -O0 to avoid various interperter issues
2015-04-29 17:21:37 +02:00
Daniel Vigovszky
3b7d51d25a
Removed unused function
2015-04-24 10:41:39 +02:00
Daniel Vigovszky
308c2d7963
Undo indenation change in Types.hs
2015-04-23 17:31:54 +02:00
Daniel Vigovszky
5d9d6f5630
Custom cradle support
2015-04-23 17:25:45 +02:00
Daniel Gröber
247e4e0e76
Decrease default log level
2015-04-15 13:13:22 +02:00
Daniel Gröber
fb19d021ca
Fix a few warnings
2015-04-14 21:39:11 +02:00
Daniel Gröber
95b16ded6d
Fix checkComponent
2015-04-14 00:53:40 +02:00
Daniel Gröber
9077e96aeb
Fix tests
2015-04-13 23:16:14 +02:00
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