ngx-export 1.6.0 → 1.6.1
raw patch · 3 files changed
+32/−28 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- Changelog.md +4/−0
- NgxExport.hs +23/−24
- ngx-export.cabal +5/−4
Changelog.md view
@@ -1,3 +1,7 @@+### 1.6.1++- Upgraded Cabal version constraint.+ ### 1.6.0 - Implemented type and role disambiguation helper to prevent segfaults in
NgxExport.hs view
@@ -143,30 +143,29 @@ | IOYYSync | IOYYAsync -$(do- TyConI (DataD _ _ _ EXTRA_WILDCARD_BEFORE_CON tCs _) <-- reify ''NgxExport- TyConI (DataD _ _ _ EXTRA_WILDCARD_BEFORE_CON aCs _) <-- reify ''NgxExportDisambiguation- let tName = mkName "exportType"- aName = mkName "exportTypeAmbiguity"- tCons = map (\(NormalC con [(_, typ)]) -> (con, typ)) tCs- aCons = map (\(NormalC con []) -> con) aCs- sequence $- [sigD tName [t|NgxExport -> IO CInt|]- ,funD tName $- map (\(fst -> c, i) ->- clause [conP c [wildP]] (normalB [|return i|]) []- ) (zip tCons [1 ..] :: [((Name, Type), Int)])- ,sigD aName [t|NgxExportDisambiguation -> IO CInt|]- ,funD aName $- map (\(c, i) ->- clause [conP c []] (normalB [|return i|]) []- ) (zip aCons [0 ..] :: [(Name, Int)])- ]- ++- map (\(c, t) -> tySynD (mkName $ nameBase c) [] $ return t) tCons- )+do+ TyConI (DataD _ _ _ EXTRA_WILDCARD_BEFORE_CON tCs _) <-+ reify ''NgxExport+ TyConI (DataD _ _ _ EXTRA_WILDCARD_BEFORE_CON aCs _) <-+ reify ''NgxExportDisambiguation+ let tName = mkName "exportType"+ aName = mkName "exportTypeAmbiguity"+ tCons = map (\(NormalC con [(_, typ)]) -> (con, typ)) tCs+ aCons = map (\(NormalC con []) -> con) aCs+ sequence $+ [sigD tName [t|NgxExport -> IO CInt|]+ ,funD tName $+ map (\(fst -> c, i) ->+ clause [conP c [wildP]] (normalB [|return i|]) []+ ) (zip tCons [1 ..] :: [((Name, Type), Int)])+ ,sigD aName [t|NgxExportDisambiguation -> IO CInt|]+ ,funD aName $+ map (\(c, i) ->+ clause [conP c []] (normalB [|return i|]) []+ ) (zip aCons [0 ..] :: [(Name, Int)])+ ]+ +++ map (\(c, t) -> tySynD (mkName $ nameBase c) [] $ return t) tCons ngxExport' :: (Name -> Q Exp) -> Name -> Name -> Name -> Q Type -> Name -> Q [Dec]
ngx-export.cabal view
@@ -1,8 +1,8 @@ name: ngx-export-version: 1.6.0+version: 1.6.1 synopsis: Helper module for Nginx haskell module description: Helper module for- <http://github.com/lyokha/nginx-haskell-module Nginx haskell module>+ <http://github.com/lyokha/nginx-haskell-module Nginx haskell module>. homepage: http://github.com/lyokha/nginx-haskell-module license: BSD3 license-file: LICENSE@@ -13,9 +13,10 @@ copyright: 2016-2018 Alexey Radkov category: Network build-type: Simple-cabal-version: >= 1.8+cabal-version: 1.20 library+ default-language: Haskell2010 build-depends: base >= 4.8 && < 5 , template-haskell , bytestring >= 0.10.0.0@@ -27,7 +28,7 @@ exposed-modules: NgxExport other-modules: Paths_ngx_export- extensions: CPP+ default-extensions: CPP ghc-options: -Wall if impl(ghc < 8.0)