git.iko.soy/typeable/haskell-stack-trace-plugin
on master help sign in
Merge pull request #4 from waddlaw/tweak3
0f358f0Shinya Yamaguchi
CHANGELOG.md+7−1
@@ -1,5 +1,11 @@
1# Revision history for haskell-stack-trace-pugin
1# Revision history for haskell-stack-trace-pugin
2
2
3+## 0.1.1.0 -- 2020-01-18
4+
5+- Ergonomic improvements [#1](https://github.com/waddlaw/haskell-stack-trace-plugin/pull/1) (@khwarizmii)
6+- Add Integration test
7+- Add GitHub Action
8+
3## 0.1.0.0 -- 2018-12-07
9## 0.1.0.0 -- 2018-12-07
4
10
5−* First version. Released on an unsuspecting world.
11+- First version. Released on an unsuspecting world.
Readme.md+4−3
@@ -1,11 +1,12 @@
1# haskell-stack-trace-plugin
1# haskell-stack-trace-plugin
2
2
3+![](https://github.com/waddlaw/haskell-stack-trace-plugin/workflows/cabal/badge.svg)
3[![Hackage](https://img.shields.io/hackage/v/haskell-stack-trace-plugin.svg)](https://hackage.haskell.org/package/haskell-stack-trace-plugin)
4[![Hackage](https://img.shields.io/hackage/v/haskell-stack-trace-plugin.svg)](https://hackage.haskell.org/package/haskell-stack-trace-plugin)
4
5
5This plugin allow implicitly add `HasCallStack` class to every top-level function for all module. Hence, we can to get completely continuous call stack.
6This plugin allow implicitly add `HasCallStack` class to every top-level function for all module. Hence, we can to get completely continuous call stack.
6
7
7−1. (implicitly) Import [GHC.Stack](https://www.stackage.org/haddock/lts-12.21/base-4.11.1.0/GHC-Stack.html) for all modules.
8+1. (implicitly) Import [GHC.Stack](https://hackage.haskell.org/package/base-4.12.0.0/docs/GHC-Stack.html) for all modules.
8−2. Add [HasCallStack](https://www.stackage.org/haddock/lts-12.21/base-4.11.1.0/GHC-Stack.html#t:HasCallStack) constraint for all top-level functions.
9+2. Add [HasCallStack](https://hackage.haskell.org/package/base-4.12.0.0/docs/GHC-Stack.html#t:HasCallStack) constraint for all top-level functions.
9
10
10Requirement: (8.6 <= on GHC)
11Requirement: (8.6 <= on GHC)
11
12
@@ -102,4 +103,4 @@ CallStack (from HasCallStack):
102 main, called at example/Main.hs:6:1 in main:Main
103 main, called at example/Main.hs:6:1 in main:Main
103```
104```
104
105
105−Great!!!
106+Great!!!
haskell-stack-trace-plugin.cabal+54−53
@@ -1,77 +1,78 @@
1+cabal-version: 2.4
1−name: haskell-stack-trace-plugin
2+name: haskell-stack-trace-plugin
2−version: 0.1.0.1
3+version: 0.1.1.0
3−synopsis: haskell-stack-trace-plugin
4+synopsis: haskell-stack-trace-plugin
5+description:
4−description: This plugin allow implicitly add HasCallStack class to every top-level function for all module. Hence, we can to get completely continuous call stack.
6+ This plugin allow implicitly add HasCallStack class to every top-level function for all module. Hence, we can to get completely continuous call stack.
7+
5−homepage: https://github.com/waddlaw/haskell-stack-trace-plugin
8+homepage: https://github.com/waddlaw/haskell-stack-trace-plugin
9+bug-reports:
6−bug-reports: https://github.com/waddlaw/haskell-stack-trace-plugin/issues
10+ https://github.com/waddlaw/haskell-stack-trace-plugin/issues
11+
7−license: MIT
12+license: MIT
8−license-file: LICENSE
13+license-file: LICENSE
9−author: Shinya Yamaguchi
14+author: Shinya Yamaguchi
10−maintainer: ingronze@gmail.com
15+maintainer: ingronze@gmail.com
11−copyright: 2018-2020 Shinya Yamaguchi
16+copyright: 2018-2020 Shinya Yamaguchi
12−category: Compiler Plugin, Development, Debug
17+category: Compiler Plugin, Development, Debug
13−build-type: Simple
18+build-type: Simple
14−extra-source-files: CHANGELOG.md, Readme.md
19+extra-source-files:
15−cabal-version: >=1.10
20+ CHANGELOG.md
21+ Readme.md
22+
16−tested-with: GHC == 8.6.5
23+tested-with: GHC ==8.6.5
17
24
18source-repository head
25source-repository head
19 type: git
26 type: git
20 location: git://github.com/waddlaw/haskell-stack-trace-plugin
27 location: git://github.com/waddlaw/haskell-stack-trace-plugin
21
28
22flag dev
29flag dev
23− description: Turn on development settings.
30+ description: Turn on development settings.
24− manual: True
31+ manual: True
25− default: False
32+ default: False
26
33
27−library
34+common common-opts
28− hs-source-dirs: src
29− build-depends:
35+ build-depends: base ^>=4.12
30− base >=4.12 && <4.13,
36+ default-language: Haskell2010
31− ghc>=8.6.2 && <8.6.6
32
37
33− exposed-modules:
38+library
39+ import: common-opts
40+ hs-source-dirs: src
41+ build-depends: ghc ^>=8.6
34− StackTrace.Plugin
42+ exposed-modules: StackTrace.Plugin
35
43
36 if flag(dev)
44 if flag(dev)
37− ghc-options: -Wall -Werror -Wcompat
45+ ghc-options:
38− -- -Wincomplete-record-updates
39− -Wincomplete-uni-patterns
46+ -Wall -Werror -Wcompat -Wincomplete-uni-patterns
40− -Wnoncanonical-monad-instances
41− -Wnoncanonical-monadfail-instances
47+ -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
42− -Wno-missing-home-modules
48+ -Wno-missing-home-modules
49+
50+ -- -Wincomplete-record-updates
43 else
51 else
44− ghc-options: -O2 -Wall
52+ ghc-options: -O2 -Wall
45− default-language: Haskell2010
46
53
47test-suite test
54test-suite test
55+ import: common-opts
48 main-is: Spec.hs
56 main-is: Spec.hs
49 hs-source-dirs: test
57 hs-source-dirs: test
50 type: exitcode-stdio-1.0
58 type: exitcode-stdio-1.0
51 build-depends:
59 build-depends:
52− base >=4.12 && <4.13,
53− bytestring >= 0.10.8 && <0.11,
60+ , bytestring ^>=0.10
54− hspec >= 2.7 && <2.8,
61+ , hspec ^>=2.7
55− typed-process >= 0.2.6 && <0.2.9
62+ , typed-process ^>=0.2.6
56−
57− build-tool-depends:
58− hspec-discover:hspec-discover >= 2.7 && <2.8
59
63
64+ build-tool-depends: hspec-discover:hspec-discover ^>=2.7
60− other-modules: StackTrace.PluginSpec
65+ other-modules: StackTrace.PluginSpec
61
66
62 if flag(dev)
67 if flag(dev)
63− ghc-options: -Wall -Werror
68+ ghc-options: -Wall -Werror
64− else
65− ghc-options: -O2 -Wall
66
69
67− default-language: Haskell2010
70+ else
71+ ghc-options: -O2 -Wall
68
72
69executable example
73executable example
74+ import: common-opts
70− main-is: Main.hs
75+ main-is: Main.hs
71 hs-source-dirs: example
76 hs-source-dirs: example
72− default-language: Haskell2010
73− ghc-options:
74− -fplugin=StackTrace.Plugin
77+ ghc-options: -fplugin=StackTrace.Plugin
75− build-depends:
76− base >=4.12 && <4.13,
77− haskell-stack-trace-plugin
78+ build-depends: haskell-stack-trace-plugin