Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-prettyprinter-ansi-terminal for
openSUSE:Factory checked in at 2026-06-10 16:05:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-prettyprinter-ansi-terminal (Old)
and /work/SRC/openSUSE:Factory/.ghc-prettyprinter-ansi-terminal.new.2375
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-prettyprinter-ansi-terminal"
Wed Jun 10 16:05:10 2026 rev:7 rq:1358425 version:1.1.4
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-prettyprinter-ansi-terminal/ghc-prettyprinter-ansi-terminal.changes
2023-04-04 21:22:38.857953728 +0200
+++
/work/SRC/openSUSE:Factory/.ghc-prettyprinter-ansi-terminal.new.2375/ghc-prettyprinter-ansi-terminal.changes
2026-06-10 16:08:33.047002603 +0200
@@ -1,0 +2,14 @@
+Tue Apr 28 13:43:04 UTC 2026 - Peter Simons <[email protected]>
+
+- Update prettyprinter-ansi-terminal to version 1.1.4.
+ # [1.1.4] – April 2026
+
+ - [Add `text` flag](https://github.com/quchen/prettyprinter/pull/279)
+ - [Fix inconsistency between
`renderLazy`/`renderIO`](https://github.com/quchen/prettyprinter/pull/261)
+ - [Drop support for GHC 7](https://github.com/quchen/prettyprinter/pull/278)
+ - [Remove compatibility code for GHC <
8](https://github.com/quchen/prettyprinter/pull/285)
+ - [Make it compile with
MicroHs](https://github.com/quchen/prettyprinter/pull/270)
+
+ [1.1.4]:
https://github.com/quchen/prettyprinter/compare/ansi-terminal-v1.1.3...ansi-terminal-v1.1.4
+
+-------------------------------------------------------------------
Old:
----
prettyprinter-ansi-terminal-1.1.3.tar.gz
New:
----
prettyprinter-ansi-terminal-1.1.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-prettyprinter-ansi-terminal.spec ++++++
--- /var/tmp/diff_new_pack.5X243M/_old 2026-06-10 16:08:35.607108695 +0200
+++ /var/tmp/diff_new_pack.5X243M/_new 2026-06-10 16:08:35.611108860 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-prettyprinter-ansi-terminal
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2026 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 1.1.3
+Version: 1.1.4
Release: 0
Summary: ANSI terminal backend for the »prettyprinter« package
License: BSD-2-Clause
++++++ prettyprinter-ansi-terminal-1.1.3.tar.gz ->
prettyprinter-ansi-terminal-1.1.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/prettyprinter-ansi-terminal-1.1.3/CHANGELOG.md
new/prettyprinter-ansi-terminal-1.1.4/CHANGELOG.md
--- old/prettyprinter-ansi-terminal-1.1.3/CHANGELOG.md 2001-09-09
03:46:40.000000000 +0200
+++ new/prettyprinter-ansi-terminal-1.1.4/CHANGELOG.md 2001-09-09
03:46:40.000000000 +0200
@@ -1,3 +1,13 @@
+# [1.1.4] – April 2026
+
+- [Add `text` flag](https://github.com/quchen/prettyprinter/pull/279)
+- [Fix inconsistency between
`renderLazy`/`renderIO`](https://github.com/quchen/prettyprinter/pull/261)
+- [Drop support for GHC 7](https://github.com/quchen/prettyprinter/pull/278)
+- [Remove compatibility code for GHC <
8](https://github.com/quchen/prettyprinter/pull/285)
+- [Make it compile with
MicroHs](https://github.com/quchen/prettyprinter/pull/270)
+
+[1.1.4]:
https://github.com/quchen/prettyprinter/compare/ansi-terminal-v1.1.3...ansi-terminal-v1.1.4
+
# [1.1.3]
- [Deprecate the `Data.Text.Prettyprint.*`
modules](https://github.com/quchen/prettyprinter/pull/203)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/bench/LargeOutput.hs
new/prettyprinter-ansi-terminal-1.1.4/bench/LargeOutput.hs
--- old/prettyprinter-ansi-terminal-1.1.3/bench/LargeOutput.hs 2001-09-09
03:46:40.000000000 +0200
+++ new/prettyprinter-ansi-terminal-1.1.4/bench/LargeOutput.hs 2001-09-09
03:46:40.000000000 +0200
@@ -1,5 +1,4 @@
{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
@@ -19,7 +18,6 @@
import qualified Data.Text as T
import qualified Data.Text.IO as T
import qualified Data.Text.Lazy as TL
-import Gauge
import GHC.Generics
import Prettyprinter
import Prettyprinter.Render.Terminal as Terminal
@@ -27,6 +25,7 @@
import Test.QuickCheck
import Test.QuickCheck.Gen
import Test.QuickCheck.Random
+import Test.Tasty.Bench
@@ -85,7 +84,7 @@
anCol = annotate . color
prettyProgram :: Program -> Doc AnsiStyle
-prettyProgram (Program binds) = annotate italicized $ prettyBinds binds
+prettyProgram (Program binds) = annotate italicized (prettyBinds binds)
prettyBinds :: Binds -> Doc AnsiStyle
prettyBinds (Binds bs) = align (vsep (map prettyBinding (M.assocs bs)))
@@ -93,7 +92,7 @@
prettyBinding (var, lambda) = pretty var <+> anCol Red "=" <+>
prettyLambdaForm lambda
prettyLambdaForm :: LambdaForm -> Doc AnsiStyle
-prettyLambdaForm (LambdaForm free bound body) = prettyExp . (<+> anCol Blue
"->") . prettyBound . prettyFree $ anCol Blue "\\"
+prettyLambdaForm (LambdaForm free bound body) = (prettyExp . (<+> anCol Blue
"->") . prettyBound . prettyFree) (anCol Blue "\\")
where
prettyFree | null free = id
| otherwise = (<> anCol Blue lparen <> hsep (map pretty free)
<> anCol Blue rparen)
@@ -103,7 +102,7 @@
prettyExp = (<+> prettyExpr body)
prettyExpr :: Expr -> Doc AnsiStyle
-prettyExpr = \case
+prettyExpr = \expr -> case expr of
Let binds body ->
align (vsep [ anCol Red "let" <+> align (prettyBinds binds)
, anCol Red "in" <+> prettyExpr body ])
@@ -112,15 +111,15 @@
[ anCol Yellow "case" <+> prettyExpr scrutinee <+> anCol Yellow "of"
, indent 4 (align (vsep (map prettyAlt alts))) ]
- AppF f [] -> annotate bold . anCol Green $ pretty f
- AppF f args -> annotate bold . anCol Green $ pretty f <+> hsep (map pretty
args)
+ AppF f [] -> (annotate bold . anCol Green) (pretty f)
+ AppF f args -> (annotate bold . anCol Green) (pretty f) <+> hsep (map
pretty args)
- AppC c [] -> annotate bold . anCol Green $ pretty c
- AppC c args -> annotate bold . anCol Green $ pretty c <+> hsep (map pretty
args)
+ AppC c [] -> (annotate bold . anCol Green) (pretty c)
+ AppC c args -> (annotate bold . anCol Green) (pretty c) <+> hsep (map
pretty args)
- AppP op x y -> annotate bold . anCol Green $ pretty op <+> pretty x <+>
pretty y
+ AppP op x y -> (annotate bold . anCol Green) (pretty op) <+> pretty x <+>
pretty y
- LitE lit -> annotate bold . anCol Green $ pretty lit
+ LitE lit -> (annotate bold . anCol Green) (pretty lit)
prettyAlt :: Alt -> Doc AnsiStyle
prettyAlt (Alt con [] body) = pretty con <+> anCol Yellow "->" <+> prettyExpr
body
@@ -154,6 +153,6 @@
rnf prog `seq` T.putStrLn "Starting benchmark…"
defaultMain
- [ bench "prettyprinter-ansi-terminal" $ nf (render
Terminal.renderLazy) prog
- , bench "prettyprinter" $ nf (render Text.renderLazy) prog
+ [ bench "prettyprinter-ansi-terminal" (nf (render Terminal.renderLazy)
prog)
+ , bench "prettyprinter" (nf (render Text.renderLazy) prog)
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/misc/version-compatibility-macros.h
new/prettyprinter-ansi-terminal-1.1.4/misc/version-compatibility-macros.h
--- old/prettyprinter-ansi-terminal-1.1.3/misc/version-compatibility-macros.h
2001-09-09 03:46:40.000000000 +0200
+++ new/prettyprinter-ansi-terminal-1.1.4/misc/version-compatibility-macros.h
2001-09-09 03:46:40.000000000 +0200
@@ -8,13 +8,9 @@
-- These macros allow writing CPP compatibility hacks in a way that makes their
-- purpose much clearer than just demanding a specific version of a library.
-#define APPLICATIVE_MONAD MIN_VERSION_base(4,8,0)
-#define FOLDABLE_TRAVERSABLE_IN_PRELUDE MIN_VERSION_base(4,8,0)
-#define FUNCTOR_IDENTITY_IN_BASE MIN_VERSION_base(4,8,0)
-#define MONOID_IN_PRELUDE MIN_VERSION_base(4,8,0)
-#define NATURAL_IN_BASE MIN_VERSION_base(4,8,0)
+#define FOLDABLE_TRAVERSABLE_IN_PRELUDE !defined(__MHS__)
-#define SEMIGROUP_IN_BASE MIN_VERSION_base(4,9,0)
+#define LIFTA2_IN_PRELUDE MIN_VERSION_base(4,18,0)
#define SEMIGROUP_MONOID_SUPERCLASS MIN_VERSION_base(4,11,0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/prettyprinter-ansi-terminal.cabal
new/prettyprinter-ansi-terminal-1.1.4/prettyprinter-ansi-terminal.cabal
--- old/prettyprinter-ansi-terminal-1.1.3/prettyprinter-ansi-terminal.cabal
2001-09-09 03:46:40.000000000 +0200
+++ new/prettyprinter-ansi-terminal-1.1.4/prettyprinter-ansi-terminal.cabal
2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,5 @@
name: prettyprinter-ansi-terminal
-version: 1.1.3
+version: 1.1.4
cabal-version: >= 1.10
category: User Interfaces, Text
synopsis: ANSI terminal backend for the »prettyprinter« package.
@@ -14,18 +14,27 @@
bug-reports: http://github.com/quchen/prettyprinter/issues
homepage: http://github.com/quchen/prettyprinter
build-type: Simple
-tested-with: GHC==9.0.1, GHC==8.10.4, GHC==8.8.4, GHC==8.6.5,
GHC==8.4.4, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3,
GHC==7.4.2
+tested-with: GHC==9.14.1, GHC==9.12.2, GHC==9.10.3, GHC==9.8.4,
GHC==9.6.7, GHC==9.4.8, GHC==9.2.8, GHC==9.0.2, GHC==8.10.7, GHC==8.8.4,
GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2
source-repository head
type: git
- location: git://github.com/quchen/prettyprinter.git
+ location: https://github.com/quchen/prettyprinter
+
+flag text
+ description: While it's a core value of @prettyprinter@ packages to use
@Text@, there are rare
+ circumstances (mostly when @prettyprinter@ arises as a
dependency of
+ test suites of packages like @bytestring@ or @text@ themselves)
when
+ this is inconvenient. In this case one can disable this flag,
so that
+ @prettyprinter-ansi-terminal@ fallbacks to @String@.
+ default: True
+ manual: True
library
exposed-modules: Data.Text.Prettyprint.Doc.Render.Terminal
, Data.Text.Prettyprint.Doc.Render.Terminal.Internal
, Prettyprinter.Render.Terminal
, Prettyprinter.Render.Terminal.Internal
- ghc-options: -Wall -O2
+ ghc-options: -Wall -O2 -Wcompat
hs-source-dirs: src
include-dirs: misc
default-language: Haskell2010
@@ -35,39 +44,40 @@
build-depends:
- base >= 4.5 && < 5
+ base >= 4.9 && < 5
, ansi-terminal >= 0.4.0
- , text >= 1.2
, prettyprinter >= 1.7.0
-
- if impl(ghc >= 8.0)
- ghc-options: -Wcompat
- if !impl(ghc >= 8.0)
- build-depends: semigroups >= 0.1
+ if flag(text)
+ build-depends: text >= 1.2
+ else
+ -- A fake text package, emulating the same API, but backed by String
+ hs-source-dirs: src-text
+ other-modules:
+ Data.Text
+ , Data.Text.IO
+ , Data.Text.Lazy
+ , Data.Text.Lazy.Builder
test-suite doctest
type: exitcode-stdio-1.0
hs-source-dirs: test/Doctest
main-is: Main.hs
build-depends:
- base >= 4.7 && < 5
+ base >= 4.9 && < 5
, doctest >= 0.9
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
default-language: Haskell2010
- if impl (ghc < 7.10)
- buildable: False
- -- Doctest cannot search folders in old versions it seems :-(
benchmark large-output
build-depends:
- base >= 4.5 && < 5
- , base-compat >=0.9.3 && <0.12
+ base >= 4.9 && < 5
+ , base-compat >=0.9.3 && <0.15
, containers
, deepseq
- , gauge >= 0.2
+ , tasty-bench >= 0.2
, prettyprinter
, prettyprinter-ansi-terminal
- , QuickCheck >= 2.7
+ , QuickCheck >= 2.8
, text
hs-source-dirs: bench
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/src/Prettyprinter/Render/Terminal/Internal.hs
new/prettyprinter-ansi-terminal-1.1.4/src/Prettyprinter/Render/Terminal/Internal.hs
---
old/prettyprinter-ansi-terminal-1.1.3/src/Prettyprinter/Render/Terminal/Internal.hs
2001-09-09 03:46:40.000000000 +0200
+++
new/prettyprinter-ansi-terminal-1.1.4/src/Prettyprinter/Render/Terminal/Internal.hs
2001-09-09 03:46:40.000000000 +0200
@@ -53,15 +53,7 @@
import Prettyprinter.Render.Util.Panic
#if !(SEMIGROUP_MONOID_SUPERCLASS)
-import Data.Semigroup
-#endif
-
-#if !(MIN_VERSION_base(4,6,0))
-modifyIORef' :: IORef a -> (a -> a) -> IO ()
-modifyIORef' ref f = do
- x <- readIORef ref
- let x' = f x
- x' `seq` writeIORef ref x'
+import Data.Semigroup (Semigroup(..))
#endif
-- $setup
@@ -160,7 +152,7 @@
SAnnPush style rest ->
let currentStyle = unsafePeek s
newStyle = style <> currentStyle
- in TLB.fromText (styleToRawText newStyle) <> go (push style
s) rest
+ in TLB.fromText (styleToRawText newStyle) <> go (push
newStyle s) rest
SAnnPop rest ->
let (_currentStyle, s') = unsafePop s
newStyle = unsafePeek s'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/IO.hs
new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/IO.hs
--- old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/IO.hs
1970-01-01 01:00:00.000000000 +0100
+++ new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/IO.hs
2001-09-09 03:46:40.000000000 +0200
@@ -0,0 +1,13 @@
+-- Provide a fake API, mimicking Data.Text.IO from text package,
+-- but actually backed by type Text = String. It is used only in rare
+-- circumstances, when prettyprinter is built with -text flag.
+--
+
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
+
+module Data.Text.IO where
+
+import qualified System.IO
+
+hPutStr = System.IO.hPutStr
+putStrLn = System.IO.putStrLn
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/Lazy/Builder.hs
new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/Lazy/Builder.hs
--- old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/Lazy/Builder.hs
1970-01-01 01:00:00.000000000 +0100
+++ new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/Lazy/Builder.hs
2001-09-09 03:46:40.000000000 +0200
@@ -0,0 +1,13 @@
+-- Provide a fake API, mimicking Data.Text.Lazy.Builder from text package,
+-- but actually backed by type Builder = String. It is used only in rare
+-- circumstances, when prettyprinter is built with -text flag.
+--
+
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
+
+module Data.Text.Lazy.Builder where
+
+type Builder = String
+fromText = id
+singleton = (:[])
+toLazyText = id
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/Lazy.hs
new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/Lazy.hs
--- old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text/Lazy.hs
1970-01-01 01:00:00.000000000 +0100
+++ new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text/Lazy.hs
2001-09-09 03:46:40.000000000 +0200
@@ -0,0 +1,15 @@
+-- Provide a fake API, mimicking Data.Text.Lazy from text package,
+-- but actually backed by type Text = String. It is used only in rare
+-- circumstances, when prettyprinter is built with -text flag.
+--
+
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
+
+module Data.Text.Lazy where
+
+import Data.Text as T
+
+type Text = T.Text
+length = T.length
+lines = T.lines
+toStrict = id
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text.hs
new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text.hs
--- old/prettyprinter-ansi-terminal-1.1.3/src-text/Data/Text.hs 1970-01-01
01:00:00.000000000 +0100
+++ new/prettyprinter-ansi-terminal-1.1.4/src-text/Data/Text.hs 2001-09-09
03:46:40.000000000 +0200
@@ -0,0 +1,46 @@
+-- Provide a fake API, mimicking Data.Text from text package,
+-- but actually backed by type Text = String. It is used only in rare
+-- circumstances, when prettyprinter is built with -text flag.
+--
+
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
+
+module Data.Text where
+
+import Prelude hiding (head, length, null, replicate)
+import qualified Data.Char
+import qualified Data.List
+
+type Text = String
+cons = (:)
+dropWhileEnd = Data.List.dropWhileEnd
+head = Data.List.head
+intercalate = Data.List.intercalate
+length = Data.List.length :: [Char] -> Int
+lines = Data.List.lines
+map = Data.List.map
+null = Data.List.null :: [Char] -> Bool
+pack = id
+replicate = (Data.List.concat .) . Data.List.replicate
+singleton = (:[])
+snoc xs x = xs ++ [x]
+stripEnd = dropWhileEnd Data.Char.isSpace
+unlines = Data.List.unlines
+unpack = id
+words = Data.List.words
+
+uncons :: Text -> Maybe (Char, Text)
+uncons [] = Nothing
+uncons (x : xs) = Just (x, xs)
+
+splitOn :: Text -> Text -> [Text]
+splitOn pat src
+ | null pat = error "splitOn: empty pattern"
+ | otherwise = go [] src
+ where
+ go acc [] = [reverse acc]
+ go acc xs@(y : ys)
+ | pat `Data.List.isPrefixOf` xs
+ = reverse acc : go [] (drop (length pat) xs)
+ | otherwise
+ = go (y : acc) ys