attoparsec-time 1 → 1.0.1
raw patch · 5 files changed
+121/−83 lines, 5 filesdep −base-preludedep −directorydep −doctestdep ~basePVP ok
version bump matches the API change (PVP)
Dependencies removed: base-prelude, directory, doctest, filepath
Dependency ranges changed: base
API changes (from Hackage documentation)
+ Attoparsec.Time.ByteString: yearAndMonthInISO8601 :: Parser (Word, Word)
+ Attoparsec.Time.Text: yearAndMonthInISO8601 :: Parser (Word, Word)
Files
- attoparsec-time.cabal +22/−69
- doctests/Main.hs +0/−12
- library/Attoparsec/Time/ByteString.hs +16/−0
- library/Attoparsec/Time/Prelude.hs +67/−2
- library/Attoparsec/Time/Text.hs +16/−0
attoparsec-time.cabal view
@@ -1,49 +1,26 @@-name:- attoparsec-time-version:- 1-synopsis:- Attoparsec parsers of time-description:- A collection of Attoparsec parsers for the \"time\" library-category:- Attoparsec, Parsers, Time-homepage:- https://github.com/nikita-volkov/attoparsec-time -bug-reports:- https://github.com/nikita-volkov/attoparsec-time/issues -author:- Nikita Volkov <nikita.y.volkov@mail.ru>-maintainer:- Nikita Volkov <nikita.y.volkov@mail.ru>-copyright:- (c) 2017, Nikita Volkov-license:- MIT-license-file:- LICENSE-build-type:- Custom-cabal-version:- >=1.10+name: attoparsec-time+version: 1.0.1+synopsis: Attoparsec parsers of time+description: A collection of Attoparsec parsers for the \"time\" library+category: Attoparsec, Parsers, Time+homepage: https://github.com/nikita-volkov/attoparsec-time+bug-reports: https://github.com/nikita-volkov/attoparsec-time/issues+author: Nikita Volkov <nikita.y.volkov@mail.ru>+maintainer: Nikita Volkov <nikita.y.volkov@mail.ru>+copyright: (c) 2017, Nikita Volkov+license: MIT+license-file: LICENSE+build-type: Simple+cabal-version: >=1.10 source-repository head- type:- git- location:- git://github.com/nikita-volkov/attoparsec-time.git--custom-setup- setup-depends:- base, Cabal, cabal-doctest >=1.0.2 && <1.1+ type: git+ location: git://github.com/nikita-volkov/attoparsec-time.git library- hs-source-dirs:- library- default-extensions:- Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples- default-language:- Haskell2010+ hs-source-dirs: library+ default-extensions: Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples+ default-language: Haskell2010 exposed-modules: Attoparsec.Time.ByteString Attoparsec.Time.Text@@ -52,33 +29,9 @@ Attoparsec.Time.Validation Attoparsec.Time.Pure build-depends:- -- attoparsec >=0.13 && <0.15,- --- time >=1.4 && <2,+ base >=4.9 && <5,+ bytestring ==0.10.*, scientific ==0.3.*, text >=1 && <2,- bytestring ==0.10.*,- --- base-prelude <2,- base >=4.7 && <5--test-suite doctests- type:- exitcode-stdio-1.0- hs-source-dirs:- doctests- main-is:- Main.hs- ghc-options:- -threaded- "-with-rtsopts=-N"- -funbox-strict-fields- default-language:- Haskell2010- build-depends:- doctest ==0.13.*,- directory >=1.2 && <2,- filepath >=1.4 && <2,- base-prelude <2,- base <5+ time >=1.4 && <2
− doctests/Main.hs
@@ -1,12 +0,0 @@-module Main where--import Build_doctests (flags, pkgs, module_sources)-import Data.Foldable (traverse_)-import Test.DocTest--main :: IO ()-main = do- traverse_ putStrLn args- doctest args- where- args = flags ++ pkgs ++ module_sources
library/Attoparsec/Time/ByteString.hs view
@@ -5,6 +5,7 @@ ( timeOfDayInISO8601, dayInISO8601,+ yearAndMonthInISO8601, timeZoneInISO8601, utcTimeInISO8601, diffTime,@@ -148,6 +149,21 @@ error year month day = showString "Invalid combination of year month and day: " $ show (year, month, day)++{-|+>>> parseOnly yearAndMonthInISO8601 "2016-02"+Right (2016,2)+-}+yearAndMonthInISO8601 :: Parser (Word, Word)+yearAndMonthInISO8601 =+ unnamedParser <?> "yearAndMonthInISO8601"+ where+ unnamedParser =+ do+ year <- decimalOfLength 4+ word8 45+ month <- decimalOfLength 2+ return (year, month) {-| >>> parseOnly timeZoneInISO8601 "+01:00"
library/Attoparsec/Time/Prelude.hs view
@@ -4,9 +4,74 @@ ) where --- base-prelude+-- base --------------------------import BasePrelude as Exports hiding (second)+import Control.Applicative as Exports+import Control.Arrow as Exports hiding (first, second)+import Control.Category as Exports+import Control.Concurrent as Exports+import Control.Exception as Exports+import Control.Monad as Exports hiding (fail, mapM_, sequence_, forM_, msum, mapM, sequence, forM)+import Control.Monad.IO.Class as Exports+import Control.Monad.Fail as Exports+import Control.Monad.Fix as Exports hiding (fix)+import Control.Monad.ST as Exports+import Data.Bits as Exports+import Data.Bool as Exports+import Data.Char as Exports+import Data.Coerce as Exports+import Data.Complex as Exports+import Data.Data as Exports+import Data.Dynamic as Exports+import Data.Either as Exports+import Data.Fixed as Exports+import Data.Foldable as Exports+import Data.Function as Exports hiding (id, (.))+import Data.Functor as Exports+import Data.Functor.Compose as Exports+import Data.Functor.Contravariant as Exports+import Data.Int as Exports+import Data.IORef as Exports+import Data.Ix as Exports hiding (index)+import Data.List as Exports hiding (sortOn, isSubsequenceOf, uncons, concat, foldr, foldl1, maximum, minimum, product, sum, all, and, any, concatMap, elem, foldl, foldr1, notElem, or, find, maximumBy, minimumBy, mapAccumL, mapAccumR, foldl')+import Data.List.NonEmpty as Exports (NonEmpty(..))+import Data.Maybe as Exports+import Data.Monoid as Exports hiding (Alt)+import Data.Ord as Exports+import Data.Proxy as Exports+import Data.Ratio as Exports+import Data.STRef as Exports+import Data.String as Exports+import Data.Traversable as Exports+import Data.Tuple as Exports+import Data.Unique as Exports+import Data.Version as Exports+import Data.Void as Exports+import Data.Word as Exports+import Debug.Trace as Exports+import Foreign.ForeignPtr as Exports+import Foreign.Ptr as Exports+import Foreign.StablePtr as Exports+import Foreign.Storable as Exports+import GHC.Conc as Exports hiding (orElse, withMVar, threadWaitWriteSTM, threadWaitWrite, threadWaitReadSTM, threadWaitRead)+import GHC.Exts as Exports (sortWith, groupWith)+import GHC.Generics as Exports (Generic)+import GHC.IO.Exception as Exports+import Numeric as Exports+import Prelude as Exports hiding (fail, concat, foldr, mapM_, sequence_, foldl1, maximum, minimum, product, sum, all, and, any, concatMap, elem, foldl, foldr1, notElem, or, mapM, sequence, id, (.))+import System.Environment as Exports+import System.Exit as Exports+import System.IO as Exports (Handle, hClose)+import System.IO.Error as Exports+import System.IO.Unsafe as Exports+import System.Mem as Exports+import System.Mem.StableName as Exports+import System.Timeout as Exports+import Text.ParserCombinators.ReadP as Exports (ReadP, ReadS, readP_to_S, readS_to_P)+import Text.ParserCombinators.ReadPrec as Exports (ReadPrec, readPrec_to_P, readP_to_Prec, readPrec_to_S, readS_to_Prec)+import Text.Printf as Exports (printf, hPrintf)+import Text.Read as Exports (Read(..), readMaybe, readEither)+import Unsafe.Coerce as Exports -- text -------------------------
library/Attoparsec/Time/Text.hs view
@@ -2,6 +2,7 @@ ( timeOfDayInISO8601, dayInISO8601,+ yearAndMonthInISO8601, timeZoneInISO8601, utcTimeInISO8601, diffTime,@@ -160,6 +161,21 @@ error year month day = showString "Invalid combination of year month and day: " $ show (year, month, day)++{-|+>>> parseOnly yearAndMonthInISO8601 "2016-02"+Right (2016,2)+-}+yearAndMonthInISO8601 :: Parser (Word, Word)+yearAndMonthInISO8601 =+ unnamedParser <?> "yearAndMonthInISO8601"+ where+ unnamedParser =+ do+ year <- decimalOfLength 4+ char '-'+ month <- decimalOfLength 2+ return (year, month) {-| >>> parseOnly timeZoneInISO8601 "+01:00"