PyF 0.8.0.0 → 0.8.0.1
raw patch · 52 files changed
+539/−12 lines, 52 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- ChangeLog.md +4/−0
- PyF.cabal +4/−4
- test/SpecFail.hs +2/−5
- test/SpecOverloaded.hs +4/−3
- test/failureCases/bug18.hs +33/−0
- test/golden/-4342647300489545826.golden +16/−0
- test/golden/-559153311506421916.golden +12/−0
- test/golden/-608734388740815869.golden +12/−0
- test/golden/-7029437438637288708.golden +9/−0
- test/golden/-7030000414293697510.golden +9/−0
- test/golden/-7033096789363194467.golden +9/−0
- test/golden/-8862740133902269087.golden +9/−0
- test/golden/-8863303109558677885.golden +9/−0
- test/golden/-8865836508904655568.golden +9/−0
- test/golden/-8866962460351694124.golden +9/−0
- test/golden/-8868932879679082057.golden +9/−0
- test/golden/-8877940512730742825.golden +9/−0
- test/golden/-955223088025738585.golden +9/−0
- test/golden/-972393886248710740.golden +9/−0
- test/golden/-972675374043359879.golden +9/−0
- test/golden/-973238354129060121.golden +9/−0
- test/golden/-981683007095020647.golden +9/−0
- test/golden/-982245987180720889.golden +9/−0
- test/golden/1039339902865820990.golden +12/−0
- test/golden/1179194556644623826.golden +12/−0
- test/golden/1398692563425247859.golden +16/−0
- test/golden/1640634027373935614.golden +9/−0
- test/golden/2157463209259933381.golden +12/−0
- test/golden/2897849520519503487.golden +18/−0
- test/golden/3089090107905559368.golden +12/−0
- test/golden/3420956872570442319.golden +12/−0
- test/golden/5755283065522441917.golden +15/−0
- test/golden/6036259654057340493.golden +9/−0
- test/golden/6038793049108247706.golden +9/−0
- test/golden/6039356029193947908.golden +9/−0
- test/golden/6045267287109001261.golden +9/−0
- test/golden/6046956218641740019.golden +9/−0
- test/golden/6047800682159908474.golden +9/−0
- test/golden/6048082170088778591.golden +9/−0
- test/golden/6048363662245608676.golden +9/−0
- test/golden/6048645150040257841.golden +9/−0
- test/golden/6050052589349056034.golden +9/−0
- test/golden/6066378924053859748.golden +9/−0
- test/golden/6097241206483808698.golden +13/−0
- test/golden/6623238490461560947.golden +5/−0
- test/golden/6874382203897971272.golden +13/−0
- test/golden/7717561110821329704.golden +12/−0
- test/golden/7718968550063017457.golden +12/−0
- test/golden/7719531530148717643.golden +12/−0
- test/golden/7720657481595756207.golden +12/−0
- test/golden/8270079288213682032.golden +9/−0
- test/golden/85163210393859768.golden +12/−0
ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for PyF +## 0.8.0.0 -- 2019-08-27++- Stack support+ ## 0.8.0.0 -- 2019-08-06 - `f` (and `fWithDelimiters`) were renamed `fmt` (`fmtWithDelimiters`). `f` was causing too much shadowing in any codebase.
PyF.cabal view
@@ -1,15 +1,15 @@+cabal-version: 2.4 name: PyF-version: 0.8.0.0+version: 0.8.0.1 synopsis: Quasiquotations for a python like interpolated string formater description: Quasiquotations for a python like interpolated string formater.-license: BSD3+license: BSD-3-Clause license-file: LICENSE author: Guillaume Bouchard maintainer: guillaum.bouchard@gmail.com category: Text build-type: Simple-extra-source-files: ChangeLog.md Readme.md-cabal-version: >=1.10+extra-source-files: ChangeLog.md Readme.md test/failureCases/*.hs test/golden/*.golden library exposed-modules:
test/SpecFail.hs view
@@ -19,7 +19,6 @@ import System.FilePath import Control.Exception import Control.DeepSeq-import System.Directory -- * Check compilation with external GHC (this is usefull to test compilation failure) @@ -73,10 +72,8 @@ golden :: HasCallStack => String -> String -> IO () golden name output = do let- goldenFile = ".golden" </> name </> "golden"- actualFile = ".golden" </> name </> "actual"-- createDirectoryIfMissing True (".golden" </> name)+ goldenFile = "test/golden" </> (name <> ".golden")+ actualFile = "test/golden" </> (name <> ".actual") -- It can fail if the golden file does not exists goldenContentE :: Either SomeException String <- try $ readFile goldenFile
test/SpecOverloaded.hs view
@@ -13,10 +13,11 @@ spec :: Spec spec = do+ let ten = 10 :: Int describe "Test formatting with different types" $ do it "String" $ do- [fmt|hello {10:d}|] `shouldBe` ("hello 10" :: String)+ [fmt|hello {ten:d}|] `shouldBe` ("hello 10" :: String) it "Text" $ do- [fmt|hello {10:d}|] `shouldBe` ("hello 10" :: Text)+ [fmt|hello {ten:d}|] `shouldBe` ("hello 10" :: Text) it "ByteString" $ do- [fmt|hello {10:d}|] `shouldBe` ("hello 10" :: ByteString)+ [fmt|hello {ten:d}|] `shouldBe` ("hello 10" :: ByteString)
+ test/failureCases/bug18.hs view
@@ -0,0 +1,33 @@+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS -Wall -Werror #-}++{-+ This test actually fails with -Wall because fieldA is not+ initialized. PyF is doing nothing wrong. But bug #18 shows that GHC+ error message leaks a lot of the PyF generated code which is not+ beautiful.++ This tests helps tracking the conciseness of the PyF generated code.+-}++import qualified Data.Text as T+import PyF++data Foo =+ Foo+ { fieldA :: ()+ , fieldB :: T.Text+ }+ deriving (Show)++yolo :: Foo+yolo =+ Foo+ { fieldB = [fmt|hello what's up {x}|]+ }+ where+ x :: T.Text+ x = T.pack "hi"++main = print yolo
+ test/golden/-4342647300489545826.golden view
@@ -0,0 +1,16 @@++INITIALPATH:7:22: error:+ • INITIALPATH:11:10:+ |+11 | in 1 + - / lalalal}|]+ | ^+Parse error: /++ • In the quasi-quotation: [fmt|hello+ {+let a = 5+ b = 10+in 1 + - / lalalal}|]+ |+7 | main = putStrLn [fmt|hello+ | ^^^^^...
+ test/golden/-559153311506421916.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:33:+ |+7 | main = putStrLn [fmt|{hello:=100s}|]+ | ^+String type is incompatible with inside padding (=).++ • In the quasi-quotation: [fmt|{hello:=100s}|]+ |+7 | main = putStrLn [fmt|{hello:=100s}|]+ | ^^^^^^^^^^^^^^^
+ test/golden/-608734388740815869.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:30:+ |+7 | main = putStrLn [fmt|{hello: s}|]+ | ^+Type incompatible with sign field ( ), use any of {'b', 'd', 'e', 'E', 'f', 'F', 'g', 'G', 'n', 'o', 'x', 'X', '%'} or remove the sign field.++ • In the quasi-quotation: [fmt|{hello: s}|]+ |+7 | main = putStrLn [fmt|{hello: s}|]+ | ^^^^^^^^^^^^
+ test/golden/-7029437438637288708.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Bool) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) True)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) True)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) True)+ |+7 | main = putStrLn [fmt|{True:f}|]+ | ^^^^^^^^^^
+ test/golden/-7030000414293697510.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Bool) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) True)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) True)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) True)+ |+7 | main = putStrLn [fmt|{True:d}|]+ | ^^^^^^^^^^
+ test/golden/-7033096789363194467.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (PyFToString Bool) arising from a use of ‘pyfToString’+ • In the second argument of ‘(.)’, namely ‘pyfToString’+ In the expression: (PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString+ In the first argument of ‘putStrLn’, namely ‘(((PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString) True)’+ |+7 | main = putStrLn [fmt|{True:s}|]+ | ^^^^^^^^^^
+ test/golden/-8862740133902269087.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Float) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) number)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) number)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) number)+ |+7 | main = putStrLn [fmt|{number:b}|]+ | ^^^^^^^^^^^^
+ test/golden/-8863303109558677885.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Float) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) number)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) number)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) number)+ |+7 | main = putStrLn [fmt|{number:d}|]+ | ^^^^^^^^^^^^
+ test/golden/-8865836508904655568.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Float) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) number)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) number)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) number)+ |+7 | main = putStrLn [fmt|{number:o}|]+ | ^^^^^^^^^^^^
+ test/golden/-8866962460351694124.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (PyFToString Float) arising from a use of ‘pyfToString’+ • In the second argument of ‘(.)’, namely ‘pyfToString’+ In the expression: (PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString+ In the first argument of ‘putStrLn’, namely ‘(((PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString) number)’+ |+7 | main = putStrLn [fmt|{number:s}|]+ | ^^^^^^^^^^^^
+ test/golden/-8868932879679082057.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Float) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) number)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) number)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) number)+ |+7 | main = putStrLn [fmt|{number:x}|]+ | ^^^^^^^^^^^^
+ test/golden/-8877940512730742825.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral Float) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) number)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) number)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) number)+ |+7 | main = putStrLn [fmt|{number:X}|]+ | ^^^^^^^^^^^^
+ test/golden/-955223088025738585.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:%}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/-972393886248710740.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:f}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/-972675374043359879.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:g}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/-973238354129060121.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:e}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/-981683007095020647.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:G}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/-982245987180720889.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat Int) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) (truncate' number))+ |+7 | main = putStrLn [fmt|{truncate' number:E}|]+ | ^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/1039339902865820990.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:30:+ |+7 | main = putStrLn [fmt|{hello:+s}|]+ | ^+Type incompatible with sign field (+), use any of {'b', 'd', 'e', 'E', 'f', 'F', 'g', 'G', 'n', 'o', 'x', 'X', '%'} or remove the sign field.++ • In the quasi-quotation: [fmt|{hello:+s}|]+ |+7 | main = putStrLn [fmt|{hello:+s}|]+ | ^^^^^^^^^^^^
+ test/golden/1179194556644623826.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:30:+ |+7 | main = putStrLn [fmt|{hello:_s}|]+ | ^+String type is incompatible with grouping (_ or ,).++ • In the quasi-quotation: [fmt|{hello:_s}|]+ |+7 | main = putStrLn [fmt|{hello:_s}|]+ | ^^^^^^^^^^^^
+ test/golden/1398692563425247859.golden view
@@ -0,0 +1,16 @@++INITIALPATH:7:22: error:+ • INITIALPATH:10:5:+ |+10 | {pi:l}|]+ | ^+unexpected 'l'+expecting '#', '%', '+', '-', '.', '0', 'E', 'F', 'G', 'X', 'b', 'c', 'd', 'e', 'f', 'g', 'n', 'o', 's', 'x', '}', integer, or space++ • In the quasi-quotation: [fmt|hello+++{pi:l}|]+ |+7 | main = putStrLn [fmt|hello+ | ^^^^^...
+ test/golden/1640634027373935614.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (PyF.Internal.QQ.FormatAny2 (PyFClassify Bool) Bool 'PyF.Formatters.AlignAll) arising from a use of ‘PyF.Internal.QQ.formatAny’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) PyF.Internal.QQ.PaddingDefaultK) Nothing) Nothing) True)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) PyF.Internal.QQ.PaddingDefaultK) Nothing) Nothing) True)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) PyF.Internal.QQ.PaddingDefaultK) Nothing) Nothing) True)+ |+7 | main = putStrLn [fmt|{True}|]+ | ^^^^^^^^
+ test/golden/2157463209259933381.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:25:+ |+7 | main = putStrLn [fmt|foo\Pbar|]+ | ^+lexical error in literal section++ • In the quasi-quotation: [fmt|foo\Pbar|]+ |+7 | main = putStrLn [fmt|foo\Pbar|]+ | ^^^^^^^^^^
+ test/golden/2897849520519503487.golden view
@@ -0,0 +1,18 @@++INITIALPATH:26:3: error: [-Wmissing-fields, -Werror=missing-fields]+ • Fields of ‘Foo’ not initialised: fieldA+ • In the expression: Foo {fieldB = (Data.String.fromString ("hello what's up " <> ((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) PyF.Internal.QQ.PaddingDefaultK) Nothing) Nothing) x))}+ In an equation for ‘yolo’:+ yolo+ = Foo {fieldB = (Data.String.fromString ("hello what's up " <> ((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) PyF.Internal.QQ.PaddingDefaultK) Nothing) Nothing) x))}+ where+ x :: T.Text+ x = T.pack "hi"+ |+26 | Foo+ | ^^^...++INITIALPATH:33:1: error: [-Wmissing-signatures, -Werror=missing-signatures] Top-level binding with no type signature: main :: IO ()+ |+33 | main = print yolo+ | ^^^^
+ test/golden/3089090107905559368.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:30:+ |+7 | main = putStrLn [fmt|{hello:-s}|]+ | ^+Type incompatible with sign field (-), use any of {'b', 'd', 'e', 'E', 'f', 'F', 'g', 'G', 'n', 'o', 'x', 'X', '%'} or remove the sign field.++ • In the quasi-quotation: [fmt|{hello:-s}|]+ |+7 | main = putStrLn [fmt|{hello:-s}|]+ | ^^^^^^^^^^^^
+ test/golden/3420956872570442319.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:30:+ |+7 | main = putStrLn [fmt|{hello:,s}|]+ | ^+String type is incompatible with grouping (_ or ,).++ • In the quasi-quotation: [fmt|{hello:,s}|]+ |+7 | main = putStrLn [fmt|{hello:,s}|]+ | ^^^^^^^^^^^^
+ test/golden/5755283065522441917.golden view
@@ -0,0 +1,15 @@++INITIALPATH:7:22: error:+ • Ambiguous type variable ‘t0’ arising from a use of ‘pyfToString’+ prevents the constraint ‘(PyFToString t0)’ from being solved.+ Probable fix: use a type annotation to specify what ‘t0’ should be.+ These potential instances exist:+ instance [safe] PyFToString String -- Defined in ‘PyF.Class’+ ...plus two instances involving out-of-scope types+ (use -fprint-potential-instances to see them all)+ • In the second argument of ‘(.)’, namely ‘pyfToString’+ In the expression: (PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString+ In the first argument of ‘putStrLn’, namely ‘(((PyF.Formatters.formatString (PyF.Internal.QQ.newPaddingKForString PyF.Internal.QQ.PaddingDefaultK)) Nothing . pyfToString) (truncate number))’+ |+7 | main = putStrLn [fmt|{truncate number:s}|]+ | ^^^^^^^^^^^^^^^^^^^^^
+ test/golden/6036259654057340493.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral (PyF.Formatters.Upper PyF.Formatters.Hexa)) PyF.Formatters.Minus) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:X}|]+ | ^^^^^^^^^^^
+ test/golden/6038793049108247706.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Generic)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:G}|]+ | ^^^^^^^^^^^
+ test/golden/6039356029193947908.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional (PyF.Formatters.Upper PyF.Formatters.Exponent)) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:E}|]+ | ^^^^^^^^^^^
+ test/golden/6045267287109001261.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Hexa) PyF.Formatters.Minus) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:x}|]+ | ^^^^^^^^^^^
+ test/golden/6046956218641740019.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Binary) PyF.Formatters.Minus) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:b}|]+ | ^^^^^^^^^^^
+ test/golden/6047800682159908474.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Generic) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:g}|]+ | ^^^^^^^^^^^
+ test/golden/6048082170088778591.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Fixed) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:f}|]+ | ^^^^^^^^^^^
+ test/golden/6048363662245608676.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Exponent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:e}|]+ | ^^^^^^^^^^^
+ test/golden/6048645150040257841.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Decimal) PyF.Formatters.Minus) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:d}|]+ | ^^^^^^^^^^^
+ test/golden/6050052589349056034.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (Integral [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyIntegral’+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAnyIntegral PyF.Formatters.Octal) PyF.Formatters.Minus) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:o}|]+ | ^^^^^^^^^^^
+ test/golden/6066378924053859748.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • No instance for (RealFloat [Char]) arising from a use of ‘PyF.Internal.QQ.formatAnyFractional’+ • In the first argument of ‘putStrLn’, namely ‘((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)’+ In the expression: putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ In an equation for ‘main’: main = putStrLn ((((((PyF.Internal.QQ.formatAnyFractional PyF.Formatters.Percent) PyF.Formatters.Minus) Nothing) Nothing) (Just 6)) hello)+ |+7 | main = putStrLn [fmt|{hello:%}|]+ | ^^^^^^^^^^^
+ test/golden/6097241206483808698.golden view
@@ -0,0 +1,13 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:28:+ |+7 | main = putStrLn [fmt|hello } world|]+ | ^+unexpected '}'+expecting "{{", "}}", '{', or end of input++ • In the quasi-quotation: [fmt|hello } world|]+ |+7 | main = putStrLn [fmt|hello } world|]+ | ^^^^^^^^^^^^^^^
+ test/golden/6623238490461560947.golden view
@@ -0,0 +1,5 @@++INITIALPATH:7:22: error: Variable not in scope: b0001+ |+7 | main = putStrLn [fmt|{0b0001}|]+ | ^^^^^^^^^^
+ test/golden/6874382203897971272.golden view
@@ -0,0 +1,13 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:35:+ |+7 | main = putStrLn [fmt|hello { world|]+ | ^+unexpected end of input+expecting ':' or '}'++ • In the quasi-quotation: [fmt|hello { world|]+ |+7 | main = putStrLn [fmt|hello { world|]+ | ^^^^^^^^^^^^^^^
+ test/golden/7717561110821329704.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:41:+ |+7 | main = putStrLn [fmt|{truncate number:.3o}|]+ | ^+Type incompatible with precision (.3), use any of {'e', 'E', 'f', 'F', 'g', 'G', 'n', 's', '%'} or remove the precision field.++ • In the quasi-quotation: [fmt|{truncate number:.3o}|]+ |+7 | main = putStrLn [fmt|{truncate number:.3o}|]+ | ^^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/7718968550063017457.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:41:+ |+7 | main = putStrLn [fmt|{truncate number:.3b}|]+ | ^+Type incompatible with precision (.3), use any of {'e', 'E', 'f', 'F', 'g', 'G', 'n', 's', '%'} or remove the precision field.++ • In the quasi-quotation: [fmt|{truncate number:.3b}|]+ |+7 | main = putStrLn [fmt|{truncate number:.3b}|]+ | ^^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/7719531530148717643.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:41:+ |+7 | main = putStrLn [fmt|{truncate number:.3d}|]+ | ^+Type incompatible with precision (.3), use any of {'e', 'E', 'f', 'F', 'g', 'G', 'n', 's', '%'} or remove the precision field.++ • In the quasi-quotation: [fmt|{truncate number:.3d}|]+ |+7 | main = putStrLn [fmt|{truncate number:.3d}|]+ | ^^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/7720657481595756207.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:41:+ |+7 | main = putStrLn [fmt|{truncate number:.3x}|]+ | ^+Type incompatible with precision (.3), use any of {'e', 'E', 'f', 'F', 'g', 'G', 'n', 's', '%'} or remove the precision field.++ • In the quasi-quotation: [fmt|{truncate number:.3x}|]+ |+7 | main = putStrLn [fmt|{truncate number:.3x}|]+ | ^^^^^^^^^^^^^^^^^^^^^^^
+ test/golden/8270079288213682032.golden view
@@ -0,0 +1,9 @@++INITIALPATH:7:22: error:+ • String type is incompatible with inside padding (=).+ • In the first argument of ‘putStrLn’, namely ‘(((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) ((PyF.Internal.QQ.PaddingK 100) (Just (Nothing, PyF.Formatters.AlignInside)))) Nothing) Nothing) hello)’+ In the expression: putStrLn (((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) ((PyF.Internal.QQ.PaddingK 100) (Just (Nothing, PyF.Formatters.AlignInside)))) Nothing) Nothing) hello)+ In an equation for ‘main’: main = putStrLn (((((PyF.Internal.QQ.formatAny PyF.Formatters.Minus) ((PyF.Internal.QQ.PaddingK 100) (Just (Nothing, PyF.Formatters.AlignInside)))) Nothing) Nothing) hello)+ |+7 | main = putStrLn [fmt|{hello:=100}|]+ | ^^^^^^^^^^^^^^
+ test/golden/85163210393859768.golden view
@@ -0,0 +1,12 @@++INITIALPATH:7:22: error:+ • INITIALPATH:7:29:+ |+7 | main = putStrLn [fmt|{1 + - / lalalal}|]+ | ^+Parse error: /++ • In the quasi-quotation: [fmt|{1 + - / lalalal}|]+ |+7 | main = putStrLn [fmt|{1 + - / lalalal}|]+ | ^^^^^^^^^^^^^^^^^^^