timerep 2.0.0.1 → 2.0.0.2
raw patch · 6 files changed
+22/−33 lines, 6 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Data.Time.RFC2822: formatTimeRFC2822 :: TextualMonoid t => ZonedTime -> t
+ Data.Time.RFC2822: formatTimeRFC2822 :: (TextualMonoid t) => ZonedTime -> t
- Data.Time.RFC2822: parseTimeRFC2822 :: TextualMonoid t => t -> Maybe ZonedTime
+ Data.Time.RFC2822: parseTimeRFC2822 :: (TextualMonoid t) => t -> Maybe ZonedTime
- Data.Time.RFC3339: formatTimeRFC3339 :: TextualMonoid t => ZonedTime -> t
+ Data.Time.RFC3339: formatTimeRFC3339 :: (TextualMonoid t) => ZonedTime -> t
- Data.Time.RFC3339: parseTimeRFC3339 :: TextualMonoid t => t -> Maybe ZonedTime
+ Data.Time.RFC3339: parseTimeRFC3339 :: (TextualMonoid t) => t -> Maybe ZonedTime
- Data.Time.RFC822: formatTimeRFC822 :: TextualMonoid t => ZonedTime -> t
+ Data.Time.RFC822: formatTimeRFC822 :: (TextualMonoid t) => ZonedTime -> t
- Data.Time.RFC822: parseTimeRFC822 :: TextualMonoid t => t -> Maybe ZonedTime
+ Data.Time.RFC822: parseTimeRFC822 :: (TextualMonoid t) => t -> Maybe ZonedTime
Files
- CHANGES.md +3/−0
- Data/Time/RFC2822.hs +5/−10
- Data/Time/RFC3339.hs +4/−5
- Data/Time/RFC822.hs +7/−17
- test/Main.hs +2/−0
- timerep.cabal +1/−1
CHANGES.md view
@@ -1,6 +1,9 @@ Change log ========== +#### 2.0.0.2+- Added non-zero day padding for RFC822+ #### 2.0.0.1 - Compatibility with monoid-subclasses >= 0.4.1 - Renamed github repository to match package name
Data/Time/RFC2822.hs view
@@ -62,16 +62,11 @@ else " " ++ timeZoneStr formatsRFC2822 :: [Text]-formatsRFC2822 = [ "%a, %e %b %Y %T GMT"- , "%a, %e %b %Y %T %z"- , "%e %b %Y %T GMT"- , "%e %b %Y %T %z"- -- Support for hours:minutes- , "%a, %e %b %Y %R GMT"- , "%a, %e %b %Y %R %z"- , "%e %b %Y %R GMT"- , "%e %b %Y %R %z"- ]+formatsRFC2822 = do+ day <- ["%a, ", ""]+ time <- ["%T", "%R"] -- Support for hours:minutes+ zone <- ["GMT", "%z"]+ return $ day <> "%e %b %Y " <> time <> " " <> zone parseTimeRFC2822 :: (TextualMonoid t) => t -> Maybe ZonedTime parseTimeRFC2822 t = foldr (<|>) Nothing $ map parse formatsRFC2822
Data/Time/RFC3339.hs view
@@ -56,11 +56,10 @@ else take 3 timeZoneStr <> ":" <> drop 3 timeZoneStr formatsRFC3339 :: [Text]-formatsRFC3339 = [ "%FT%TZ"- , "%FT%T%z"- , "%FT%T%Q%z"- , "%FT%T%QZ"- ]+formatsRFC3339 = do+ fraction <- ["%Q", ""]+ zone <- ["Z", "%z"]+ return $ "%FT%T" <> fraction <> zone parseTimeRFC3339 :: (TextualMonoid t) => t -> Maybe ZonedTime parseTimeRFC3339 = parseTimeUsing formatsRFC3339
Data/Time/RFC822.hs view
@@ -29,6 +29,7 @@ import Control.Applicative import Data.Maybe+import Data.Monoid ((<>)) import Data.Monoid.Textual hiding (foldr, map) import Data.String (fromString) import Data.Text (Text)@@ -42,23 +43,12 @@ formatTimeRFC822 zonedTime = fromString $ formatTime defaultTimeLocale "%a, %d %b %Y %X %z" zonedTime formatsRFC822 :: [Text]-formatsRFC822 = [ "%a, %d %b %y %X %z"- , "%a, %d %b %y %X %Z"- , "%a, %d %b %y %H:%M %z"- , "%a, %d %b %y %H:%M %Z"- , "%a, %d %b %Y %X %z"- , "%a, %d %b %Y %X %Z"- , "%a, %d %b %Y %H:%M %z"- , "%a, %d %b %Y %H:%M %Z"- , "%d %b %y %X %z"- , "%d %b %y %X %Z"- , "%d %b %y %H:%M %z"- , "%d %b %y %H:%M %Z"- , "%d %b %Y %X %z"- , "%d %b %Y %X %Z"- , "%d %b %Y %H:%M %z"- , "%d %b %Y %H:%M %Z"- ]+formatsRFC822 = do+ day <- ["%a, ", ""]+ year <- ["%y", "%Y"]+ time <- ["%X", "%H:%M"]+ zone <- ["%z", "%Z"]+ return $ day <> "%e %b " <> year <> " " <> time <> " " <> zone parseTimeRFC822 :: (TextualMonoid t) => t -> Maybe ZonedTime parseTimeRFC822 = parseTimeUsing formatsRFC822
test/Main.hs view
@@ -92,8 +92,10 @@ isJust (parseTimeRFC822 "Wed, 02 Oct 2002 13:00:00 GMT") @?= True isJust (parseTimeRFC822 "Wed, 02 Oct 2002 13:00:00 +0100") @?= True isJust (parseTimeRFC822 "Wed, 02 Oct 2002 13:00 +0100") @?= True+ isJust (parseTimeRFC822 "Wed, 2 Oct 2002 13:00 +0100") @?= True isJust (parseTimeRFC822 "02 Oct 2002 13:00 +0100") @?= True isJust (parseTimeRFC822 "02 Oct 02 13:00 +0100") @?= True+ isJust (parseTimeRFC822 "2 Oct 02 13:00 +0100") @?= True properties :: TestTree
timerep.cabal view
@@ -1,5 +1,5 @@ name: timerep-version: 2.0.0.1+version: 2.0.0.2 category: Web, Time, Parser, Text synopsis: Parse and display time according to some RFCs (RFC3339, RFC2822, RFC822) description: