dhall-toml 1.0.0 → 1.0.1
raw patch · 6 files changed
+67/−57 lines, 6 filesdep ~prettyprinterdep ~textPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: prettyprinter, text
API changes (from Hackage documentation)
+ Dhall.DhallToToml: instance GHC.Classes.Eq Dhall.DhallToToml.CompileError
Files
- CHANGELOG.md +4/−0
- dhall-toml.cabal +2/−2
- src/Dhall/DhallToToml.hs +30/−24
- src/Dhall/Toml/Utils.hs +5/−5
- src/Dhall/TomlToDhall.hs +13/−13
- tasty/Main.hs +13/−13
CHANGELOG.md view
@@ -1,3 +1,7 @@+1.0.1++* [Fix doctest](https://github.com/dhall-lang/dhall-haskell/pull/2325)+ 1.0.0 * Initial release
dhall-toml.cabal view
@@ -1,5 +1,5 @@ Name: dhall-toml-Version: 1.0.0+Version: 1.0.1 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3@@ -40,7 +40,7 @@ text >= 0.11.1.0 && < 1.3 , containers >= 0.5.9 && < 0.7 , unordered-containers >= 0.2 && < 0.3 ,- prettyprinter >= 1.5.1 && < 1.8+ prettyprinter >= 1.7.0 && < 1.8 Exposed-Modules: Dhall.DhallToToml Dhall.TomlToDhall
src/Dhall/DhallToToml.hs view
@@ -101,32 +101,37 @@ , CompileError ) where -import Control.Monad (foldM)-import Control.Exception (Exception, throwIO)-import Data.Foldable (toList)-import Data.List.NonEmpty (NonEmpty((:|)))-import Data.Text (Text)-import Data.Text.Prettyprint.Doc (Pretty)-import Data.Void (Void)-import Dhall.Core (Expr, DhallDouble(..))-import Dhall.Toml.Utils (inputToDhall)-import Toml.Type.TOML (TOML)-import Toml.Type.Key (Piece(Piece), Key(Key, unKey))-import Toml.Type.Printer (pretty)+import Control.Exception (Exception, throwIO)+import Control.Monad (foldM)+import Data.Foldable (toList)+import Data.List.NonEmpty (NonEmpty ((:|)))+import Data.Text (Text)+import Data.Void (Void)+import Dhall.Core (DhallDouble (..), Expr)+import Dhall.Toml.Utils (inputToDhall)+import Prettyprinter (Pretty)+import Toml.Type.Key (Key (Key, unKey), Piece (Piece))+import Toml.Type.Printer (pretty)+import Toml.Type.TOML (TOML) -import qualified Data.Bifunctor as Bifunctor-import qualified Data.Sequence as Seq-import qualified Data.Text as Text-import qualified Data.Text.IO as Text.IO-import qualified Data.Text.Prettyprint.Doc.Render.Text as Pretty-import qualified Dhall.Core as Core-import qualified Dhall.Map as Map+import qualified Data.Bifunctor as Bifunctor+import qualified Data.Sequence as Seq+import qualified Data.Text as Text+import qualified Data.Text.IO as Text.IO+import qualified Dhall.Core as Core+import qualified Dhall.Map as Map import qualified Dhall.Pretty import qualified Dhall.Util-import qualified Toml.Type.TOML as Toml.TOML-import qualified Toml.Type.Value as Toml.Value-import qualified Toml.Type.AnyValue as Toml.AnyValue+import qualified Prettyprinter.Render.Text as Pretty+import qualified Toml.Type.AnyValue as Toml.AnyValue+import qualified Toml.Type.TOML as Toml.TOML+import qualified Toml.Type.Value as Toml.Value +-- $setup+--+-- >>> import Toml.Type.TOML (TOML(..))+-- >>> import Toml.Type.AnyValue (AnyValue(..))+-- >>> import qualified Data.HashMap.Strict as HashMap data CompileError = Unsupported (Expr Void Void)@@ -138,6 +143,7 @@ -- implemented it yet -- NOTE: the only way to get this error is through unions | HeterogeneousArray (Expr Void Void)+ deriving (Eq) instance Show CompileError where show (Unsupported e) =@@ -215,8 +221,8 @@ >>> import Toml.Type.Printer >>> f = makeRecordField >>> let toml = dhallToToml $ RecordLit [("foo", f $ NaturalLit 1), ("bar", f $ TextLit "ABC")]->>> toml-Right (TOML {tomlPairs = fromList [("foo" :| [],Integer 1),("bar" :| [],Text "ABC")], tomlTables = fromList [], tomlTableArrays = fromList []})+>>> toml == Right (TOML {tomlPairs = HashMap.fromList [("foo",AnyValue (Toml.Value.Integer 1)),("bar",AnyValue (Toml.Value.Text "ABC"))], tomlTables = HashMap.fromList [], tomlTableArrays = HashMap.fromList []})+True >>> fmap Toml.Type.Printer.pretty toml Right "bar = \"ABC\"\nfoo = 1\n" -}
src/Dhall/Toml/Utils.hs view
@@ -8,12 +8,12 @@ , textToDhall ) where -import Data.Text (Text)-import Dhall.Parser (Src)-import Data.Void (Void)+import Data.Text (Text)+import Data.Void (Void)+import Dhall.Parser (Src) -import qualified Data.Text.IO as Text.IO-import qualified Dhall.Core as Core+import qualified Data.Text.IO as Text.IO+import qualified Dhall.Core as Core import qualified Dhall.Import import qualified Dhall.Parser import qualified Dhall.TypeCheck
src/Dhall/TomlToDhall.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE GADTs #-}+{-# LANGUAGE GADTs #-} {-# LANGUAGE OverloadedLists #-} {-| This module exports the `tomlToDhall` function for translating a@@ -118,32 +118,32 @@ import Control.Exception (Exception, throwIO) import Data.Either (rights)-import Data.Foldable (toList, foldl')-import Data.List.NonEmpty (NonEmpty((:|)))+import Data.Foldable (foldl', toList)+import Data.List.NonEmpty (NonEmpty ((:|))) import Data.Text (Text) import Data.Void (Void)-import Dhall.Core (Expr, DhallDouble(..))-import Dhall.Toml.Utils (fileToDhall)+import Dhall.Core (DhallDouble (..), Expr) import Dhall.Parser (Src)+import Dhall.Toml.Utils (fileToDhall) import Toml.Parser (TomlParseError)-import Toml.Type.AnyValue (AnyValue(AnyValue))-import Toml.Type.Value (Value)-import Toml.Type.TOML (TOML)-import Toml.Type.Key (Piece(Piece), Key(Key))+import Toml.Type.AnyValue (AnyValue (AnyValue))+import Toml.Type.Key (Key (Key), Piece (Piece)) import Toml.Type.PrefixTree (PrefixTree)+import Toml.Type.TOML (TOML)+import Toml.Type.Value (Value) import qualified Data.HashMap.Strict as HashMap import qualified Data.Sequence as Seq import qualified Data.Text import qualified Data.Text.IO as Text.IO-import qualified Dhall.Map as Map import qualified Dhall.Core as Core+import qualified Dhall.Map as Map+import qualified System.Environment import qualified Toml.Parser-import qualified Toml.Type.TOML as Toml.TOML+import qualified Toml.Type.AnyValue as Toml.AnyValue import qualified Toml.Type.PrefixTree as Toml.PrefixTree+import qualified Toml.Type.TOML as Toml.TOML import qualified Toml.Type.Value as Value-import qualified Toml.Type.AnyValue as Toml.AnyValue-import qualified System.Environment data CompileError = Unimplemented String
tasty/Main.hs view
@@ -1,23 +1,23 @@ module Main where -import Control.Monad (unless)-import Data.Text (unpack)-import Data.Void (Void)-import Dhall.DhallToToml (dhallToToml)-import Dhall.TomlToDhall (tomlToDhall)-import Dhall.Toml.Utils (fileToDhall)-import Dhall.Parser (Src)-import Test.Tasty (TestTree)-import Test.Tasty.HUnit (HasCallStack, Assertion, assertFailure)-import Toml.Type.TOML (TOML, tomlDiff)-import Toml.Type.Printer (pretty)+import Control.Monad (unless)+import Data.Text (unpack)+import Data.Void (Void)+import Dhall.DhallToToml (dhallToToml)+import Dhall.Parser (Src)+import Dhall.Toml.Utils (fileToDhall)+import Dhall.TomlToDhall (tomlToDhall)+import Test.Tasty (TestTree)+import Test.Tasty.HUnit (Assertion, HasCallStack, assertFailure)+import Toml.Type.Printer (pretty)+import Toml.Type.TOML (TOML, tomlDiff) -import qualified Toml.Parser import qualified Data.Text.IO-import qualified Dhall.Core as Core+import qualified Dhall.Core as Core import qualified GHC.IO.Encoding import qualified Test.Tasty import qualified Test.Tasty.HUnit+import qualified Toml.Parser main :: IO () main = do