slyfox 15/08/01 16:07:28 Added: hdbc-2.4.0.0-ghc-7.10-1.patch hdbc-2.4.0.0-ghc-7.10-2.patch Log: Port to ghc-7.10/time-1.5. (Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 611FF3AA)
Revision Changes Path 1.1 dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-1.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-1.patch?rev=1.1&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-1.patch?rev=1.1&content-type=text/plain Index: hdbc-2.4.0.0-ghc-7.10-1.patch =================================================================== diff --git a/Database/HDBC/Locale.hs b/Database/HDBC/Locale.hs index e62b1c1..976a6a9 100644 --- a/Database/HDBC/Locale.hs +++ b/Database/HDBC/Locale.hs @@ -1,3 +1,4 @@ +{-# LANGUAGE CPP #-} module Database.HDBC.Locale ( defaultTimeLocale, @@ -5,7 +6,12 @@ module Database.HDBC.Locale ) where + +#if MIN_VERSION_time(1,5,0) +import Data.Time.Format (defaultTimeLocale) +#else import System.Locale (defaultTimeLocale) +#endif -- | As the semantic of System.Locale.iso8601DateFormat has changed with -- old-locale-1.0.0.2 in a non-compatible way, we now define our own diff --git a/Database/HDBC/SqlValue.hs b/Database/HDBC/SqlValue.hs index 9724f81..0e278cd 100644 --- a/Database/HDBC/SqlValue.hs +++ b/Database/HDBC/SqlValue.hs @@ -17,7 +17,11 @@ import Data.Char(ord,toUpper) import Data.Word import Data.Int import qualified System.Time as ST -import Data.Time +import Data.Time ( Day (ModifiedJulianDay), DiffTime, LocalTime, NominalDiffTime, ParseTime + , TimeOfDay, TimeZone, UTCTime, ZonedTime, formatTime, localDay, localTimeOfDay + , parseTime, timeOfDayToTime, timeToTimeOfDay, toModifiedJulianDay, utc + , utcToZonedTime, zonedTimeToLocalTime, zonedTimeToUTC, zonedTimeZone + ) import Data.Time.Clock.POSIX import Database.HDBC.Locale (defaultTimeLocale, iso8601DateFormat) import Data.Ratio 1.1 dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-2.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-2.patch?rev=1.1&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-haskell/hdbc/files/hdbc-2.4.0.0-ghc-7.10-2.patch?rev=1.1&content-type=text/plain Index: hdbc-2.4.0.0-ghc-7.10-2.patch =================================================================== diff --git a/Database/HDBC/SqlValue.hs b/Database/HDBC/SqlValue.hs index 0e278cd..1ebf114 100644 --- a/Database/HDBC/SqlValue.hs +++ b/Database/HDBC/SqlValue.hs @@ -19,8 +19,13 @@ import Data.Int import qualified System.Time as ST import Data.Time ( Day (ModifiedJulianDay), DiffTime, LocalTime, NominalDiffTime, ParseTime , TimeOfDay, TimeZone, UTCTime, ZonedTime, formatTime, localDay, localTimeOfDay - , parseTime, timeOfDayToTime, timeToTimeOfDay, toModifiedJulianDay, utc + , timeOfDayToTime, timeToTimeOfDay, toModifiedJulianDay, utc , utcToZonedTime, zonedTimeToLocalTime, zonedTimeToUTC, zonedTimeZone +#if MIN_VERSION_time(1,5,0) + , parseTimeM +#else + , parseTime +#endif ) import Data.Time.Clock.POSIX import Database.HDBC.Locale (defaultTimeLocale, iso8601DateFormat) @@ -665,7 +670,11 @@ instance Convertible (TimeOfDay, TimeZone) SqlValue where instance Convertible SqlValue (TimeOfDay, TimeZone) where safeConvert (SqlString x) = do tod <- parseTime' "%T%Q %z" x +#if MIN_VERSION_time(1,5,0) + tz <- case parseTimeM True defaultTimeLocale "%T%Q %z" x of +#else tz <- case parseTime defaultTimeLocale "%T%Q %z" x of +#endif Nothing -> convError "Couldn't extract timezone in" (SqlString x) Just y -> Right y return (tod, tz) @@ -939,7 +948,11 @@ parseTime' _ inpstr = #else parseTime' :: (Typeable t, Convertible SqlValue t, ParseTime t) => String -> String -> ConvertResult t parseTime' fmtstr inpstr = +#if MIN_VERSION_time(1,5,0) + case parseTimeM True defaultTimeLocale fmtstr inpstr of +#else case parseTime defaultTimeLocale fmtstr inpstr of +#endif Nothing -> convError ("Cannot parse using default format string " ++ show fmtstr) (SqlString inpstr) Just x -> Right x