Use prettyprinter-1.7.0

Changelog:
http://hackage.haskell.org/package/prettyprinter-1.7.0/changelog

hnix is likely to be affected by this change:

> Use floor instead of round to compute ribbon width.

…due to its use of custom `LayoutOptions`.
This commit is contained in:
Simon Jakobi 2020-08-04 06:25:57 +02:00 committed by Anton Latukha
parent 778edf2c38
commit 1a2d627a58
12 changed files with 59 additions and 30 deletions

View File

@ -228,6 +228,34 @@ let
description = "Fixpoint data types"; description = "Fixpoint data types";
license = stdenv.lib.licenses.bsd3; license = stdenv.lib.licenses.bsd3;
}) {}; }) {};
# 2020-08-04 hnix uses custom LayoutOptions and therefore is
# likely to be affected by the change in the ribbon width
# calculation in prettyprinter-1.7.0.
prettyprinter = haskellPackages.callPackage
({ mkDerivation, ansi-wl-pprint, base, base-compat, bytestring
, containers, deepseq, doctest, gauge, mtl, pgp-wordlist
, QuickCheck, quickcheck-instances, random, tasty, tasty-hunit
, tasty-quickcheck, text, transformers, stdenv
}:
mkDerivation {
pname = "prettyprinter";
version = "1.7.0";
sha256 = "19z04sn0kqxgwcyfn5igjmbxw13xsb3mdhdidkb3kzswib78f6sr";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [ base text ];
testHaskellDepends = [
base bytestring doctest pgp-wordlist QuickCheck
quickcheck-instances tasty tasty-hunit tasty-quickcheck text
];
benchmarkHaskellDepends = [
ansi-wl-pprint base base-compat containers deepseq gauge mtl
QuickCheck random text transformers
];
description = "A modern, easy to use, well-documented, extensible pretty-printer";
license = stdenv.lib.licenses.bsd2;
}) {};
}; };
modifier = drv: pkgs.haskell.lib.overrideCabal drv (attrs: { modifier = drv: pkgs.haskell.lib.overrideCabal drv (attrs: {

View File

@ -415,7 +415,7 @@ library
, neat-interpolation >= 0.4 && < 0.6 , neat-interpolation >= 0.4 && < 0.6
, optparse-applicative >= 0.14.3 && < 0.16 , optparse-applicative >= 0.14.3 && < 0.16
, parser-combinators >= 1.0.1 && < 1.3 , parser-combinators >= 1.0.1 && < 1.3
, prettyprinter >= 1.2.1 && < 1.7 , prettyprinter >= 1.7.0 && < 1.8
, process >= 1.6.3 && < 1.7 , process >= 1.6.3 && < 1.7
, ref-tf >= 0.4.0 && < 0.5 , ref-tf >= 0.4.0 && < 0.5
, regex-tdfa >= 1.2.3 && < 1.4 , regex-tdfa >= 1.2.3 && < 1.4

View File

@ -26,8 +26,6 @@ import Data.Time
import qualified Data.Text as Text import qualified Data.Text as Text
import qualified Data.Text.IO as Text import qualified Data.Text.IO as Text
import qualified Data.Text.Lazy.IO as TL import qualified Data.Text.Lazy.IO as TL
import Data.Text.Prettyprint.Doc
import Data.Text.Prettyprint.Doc.Render.Text
import Nix import Nix
import Nix.Convert import Nix.Convert
import qualified Nix.Eval as Eval import qualified Nix.Eval as Eval
@ -43,6 +41,8 @@ import Nix.Utils
import Nix.Var import Nix.Var
import Nix.Value.Monad import Nix.Value.Monad
import Options.Applicative hiding ( ParserResult(..) ) import Options.Applicative hiding ( ParserResult(..) )
import Prettyprinter
import Prettyprinter.Render.Text
import qualified Repl import qualified Repl
import System.FilePath import System.FilePath
import System.IO import System.IO

View File

@ -36,9 +36,6 @@ import qualified Data.HashMap.Lazy
import Data.Text (Text) import Data.Text (Text)
import qualified Data.Text import qualified Data.Text
import qualified Data.Text.IO import qualified Data.Text.IO
import Data.Text.Prettyprint.Doc (Doc, (<+>))
import qualified Data.Text.Prettyprint.Doc
import qualified Data.Text.Prettyprint.Doc.Render.Text
import Data.Version ( showVersion ) import Data.Version ( showVersion )
import Paths_hnix ( version ) import Paths_hnix ( version )
@ -47,6 +44,10 @@ import Control.Monad.Identity
import Control.Monad.Reader import Control.Monad.Reader
import Control.Monad.State.Strict import Control.Monad.State.Strict
import Prettyprinter (Doc, (<+>))
import qualified Prettyprinter
import qualified Prettyprinter.Render.Text
import System.Console.Haskeline.Completion import System.Console.Haskeline.Completion
( Completion(isFinished) ( Completion(isFinished)
, completeWordWithPrev , completeWordWithPrev
@ -456,9 +457,9 @@ helpOptions =
"set" "set"
"" ""
( "Set REPL option" ( "Set REPL option"
<> Data.Text.Prettyprint.Doc.line <> Prettyprinter.line
<> "Available options:" <> "Available options:"
<> Data.Text.Prettyprint.Doc.line <> Prettyprinter.line
<> (renderSetOptions helpSetOptions) <> (renderSetOptions helpSetOptions)
) )
setConfig setConfig
@ -508,14 +509,14 @@ helpSetOptions =
renderSetOptions :: [HelpSetOption] -> Doc () renderSetOptions :: [HelpSetOption] -> Doc ()
renderSetOptions so = renderSetOptions so =
Data.Text.Prettyprint.Doc.indent 4 Prettyprinter.indent 4
$ Data.Text.Prettyprint.Doc.vsep $ Prettyprinter.vsep
$ flip map so $ flip map so
$ \h -> $ \h ->
Data.Text.Prettyprint.Doc.pretty (helpSetOptionName h) Prettyprinter.pretty (helpSetOptionName h)
<+> helpSetOptionSyntax h <+> helpSetOptionSyntax h
<> Data.Text.Prettyprint.Doc.line <> Prettyprinter.line
<> Data.Text.Prettyprint.Doc.indent 4 (helpSetOptionDoc h) <> Prettyprinter.indent 4 (helpSetOptionDoc h)
help :: (MonadNix e t f m, MonadIO m) help :: (MonadNix e t f m, MonadIO m)
=> HelpOptions e t f m => HelpOptions e t f m
@ -526,14 +527,14 @@ help hs _ = do
forM_ hs $ \h -> forM_ hs $ \h ->
liftIO liftIO
. Data.Text.IO.putStrLn . Data.Text.IO.putStrLn
. Data.Text.Prettyprint.Doc.Render.Text.renderStrict . Prettyprinter.Render.Text.renderStrict
. Data.Text.Prettyprint.Doc.layoutPretty . Prettyprinter.layoutPretty
Data.Text.Prettyprint.Doc.defaultLayoutOptions Prettyprinter.defaultLayoutOptions
$ ":" $ ":"
<> Data.Text.Prettyprint.Doc.pretty (helpOptionName h) <> Prettyprinter.pretty (helpOptionName h)
<+> helpOptionSyntax h <+> helpOptionSyntax h
<> Data.Text.Prettyprint.Doc.line <> Prettyprinter.line
<> Data.Text.Prettyprint.Doc.indent 4 (helpOptionDoc h) <> Prettyprinter.indent 4 (helpOptionDoc h)
options options
:: (MonadNix e t f m, MonadIO m) :: (MonadNix e t f m, MonadIO m)

View File

@ -23,7 +23,6 @@ import Data.List.Split
import Data.Maybe ( maybeToList ) import Data.Maybe ( maybeToList )
import Data.Text ( Text ) import Data.Text ( Text )
import qualified Data.Text as Text import qualified Data.Text as Text
import Data.Text.Prettyprint.Doc
import Nix.Atoms import Nix.Atoms
import Nix.Convert import Nix.Convert
import Nix.Effects import Nix.Effects
@ -44,6 +43,7 @@ import Nix.String.Coerce
import Nix.Utils import Nix.Utils
import Nix.Value import Nix.Value
import Nix.Value.Monad import Nix.Value.Monad
import Prettyprinter
import System.FilePath import System.FilePath
#ifdef MIN_VERSION_ghc_datasize #ifdef MIN_VERSION_ghc_datasize

View File

@ -39,7 +39,6 @@ import Data.List
import qualified Data.List.NonEmpty as NE import qualified Data.List.NonEmpty as NE
import Data.Text ( Text ) import Data.Text ( Text )
import qualified Data.Text as Text import qualified Data.Text as Text
import Data.Text.Prettyprint.Doc
import Data.Typeable import Data.Typeable
import Nix.Atoms import Nix.Atoms
import Nix.Cited import Nix.Cited
@ -59,6 +58,7 @@ import Nix.Utils
import Nix.Value import Nix.Value
import Nix.Value.Equal import Nix.Value.Equal
import Nix.Value.Monad import Nix.Value.Monad
import Prettyprinter
#ifdef MIN_VERSION_pretty_show #ifdef MIN_VERSION_pretty_show
import qualified Text.Show.Pretty as PS import qualified Text.Show.Pretty as PS
#endif #endif

View File

@ -71,9 +71,6 @@ import Data.Text hiding ( map
, concatMap , concatMap
, zipWith , zipWith
) )
import Data.Text.Prettyprint.Doc ( Doc
, pretty
)
import Data.Text.Encoding import Data.Text.Encoding
import Data.Typeable ( Typeable ) import Data.Typeable ( Typeable )
import Data.Void import Data.Void
@ -81,6 +78,9 @@ import GHC.Generics hiding ( Prefix )
import Nix.Expr hiding ( ($>) ) import Nix.Expr hiding ( ($>) )
import Nix.Expr.Strings import Nix.Expr.Strings
import Nix.Render import Nix.Render
import Prettyprinter ( Doc
, pretty
)
import Text.Megaparsec import Text.Megaparsec
import Text.Megaparsec.Char import Text.Megaparsec.Char
import qualified Text.Megaparsec.Char.Lexer as L import qualified Text.Megaparsec.Char.Lexer as L

View File

@ -36,7 +36,6 @@ import Data.Text ( pack
, strip , strip
) )
import qualified Data.Text as Text import qualified Data.Text as Text
import Data.Text.Prettyprint.Doc
import Nix.Atoms import Nix.Atoms
import Nix.Cited import Nix.Cited
import Nix.Expr import Nix.Expr
@ -52,6 +51,7 @@ import Nix.Utils hiding ( (<$>) )
#endif #endif
import Nix.Value import Nix.Value
import Prelude hiding ( (<$>) ) import Prelude hiding ( (<$>) )
import Prettyprinter
import Text.Read ( readMaybe ) import Text.Read ( readMaybe )
-- | This type represents a pretty printed nix expression -- | This type represents a pretty printed nix expression

View File

@ -22,9 +22,9 @@ import qualified Data.ByteString as BS
import qualified Data.Set as Set import qualified Data.Set as Set
import qualified Data.Text as T import qualified Data.Text as T
import qualified Data.Text.Encoding as T import qualified Data.Text.Encoding as T
import Data.Text.Prettyprint.Doc
import Data.Void import Data.Void
import Nix.Expr.Types.Annotated import Nix.Expr.Types.Annotated
import Prettyprinter
import qualified System.Directory as S import qualified System.Directory as S
import qualified System.Posix.Files as S import qualified System.Posix.Files as S
import Text.Megaparsec.Error import Text.Megaparsec.Error

View File

@ -16,7 +16,6 @@ module Nix.Render.Frame where
import Control.Monad.Reader import Control.Monad.Reader
import Data.Fix import Data.Fix
import Data.Typeable import Data.Typeable
import Data.Text.Prettyprint.Doc
import Nix.Eval import Nix.Eval
import Nix.Exec import Nix.Exec
import Nix.Expr import Nix.Expr
@ -28,6 +27,7 @@ import Nix.Render
import Nix.Thunk import Nix.Thunk
import Nix.Utils import Nix.Utils
import Nix.Value import Nix.Value
import Prettyprinter
import Text.Megaparsec.Pos import Text.Megaparsec.Pos
#ifdef MIN_VERSION_pretty_show #ifdef MIN_VERSION_pretty_show
import qualified Text.Show.Pretty as PS import qualified Text.Show.Pretty as PS

View File

@ -11,13 +11,13 @@ module ParserTests (tests) where
import Data.Fix import Data.Fix
import Data.List.NonEmpty (NonEmpty(..)) import Data.List.NonEmpty (NonEmpty(..))
import Data.Text (Text, unpack) import Data.Text (Text, unpack)
import Data.Text.Prettyprint.Doc
import Data.Text.Prettyprint.Doc.Render.Text
import NeatInterpolation (text) import NeatInterpolation (text)
import Nix.Atoms import Nix.Atoms
import Nix.Expr import Nix.Expr
import Nix.Parser import Nix.Parser
import Nix.Pretty import Nix.Pretty
import Prettyprinter
import Prettyprinter.Render.Text
import Test.Tasty import Test.Tasty
import Test.Tasty.HUnit import Test.Tasty.HUnit
import Test.Tasty.TH import Test.Tasty.TH

View File

@ -19,7 +19,6 @@ import qualified Data.List.NonEmpty as NE
import Data.Text ( Text import Data.Text ( Text
, pack , pack
) )
import Data.Text.Prettyprint.Doc
import Hedgehog import Hedgehog
import qualified Hedgehog.Gen as Gen import qualified Hedgehog.Gen as Gen
import qualified Hedgehog.Range as Range import qualified Hedgehog.Range as Range
@ -27,6 +26,7 @@ import Nix.Atoms
import Nix.Expr import Nix.Expr
import Nix.Parser import Nix.Parser
import Nix.Pretty import Nix.Pretty
import Prettyprinter
import Test.Tasty import Test.Tasty
import Test.Tasty.Hedgehog import Test.Tasty.Hedgehog
import Text.Megaparsec ( Pos ) import Text.Megaparsec ( Pos )