on 7c3efd4 help sign in
patch/reflex.cabal
199 lines 4.9 kB history raw
1Name: reflex
2Version: 0.5.0
3Synopsis: Higher-order Functional Reactive Programming
4Description: Reflex is a high-performance, deterministic, higher-order Functional Reactive Programming system
5License: BSD3
6License-file: LICENSE
7Author: Ryan Trinkle
8Maintainer: ryan.trinkle@gmail.com
9Stability: Experimental
10Category: FRP
11Build-type: Simple
12Cabal-version: >=1.9.2
13homepage: https://github.com/reflex-frp/reflex
14bug-reports: https://github.com/reflex-frp/reflex/issues
16flag specialize-to-spidertimeline-global
17 description: Specialize all Reflex functions to the SpiderTimeline Global implementation. This may improve performance, but will disable all other implementations.
18 default: False
19 manual: True
21flag use-reflex-optimizer
22 description: Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.
23 default: False
24 manual: True
26flag use-template-haskell
27 description: Use template haskell to generate lenses
28 default: True
29 manual: True
31library
32 hs-source-dirs: src
33 build-depends:
34 MemoTrie == 0.6.*,
35 base >= 4.7 && < 4.10,
36 bifunctors >= 5.2 && < 5.5,
37 containers == 0.5.*,
38 data-default >= 0.5 && < 0.8,
39 dependent-map >= 0.2.4 && < 0.3,
40 exception-transformers == 0.4.*,
41 lens >= 4.7 && < 5,
42 monad-control >= 1.0.1 && < 1.1,
43 mtl >= 2.1 && < 2.3,
44 prim-uniq >= 0.1.0.1 && < 0.2,
45 primitive >= 0.5 && < 0.7,
46 ref-tf == 0.4.*,
47 reflection == 2.1.*,
48 semigroupoids >= 4.0 && < 6,
49 semigroups >= 0.16 && < 0.19,
50 stm == 2.4.*,
51 syb >= 0.5 && < 0.7,
52 these >= 0.4 && < 0.8,
53 transformers >= 0.2,
54 transformers-compat >= 0.3
56 exposed-modules:
57 Data.Functor.Misc,
58 Data.WeakBag,
59 Reflex,
60 Reflex.Class,
61 Reflex.EventWriter,
62 Reflex.Dynamic,
63 Reflex.Dynamic.Uniq,
64 Reflex.DynamicWriter,
65 Reflex.FunctorMaybe,
66 Reflex.Host.Class,
67 Reflex.Patch,
68 Reflex.TriggerEvent.Base,
69 Reflex.TriggerEvent.Class,
70 Reflex.PerformEvent.Base,
71 Reflex.PerformEvent.Class,
72 Reflex.PostBuild.Base,
73 Reflex.PostBuild.Class,
74 Reflex.Requester.Base,
75 Reflex.Requester.Class,
76 Reflex.Spider,
77 Reflex.Spider.Internal
79 ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
80 ghc-prof-options: -auto-all
82 if flag(specialize-to-spidertimeline-global)
83 cpp-options: -DSPECIALIZE_TO_SPIDERTIMELINE_GLOBAL
84 else
85 exposed-modules: Reflex.Pure
87 if flag(use-reflex-optimizer)
88 cpp-options: -DUSE_REFLEX_OPTIMIZER
89 build-depends: ghc
90 exposed-modules: Reflex.Optimizer
92 if flag(use-template-haskell)
93 cpp-options: -DUSE_TEMPLATE_HASKELL
94 build-depends:
95 dependent-sum >= 0.3 && < 0.5,
96 haskell-src-exts >= 1.16 && < 1.18,
97 haskell-src-meta == 0.6.*,
98 template-haskell >= 2.9 && < 2.12
99 exposed-modules:
100 Reflex.Dynamic.TH
101 other-extensions: TemplateHaskell
102 else
103 build-depends:
104 dependent-sum == 0.4.*
106test-suite semantics
107 type: exitcode-stdio-1.0
108 main-is: semantics.hs
109 hs-source-dirs: test
110 ghc-options: -O2 -Wall -rtsopts
111 build-depends:
112 base,
113 bifunctors,
114 containers,
115 deepseq >= 1.3 && < 1.5,
116 dependent-map,
117 dependent-sum,
118 mtl,
119 ref-tf,
120 reflex,
121 split,
122 transformers >= 0.3
123 if flag(specialize-to-spidertimeline-global)
124 buildable: False
126test-suite hlint
127 type: exitcode-stdio-1.0
128 main-is: hlint.hs
129 hs-source-dirs: test
130 build-depends: base, hlint == 1.9.*
131 if impl(ghcjs)
132 buildable: False
134test-suite EventWriterT
135 type: exitcode-stdio-1.0
136 main-is: EventWriterT.hs
137 hs-source-dirs: test
138 build-depends: base
139 , dependent-sum
140 , transformers
141 , reflex
142 , ref-tf
144test-suite RequesterT
145 type: exitcode-stdio-1.0
146 main-is: RequesterT.hs
147 hs-source-dirs: test
148 build-depends: base
149 , dependent-sum
150 , dependent-map
151 , transformers
152 , reflex
153 , ref-tf
155benchmark spider-bench
156 type: exitcode-stdio-1.0
157 hs-source-dirs: bench
158 main-is: Main.hs
159 ghc-options: -Wall -O2 -rtsopts
160 build-depends:
161 base,
162 criterion == 1.1.*,
163 deepseq >= 1.3 && < 1.5,
164 dependent-map,
165 dependent-sum,
166 mtl,
167 primitive,
168 reflex,
169 stm,
170 transformers >= 0.3
172benchmark saulzar-bench
173 type: exitcode-stdio-1.0
174 hs-source-dirs: bench test
175 c-sources: bench-cbits/checkCapability.c
176 main-is: RunAll.hs
177 ghc-options: -Wall -O2 -rtsopts -threaded
178 ghc-prof-options: -auto-all
179 build-depends:
180 base,
181 containers == 0.5.*,
182 criterion == 1.1.*,
183 deepseq >= 1.3 && < 1.5,
184 dependent-map,
185 dependent-sum,
186 loch-th,
187 mtl,
188 primitive,
189 process,
190 ref-tf,
191 reflex,
192 split,
193 stm,
194 time,
195 transformers >= 0.3
197source-repository head
198 type: git
199 location: https://github.com/reflex-frp/reflex