Skip to content

Commit a951ad3

Browse files
Commit to prettyprinter >= 1.7 (#3649)
ghcide already depends on 1.7 which added the new module hierarchy naming, so let's commit to that and use it throughout. Lets us delete some CPP, which is always good. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
1 parent 6ff0e02 commit a951ad3

File tree

8 files changed

+57
-75
lines changed

8 files changed

+57
-75
lines changed

exe/Main.hs

-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
-- Copyright (c) 2019 The DAML Authors. All rights reserved.
22
-- SPDX-License-Identifier: Apache-2.0
3-
{-# LANGUAGE CPP #-}
43
{-# LANGUAGE NamedFieldPuns #-}
54
{-# LANGUAGE OverloadedStrings #-}
65
module Main(main) where
@@ -32,11 +31,7 @@ import Ide.Types (PluginDescriptor (pluginNotificat
3231
mkPluginNotificationHandler)
3332
import Language.LSP.Server as LSP
3433
import Language.LSP.Types as LSP
35-
#if MIN_VERSION_prettyprinter(1,7,0)
3634
import Prettyprinter (Pretty (pretty), vsep)
37-
#else
38-
import Data.Text.Prettyprint.Doc (Pretty (pretty), vsep)
39-
#endif
4035

4136
data Log
4237
= LogIdeMain IdeMain.Log

ghcide/src/Development/IDE/Types/Diagnostics.hs

+12-12
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,19 @@ module Development.IDE.Types.Diagnostics (
1717
IdeResultNoDiagnosticsEarlyCutoff) where
1818

1919
import Control.DeepSeq
20-
import Data.Maybe as Maybe
21-
import qualified Data.Text as T
22-
import Data.Text.Prettyprint.Doc
23-
import Data.Text.Prettyprint.Doc.Render.Terminal (Color (..), color)
24-
import qualified Data.Text.Prettyprint.Doc.Render.Terminal as Terminal
25-
import Data.Text.Prettyprint.Doc.Render.Text
20+
import Data.Maybe as Maybe
21+
import qualified Data.Text as T
2622
import Language.LSP.Diagnostics
27-
import Language.LSP.Types as LSP (Diagnostic (..),
28-
DiagnosticSeverity (..),
29-
DiagnosticSource,
30-
List (..))
31-
32-
import Data.ByteString (ByteString)
23+
import Language.LSP.Types as LSP (Diagnostic (..),
24+
DiagnosticSeverity (..),
25+
DiagnosticSource,
26+
List (..))
27+
import Prettyprinter
28+
import Prettyprinter.Render.Terminal (Color (..), color)
29+
import qualified Prettyprinter.Render.Terminal as Terminal
30+
import Prettyprinter.Render.Text
31+
32+
import Data.ByteString (ByteString)
3333
import Development.IDE.Types.Location
3434

3535

ghcide/src/Development/IDE/Types/Logger.hs

+36-49
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-- Copyright (c) 2019 The DAML Authors. All rights reserved.
22
-- SPDX-License-Identifier: Apache-2.0
33

4-
{-# LANGUAGE CPP #-}
54
{-# LANGUAGE RankNTypes #-}
65
-- | This is a compatibility module that abstracts over the
76
-- concrete choice of logging framework so users can plug in whatever
@@ -30,55 +29,43 @@ module Development.IDE.Types.Logger
3029
, toCologActionWithPrio
3130
) where
3231

33-
import Control.Concurrent (myThreadId)
34-
import Control.Concurrent.Extra (Lock, newLock, withLock)
35-
import Control.Concurrent.STM (atomically,
36-
flushTBQueue,
37-
isFullTBQueue,
38-
newTBQueueIO, newTVarIO,
39-
readTVarIO,
40-
writeTBQueue, writeTVar)
41-
import Control.Exception (IOException)
42-
import Control.Monad (unless, when, (>=>))
43-
import Control.Monad.IO.Class (MonadIO (liftIO))
44-
import Data.Foldable (for_)
45-
import Data.Functor.Contravariant (Contravariant (contramap))
46-
import Data.Maybe (fromMaybe)
47-
import Data.Text (Text)
48-
import qualified Data.Text as T
49-
import qualified Data.Text as Text
50-
import qualified Data.Text.IO as Text
51-
import Data.Time (defaultTimeLocale,
52-
formatTime,
53-
getCurrentTime)
54-
import GHC.Stack (CallStack, HasCallStack,
55-
SrcLoc (SrcLoc, srcLocModule, srcLocStartCol, srcLocStartLine),
56-
callStack, getCallStack,
57-
withFrozenCallStack)
32+
import Colog.Core (LogAction (..), Severity,
33+
WithSeverity (..))
34+
import qualified Colog.Core as Colog
35+
import Control.Concurrent (myThreadId)
36+
import Control.Concurrent.Extra (Lock, newLock, withLock)
37+
import Control.Concurrent.STM (atomically, flushTBQueue,
38+
isFullTBQueue, newTBQueueIO,
39+
newTVarIO, readTVarIO,
40+
writeTBQueue, writeTVar)
41+
import Control.Exception (IOException)
42+
import Control.Monad (unless, when, (>=>))
43+
import Control.Monad.IO.Class (MonadIO (liftIO))
44+
import Data.Foldable (for_)
45+
import Data.Functor.Contravariant (Contravariant (contramap))
46+
import Data.Maybe (fromMaybe)
47+
import Data.Text (Text)
48+
import qualified Data.Text as T
49+
import qualified Data.Text as Text
50+
import qualified Data.Text.IO as Text
51+
import Data.Time (defaultTimeLocale, formatTime,
52+
getCurrentTime)
53+
import GHC.Stack (CallStack, HasCallStack,
54+
SrcLoc (SrcLoc, srcLocModule, srcLocStartCol, srcLocStartLine),
55+
callStack, getCallStack,
56+
withFrozenCallStack)
5857
import Language.LSP.Server
59-
import qualified Language.LSP.Server as LSP
60-
import Language.LSP.Types (LogMessageParams (..),
61-
MessageType (..),
62-
SMethod (SWindowLogMessage, SWindowShowMessage),
63-
ShowMessageParams (..))
64-
#if MIN_VERSION_prettyprinter(1,7,0)
65-
import Prettyprinter as PrettyPrinterModule
66-
import Prettyprinter.Render.Text (renderStrict)
67-
#else
68-
import Data.Text.Prettyprint.Doc as PrettyPrinterModule
69-
import Data.Text.Prettyprint.Doc.Render.Text (renderStrict)
70-
#endif
71-
import Colog.Core (LogAction (..),
72-
Severity,
73-
WithSeverity (..))
74-
import qualified Colog.Core as Colog
75-
import System.IO (Handle,
76-
IOMode (AppendMode),
77-
hClose, hFlush,
78-
openFile, stderr)
79-
import UnliftIO (MonadUnliftIO,
80-
displayException,
81-
finally, try)
58+
import qualified Language.LSP.Server as LSP
59+
import Language.LSP.Types (LogMessageParams (..),
60+
MessageType (..),
61+
SMethod (SWindowLogMessage, SWindowShowMessage),
62+
ShowMessageParams (..))
63+
import Prettyprinter as PrettyPrinterModule
64+
import Prettyprinter.Render.Text (renderStrict)
65+
import System.IO (Handle, IOMode (AppendMode),
66+
hClose, hFlush, openFile, stderr)
67+
import UnliftIO (MonadUnliftIO, displayException,
68+
finally, try)
8269

8370
data Priority
8471
-- Don't change the ordering of this type or you will mess up the Ord

haskell-language-server.cabal

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ common common-deps
4040
, extra
4141
, filepath
4242
, text
43-
, prettyprinter
43+
, prettyprinter >= 1.7
4444

4545
-- Default warnings in HLS
4646
common warnings

plugins/hls-tactics-plugin/new/src/Wingman/Metaprogramming/Parser/Documentation.hs

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import Data.Functor ((<&>))
77
import Data.List (sortOn)
88
import Data.String (IsString)
99
import Data.Text (Text)
10-
import Data.Text.Prettyprint.Doc hiding (parens)
11-
import Data.Text.Prettyprint.Doc.Render.String (renderString)
10+
import Prettyprinter hiding (parens)
11+
import Prettyprinter.Render.String (renderString)
1212
import Development.IDE.GHC.Compat (OccName)
1313
import qualified Text.Megaparsec as P
1414
import Wingman.Metaprogramming.Lexer (Parser, identifier, variable, parens)

plugins/hls-tactics-plugin/new/src/Wingman/Metaprogramming/ProofState.hs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ module Wingman.Metaprogramming.ProofState where
88
import Data.Bool (bool)
99
import Data.Functor ((<&>))
1010
import qualified Data.Text as T
11-
import Data.Text.Prettyprint.Doc
12-
import Data.Text.Prettyprint.Doc.Render.Util.Panic
11+
import Prettyprinter
12+
import Prettyprinter.Render.Util.Panic
1313
import Language.LSP.Types (sectionSeparator)
1414
import Wingman.Judgements (jHypothesis)
1515
import Wingman.Types

plugins/hls-tactics-plugin/old/src/Wingman/Metaprogramming/Parser/Documentation.hs

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import Data.Functor ((<&>))
77
import Data.List (sortOn)
88
import Data.String (IsString)
99
import Data.Text (Text)
10-
import Data.Text.Prettyprint.Doc hiding (parens)
11-
import Data.Text.Prettyprint.Doc.Render.String (renderString)
10+
import Prettyprinter hiding (parens)
11+
import Prettyprinter.Render.String (renderString)
1212
import Development.IDE.GHC.Compat (OccName)
1313
import qualified Text.Megaparsec as P
1414
import Wingman.Metaprogramming.Lexer (Parser, identifier, variable, parens)

plugins/hls-tactics-plugin/old/src/Wingman/Metaprogramming/ProofState.hs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ module Wingman.Metaprogramming.ProofState where
88
import Data.Bool (bool)
99
import Data.Functor ((<&>))
1010
import qualified Data.Text as T
11-
import Data.Text.Prettyprint.Doc
12-
import Data.Text.Prettyprint.Doc.Render.Util.Panic
11+
import Prettyprinter
12+
import Prettyprinter.Render.Util.Panic
1313
import Language.LSP.Types (sectionSeparator)
1414
import Wingman.Judgements (jHypothesis)
1515
import Wingman.Types

0 commit comments

Comments
 (0)