File tree 2 files changed +8
-10
lines changed
ghcide/src/Development/IDE/Plugin
2 files changed +8
-10
lines changed Original file line number Diff line number Diff line change @@ -89,7 +89,6 @@ idePlugins includeExamples = pluginDescToIdePlugins allPlugins
89
89
then basePlugins ++ examplePlugins
90
90
else basePlugins
91
91
basePlugins =
92
- GhcIde. descriptors ++
93
92
#if pragmas
94
93
Pragmas. descriptor " pragmas" :
95
94
#endif
@@ -135,7 +134,9 @@ idePlugins includeExamples = pluginDescToIdePlugins allPlugins
135
134
#if splice
136
135
Splice. descriptor " splice" :
137
136
#endif
138
- []
137
+ -- The ghcide descriptors should come last so that the notification handlers
138
+ -- (which restart the Shake build) run after everything else
139
+ GhcIde. descriptors
139
140
examplePlugins =
140
141
[Example. descriptor " eg"
141
142
,Example2. descriptor " eg2"
Original file line number Diff line number Diff line change @@ -37,8 +37,7 @@ import Language.LSP.Types
37
37
import qualified Language.LSP.Types as J
38
38
import Text.Regex.TDFA.Text ()
39
39
import UnliftIO (MonadUnliftIO )
40
- import UnliftIO.Async (forConcurrently ,
41
- mapConcurrently_ )
40
+ import UnliftIO.Async (forConcurrently )
42
41
import UnliftIO.Exception (catchAny )
43
42
44
43
-- ---------------------------------------------------------------------
@@ -179,13 +178,11 @@ extensibleNotificationPlugins defaultConfig xs = Plugin mempty handlers
179
178
Nothing -> do
180
179
liftIO $ logInfo (ideLogger ide) " extensibleNotificationPlugins no enabled plugins"
181
180
pure ()
182
- -- We run the notifications in order, so the built-in ghcide
183
- -- processing (which restarts the shake process) comes last
184
- -- Just fs -> void $ runConcurrentlyNotification (show m) fs ide params
185
181
Just fs -> do
186
- liftIO $ logInfo (ideLogger ide) $ " extensibleNotificationPlugins number of plugins:" <> T. pack (show (length fs))
187
- -- run notification handlers in parallel
188
- mapConcurrently_ (\ (_pid,f) -> f ide params) fs
182
+ -- We run the notifications in order, so the core ghcide provider
183
+ -- (which restarts the shake process) hopefully comes last
184
+ -- TODO tracing
185
+ mapM_ (\ (_pid,f) -> f ide params) fs
189
186
190
187
-- ---------------------------------------------------------------------
191
188
You can’t perform that action at this time.
0 commit comments