on v0.5.0.1 help sign in
reflex/reflex.cabal
364 lines 8.7 kB history raw
1Name: reflex
2Version: 0.5.0.1
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://reflex-frp.org
14bug-reports: https://github.com/reflex-frp/reflex/issues
15extra-source-files:
16 README.md
17 Quickref.md
19flag use-reflex-optimizer
20 description: Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.
21 default: False
22 manual: True
24flag use-template-haskell
25 description: Use template haskell to generate lenses
26 default: True
27 manual: True
29flag debug-trace-events
30 description: Add instrumentation that outputs the stack trace of the definition of an event whenever it is subscribed to. Warning: It is very slow!
31 default: False
32 manual: True
34flag fast-weak
35 description: Use the primitive implementation of FastWeak in GHCJS; note that this requires GHCJS to be built with FastWeak and FastWeakBag present in the RTS, which is not the default
36 default: False
37 manual: True
39library
40 hs-source-dirs: src
41 build-depends:
42 MemoTrie == 0.6.*,
43 base >= 4.9 && < 4.13,
44 bifunctors >= 5.2 && < 5.6,
45 comonad,
46 containers >= 0.5 && < 0.7,
47 data-default >= 0.5 && < 0.8,
48 dependent-map >= 0.2.4 && < 0.3,
49 exception-transformers == 0.4.*,
50 lens >= 4.7 && < 5,
51 monad-control >= 1.0.1 && < 1.1,
52 monoidal-containers == 0.4.*,
53 mtl >= 2.1 && < 2.3,
54 prim-uniq >= 0.1.0.1 && < 0.2,
55 primitive >= 0.5 && < 0.7,
56 random == 1.1.*,
57 ref-tf == 0.4.*,
58 reflection == 2.1.*,
59 semigroupoids >= 4.0 && < 6,
60 semigroups >= 0.16 && < 0.19,
61 stm >= 2.4 && < 2.6,
62 syb >= 0.5 && < 0.8,
63 these >= 0.4 && < 0.7.7,
64 time >= 1.4 && < 1.9,
65 transformers >= 0.2,
66 transformers-compat >= 0.3,
67 unbounded-delays >= 0.1.0.0 && < 0.2
69 exposed-modules:
70 Data.AppendMap,
71 Data.FastMutableIntMap,
72 Data.FastWeakBag,
73 Data.Functor.Misc,
74 Data.Map.Misc,
75 Data.WeakBag,
76 Reflex,
77 Reflex.Class,
78 Reflex.Adjustable.Class,
79 Reflex.BehaviorWriter.Base,
80 Reflex.BehaviorWriter.Class,
81 Reflex.Collection,
82 Reflex.Dynamic,
83 Reflex.Dynamic.Uniq,
84 Reflex.DynamicWriter,
85 Reflex.DynamicWriter.Base,
86 Reflex.DynamicWriter.Class,
87 Reflex.EventWriter,
88 Reflex.EventWriter.Base,
89 Reflex.EventWriter.Class,
90 Reflex.FastWeak,
91 Reflex.FunctorMaybe,
92 Reflex.Host.Class,
93 Reflex.Network,
94 Reflex.NotReady.Class,
95 Reflex.Patch,
96 Reflex.Patch.Class,
97 Reflex.Patch.DMap,
98 Reflex.Patch.DMapWithMove,
99 Reflex.Patch.IntMap,
100 Reflex.Patch.Map,
101 Reflex.Patch.MapWithMove,
102 Reflex.PerformEvent.Base,
103 Reflex.PerformEvent.Class,
104 Reflex.PostBuild.Base,
105 Reflex.PostBuild.Class,
106 Reflex.Profiled,
107 Reflex.Pure,
108 Reflex.Query.Base,
109 Reflex.Query.Class,
110 Reflex.Requester.Base,
111 Reflex.Requester.Class,
112 Reflex.Spider,
113 Reflex.Spider.Internal,
114 Reflex.Time,
115 Reflex.TriggerEvent.Base,
116 Reflex.TriggerEvent.Class,
117 Reflex.Widget.Basic,
118 Reflex.Workflow
120 ghc-options: -Wall -fwarn-redundant-constraints -fwarn-tabs -funbox-strict-fields -O2 -fspecialise-aggressively
122 if flag(debug-trace-events)
123 cpp-options: -DDEBUG_TRACE_EVENTS
124 build-depends: bytestring
126 if flag(use-reflex-optimizer)
127 cpp-options: -DUSE_REFLEX_OPTIMIZER
128 build-depends: ghc
129 exposed-modules: Reflex.Optimizer
131 if flag(use-template-haskell)
132 cpp-options: -DUSE_TEMPLATE_HASKELL
133 build-depends:
134 dependent-sum >= 0.3 && < 0.5,
135 haskell-src-exts >= 1.16 && < 1.21,
136 haskell-src-meta >= 0.6 && < 0.9,
137 template-haskell >= 2.9 && < 2.15
138 exposed-modules:
139 Reflex.Dynamic.TH
140 other-extensions: TemplateHaskell
141 else
142 build-depends:
143 dependent-sum == 0.4.*
145 if flag(fast-weak) && impl(ghcjs)
146 cpp-options: -DGHCJS_FAST_WEAK
148 if impl(ghcjs)
149 build-depends: ghcjs-base
151test-suite semantics
152 type: exitcode-stdio-1.0
153 main-is: semantics.hs
154 hs-source-dirs: test
155 ghc-options: -O2 -Wall -rtsopts
156 build-depends:
157 base,
158 bifunctors,
159 containers,
160 deepseq >= 1.3 && < 1.5,
161 dependent-map,
162 dependent-sum,
163 mtl,
164 ref-tf,
165 reflex,
166 split,
167 transformers >= 0.3
168 other-modules:
169 Reflex.Bench.Focused
170 Reflex.Plan.Pure
171 Reflex.Plan.Reflex
172 Reflex.Test
173 Reflex.Test.Micro
174 Reflex.TestPlan
176test-suite CrossImpl
177 type: exitcode-stdio-1.0
178 main-is: Reflex/Test/CrossImpl.hs
179 hs-source-dirs: test
180 ghc-options: -O2 -Wall -rtsopts
181 build-depends:
182 base,
183 containers,
184 dependent-map,
185 dependent-sum,
186 deepseq >= 1.3 && < 1.5,
187 mtl,
188 transformers,
189 ref-tf,
190 reflex
191 other-modules:
192 Reflex.Test
193 Reflex.TestPlan
194 Reflex.Plan.Reflex
195 Reflex.Plan.Pure
197test-suite hlint
198 type: exitcode-stdio-1.0
199 main-is: hlint.hs
200 hs-source-dirs: test
201 build-depends: base
202 , directory
203 , filepath
204 , filemanip
205 , hlint
206 if impl(ghcjs)
207 buildable: False
209test-suite EventWriterT
210 type: exitcode-stdio-1.0
211 main-is: EventWriterT.hs
212 hs-source-dirs: test
213 build-depends: base
214 , containers
215 , deepseq >= 1.3 && < 1.5
216 , dependent-map
217 , dependent-sum
218 , lens
219 , mtl
220 , these
221 , transformers
222 , reflex
223 , ref-tf
224 other-modules:
225 Reflex.Test
226 Reflex.TestPlan
227 Reflex.Plan.Reflex
228 Reflex.Plan.Pure
229 Test.Run
231test-suite RequesterT
232 type: exitcode-stdio-1.0
233 main-is: RequesterT.hs
234 hs-source-dirs: test
235 build-depends: base
236 , dependent-sum
237 , dependent-map
238 , lens
239 , these
240 , transformers
241 , reflex
242 , ref-tf
243 buildable: False
244 other-modules:
245 Reflex.TestPlan
246 Reflex.Plan.Pure
248test-suite QueryT
249 type: exitcode-stdio-1.0
250 main-is: QueryT.hs
251 hs-source-dirs: test
252 build-depends: base
253 , containers
254 , dependent-map
255 , dependent-sum
256 , deepseq >= 1.3 && < 1.5
257 , lens
258 , monoidal-containers
259 , mtl
260 , ref-tf
261 , reflex
262 , semigroups
263 , these
264 , transformers
265 other-modules:
266 Test.Run
267 Reflex.TestPlan
268 Reflex.Plan.Reflex
269 Reflex.Plan.Pure
271test-suite GC-Semantics
272 type: exitcode-stdio-1.0
273 main-is: GC.hs
274 hs-source-dirs: test
275 build-depends: base
276 , containers
277 , dependent-sum
278 , dependent-map
279 , deepseq >= 1.3 && < 1.5
280 , mtl
281 , these
282 , transformers
283 , reflex
284 , ref-tf
285 if impl(ghc < 8)
286 build-depends: semigroups
287 other-modules:
288 Reflex.Plan.Pure
289 Reflex.Plan.Reflex
290 Reflex.TestPlan
291 Test.Run
293test-suite rootCleanup
294 type: exitcode-stdio-1.0
295 main-is: rootCleanup.hs
296 hs-source-dirs: test
297 build-depends: base
298 , containers
299 , deepseq >= 1.3 && < 1.5
300 , dependent-sum
301 , mtl
302 , reflex
303 , ref-tf
304 , these
305 other-modules:
306 Reflex.Plan.Pure
307 Reflex.TestPlan
308 Test.Run
310benchmark spider-bench
311 type: exitcode-stdio-1.0
312 hs-source-dirs: bench test
313 main-is: Main.hs
314 ghc-options: -Wall -O2 -rtsopts
315 build-depends:
316 base,
317 containers,
318 criterion >= 1.1 && < 1.6,
319 deepseq >= 1.3 && < 1.5,
320 dependent-map,
321 dependent-sum,
322 ref-tf,
323 mtl,
324 primitive,
325 reflex,
326 split,
327 stm,
328 transformers >= 0.3
329 other-modules:
330 Reflex.TestPlan
331 Reflex.Plan.Reflex
332 Reflex.Bench.Focused
334benchmark saulzar-bench
335 type: exitcode-stdio-1.0
336 hs-source-dirs: bench test
337 c-sources: bench-cbits/checkCapability.c
338 main-is: RunAll.hs
339 ghc-options: -Wall -O2 -rtsopts -threaded
340 build-depends:
341 base,
342 containers >= 0.5 && < 0.7,
343 criterion >= 1.1 && < 1.6,
344 deepseq >= 1.3 && < 1.5,
345 dependent-map,
346 dependent-sum,
347 loch-th,
348 mtl,
349 primitive,
350 process,
351 ref-tf,
352 reflex,
353 split,
354 stm,
355 time,
356 transformers >= 0.3
357 other-modules:
358 Reflex.TestPlan
359 Reflex.Plan.Reflex
360 Reflex.Bench.Focused
362source-repository head
363 type: git
364 location: https://github.com/reflex-frp/reflex