@@ -30,6 +30,7 @@ import Development.IDE.Types.Logger
3030import Development.IDE.Plugin
3131import Development.IDE.Plugin.Test as Test
3232import Development.IDE.Session (loadSession )
33+ import Development.Shake (ShakeOptions (shakeThreads ))
3334import qualified Language.Haskell.LSP.Core as LSP
3435import Language.Haskell.LSP.Messages
3536import Language.Haskell.LSP.Types
@@ -114,15 +115,16 @@ main = do
114115 hPutStrLn stderr $ " Started LSP server in " ++ showDuration t
115116 sessionLoader <- loadSession $ fromMaybe dir rootPath
116117 config <- fromMaybe def <$> getConfig
117- let options = (defaultIdeOptions sessionLoader)
118+ let options = defOptions
118119 { optReportProgress = clientSupportsProgress caps
119120 , optShakeProfiling = argsShakeProfiling
120121 , optOTMemoryProfiling = IdeOTMemoryProfiling argsOTMemoryProfiling
121122 , optTesting = IdeTesting argsTesting
122- , optThreads = argsThreads
123+ , optShakeOptions = (optShakeOptions defOptions){shakeThreads = argsThreads}
123124 , optCheckParents = checkParents config
124125 , optCheckProject = checkProject config
125126 }
127+ defOptions = defaultIdeOptions sessionLoader
126128 logLevel = if argsVerbose then minBound else Info
127129 debouncer <- newAsyncDebouncer
128130 let rules = do
@@ -160,14 +162,15 @@ main = do
160162 debouncer <- newAsyncDebouncer
161163 let dummyWithProg _ _ f = f (const (pure () ))
162164 sessionLoader <- loadSession dir
163- let options = (defaultIdeOptions sessionLoader)
165+ let options = defOptions
164166 { optShakeProfiling = argsShakeProfiling
165167 -- , optOTMemoryProfiling = IdeOTMemoryProfiling argsOTMemoryProfiling
166168 , optTesting = IdeTesting argsTesting
167- , optThreads = argsThreads
169+ , optShakeOptions = (optShakeOptions defOptions){shakeThreads = argsThreads}
168170 , optCheckParents = NeverCheck
169171 , optCheckProject = False
170172 }
173+ defOptions = defaultIdeOptions sessionLoader
171174 logLevel = if argsVerbose then minBound else Info
172175 ide <- initialise def mainRule (pure $ IdInt 0 ) (showEvent lock) dummyWithProg (const (const id )) (logger logLevel) debouncer options vfs
173176
0 commit comments