call-stack 0.2.0 → 0.3.0
raw patch · 5 files changed
+32/−20 lines, 5 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
Files
- LICENSE +1/−1
- call-stack.cabal +4/−6
- src/Data/CallStack.hs +14/−6
- test/Data/CallStackSpec.hs +4/−4
- test/Example.hs +9/−3
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2016 Simon Hengel <sol@typeful.net>+Copyright (c) 2016-2021 Simon Hengel <sol@typeful.net> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal
call-stack.cabal view
@@ -1,13 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.31.0.+-- This file has been generated from package.yaml by hpack version 0.34.3. -- -- see: https://github.com/sol/hpack------ hash: ead73de1f27ca13dbc12434ae8a06a86ce7c6fc59801f6807140632fc1e44df8 name: call-stack-version: 0.2.0+version: 0.3.0 synopsis: Use GHC call-stacks in a backward compatible way category: Data homepage: https://github.com/sol/call-stack#readme@@ -26,7 +24,7 @@ src ghc-options: -Wall build-depends:- base >=4.5.0.0 && <5+ base ==4.* exposed-modules: Data.CallStack other-modules:@@ -41,7 +39,7 @@ test ghc-options: -Wall build-depends:- base >=4.5.0.0 && <5+ base ==4.* , call-stack , nanospec other-modules:
src/Data/CallStack.hs view
@@ -1,11 +1,19 @@ {-# LANGUAGE CPP #-}-{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE ImplicitParams #-} +#if __GLASGOW_HASKELL__ >= 704+{-# LANGUAGE ConstraintKinds #-}+#define HCS HasCallStack =>+#else+#define HCS+#endif+ module Data.CallStack (- HasCallStack-, CallStack+#if __GLASGOW_HASKELL__ >= 704+ HasCallStack,+#endif+ CallStack , SrcLoc(..) , callStack , callSite@@ -22,14 +30,14 @@ import GHC.Stack (HasCallStack) #elif MIN_VERSION_base(4,8,1) type HasCallStack = (?callStack :: GHC.CallStack)-#else+#elif __GLASGOW_HASKELL__ >= 704 import GHC.Exts (Constraint) type HasCallStack = (() :: Constraint) #endif type CallStack = [(String, SrcLoc)] -callStack :: HasCallStack => CallStack+callStack :: HCS CallStack #if MIN_VERSION_base(4,9,0) callStack = drop 1 $ GHC.getCallStack GHC.callStack #elif MIN_VERSION_base(4,8,1)@@ -38,5 +46,5 @@ callStack = [] #endif -callSite :: HasCallStack => Maybe (String, SrcLoc)+callSite :: HCS Maybe (String, SrcLoc) callSite = listToMaybe (reverse callStack)
test/Data/CallStackSpec.hs view
@@ -16,9 +16,9 @@ srcLocPackage = "main" , srcLocModule = "Example" , srcLocFile = "test/Example.hs"- , srcLocStartLine = 11+ , srcLocStartLine = 17 , srcLocStartCol = 7- , srcLocEndLine = 11+ , srcLocEndLine = 17 , srcLocEndCol = 10 } )@@ -27,9 +27,9 @@ srcLocPackage = "main" , srcLocModule = "Example" , srcLocFile = "test/Example.hs"- , srcLocStartLine = 8+ , srcLocStartLine = 14 , srcLocStartCol = 8- , srcLocEndLine = 8+ , srcLocEndLine = 14 , srcLocEndCol = 11 } )
test/Example.hs view
@@ -1,5 +1,11 @@-{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE CPP, FlexibleContexts #-}++#if __GLASGOW_HASKELL__ >= 704 {-# LANGUAGE ConstraintKinds #-}+#define HCS HasCallStack =>+#else+#define HCS+#endif module Example where import Data.CallStack@@ -7,8 +13,8 @@ test :: CallStack test = foo -foo :: HasCallStack => CallStack+foo :: HCS CallStack foo = bar -bar :: HasCallStack => CallStack+bar :: HCS CallStack bar = callStack