-
Notifications
You must be signed in to change notification settings - Fork 3
/
tracetree.cabal
114 lines (107 loc) · 4.83 KB
/
tracetree.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
name: tracetree
version: 0.1.0.1
synopsis: Visualize Haskell data structures as edge-labeled trees
description: The tracetree library can be used to conveniently write
Haskell data structures as trees represented as JSON
files. These JSON files can then be inspected with any
JSON viewer; the JSON viewer's functionality to collapse
part of the JSON tree can be particularly convenient when
exploring large objects.
.
Additionally, the ttrender executable can be used to render
these JSON trees as .svg or .png files, and provides
various command line flags for controlling the layout of
the tree (colour, orientation, hiding nodes, etc.).
.
The tracetree library and ttrender executable are
independent components; if you don't want to add the
dependency on tracetree to your project, you can just
generate the .JSON files directly in your code; the format
is not complicated (indeed, you can create them by hand
or post-process previously exported .JSON files).
license: BSD3
license-file: LICENSE
author: Edsko de Vries
maintainer: [email protected]
copyright: Copyright 2015 Well-Typed LLP
category: Development
build-type: Simple
-- extra-source-files:
cabal-version: >=1.10
extra-source-files:
ChangeLog.md
source-repository head
type: git
location: https://github.com/edsko/tracetree
flag ttrender
description: Build executable to render the trees (requires Cairo)
default: False
library
exposed-modules: Debug.Trace.Tree
Debug.Trace.Tree.Assoc
Debug.Trace.Tree.Edged
Debug.Trace.Tree.Generic
Debug.Trace.Tree.Rose
Debug.Trace.Tree.Simple
-- We need ghc 7.10 (using bidrectional pattern synonyms),
-- but I don't know how to specify that other through the version of base
build-depends: base >= 4.8 && < 5,
bifunctors >= 4.2 && < 5.7,
containers >= 0.5 && < 0.8,
json >= 0.9 && < 0.11,
mtl >= 2.2 && < 2.4,
transformers >= 0.4 && < 0.7
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
default-extensions: DefaultSignatures
ExistentialQuantification
FlexibleContexts
FlexibleInstances
MultiParamTypeClasses
NoMonomorphismRestriction
ParallelListComp
PatternSynonyms
RankNTypes
RecordWildCards
ScopedTypeVariables
TupleSections
TypeOperators
ViewPatterns
other-extensions: CPP
executable ttrender
main-is: Main.hs
other-modules: Debug.Trace.Tree.Render.Edged
Debug.Trace.Tree.Render.Options
Debug.Trace.Tree.Render.Simple
Debug.Trace.Tree.Render.Constants
if flag(ttrender)
build-depends: base >= 4.8 && < 5,
colour >= 2.3 && < 2.4,
json >= 0.9 && < 0.11,
optparse-applicative >= 0.11 && < 0.19,
regex-posix >= 0.95 && < 0.97,
parsec >= 3.1 && < 3.2,
diagrams-cairo >= 1.3 && < 1.5,
diagrams-lib >= 1.3 && < 1.5,
diagrams-contrib >= 1.3 && < 1.5,
-- lots of breaking changes in 1.7 and 1.8...
SVGFonts >= 1.5 && < 1.7,
-- whatever version we use above
tracetree
else
buildable: False
hs-source-dirs: ttrender
default-language: Haskell2010
default-extensions: BangPatterns
FlexibleContexts
FlexibleInstances
MultiParamTypeClasses
NoMonomorphismRestriction
PatternSynonyms
RecordWildCards
ScopedTypeVariables
TupleSections
TypeFamilies
ViewPatterns
ghc-options: -Wall