Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-concurrent-output for
openSUSE:Factory checked in at 2022-02-11 23:08:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-concurrent-output (Old)
and /work/SRC/openSUSE:Factory/.ghc-concurrent-output.new.1956 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-concurrent-output"
Fri Feb 11 23:08:42 2022 rev:4 rq:953446 version:1.10.15
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-concurrent-output/ghc-concurrent-output.changes
2020-12-22 11:37:45.005396908 +0100
+++
/work/SRC/openSUSE:Factory/.ghc-concurrent-output.new.1956/ghc-concurrent-output.changes
2022-02-11 23:10:38.767160567 +0100
@@ -1,0 +2,25 @@
+Fri Feb 4 19:33:16 UTC 2022 - Peter Simons <[email protected]>
+
+- Update concurrent-output to version 1.10.15.
+ concurrent-output (1.10.15) unstable; urgency=medium
+
+ * Allow text-2.0
+
+ -- Joey Hess <[email protected]> Fri, 04 Feb 2022 15:32:58 -0400
+
+ concurrent-output (1.10.14) unstable; urgency=medium
+
+ * Allow ansi-terminal-0.11.1.
+
+ -- Joey Hess <[email protected]> Wed, 24 Nov 2021 09:18:20 -0400
+
+ concurrent-output (1.10.13) unstable; urgency=medium
+
+ * outputConcurrent and errorConcurrent are now safe to call from a thread
+ that receives async exceptions.
+ * Fix compilation with GHC head.
+ (Thanks, Ellie Hermaszewska)
+
+ -- Joey Hess <[email protected]> Mon, 22 Nov 2021 11:19:21 -0400
+
+-------------------------------------------------------------------
Old:
----
concurrent-output-1.10.12.tar.gz
New:
----
concurrent-output-1.10.15.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-concurrent-output.spec ++++++
--- /var/tmp/diff_new_pack.BT2vZv/_old 2022-02-11 23:10:39.183161771 +0100
+++ /var/tmp/diff_new_pack.BT2vZv/_new 2022-02-11 23:10:39.187161783 +0100
@@ -1,7 +1,7 @@
#
# spec file for package ghc-concurrent-output
#
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%global pkg_name concurrent-output
Name: ghc-%{pkg_name}
-Version: 1.10.12
+Version: 1.10.15
Release: 0
Summary: Ungarble output from several threads or commands
License: BSD-2-Clause
++++++ concurrent-output-1.10.12.tar.gz -> concurrent-output-1.10.15.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/concurrent-output-1.10.12/CHANGELOG
new/concurrent-output-1.10.15/CHANGELOG
--- old/concurrent-output-1.10.12/CHANGELOG 2020-06-10 23:28:54.000000000
+0200
+++ new/concurrent-output-1.10.15/CHANGELOG 2001-09-09 03:46:40.000000000
+0200
@@ -1,3 +1,24 @@
+concurrent-output (1.10.15) unstable; urgency=medium
+
+ * Allow text-2.0
+
+ -- Joey Hess <[email protected]> Fri, 04 Feb 2022 15:32:58 -0400
+
+concurrent-output (1.10.14) unstable; urgency=medium
+
+ * Allow ansi-terminal-0.11.1.
+
+ -- Joey Hess <[email protected]> Wed, 24 Nov 2021 09:18:20 -0400
+
+concurrent-output (1.10.13) unstable; urgency=medium
+
+ * outputConcurrent and errorConcurrent are now safe to call from a thread
+ that receives async exceptions.
+ * Fix compilation with GHC head.
+ (Thanks, Ellie Hermaszewska)
+
+ -- Joey Hess <[email protected]> Mon, 22 Nov 2021 11:19:21 -0400
+
concurrent-output (1.10.12) unstable; urgency=medium
* Bugfix: createProcessConcurrent would sometimes send the process's
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/concurrent-output-1.10.12/System/Console/Concurrent/Internal.hs
new/concurrent-output-1.10.15/System/Console/Concurrent/Internal.hs
--- old/concurrent-output-1.10.12/System/Console/Concurrent/Internal.hs
2020-06-10 23:28:54.000000000 +0200
+++ new/concurrent-output-1.10.15/System/Console/Concurrent/Internal.hs
2001-09-09 03:46:40.000000000 +0200
@@ -168,7 +168,12 @@
errorConcurrent = outputConcurrent' StdErr
outputConcurrent' :: Outputable v => StdHandle -> v -> IO ()
-outputConcurrent' stdh v = bracket setup cleanup go
+outputConcurrent' stdh v = do
+ -- Use a worker thread. This is so any async exception that
+ -- is thrown to the current thread does not affect
+ -- tryTakeOutputLock, which is not async exception safe.
+ worker <- async $ bracket setup cleanup go
+ wait worker
where
setup = tryTakeOutputLock
cleanup False = return ()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/concurrent-output-1.10.12/System/Console/Regions.hs
new/concurrent-output-1.10.15/System/Console/Regions.hs
--- old/concurrent-output-1.10.12/System/Console/Regions.hs 2020-06-10
23:28:54.000000000 +0200
+++ new/concurrent-output-1.10.15/System/Console/Regions.hs 2001-09-09
03:46:40.000000000 +0200
@@ -130,7 +130,7 @@
import System.IO
import System.IO.Unsafe (unsafePerformIO)
import Text.Read
-import Data.List
+import Data.List (intercalate, nubBy)
#ifndef mingw32_HOST_OS
import System.Posix.Signals
import System.Posix.Signals.Exts
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/concurrent-output-1.10.12/TODO
new/concurrent-output-1.10.15/TODO
--- old/concurrent-output-1.10.12/TODO 2020-06-10 23:28:54.000000000 +0200
+++ new/concurrent-output-1.10.15/TODO 2001-09-09 03:46:40.000000000 +0200
@@ -1,9 +1,37 @@
+* System.Console.Regions handling of outputConcurrent and errorConcurrent
+ when the output lacks a newline is surprising. The output may never be
+ displayed. A better approach:
+
+ When output arrives that lacks a newline, allocate a region for it
+ and buffer it in that region, so it displays immediately and more
+ output will go to the same region. When a newline arrives, close the
+ region and scroll up the completed line the same way any completed region
+ is displayed.
+
* Parts of System.Console.Concurrent may not be async exception safe.
If a thread is running an action from that module and an async exception
is sent to it, it may result in a deadlock or other problem.
- (System.Console.Regions has been made safe.)
+ (System.Console.Regions has been made safe,
+ also outputConcurrent and errorConcurrent.)
+
+ Particularly problematic is takeOutputLock', which takes the lock
+ and then outputs buffers to the console. If the emitOutputBuffer
+ calls are interrupted by async exception, it will be left locked
+ and the buffered output is also lost. But masking them is not good
+ because emitOutputBuffer could run for a long time in some situations.
+
+ fgProcess and bgProcess also do stuff with
registerOutputThread/unregisterOutputThread
+ that may not be async exception safe.
+
+ And createProcessForeground uses takeOutputLock but then calls fgProcess,
+ which could be interrupted (during its call to registerOutputThread)
+ before it starts the async thread that drops the lock.
+
+ One approach to all this might be to fork off a worker thread,
+ which will thus be immune to any async exception directed at the calling
+ thread.
* Calling setConsoleRegion with something that throws an error
will cause no further display updates to happen.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/concurrent-output-1.10.12/concurrent-output.cabal
new/concurrent-output-1.10.15/concurrent-output.cabal
--- old/concurrent-output-1.10.12/concurrent-output.cabal 2020-06-10
23:28:54.000000000 +0200
+++ new/concurrent-output-1.10.15/concurrent-output.cabal 2001-09-09
03:46:40.000000000 +0200
@@ -1,11 +1,11 @@
Name: concurrent-output
-Version: 1.10.12
+Version: 1.10.15
Cabal-Version: >= 1.10
License: BSD2
Maintainer: Joey Hess <[email protected]>
Author: Joey Hess, Joachim Breitner
Stability: Stable
-Copyright: 2015-2020 Joey Hess, 2009 Joachim Breitner
+Copyright: 2015-2021 Joey Hess, 2009 Joachim Breitner
License-File: LICENSE
Build-Type: Simple
Category: User Interfaces
@@ -29,17 +29,17 @@
stmdemo.hs
Library
- Default-Language: Haskell98
+ Default-Language: Haskell2010
GHC-Options: -Wall -fno-warn-tabs -O2
Build-Depends: base (>= 4.6), base < 5
- , text (>= 0.11.0 && < 1.3.0)
+ , text (>= 0.11.0 && < 2.1)
, async (>= 2.0 && < 2.3)
, stm (>= 2.0 && < 2.6)
, process (>= 1.6.0 && < 1.7.0)
, directory (>= 1.2.0 && < 1.4.0)
, transformers (>= 0.3.0 && < 0.6.0)
, exceptions (>= 0.6.0 && < 0.11.0)
- , ansi-terminal (>= 0.6.0 && < 0.11.0)
+ , ansi-terminal (>= 0.6.0 && < 0.12.0)
, terminal-size (>= 0.3.0 && < 0.4.0)
Exposed-Modules:
System.Console.Concurrent