fix parseTime warnings with time 1.5+ (#239)
This commit is contained in:
parent
e838ed0637
commit
f8a24ccead
@ -427,13 +427,23 @@ nthdayofweekcontaining n d | d1 >= d = d1
|
|||||||
-- parseTime defaultTimeLocale "%Y-%m-%d %H:%M:%S" s
|
-- parseTime defaultTimeLocale "%Y-%m-%d %H:%M:%S" s
|
||||||
-- ]
|
-- ]
|
||||||
|
|
||||||
|
parsetime :: ParseTime t => TimeLocale -> String -> String -> Maybe t
|
||||||
|
parsetime =
|
||||||
|
#if MIN_VERSION_time(1,5,0)
|
||||||
|
parseTimeM True
|
||||||
|
#else
|
||||||
|
parseTime
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
-- | Parse a couple of date string formats to a time type.
|
-- | Parse a couple of date string formats to a time type.
|
||||||
parsedateM :: String -> Maybe Day
|
parsedateM :: String -> Maybe Day
|
||||||
parsedateM s = firstJust [
|
parsedateM s = firstJust [
|
||||||
parseTime defaultTimeLocale "%Y/%m/%d" s,
|
parsetime defaultTimeLocale "%Y/%m/%d" s,
|
||||||
parseTime defaultTimeLocale "%Y-%m-%d" s
|
parsetime defaultTimeLocale "%Y-%m-%d" s
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
-- -- | Parse a date-time string to a time type, or raise an error.
|
-- -- | Parse a date-time string to a time type, or raise an error.
|
||||||
-- parsedatetime :: String -> LocalTime
|
-- parsedatetime :: String -> LocalTime
|
||||||
-- parsedatetime s = fromMaybe (error' $ "could not parse timestamp \"" ++ s ++ "\"")
|
-- parsedatetime s = fromMaybe (error' $ "could not parse timestamp \"" ++ s ++ "\"")
|
||||||
@ -447,7 +457,7 @@ parsedate s = fromMaybe (error' $ "could not parse date \"" ++ s ++ "\"")
|
|||||||
-- | Parse a time string to a time type using the provided pattern, or
|
-- | Parse a time string to a time type using the provided pattern, or
|
||||||
-- return the default.
|
-- return the default.
|
||||||
parsetimewith :: ParseTime t => String -> String -> t -> t
|
parsetimewith :: ParseTime t => String -> String -> t -> t
|
||||||
parsetimewith pat s def = fromMaybe def $ parseTime defaultTimeLocale pat s
|
parsetimewith pat s def = fromMaybe def $ parsetime defaultTimeLocale pat s
|
||||||
|
|
||||||
{-|
|
{-|
|
||||||
Parse a date in any of the formats allowed in ledger's period expressions,
|
Parse a date in any of the formats allowed in ledger's period expressions,
|
||||||
|
|||||||
@ -14,7 +14,7 @@ import Data.Time.Calendar
|
|||||||
import Data.Time.Clock
|
import Data.Time.Clock
|
||||||
import Data.Time.Format
|
import Data.Time.Format
|
||||||
import Data.Time.LocalTime
|
import Data.Time.LocalTime
|
||||||
#if !MIN_VERSION_time(1,5,0)
|
#if !(MIN_VERSION_time(1,5,0))
|
||||||
import System.Locale (defaultTimeLocale)
|
import System.Locale (defaultTimeLocale)
|
||||||
#endif
|
#endif
|
||||||
import Test.HUnit
|
import Test.HUnit
|
||||||
@ -112,7 +112,12 @@ tests_Hledger_Data_TimeLog = TestList [
|
|||||||
nowstr = showtime now
|
nowstr = showtime now
|
||||||
yesterday = prevday today
|
yesterday = prevday today
|
||||||
clockin = TimeLogEntry nullsourcepos In
|
clockin = TimeLogEntry nullsourcepos In
|
||||||
mktime d = LocalTime d . fromMaybe midnight . parseTime defaultTimeLocale "%H:%M:%S"
|
mktime d = LocalTime d . fromMaybe midnight .
|
||||||
|
#if MIN_VERSION_time(1,5,0)
|
||||||
|
parseTimeM True defaultTimeLocale "%H:%M:%S"
|
||||||
|
#else
|
||||||
|
parseTime defaultTimeLocale "%H:%M:%S"
|
||||||
|
#endif
|
||||||
showtime = formatTime defaultTimeLocale "%H:%M"
|
showtime = formatTime defaultTimeLocale "%H:%M"
|
||||||
assertEntriesGiveStrings name es ss = assertEqual name ss (map tdescription $ timeLogEntriesToTransactions now es)
|
assertEntriesGiveStrings name es ss = assertEqual name ss (map tdescription $ timeLogEntriesToTransactions now es)
|
||||||
|
|
||||||
|
|||||||
@ -32,10 +32,10 @@ import Data.List
|
|||||||
import Data.Maybe
|
import Data.Maybe
|
||||||
import Data.Ord
|
import Data.Ord
|
||||||
import Data.Time.Calendar (Day)
|
import Data.Time.Calendar (Day)
|
||||||
import Data.Time.Format (parseTime)
|
|
||||||
#if MIN_VERSION_time(1,5,0)
|
#if MIN_VERSION_time(1,5,0)
|
||||||
import Data.Time.Format (defaultTimeLocale)
|
import Data.Time.Format (parseTimeM, defaultTimeLocale)
|
||||||
#else
|
#else
|
||||||
|
import Data.Time.Format (parseTime)
|
||||||
import System.Locale (defaultTimeLocale)
|
import System.Locale (defaultTimeLocale)
|
||||||
#endif
|
#endif
|
||||||
import Safe
|
import Safe
|
||||||
@ -720,7 +720,13 @@ renderTemplate rules record t = regexReplaceBy "%[A-z0-9]+" replace t
|
|||||||
parseDateWithFormatOrDefaultFormats :: Maybe DateFormat -> String -> Maybe Day
|
parseDateWithFormatOrDefaultFormats :: Maybe DateFormat -> String -> Maybe Day
|
||||||
parseDateWithFormatOrDefaultFormats mformat s = firstJust $ map parsewith formats
|
parseDateWithFormatOrDefaultFormats mformat s = firstJust $ map parsewith formats
|
||||||
where
|
where
|
||||||
parsewith = flip (parseTime defaultTimeLocale) s
|
parsetime =
|
||||||
|
#if MIN_VERSION_time(1,5,0)
|
||||||
|
parseTimeM True
|
||||||
|
#else
|
||||||
|
parseTime
|
||||||
|
#endif
|
||||||
|
parsewith = flip (parsetime defaultTimeLocale) s
|
||||||
formats = maybe
|
formats = maybe
|
||||||
["%Y/%-m/%-d"
|
["%Y/%-m/%-d"
|
||||||
,"%Y-%-m-%-d"
|
,"%Y-%-m-%-d"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user