floskell 0.10.1 → 0.10.2
raw patch · 4 files changed
+38/−12 lines, 4 filesdep ~basedep ~ghc-primdep ~haskell-src-extsPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, ghc-prim, haskell-src-exts, optparse-applicative
API changes (from Hackage documentation)
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.AlignConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.Config
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.DeclarationConstruct
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.GroupConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.ImportsGroup
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.ImportsGroupOrder
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.Indent
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.IndentConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.Layout
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.LayoutConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.LayoutContext
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.OpConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.OptionConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.PenaltyConfig
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.SortImportsRule
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.Whitespace
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON Floskell.Config.WsLoc
- Floskell.Config: instance Data.Aeson.Types.Class.FromJSON a => Data.Aeson.Types.Class.FromJSON (Floskell.Config.ConfigMap a)
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.AlignConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.Config
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.DeclarationConstruct
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.GroupConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.ImportsGroup
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.ImportsGroupOrder
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.Indent
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.IndentConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.Layout
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.LayoutConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.LayoutContext
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.OpConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.OptionConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.PenaltyConfig
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.SortImportsRule
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.Whitespace
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON Floskell.Config.WsLoc
- Floskell.Config: instance Data.Aeson.Types.Class.ToJSON a => Data.Aeson.Types.Class.ToJSON (Floskell.Config.ConfigMap a)
- Floskell.ConfigFile: instance Data.Aeson.Types.Class.FromJSON Floskell.ConfigFile.AppConfig
- Floskell.ConfigFile: instance Data.Aeson.Types.Class.ToJSON Floskell.ConfigFile.AppConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.AlignConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.Config
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.DeclarationConstruct
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.GroupConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.ImportsGroup
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.ImportsGroupOrder
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.Indent
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.IndentConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.Layout
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.LayoutConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.LayoutContext
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.OpConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.OptionConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.PenaltyConfig
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.SortImportsRule
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.Whitespace
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.Config.WsLoc
+ Floskell.Config: instance Data.Aeson.Types.FromJSON.FromJSON a => Data.Aeson.Types.FromJSON.FromJSON (Floskell.Config.ConfigMap a)
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.AlignConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.Config
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.DeclarationConstruct
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.GroupConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.ImportsGroup
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.ImportsGroupOrder
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.Indent
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.IndentConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.Layout
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.LayoutConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.LayoutContext
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.OpConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.OptionConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.PenaltyConfig
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.SortImportsRule
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.Whitespace
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.Config.WsLoc
+ Floskell.Config: instance Data.Aeson.Types.ToJSON.ToJSON a => Data.Aeson.Types.ToJSON.ToJSON (Floskell.Config.ConfigMap a)
+ Floskell.ConfigFile: instance Data.Aeson.Types.FromJSON.FromJSON Floskell.ConfigFile.AppConfig
+ Floskell.ConfigFile: instance Data.Aeson.Types.ToJSON.ToJSON Floskell.ConfigFile.AppConfig
Files
- CHANGELOG.md +6/−0
- floskell.cabal +10/−10
- src/Floskell/Pretty.hs +20/−0
- stack.yaml +2/−2
CHANGELOG.md view
@@ -1,3 +1,9 @@+# Floskell 0.10.2 (2019-11-11)++* Updated to haskell-src-exts-1.21.0, with support for Template+ Haskell typed splices and quotations+* Compatible with GHC-8.8.1+ # Floskell 0.10.1 (2019-05-25) * Fix for broken off-side rule with multi-line lists
floskell.cabal view
@@ -1,5 +1,5 @@ name: floskell-version: 0.10.1+version: 0.10.2 synopsis: A flexible Haskell source code pretty printer description: A flexible Haskell source code pretty printer. .@@ -42,7 +42,7 @@ Floskell.Printers Floskell.Styles Floskell.Types- build-depends: base >=4.9 && <4.13+ build-depends: base >=4.9 && <4.14 , aeson >=0.11.3.0 && <1.5 , attoparsec >=0.13.1.0 && <0.14 , bytestring >=0.10.8.1 && <0.11@@ -50,7 +50,7 @@ , data-default >=0.7.1.1 && <0.8 , directory >=1.2.6.2 && <1.4 , filepath >=1.4.1.0 && <1.5- , haskell-src-exts >= 1.19 && <1.22+ , haskell-src-exts >= 1.19 && <1.23 , monad-dijkstra >=0.1.1 && <0.2 , mtl >=2.2.1 && <2.3 , text >=1.2.2.2 && <1.3@@ -62,14 +62,14 @@ hs-source-dirs: src/main ghc-options: -Wall -Wno-missing-home-modules -optP-Wno-nonportable-include-path main-is: Main.hs- build-depends: base >=4.9 && <4.13+ build-depends: base >=4.9 && <4.14 , floskell , aeson-pretty >=0.8.2 && <0.9 , bytestring >=0.10.8.1 && <0.11 , directory >=1.2.6.2 && <1.4 , ghc-prim >=0.5.0.0 && <0.6- , haskell-src-exts >= 1.19 && <1.22- , optparse-applicative >=0.12.1.0 && <0.15+ , haskell-src-exts >= 1.19 && <1.23+ , optparse-applicative >=0.12.1.0 && <0.16 , text >=1.2.2.2 && <1.3 test-suite floskell-test@@ -78,12 +78,12 @@ ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N main-is: Test.hs other-modules: Markdone- build-depends: base >=4.9 && <4.13+ build-depends: base >=4.9 && <4.14 , floskell , bytestring >=0.10.8.1 && <0.11 , deepseq >=1.4.2.0 && <1.5 , exceptions >=0.8.3 && <0.12- , haskell-src-exts >= 1.19 && <1.22+ , haskell-src-exts >= 1.19 && <1.23 , hspec >=2.2.4 && <2.8 , text >=1.2.2.2 && <1.3 , utf8-string >=1.0.1.1 && <1.1@@ -94,13 +94,13 @@ ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N main-is: Benchmark.hs other-modules: Markdone- build-depends: base >=4.9 && <4.13+ build-depends: base >=4.9 && <4.14 , floskell , bytestring >=0.10.8.1 && <0.11 , criterion >=1.1.1.0 && <1.6 , deepseq >=1.4.2.0 && <1.5 , exceptions >=0.8.3 && <0.11 , ghc-prim >=0.5.0.0 && <0.6- , haskell-src-exts >= 1.19 && < 1.22+ , haskell-src-exts >= 1.19 && < 1.23 , text >=1.2.2.2 && <1.3 , utf8-string >=1.0.1.1 && <1.1
src/Floskell/Pretty.hs view
@@ -1331,7 +1331,13 @@ operator Declaration "->" inter space $ map pretty names' +#if MIN_VERSION_haskell_src_exts(1,22,0) instance Pretty Asst where+ prettyPrint (TypeA _ ty) = pretty ty+ prettyPrint (IParam _ ipname ty) = prettyTypesig Declaration [ ipname ] ty+ prettyPrint (ParenA _ asst) = parens $ pretty asst+#else+instance Pretty Asst where prettyPrint (ClassA _ qname types) = do pretty qname space@@ -1362,6 +1368,7 @@ prettyPrint (WildCardA _ mname) = do write "_" mapM_ pretty mname+#endif instance Pretty Type where prettyPrint t = do@@ -2129,6 +2136,10 @@ instance Pretty Bracket where prettyPrint (ExpBracket _ expr) = group Expression "[|" "|]" $ pretty expr +#if MIN_VERSION_haskell_src_exts(1,22,0)+ prettyPrint (TExpBracket _ expr) = group Expression "[||" "||]" $ pretty expr+#endif+ prettyPrint (PatBracket _ pat) = group Expression "[p|" "|]" $ pretty pat prettyPrint (TypeBracket _ ty) = group Expression "[t|" "|]" $ pretty ty@@ -2142,6 +2153,15 @@ string str prettyPrint (ParenSplice _ expr) = group Expression "$(" ")" $ pretty expr++#if MIN_VERSION_haskell_src_exts(1,22,0)+ prettyPrint (TIdSplice _ str) = do+ write "$$"+ string str++ prettyPrint (TParenSplice _ expr) = group Expression "$$(" ")" $ pretty expr++#endif instance Pretty ModulePragma where prettyPrint (LanguagePragma _ names) =
stack.yaml view
@@ -1,6 +1,6 @@-resolver: lts-13.22+resolver: lts-14.14 packages: - '.' extra-deps:-- haskell-src-exts-1.21.0+- haskell-src-exts-1.22.0 - monad-dijkstra-0.1.1.2