summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorvijayphoenix <cs17btech11040@iith.ac.in>2020-01-26 14:01:31 +0000
committerJasper Van der Jeugt <m@jaspervdj.be>2020-01-26 14:02:55 +0000
commit498d676c1e06af966c814e01967fc3ece1fd9225 (patch)
tree088a1bbec731f509a5a4e48a7ce0c9c6c7d0b885
parentbb91eb75602153a36927768ccd2f915dc43922f5 (diff)
downloadstylish-haskell-498d676c1e06af966c814e01967fc3ece1fd9225.tar.gz
Switch to HsYAML library
-rw-r--r--.gitignore1
-rw-r--r--lib/Language/Haskell/Stylish/Config.hs10
-rw-r--r--stack.yaml2
-rw-r--r--stack.yaml.lock14
-rw-r--r--stylish-haskell.cabal9
5 files changed, 28 insertions, 8 deletions
diff --git a/.gitignore b/.gitignore
index 9072568..738ffe6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@ cabal.config
cabal.sandbox.config
cabal.sandbox.config
dist
+/dist-newstyle/
diff --git a/lib/Language/Haskell/Stylish/Config.hs b/lib/Language/Haskell/Stylish/Config.hs
index bd15867..ba9cb31 100644
--- a/lib/Language/Haskell/Stylish/Config.hs
+++ b/lib/Language/Haskell/Stylish/Config.hs
@@ -16,6 +16,7 @@ import Data.Aeson (FromJSON (..)
import qualified Data.Aeson as A
import qualified Data.Aeson.Types as A
import qualified Data.ByteString as B
+import Data.ByteString.Lazy (fromStrict)
import Data.Char (toLower)
import qualified Data.FileEmbed as FileEmbed
import Data.List (intercalate,
@@ -23,8 +24,8 @@ import Data.List (intercalate,
import Data.Map (Map)
import qualified Data.Map as M
import Data.Maybe (fromMaybe)
-import Data.Yaml (decodeEither',
- prettyPrintParseException)
+import Data.YAML (prettyPosWithSource)
+import Data.YAML.Aeson (decode1Strict)
import System.Directory
import System.FilePath ((</>))
import qualified System.IO as IO (Newline (..),
@@ -101,9 +102,8 @@ loadConfig verbose userSpecified = do
mbFp <- configFilePath verbose userSpecified
verbose $ "Loading configuration at " ++ fromMaybe "<embedded>" mbFp
bytes <- maybe (return defaultConfigBytes) B.readFile mbFp
- case decodeEither' bytes of
- Left err -> error $
- "Language.Haskell.Stylish.Config.loadConfig: " ++ prettyPrintParseException err
+ case decode1Strict bytes of
+ Left (pos, err) -> error $ prettyPosWithSource pos (fromStrict bytes) ("Language.Haskell.Stylish.Config.loadConfig: " ++ err)
Right config -> do
cabalLanguageExtensions <- if configCabal config
then map show <$> Cabal.findLanguageExtensions verbose
diff --git a/stack.yaml b/stack.yaml
index 8d4c89b..b7c37af 100644
--- a/stack.yaml
+++ b/stack.yaml
@@ -5,3 +5,5 @@ packages:
extra-deps:
- 'Cabal-3.0.0.0'
- 'haskell-src-exts-1.23.0'
+- 'HsYAML-0.2.1.0'
+- 'HsYAML-aeson-0.2.0.0'
diff --git a/stack.yaml.lock b/stack.yaml.lock
index 129406d..bc43b4e 100644
--- a/stack.yaml.lock
+++ b/stack.yaml.lock
@@ -18,6 +18,20 @@ packages:
sha256: 8e5bc885533431db9bf75e9609f6b80b56ab0c289a903d701f8628e78322afd0
original:
hackage: haskell-src-exts-1.23.0
+- completed:
+ hackage: HsYAML-0.2.1.0@sha256:e4677daeba57f7a1e9a709a1f3022fe937336c91513e893166bd1f023f530d68,5311
+ pantry-tree:
+ size: 1340
+ sha256: 21f61bf9cad31674126b106071dd9b852e408796aeffc90eec1792f784107eff
+ original:
+ hackage: HsYAML-0.2.1.0
+- completed:
+ hackage: HsYAML-aeson-0.2.0.0@sha256:04796abfc01cffded83f37a10e6edba4f0c0a15d45bef44fc5bb4313d9c87757,1791
+ pantry-tree:
+ size: 234
+ sha256: 67cc9ba17c79e71d3abdb465a3ee2825477856fff3b8b7d543cbbbefdae9a9d9
+ original:
+ hackage: HsYAML-aeson-0.2.0.0
snapshots:
- completed:
size: 524154
diff --git a/stylish-haskell.cabal b/stylish-haskell.cabal
index 0ec6bc3..ac16054 100644
--- a/stylish-haskell.cabal
+++ b/stylish-haskell.cabal
@@ -64,7 +64,8 @@ Library
mtl >= 2.0 && < 2.3,
semigroups >= 0.18 && < 0.20,
syb >= 0.3 && < 0.8,
- yaml >= 0.8.11 && < 0.12
+ HsYAML-aeson >=0.2.0 && < 0.3,
+ HsYAML >=0.2.0 && < 0.3
Executable stylish-haskell
Ghc-options: -Wall
@@ -87,7 +88,8 @@ Executable stylish-haskell
haskell-src-exts >= 1.18 && < 1.24,
mtl >= 2.0 && < 2.3,
syb >= 0.3 && < 0.8,
- yaml >= 0.8.11 && < 0.12
+ HsYAML-aeson >=0.2.0 && < 0.3,
+ HsYAML >=0.2.0 && < 0.3
Test-suite stylish-haskell-tests
Ghc-options: -Wall
@@ -146,7 +148,8 @@ Test-suite stylish-haskell-tests
haskell-src-exts >= 1.18 && < 1.24,
mtl >= 2.0 && < 2.3,
syb >= 0.3 && < 0.8,
- yaml >= 0.8.11 && < 0.12
+ HsYAML-aeson >=0.2.0 && < 0.3,
+ HsYAML >=0.2.0 && < 0.3
Source-repository head
Type: git