packages feed

docopt 0.7.0.6 → 0.7.0.7

raw patch · 6 files changed

+38/−36 lines, 6 filesdep −th-liftdep ~containersdep ~template-haskell

Dependencies removed: th-lift

Dependency ranges changed: containers, template-haskell

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+### 0.7.0.7 (unreleased)++- update bounds, fix warnings, require ghc 8.0++ ### 0.7.0.6  - Fixes issue causing compilation error to happen with ghc-8.8.2 [#33][#34]
System/Console/Docopt/OptParse.hs view
@@ -68,17 +68,17 @@                     let rest = list \\ [pat]                     argDelimIfNotInShortOptStack                     makeParser $ Unordered rest-  -- (Optional pat) ->-  --       case pat of-  --         Unordered ps -> case ps of-  --           p:[] -> makeParser $ Optional p-  --           _  -> optional $ choice $ (parseThisThenRest ps) `map` ps-  --                 where parseThisThenRest list pat = try $ do-  --                         makeParser pat-  --                         let rest = list \\ [pat]-  --                         argDelimIfNotInShortOptStack-  --                         makeParser $ Optional $ Unordered rest-  --         _ -> optional $ try $ makeParser pat+  (Optional pat) ->+        case pat of+          Unordered ps -> case ps of+            p:[] -> makeParser $ Optional p+            _  -> optional $ choice $ (parseThisThenRest ps) `map` ps+                  where parseThisThenRest list pat = try $ do+                          makeParser pat+                          let rest = list \\ [pat]+                          argDelimIfNotInShortOptStack+                          makeParser $ Optional $ Unordered rest+          _ -> optional $ try $ makeParser pat   (Repeated pat) -> do       case pat of         (Optional p) -> (try $ makeParser p) `sepBy` argDelimIfNotInShortOptStack
System/Console/Docopt/QQ/Instances.hs view
@@ -1,19 +1,15 @@-{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE DeriveLift#-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE FlexibleInstances #-}+ {-# OPTIONS_GHC -fno-warn-orphans #-} {-# OPTIONS_HADDOCK hide, prune #-}+ module System.Console.Docopt.QQ.Instances where  import System.Console.Docopt.Types-import Language.Haskell.TH.Lift--import qualified Data.Map as M--instance (Lift k, Lift v) => Lift (M.Map k v) where-    lift m = [| M.fromList assoc |]-        where assoc = M.toList m+import Language.Haskell.TH.Syntax (Lift)+import Data.Map.Internal (Map(..)) -$(deriveLiftMany [ ''Option-                 , ''Pattern-                 , ''OptionInfo-                 , ''Docopt-                 ])+deriving instance Lift (Map Option OptionInfo)+deriving instance Lift (Docopt)
System/Console/Docopt/Types.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DeriveLift#-} module System.Console.Docopt.Types     where @@ -5,7 +6,7 @@ import           Data.List (nub) import           Data.Map (Map) import qualified Data.Map as M-+import Language.Haskell.TH.Syntax (Lift)  -- * Usage expression Types @@ -17,7 +18,7 @@                | Optional (Pattern a)                | Repeated (Pattern a)                | Atom a-               deriving (Show, Eq)+               deriving (Show, Eq, Lift)  atoms :: Eq a => Pattern a -> [a] atoms (Sequence ps)  = concatMap atoms ps@@ -33,7 +34,7 @@             | Command Name             | Argument Name             | AnyOption-            deriving (Show, Eq, Ord)+            deriving (Show, Eq, Ord, Lift)  type OptPattern = Pattern Option @@ -57,7 +58,7 @@                   , defaultVal :: Maybe String                   , expectsVal :: Bool                   , isRepeated :: Bool-                  } deriving (Show, Eq)+                  } deriving (Show, Eq, Lift)  fromSynList :: [Option] -> OptionInfo fromSynList opts = OptionInfo { synonyms = opts
System/Console/Docopt/UsageParse.hs view
@@ -4,7 +4,7 @@ import qualified Data.Map as M import           Data.Ord (comparing) import           GHC.Exts (Down(..))-import           Data.List (nub, sortBy, maximumBy, dropWhile, dropWhileEnd)+import           Data.List (nub, sortBy, maximumBy, dropWhileEnd)  import System.Console.Docopt.ParseUtils import System.Console.Docopt.Types
docopt.cabal view
@@ -1,5 +1,5 @@ name:                docopt-version:             0.7.0.6+version:             0.7.0.7 synopsis:            A command-line interface parser that will make you smile description:         Docopt parses command-line interface usage text that adheres to a familiar syntax, and from it builds a command-line argument parser that will ensure your program is invoked correctly with the available options specified in the usage text. This allows the developer to write a usage text and get an argument parser for free. @@ -34,7 +34,6 @@     Build with QuasiQuoter usage parsers, which requires Template Haskell  library-  default-language: Haskell2010   exposed-modules:    System.Console.Docopt.NoTH    other-modules:      System.Console.Docopt.ApplicativeParsec@@ -58,11 +57,11 @@     exposed-modules:  System.Console.Docopt     other-modules:    System.Console.Docopt.QQ                       System.Console.Docopt.QQ.Instances-    build-depends:    template-haskell >= 2.15.0 && < 2.16,-                      th-lift >= 0.8.2 && < 0.9+    build-depends:    template-haskell >= 2.15.0 && < 2.18 +  default-language:   Haskell2010+ test-suite tests-  default-language: Haskell2010   type:               exitcode-stdio-1.0   hs-source-dirs:     ./, test   main-is:            LangAgnosticTests.hs@@ -84,9 +83,9 @@                       aeson,                       bytestring,                       text,-                      template-haskell >= 2.15.0 && < 2.16,-                      th-lift >= 0.8.2 && < 0.9+                      template-haskell >= 2.15.0 && < 2.18 +   other-modules:      System.Console.Docopt                       System.Console.Docopt.ApplicativeParsec                       System.Console.Docopt.ParseUtils@@ -97,3 +96,5 @@                       System.Console.Docopt.QQ                       System.Console.Docopt.QQ.Instances                       Paths_docopt++  default-language:   Haskell2010