on aa/matchResponseMap help sign in
reflex/reflex.cabal
500 lines 12 kB history raw
1Name: reflex
2Version: 0.8.1.1
3Synopsis: Higher-order Functional Reactive Programming
4Description:
5 Interactive programs without callbacks or side-effects.
6 Functional Reactive Programming (FRP) uses composable events and time-varying
7 values to describe interactive systems as pure functions.
8 Just like other pure functional code, functional reactive code is easier
9 to get right on the first try, maintain, and reuse.
10 .
11 Reflex is a fully-deterministic, higher-order Functional Reactive Programming
12 interface and an engine that efficiently implements that interface.
13 .
14 <https://reflex-frp.org>
15License: BSD3
16License-file: LICENSE
17Author: Ryan Trinkle
18Maintainer: ryan.trinkle@gmail.com
19Stability: Experimental
20Category: FRP
21Build-type: Simple
22Cabal-version: 1.22
23homepage: https://reflex-frp.org
24bug-reports: https://github.com/reflex-frp/reflex/issues
25extra-source-files:
26 README.md
27 Quickref.md
28 ChangeLog.md
30tested-with:
31 GHC ==8.4.4 || ==8.6.5 || ==8.8.1 || ==8.10.2,
32 GHCJS ==8.6
34flag use-reflex-optimizer
35 description: Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.
36 default: False
37 manual: True
39flag use-template-haskell
40 description: Use template haskell to generate lenses
41 default: True
42 manual: True
44flag debug-trace-events
45 description: Add instrumentation that outputs the stack trace of the definition of an event whenever it is subscribed to. Warning: It is very slow!
46 default: False
47 manual: True
49flag fast-weak
50 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
51 default: False
52 manual: True
54flag debug-propagation
55 description: Enable debugging of spider internals
56 default: False
57 manual: True
59flag debug-cycles
60 description: Enable debugging of event cycles
61 default: False
62 manual: True
64flag split-these
65 description: Use split these/semialign packages
66 manual: False
67 default: True
69library
70 default-language: Haskell2010
71 hs-source-dirs: src
72 build-depends:
73 MemoTrie == 0.6.*,
74 base >= 4.11 && < 4.15,
75 bifunctors >= 5.2 && < 5.6,
76 comonad >= 5.0.4 && < 5.1,
77 constraints >= 0.10 && <0.14,
78 constraints-extras >= 0.3 && < 0.4,
79 containers >= 0.6 && < 0.7,
80 data-default >= 0.5 && < 0.8,
81 dependent-map >= 0.3 && < 0.5,
82 exception-transformers == 0.4.*,
83 lens >= 4.7 && < 5,
84 mmorph >= 1.0 && < 1.2,
85 monad-control >= 1.0.1 && < 1.1,
86 mtl >= 2.1 && < 2.3,
87 patch >= 0.0.1 && < 0.1,
88 prim-uniq >= 0.1.0.1 && < 0.3,
89 primitive >= 0.5 && < 0.8,
90 profunctors >= 5.3 && < 5.7,
91 random == 1.1.*,
92 ref-tf == 0.4.*,
93 reflection == 2.1.*,
94 semigroupoids >= 4.0 && < 6,
95 stm >= 2.4 && < 2.6,
96 syb >= 0.5 && < 0.8,
97 time >= 1.4 && < 1.10,
98 transformers >= 0.5.6.0 && < 0.6,
99 unbounded-delays >= 0.1.0.0 && < 0.2,
100 witherable >= 0.3 && < 0.4
102 if flag(split-these)
103 build-depends: these >= 1 && <1.2,
104 semialign >=1 && <1.2,
105 monoidal-containers >= 0.6 && < 0.7
106 else
107 build-depends: these >= 0.4 && <0.9,
108 monoidal-containers == 0.4.0.0
110 exposed-modules:
111 Control.Monad.ReaderIO
112 Data.AppendMap,
113 Data.FastMutableIntMap,
114 Data.FastWeakBag,
115 Data.Map.Misc,
116 Data.WeakBag,
117 Reflex,
118 Reflex.Class,
119 Reflex.Adjustable.Class,
120 Reflex.BehaviorWriter.Base,
121 Reflex.BehaviorWriter.Class,
122 Reflex.Collection,
123 Reflex.Dynamic,
124 Reflex.Dynamic.Uniq,
125 Reflex.DynamicWriter,
126 Reflex.DynamicWriter.Base,
127 Reflex.DynamicWriter.Class,
128 Reflex.EventWriter,
129 Reflex.EventWriter.Base,
130 Reflex.EventWriter.Class,
131 Reflex.FastWeak,
132 Reflex.FunctorMaybe,
133 Reflex.Host.Class,
134 Reflex.Host.Headless,
135 Reflex.Network,
136 Reflex.NotReady.Class,
137 Reflex.PerformEvent.Base,
138 Reflex.PerformEvent.Class,
139 Reflex.PostBuild.Base,
140 Reflex.PostBuild.Class,
141 Reflex.Profiled,
142 Reflex.Pure,
143 Reflex.Query.Base,
144 Reflex.Query.Class,
145 Reflex.Requester.Base,
146 Reflex.Requester.Class,
147 Reflex.Spider,
148 Reflex.Spider.Internal,
149 Reflex.Time,
150 Reflex.TriggerEvent.Base,
151 Reflex.TriggerEvent.Class,
152 Reflex.Widget.Basic,
153 Reflex.Workflow
155 reexported-modules:
156 patch:Data.Functor.Misc,
157 patch:Data.Patch as Reflex.Patch,
158 patch:Data.Patch.Class as Reflex.Patch.Class,
159 patch:Data.Patch.DMap as Reflex.Patch.DMap,
160 patch:Data.Patch.DMapWithMove as Reflex.Patch.DMapWithMove,
161 patch:Data.Patch.IntMap as Reflex.Patch.IntMap,
162 patch:Data.Patch.Map as Reflex.Patch.Map,
163 patch:Data.Patch.MapWithMove as Reflex.Patch.MapWithMove
165 ghc-options: -Wall -fwarn-redundant-constraints -fwarn-tabs -funbox-strict-fields -O2 -fspecialise-aggressively
167 if flag(debug-trace-events)
168 cpp-options: -DDEBUG_TRACE_EVENTS
169 build-depends:
170 bytestring >= 0.10.8 && < 0.11
172 if flag(use-reflex-optimizer)
173 cpp-options: -DUSE_REFLEX_OPTIMIZER
174 build-depends: ghc
175 exposed-modules: Reflex.Optimizer
177 if flag(debug-propagation)
178 cpp-options: -DDEBUG -DDEBUG_TRACE_PROPAGATION -DDEBUG_TRACE_INVALIDATION
180 if flag(debug-cycles)
181 cpp-options: -DDEBUG_CYCLES
183 if flag(use-template-haskell)
184 cpp-options: -DUSE_TEMPLATE_HASKELL
185 build-depends:
186 dependent-sum >= 0.6 && < 0.8,
187 haskell-src-exts >= 1.16 && < 1.24,
188 haskell-src-meta >= 0.6 && < 0.9,
189 template-haskell >= 2.9 && < 2.17
190 exposed-modules:
191 Reflex.Dynamic.TH
192 other-extensions: TemplateHaskell
193 else
194 build-depends:
195 dependent-sum >= 0.6 && < 0.8
197 if flag(fast-weak) && impl(ghcjs)
198 cpp-options: -DGHCJS_FAST_WEAK
200 if impl(ghcjs)
201 build-depends:
202 ghcjs-base == 0.2.*
204test-suite semantics
205 default-language: Haskell2010
206 type: exitcode-stdio-1.0
207 main-is: semantics.hs
208 hs-source-dirs: test
209 ghc-options: -O2 -Wall -rtsopts
210 build-depends:
211 base,
212 bifunctors,
213 containers,
214 deepseq,
215 dependent-map,
216 dependent-sum,
217 mtl,
218 ref-tf,
219 reflex,
220 split,
221 transformers
222 other-modules:
223 Reflex.Bench.Focused
224 Reflex.Plan.Pure
225 Reflex.Plan.Reflex
226 Reflex.Test
227 Reflex.Test.Micro
228 Reflex.TestPlan
230test-suite CrossImpl
231 default-language: Haskell2010
232 type: exitcode-stdio-1.0
233 main-is: Reflex/Test/CrossImpl.hs
234 hs-source-dirs: test
235 ghc-options: -O2 -Wall -rtsopts
236 build-depends:
237 base,
238 containers,
239 dependent-map,
240 dependent-sum,
241 deepseq,
242 mtl,
243 transformers,
244 ref-tf,
245 reflex
246 other-modules:
247 Reflex.Test
248 Reflex.TestPlan
249 Reflex.Plan.Reflex
250 Reflex.Plan.Pure
252test-suite hlint
253 default-language: Haskell2010
254 type: exitcode-stdio-1.0
255 main-is: hlint.hs
256 hs-source-dirs: test
257 build-depends: base
258 , directory
259 , filepath
260 , filemanip
261 if impl(ghc >= 8.8)
262 build-depends: hlint >= 3 && < 4
263 else
264 build-depends: hlint (< 2.1 || >= 2.2.2) && < 4
265 if impl(ghcjs)
266 buildable: False
268test-suite EventWriterT
269 default-language: Haskell2010
270 type: exitcode-stdio-1.0
271 main-is: EventWriterT.hs
272 hs-source-dirs: test
273 build-depends: base
274 , containers
275 , deepseq
276 , dependent-map
277 , dependent-sum
278 , lens
279 , mtl
280 , these
281 , transformers
282 , reflex
283 , ref-tf
285 if flag(split-these)
286 build-depends: these-lens
288 other-modules:
289 Test.Run
292test-suite DebugCycles
293 default-language: Haskell2010
294 type: exitcode-stdio-1.0
295 main-is: DebugCycles.hs
296 hs-source-dirs: test
297 ghc-options: -threaded
298 build-depends: base
299 , containers
300 , deepseq
301 , dependent-map
302 , dependent-sum
303 , hspec
304 , lens
305 , mtl
306 , these
307 , transformers
308 , reflex
309 , ref-tf
310 , witherable
311 , proctest
314 if flag(split-these)
315 build-depends: these-lens, semialign
317 other-modules:
318 Test.Run
321test-suite RequesterT
322 default-language: Haskell2010
323 type: exitcode-stdio-1.0
324 main-is: RequesterT.hs
325 hs-source-dirs: test
326 build-depends: base
327 , constraints
328 , constraints-extras
329 , containers
330 , deepseq
331 , dependent-map
332 , dependent-sum
333 , lens
334 , mtl
335 , ref-tf
336 , reflex
337 , text
338 , these
339 , transformers
341 if flag(split-these)
342 build-depends: these-lens
344 other-modules:
345 Reflex.TestPlan
346 Reflex.Plan.Pure
347 Test.Run
349test-suite Headless
350 default-language: Haskell2010
351 type: exitcode-stdio-1.0
352 main-is: Headless.hs
353 hs-source-dirs: test
354 build-depends: base
355 , reflex
357test-suite Adjustable
358 default-language: Haskell2010
359 type: exitcode-stdio-1.0
360 main-is: Adjustable.hs
361 hs-source-dirs: test
362 build-depends: base
363 , containers
364 , dependent-sum
365 , reflex
366 , ref-tf
367 , these
369 other-modules:
370 Test.Run
372test-suite QueryT
373 default-language: Haskell2010
374 type: exitcode-stdio-1.0
375 main-is: QueryT.hs
376 hs-source-dirs: test
377 build-depends: base
378 , containers
379 , dependent-map
380 , dependent-sum
381 , deepseq
382 , lens
383 , monoidal-containers
384 , mtl
385 , patch
386 , ref-tf
387 , reflex
388 , these
389 , transformers
391 if flag(split-these)
392 build-depends: semialign, these-lens
394 other-modules:
395 Test.Run
396 Reflex.TestPlan
397 Reflex.Plan.Reflex
398 Reflex.Plan.Pure
400test-suite GC-Semantics
401 default-language: Haskell2010
402 type: exitcode-stdio-1.0
403 main-is: GC.hs
404 hs-source-dirs: test
405 build-depends: base
406 , containers
407 , dependent-sum
408 , dependent-map
409 , deepseq
410 , mtl
411 , patch
412 , these
413 , transformers
414 , reflex
415 , ref-tf
417 if flag(split-these)
418 build-depends: semialign
420 other-modules:
421 Reflex.Plan.Pure
422 Reflex.Plan.Reflex
423 Reflex.TestPlan
424 Test.Run
426test-suite rootCleanup
427 default-language: Haskell2010
428 type: exitcode-stdio-1.0
429 main-is: rootCleanup.hs
430 hs-source-dirs: test
431 build-depends: base
432 , containers
433 , deepseq
434 , dependent-sum
435 , mtl
436 , reflex
437 , ref-tf
438 , these
439 other-modules:
440 Reflex.Plan.Pure
441 Reflex.TestPlan
442 Test.Run
444benchmark spider-bench
445 default-language: Haskell2010
446 type: exitcode-stdio-1.0
447 hs-source-dirs: bench test
448 main-is: Main.hs
449 ghc-options: -Wall -O2 -rtsopts
450 build-depends:
451 base,
452 containers,
453 criterion,
454 deepseq,
455 dependent-map,
456 dependent-sum,
457 ref-tf,
458 mtl,
459 primitive,
460 reflex,
461 split,
462 stm,
463 transformers
464 other-modules:
465 Reflex.TestPlan
466 Reflex.Plan.Reflex
467 Reflex.Bench.Focused
469benchmark saulzar-bench
470 default-language: Haskell2010
471 type: exitcode-stdio-1.0
472 hs-source-dirs: bench test
473 c-sources: bench-cbits/checkCapability.c
474 main-is: RunAll.hs
475 ghc-options: -Wall -O2 -rtsopts -threaded
476 build-depends:
477 base,
478 containers,
479 criterion,
480 deepseq,
481 dependent-map,
482 dependent-sum,
483 loch-th,
484 mtl,
485 primitive,
486 process,
487 ref-tf,
488 reflex,
489 split,
490 stm,
491 time,
492 transformers
493 other-modules:
494 Reflex.TestPlan
495 Reflex.Plan.Reflex
496 Reflex.Bench.Focused
498source-repository head
499 type: git
500 location: https://github.com/reflex-frp/reflex