packages feed

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 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