From 51d2bd199fe781fdebd7f107043bf03942bdec8f Mon Sep 17 00:00:00 2001 From: Denis Tereshkin Date: Thu, 27 Apr 2023 08:44:13 +0700 Subject: [PATCH] Update resolver to lts-20.18 --- src/ATrade/RoboCom/Types.hs | 9 ++++++--- stack.yaml | 7 ++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/ATrade/RoboCom/Types.hs b/src/ATrade/RoboCom/Types.hs index 59bd1be..0263ed6 100644 --- a/src/ATrade/RoboCom/Types.hs +++ b/src/ATrade/RoboCom/Types.hs @@ -18,9 +18,12 @@ module ATrade.RoboCom.Types ( ) where import ATrade.Types +import Control.Lens.Setter (over) +import Control.Lens.Tuple (_1) import Data.Aeson +import Data.Aeson.Key (fromText, toText) +import Data.Aeson.KeyMap as KM import Data.Aeson.Types -import qualified Data.HashMap.Strict as HM import qualified Data.Map.Strict as M import qualified Data.Text as T import GHC.Generics (Generic) @@ -64,14 +67,14 @@ instance FromJSON Ticker where return $ Ticker nm als' tf) where parseAliases :: Value -> Parser [(String, String)] - parseAliases = withObject "object1" (mapM parseAlias . HM.toList) + parseAliases = withObject "object1" (mapM (parseAlias . over _1 toText) . KM.toList) parseAlias :: (T.Text, Value) -> Parser (String, String) parseAlias (k, v) = withText "string1" (\s -> return (T.unpack k, T.unpack s)) v instance ToJSON Ticker where toJSON t = object [ "name" .= code t, "timeframe" .= timeframeSeconds t, - "aliases" .= Object (HM.fromList $ fmap (\(x, y) -> (T.pack x, String $ T.pack y)) $ aliases t) ] + "aliases" .= Object (KM.fromList $ fmap (\(x, y) -> (fromText . T.pack $ x, String $ T.pack y)) $ aliases t) ] data BarSeriesId = BarSeriesId TickerId BarTimeframe deriving (Show, Eq, Generic, Ord) diff --git a/stack.yaml b/stack.yaml index 1f6d9a3..6ec8834 100644 --- a/stack.yaml +++ b/stack.yaml @@ -18,7 +18,7 @@ # # resolver: ./custom-snapshot.yaml # resolver: https://example.com/snapshots/2018-01-01.yaml -resolver: lts-18.18 +resolver: lts-20.18 # User packages to be built. # Various formats can be used as shown in the example below. @@ -48,8 +48,9 @@ extra-deps: - binary-ieee754-0.1.0.0 - th-printf-0.7 - normaldistribution-1.1.0.3 -- co-log-0.4.0.1@sha256:3d4c17f37693c80d1aa2c41669bc3438fac3e89dc5f479e57d79bc3ddc4dfcc5,5087 -- ansi-terminal-0.10.3@sha256:e2fbcef5f980dc234c7ad8e2fa433b0e8109132c9e643bc40ea5608cd5697797,3226 +- co-log-0.5.0.0 +- chronos-1.1.5@sha256:ca35be5fdbbb384414226b4467c6d1c8b44defe59a9c8a3af32c1c5fb250c781,3830 +- typerep-map-0.5.0.0@sha256:34f1ba9b268a6d52e26ae460011a5571e8099b50a3f4a7c8db25dd8efe3be8ee,4667 # Override default flag values for local packages and extra-deps # flags: {}