@@ -19,24 +19,19 @@ module Development.IDE.Core.OfInterest(
19
19
import Control.Concurrent.Strict
20
20
import Control.Monad
21
21
import Control.Monad.IO.Class
22
- import Data.HashMap.Strict (HashMap )
23
- import qualified Data.HashMap.Strict as HashMap
24
- import qualified Data.Text as T
22
+ import Data.HashMap.Strict (HashMap )
23
+ import qualified Data.HashMap.Strict as HashMap
24
+ import qualified Data.Text as T
25
25
import Development.IDE.Graph
26
26
27
- import Control.Monad.Trans.Class
28
- import Control.Monad.Trans.Maybe
29
- import qualified Data.ByteString as BS
30
- import Data.List.Extra (nubOrd )
31
- import Data.Maybe (catMaybes )
27
+ import qualified Data.ByteString as BS
28
+ import Data.Maybe (catMaybes )
32
29
import Development.IDE.Core.ProgressReporting
33
30
import Development.IDE.Core.RuleTypes
34
31
import Development.IDE.Core.Shake
35
- import Development.IDE.Import.DependencyInformation
36
32
import Development.IDE.Types.Exports
37
33
import Development.IDE.Types.Location
38
34
import Development.IDE.Types.Logger
39
- import Development.IDE.Types.Options
40
35
41
36
newtype OfInterestVar = OfInterestVar (Var (HashMap NormalizedFilePath FileOfInterestStatus ))
42
37
instance IsIdeGlobal OfInterestVar
@@ -98,25 +93,13 @@ deleteFileOfInterest state f = do
98
93
kick :: Action ()
99
94
kick = do
100
95
files <- HashMap. keys <$> getFilesOfInterestUntracked
101
- ShakeExtras {progress} <- getShakeExtras
96
+ ShakeExtras {exportsMap, progress} <- getShakeExtras
102
97
liftIO $ progressUpdate progress KickStarted
103
98
104
- -- Update the exports map for FOIs
99
+ -- Update the exports map
105
100
results <- uses GenerateCore files <* uses GetHieAst files
106
-
107
- -- Update the exports map for non FOIs
108
- -- We can skip this if checkProject is True, assuming they never change under our feet.
109
- IdeOptions { optCheckProject = doCheckProject } <- getIdeOptions
110
- checkProject <- liftIO doCheckProject
111
- ifaces <- if checkProject then return Nothing else runMaybeT $ do
112
- deps <- MaybeT $ sequence <$> uses GetDependencies files
113
- hiResults <- lift $ uses GetModIface (nubOrd $ foldMap transitiveModuleDeps deps)
114
- return $ map hirModIface $ catMaybes hiResults
115
-
116
- ShakeExtras {exportsMap} <- getShakeExtras
117
101
let mguts = catMaybes results
118
102
! exportsMap' = createExportsMapMg mguts
119
- ! exportsMap'' = maybe mempty createExportsMap ifaces
120
- void $ liftIO $ modifyVar' exportsMap $ (exportsMap'' <> ) . (exportsMap' <> )
103
+ void $ liftIO $ modifyVar' exportsMap (exportsMap' <> )
121
104
122
105
liftIO $ progressUpdate progress KickCompleted
0 commit comments