terminfo 0.4.1.4 → 0.4.1.5
raw patch · 3 files changed
+12/−4 lines, 3 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
Files
- Changelog +3/−0
- System/Console/Terminfo/Base.hs +7/−2
- terminfo.cabal +2/−2
Changelog view
@@ -1,3 +1,6 @@+Changed in version 0.4.1.5:+- Use CAPI for `tparm` to fix behavior on Apple Silicon (#41).+ Changed in version 0.4.1.4: - Bump the upper bound to allow `base-4.13` (`ghc-8.8`).
System/Console/Terminfo/Base.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CApiFFI #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE ScopedTypeVariables #-}@@ -70,6 +71,10 @@ -- | Initialize the terminfo library to the given terminal entry. -- -- Throws a 'SetupTermError' if the terminfo database could not be read.+--+-- *Note:* @ncurses@ is not thread-safe; initializing or using multiple+-- 'Terminal's in different threads at the same time can result in memory+-- unsafety. setupTerm :: String -> IO Terminal setupTerm term = withCString term $ \c_term ->@@ -259,8 +264,8 @@ -foreign import ccall tparm ::- CString -> CLong -> CLong -> CLong -> CLong -> CLong -> CLong +foreign import capi "term.h tparm"+ tparm :: CString -> CLong -> CLong -> CLong -> CLong -> CLong -> CLong -> CLong -> CLong -> CLong -- p1,...,p9 -> IO CString
terminfo.cabal view
@@ -1,6 +1,6 @@ Name: terminfo Cabal-Version: >=1.10-Version: 0.4.1.4+Version: 0.4.1.5 Category: User Interfaces License: BSD3 License-File: LICENSE@@ -28,7 +28,7 @@ other-extensions: CPP, DeriveDataTypeable, FlexibleInstances, ScopedTypeVariables if impl(ghc>=7.3) other-extensions: Safe, Trustworthy- build-depends: base >= 4.9 && < 4.14+ build-depends: base >= 4.9 && < 4.17 ghc-options: -Wall exposed-modules: System.Console.Terminfo