From 57a7dde6332d80135396627826a58b44512f45c6 Mon Sep 17 00:00:00 2001 From: Jean-Paul Calderone <exarkun@twistedmatrix.com> Date: Thu, 12 Sep 2019 15:17:33 -0400 Subject: [PATCH] Stay away from String where I can --- PaymentServer.cabal | 1 + generate-key/Main.hs | 8 ++++++++ src/PaymentServer/Ristretto.hs | 4 ++-- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/PaymentServer.cabal b/PaymentServer.cabal index 6926cee..165887e 100644 --- a/PaymentServer.cabal +++ b/PaymentServer.cabal @@ -52,6 +52,7 @@ executable PaymentServer-generate-key main-is: Main.hs ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wmissing-import-lists -Wunused-imports build-depends: base + , text , PaymentServer default-language: Haskell2010 diff --git a/generate-key/Main.hs b/generate-key/Main.hs index 3eb7b0e..0da0545 100644 --- a/generate-key/Main.hs +++ b/generate-key/Main.hs @@ -2,6 +2,14 @@ module Main ( main ) where +import Prelude hiding + ( putStrLn + ) + +import Data.Text.IO + ( putStrLn + ) + import PaymentServer.Ristretto ( randomSigningKey ) diff --git a/src/PaymentServer/Ristretto.hs b/src/PaymentServer/Ristretto.hs index d56faf8..832e125 100644 --- a/src/PaymentServer/Ristretto.hs +++ b/src/PaymentServer/Ristretto.hs @@ -73,11 +73,11 @@ ristretto textSigningKey textTokens = do -- | randomSigningKey generates a new signing key at random and returns it -- encoded as a base64 string. -randomSigningKey :: IO String +randomSigningKey :: IO Text randomSigningKey = do cSigningKey <- signing_key_random cString <- signing_key_encode_base64 cSigningKey signing_key_destroy cSigningKey result <- peekCString cString free cString - return result + return $ pack result -- GitLab