byline 0.3.2.1 → 0.4.0.0
raw patch · 9 files changed
+52/−44 lines, 9 filesdep −semigroupsdep ~ansi-terminaldep ~basedep ~textPVP ok
version bump matches the API change (PVP)
Dependencies removed: semigroups
Dependency ranges changed: ansi-terminal, base, text
API changes (from Hackage documentation)
- System.Console.Byline: askUntil :: MonadIO m => Stylized -> Maybe Text -> (Text -> m (Either Stylized Text)) -> Byline m Text
+ System.Console.Byline: askUntil :: MonadIO m => Stylized -> Maybe Text -> (Text -> m (Either Stylized a)) -> Byline m a
- System.Console.Byline.Primitive: askUntil :: MonadIO m => Stylized -> Maybe Text -> (Text -> m (Either Stylized Text)) -> Byline m Text
+ System.Console.Byline.Primitive: askUntil :: MonadIO m => Stylized -> Maybe Text -> (Text -> m (Either Stylized a)) -> Byline m a
Files
- CHANGES.md +9/−0
- LICENSE +1/−1
- README.md +0/−2
- byline.cabal +40/−32
- src/System/Console/Byline.hs +0/−3
- src/System/Console/Byline/Internal/Types.hs +0/−1
- src/System/Console/Byline/Menu.hs +0/−1
- src/System/Console/Byline/Primitive.hs +2/−3
- src/System/Console/Byline/Stylized.hs +0/−1
CHANGES.md view
@@ -1,5 +1,14 @@ # Version History +## 0.4.0.0 (March 17, 2020)++ - The `askUntil` function is now polymorphic in its return type.+ This allows the confirmation function to change the return type.++ - Removed `Data.Monoid` backwards compatibility for older GHCs.++ - Update dependency bounds+ ## 0.3.2.1 (April 15, 2019) - Update dependency bounds
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2015-2019 Peter J. Jones <pjones@devalot.com>+Copyright (c) 2015-2020 Peter J. Jones <pjones@devalot.com> All rights reserved. Redistribution and use in source and binary forms, with or without
README.md view
@@ -1,7 +1,5 @@ # Byline -[](https://travis-ci.org/pjones/byline)- Byline simplifies writing interactive terminal applications by building upon [ansi-terminal][] and [haskeline][]. This makes it possible to print messages and prompts that include terminal escape
byline.cabal view
@@ -1,18 +1,19 @@+cabal-version: 2.2+ -------------------------------------------------------------------------------- name: byline-version: 0.3.2.1+version: 0.4.0.0 synopsis: Library for creating command-line interfaces (colors, menus, etc.)-homepage: https://code.devalot.com/open/byline-bug-reports: https://code.devalot.com/open/byline/issues-license: BSD2+homepage: https://github.com/pjones/byline+bug-reports: https://github.com/pjones/byline/issues+license: BSD-2-Clause license-file: LICENSE author: Peter Jones <pjones@devalot.com> maintainer: Peter Jones <pjones@devalot.com>-copyright: Copyright: (c) 2015-2019 Peter J. Jones+copyright: Copyright: (c) 2015-2020 Peter J. Jones category: System, User Interfaces build-type: Simple-stability: experimental-cabal-version: 1.18+stability: stable description: Byline simplifies writing interactive terminal applications by building upon @ansi-terminal@ and @haskeline@. This makes it@@ -34,7 +35,7 @@ -------------------------------------------------------------------------------- source-repository head type: git- location: https://code.devalot.com/open/byline.git+ location: https://github.com/pjones/byline.git -------------------------------------------------------------------------------- flag build-examples@@ -43,7 +44,34 @@ default: False --------------------------------------------------------------------------------+common options+ default-language: Haskell2010+ ghc-options: -Wall+ -Werror=incomplete-record-updates+ -Werror=incomplete-uni-patterns+ -Werror=missing-home-modules+ -Widentities+ -Wmissing-export-lists+ -Wredundant-constraints++--------------------------------------------------------------------------------+common dependencies+ build-depends: base >= 4.9 && < 5.0+ , ansi-terminal >= 0.6 && < 0.12+ , colour >= 2.3 && < 2.4+ , containers >= 0.5 && < 0.7+ , exceptions >= 0.8 && < 0.11+ , haskeline >= 0.7 && < 0.8+ , mtl >= 2.1 && < 2.3+ , terminfo-hs >= 0.1 && < 0.3+ , text >= 0.11 && < 1.3+ , transformers >= 0.3 && < 0.6++-------------------------------------------------------------------------------- library+ import: options, dependencies+ hs-source-dirs: src+ exposed-modules: System.Console.Byline System.Console.Byline.Color@@ -58,40 +86,20 @@ System.Console.Byline.Primitive System.Console.Byline.Stylized - hs-source-dirs: src- default-language: Haskell2010- ghc-options: -Wall -fwarn-incomplete-uni-patterns-- build-depends: base >= 4.7 && < 5.0- , ansi-terminal >= 0.6 && < 0.10- , colour >= 2.3 && < 2.4- , containers >= 0.5 && < 0.7- , exceptions >= 0.8 && < 0.11- , haskeline >= 0.7 && < 0.8- , mtl >= 2.1 && < 2.3- , terminfo-hs >= 0.1 && < 0.3- , text >= 0.11 && < 1.3- , transformers >= 0.3 && < 0.6-- if !impl(ghc >= 8.0)- build-depends: semigroups == 0.18.*- -------------------------------------------------------------------------------- executable simple+ import: options, dependencies main-is: examples/simple.hs- default-language: Haskell2010- ghc-options: -Wall -fwarn-incomplete-uni-patterns- build-depends: base, byline, text+ build-depends: byline if !flag(build-examples) buildable: False -------------------------------------------------------------------------------- executable menu+ import: options, dependencies main-is: examples/menu.hs- default-language: Haskell2010- ghc-options: -Wall -fwarn-incomplete-uni-patterns- build-depends: base, byline, text+ build-depends: byline if !flag(build-examples) buildable: False
src/System/Console/Byline.hs view
@@ -110,9 +110,6 @@ ) where ---------------------------------------------------------------------------------import Data.Monoid ((<>))---------------------------------------------------------------------------------- import System.Console.Byline.Color import System.Console.Byline.Completion import System.Console.Byline.Internal.Byline
src/System/Console/Byline/Internal/Types.hs view
@@ -21,7 +21,6 @@ -------------------------------------------------------------------------------- -- Library imports:-import Data.Monoid import qualified Data.Semigroup as Semi --------------------------------------------------------------------------------
src/System/Console/Byline/Menu.hs view
@@ -36,7 +36,6 @@ import Data.Map (Map) import qualified Data.Map as Map import Data.Maybe-import Data.Monoid import Data.Text (Text) import qualified Data.Text as Text import Text.Printf (printf)
src/System/Console/Byline/Primitive.hs view
@@ -32,7 +32,6 @@ import qualified Control.Monad.Reader as Reader import Data.IORef import Data.Maybe-import Data.Monoid import Data.Text (Text) import qualified Data.Text as T import qualified System.Console.Haskeline as H@@ -127,8 +126,8 @@ askUntil :: (MonadIO m) => Stylized -- ^ The prompt. -> Maybe Text -- ^ Optional default answer.- -> (Text -> m (Either Stylized Text)) -- ^ Confirmation function.- -> Byline m Text+ -> (Text -> m (Either Stylized a)) -- ^ Confirmation function.+ -> Byline m a askUntil prompt defans confirm = go where go = do answer <- ask prompt defans
src/System/Console/Byline/Stylized.hs view
@@ -21,7 +21,6 @@ -------------------------------------------------------------------------------- -- Library imports:-import Data.Monoid import qualified Data.Semigroup as Semi import Data.String import Data.Text (Text)