on factorDynGeneric-update help sign in
reflex/reflex.cabal
383 lines 9.2 kB history raw
1Name: reflex
2Version: 0.6
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 generics-sop >= 0.2.4.0,
51 lens >= 4.7 && < 5,
52 monad-control >= 1.0.1 && < 1.1,
53 monoidal-containers == 0.4.*,
54 mtl >= 2.1 && < 2.3,
55 prim-uniq >= 0.1.0.1 && < 0.2,
56 primitive >= 0.5 && < 0.7,
57 random == 1.1.*,
58 ref-tf == 0.4.*,
59 reflection == 2.1.*,
60 semigroupoids >= 4.0 && < 6,
61 semigroups >= 0.16 && < 0.19,
62 stm >= 2.4 && < 2.6,
63 syb >= 0.5 && < 0.8,
64 these >= 0.4 && < 0.7.7,
65 time >= 1.4 && < 1.9,
66 transformers >= 0.2,
67 transformers-compat >= 0.3,
68 unbounded-delays >= 0.1.0.0 && < 0.2,
69 witherable >= 0.2 && < 0.4
71 exposed-modules:
72 Data.AppendMap,
73 Data.FastMutableIntMap,
74 Data.FastWeakBag,
75 Data.Functor.Misc,
76 Data.Map.Misc,
77 Data.WeakBag,
78 Generics.SOP.DMapUtilities,
79 Generics.SOP.Distribute,
80 Reflex,
81 Reflex.Class,
82 Reflex.Adjustable.Class,
83 Reflex.BehaviorWriter.Base,
84 Reflex.BehaviorWriter.Class,
85 Reflex.Collection,
86 Reflex.Dynamic,
87 Reflex.Dynamic.Uniq,
88 Reflex.Dynamic.CollectDynGeneric,
89 Reflex.DynamicWriter,
90 Reflex.DynamicWriter.Base,
91 Reflex.DynamicWriter.Class,
92 Reflex.EventWriter,
93 Reflex.EventWriter.Base,
94 Reflex.EventWriter.Class,
95 Reflex.FastWeak,
96 Reflex.FunctorMaybe,
97 Reflex.Host.Class,
98 Reflex.Network,
99 Reflex.NotReady.Class,
100 Reflex.Patch,
101 Reflex.Patch.Class,
102 Reflex.Patch.DMap,
103 Reflex.Patch.DMapWithMove,
104 Reflex.Patch.IntMap,
105 Reflex.Patch.Map,
106 Reflex.Patch.MapWithMove,
107 Reflex.PerformEvent.Base,
108 Reflex.PerformEvent.Class,
109 Reflex.PostBuild.Base,
110 Reflex.PostBuild.Class,
111 Reflex.Profiled,
112 Reflex.Pure,
113 Reflex.Query.Base,
114 Reflex.Query.Class,
115 Reflex.Requester.Base,
116 Reflex.Requester.Class,
117 Reflex.Spider,
118 Reflex.Spider.Internal,
119 Reflex.Time,
120 Reflex.TriggerEvent.Base,
121 Reflex.TriggerEvent.Class,
122 Reflex.Widget.Basic,
123 Reflex.Workflow
125 ghc-options: -Wall -fwarn-redundant-constraints -fwarn-tabs -funbox-strict-fields -O2 -fspecialise-aggressively
127 if flag(debug-trace-events)
128 cpp-options: -DDEBUG_TRACE_EVENTS
129 build-depends: bytestring
131 if flag(use-reflex-optimizer)
132 cpp-options: -DUSE_REFLEX_OPTIMIZER
133 build-depends: ghc
134 exposed-modules: Reflex.Optimizer
136 if flag(use-template-haskell)
137 cpp-options: -DUSE_TEMPLATE_HASKELL
138 build-depends:
139 dependent-sum >= 0.3 && < 0.5,
140 haskell-src-exts >= 1.16 && < 1.21,
141 haskell-src-meta >= 0.6 && < 0.9,
142 template-haskell >= 2.9 && < 2.15
143 exposed-modules:
144 Reflex.Dynamic.TH
145 other-extensions: TemplateHaskell
146 else
147 build-depends:
148 dependent-sum == 0.4.*
150 if flag(fast-weak) && impl(ghcjs)
151 cpp-options: -DGHCJS_FAST_WEAK
153 if impl(ghcjs)
154 build-depends: ghcjs-base
156test-suite semantics
157 type: exitcode-stdio-1.0
158 main-is: semantics.hs
159 hs-source-dirs: test
160 ghc-options: -O2 -Wall -rtsopts
161 if flag(use-template-haskell)
162 cpp-options: -DUSE_TEMPLATE_HASKELL
163 build-depends:
164 base,
165 bifunctors,
166 containers,
167 deepseq >= 1.3 && < 1.5,
168 dependent-map,
169 dependent-sum,
170 mtl,
171 ref-tf,
172 reflex,
173 split,
174 transformers >= 0.3
175 other-modules:
176 Reflex.Bench.Focused
177 Reflex.Plan.Pure
178 Reflex.Plan.Reflex
179 Reflex.Test
180 Reflex.Test.Micro
181 Reflex.TestPlan
183test-suite CrossImpl
184 type: exitcode-stdio-1.0
185 main-is: Reflex/Test/CrossImpl.hs
186 hs-source-dirs: test
187 ghc-options: -O2 -Wall -rtsopts
188 build-depends:
189 base,
190 containers,
191 dependent-map,
192 dependent-sum,
193 deepseq >= 1.3 && < 1.5,
194 mtl,
195 transformers,
196 ref-tf,
197 reflex
198 other-modules:
199 Reflex.Test
200 Reflex.TestPlan
201 Reflex.Plan.Reflex
202 Reflex.Plan.Pure
204test-suite hlint
205 type: exitcode-stdio-1.0
206 main-is: hlint.hs
207 hs-source-dirs: test
208 build-depends: base
209 , directory
210 , filepath
211 , filemanip
212 , hlint
213 if impl(ghcjs)
214 buildable: False
216test-suite EventWriterT
217 type: exitcode-stdio-1.0
218 main-is: EventWriterT.hs
219 hs-source-dirs: test
220 build-depends: base
221 , containers
222 , deepseq >= 1.3 && < 1.5
223 , dependent-map
224 , dependent-sum
225 , lens
226 , mtl
227 , these
228 , transformers
229 , reflex
230 , ref-tf
231 other-modules:
232 Reflex.Test
233 Reflex.TestPlan
234 Reflex.Plan.Reflex
235 Reflex.Plan.Pure
236 Test.Run
238test-suite RequesterT
239 type: exitcode-stdio-1.0
240 main-is: RequesterT.hs
241 hs-source-dirs: test
242 build-depends: base
243 , dependent-sum
244 , dependent-map
245 , lens
246 , these
247 , transformers
248 , reflex
249 , ref-tf
250 buildable: False
251 other-modules:
252 Reflex.TestPlan
253 Reflex.Plan.Pure
255test-suite QueryT
256 type: exitcode-stdio-1.0
257 main-is: QueryT.hs
258 hs-source-dirs: test
259 build-depends: base
260 , containers
261 , dependent-map
262 , dependent-sum
263 , deepseq >= 1.3 && < 1.5
264 , lens
265 , monoidal-containers
266 , mtl
267 , ref-tf
268 , reflex
269 , semigroups
270 , these
271 , transformers
272 other-modules:
273 Test.Run
274 Reflex.TestPlan
275 Reflex.Plan.Reflex
276 Reflex.Plan.Pure
278test-suite GC-Semantics
279 type: exitcode-stdio-1.0
280 main-is: GC.hs
281 hs-source-dirs: test
282 build-depends: base
283 , containers
284 , dependent-sum
285 , dependent-map
286 , deepseq >= 1.3 && < 1.5
287 , mtl
288 , these
289 , transformers
290 , reflex
291 , ref-tf
292 if impl(ghc < 8)
293 build-depends: semigroups
294 other-modules:
295 Reflex.Plan.Pure
296 Reflex.Plan.Reflex
297 Reflex.TestPlan
298 Test.Run
300test-suite rootCleanup
301 type: exitcode-stdio-1.0
302 main-is: rootCleanup.hs
303 hs-source-dirs: test
304 build-depends: base
305 , containers
306 , deepseq >= 1.3 && < 1.5
307 , dependent-sum
308 , mtl
309 , reflex
310 , ref-tf
311 , these
312 other-modules:
313 Reflex.Plan.Pure
314 Reflex.TestPlan
315 Test.Run
317test-suite mkDyn
318 type: exitcode-stdio-1.0
319 main-is: MkDyn.hs
320 hs-source-dirs: test
321 if !flag(use-template-haskell)
322 buildable: False
323 build-depends: base
324 , reflex
325 , deepseq
326 , mtl
327 , containers
329benchmark spider-bench
330 type: exitcode-stdio-1.0
331 hs-source-dirs: bench test
332 main-is: Main.hs
333 ghc-options: -Wall -O2 -rtsopts
334 build-depends:
335 base,
336 containers,
337 criterion >= 1.1 && < 1.6,
338 deepseq >= 1.3 && < 1.5,
339 dependent-map,
340 dependent-sum,
341 ref-tf,
342 mtl,
343 primitive,
344 reflex,
345 split,
346 stm,
347 transformers >= 0.3
348 other-modules:
349 Reflex.TestPlan
350 Reflex.Plan.Reflex
351 Reflex.Bench.Focused
353benchmark saulzar-bench
354 type: exitcode-stdio-1.0
355 hs-source-dirs: bench test
356 c-sources: bench-cbits/checkCapability.c
357 main-is: RunAll.hs
358 ghc-options: -Wall -O2 -rtsopts -threaded
359 build-depends:
360 base,
361 containers >= 0.5 && < 0.7,
362 criterion >= 1.1 && < 1.6,
363 deepseq >= 1.3 && < 1.5,
364 dependent-map,
365 dependent-sum,
366 loch-th,
367 mtl,
368 primitive,
369 process,
370 ref-tf,
371 reflex,
372 split,
373 stm,
374 time,
375 transformers >= 0.3
376 other-modules:
377 Reflex.TestPlan
378 Reflex.Plan.Reflex
379 Reflex.Bench.Focused
381source-repository head
382 type: git
383 location: https://github.com/reflex-frp/reflex