Commit Graph

640 Commits

Author SHA1 Message Date
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
a9b98e7128 [File-map] Export more user-friendly functions in public API 2015-08-15 21:08:24 +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