on 732cb14 help sign in
patch/reflex.cabal
402 lines 9.3 kB history raw
1Name: reflex
2Version: 0.6.2.4
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
18 ChangeLog.md
20tested-with:
21 GHC ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5,
22 GHCJS ==8.4
24flag use-reflex-optimizer
25 description: Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.
26 default: False
27 manual: True
29flag use-template-haskell
30 description: Use template haskell to generate lenses
31 default: True
32 manual: True
34flag debug-trace-events
35 description: Add instrumentation that outputs the stack trace of the definition of an event whenever it is subscribed to. Warning: It is very slow!
36 default: False
37 manual: True
39flag fast-weak
40 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
41 default: False
42 manual: True
44flag split-these
45 description: Use split these/semialign packages
46 manual: False
47 default: True
49library
50 hs-source-dirs: src
51 build-depends:
52 MemoTrie == 0.6.*,
53 base >= 4.9 && < 4.13,
54 bifunctors >= 5.2 && < 5.6,
55 comonad >= 5.0.4 && < 5.1,
56 constraints-extras >= 0.3 && < 0.4,
57 containers >= 0.6 && < 0.7,
58 data-default >= 0.5 && < 0.8,
59 dependent-map >= 0.3 && < 0.4,
60 exception-transformers == 0.4.*,
61 profunctors >= 5.3 && < 5.5,
62 lens >= 4.7 && < 5,
63 monad-control >= 1.0.1 && < 1.1,
64 mtl >= 2.1 && < 2.3,
65 prim-uniq >= 0.1.0.1 && < 0.2,
66 primitive >= 0.5 && < 0.8,
67 profunctors,
68 random == 1.1.*,
69 ref-tf == 0.4.*,
70 reflection == 2.1.*,
71 semigroupoids >= 4.0 && < 6,
72 stm >= 2.4 && < 2.6,
73 syb >= 0.5 && < 0.8,
74 time >= 1.4 && < 1.9,
75 transformers >= 0.5.6.0 && < 0.6,
76 unbounded-delays >= 0.1.0.0 && < 0.2,
77 witherable >= 0.3 && < 0.3.2
79 if flag(split-these)
80 build-depends: these >= 1 && <1.1,
81 semialign >=1 && <1.1,
82 monoidal-containers >= 0.6 && < 0.7
83 else
84 build-depends: these >= 0.4 && <0.9,
85 monoidal-containers == 0.4.0.0
87 exposed-modules:
88 Control.Monad.ReaderIO
89 Data.AppendMap,
90 Data.FastMutableIntMap,
91 Data.FastWeakBag,
92 Data.Functor.Misc,
93 Data.Map.Misc,
94 Data.WeakBag,
95 Reflex,
96 Reflex.Class,
97 Reflex.Adjustable.Class,
98 Reflex.BehaviorWriter.Base,
99 Reflex.BehaviorWriter.Class,
100 Reflex.Collection,
101 Reflex.Dynamic,
102 Reflex.Dynamic.Uniq,
103 Reflex.DynamicWriter,
104 Reflex.DynamicWriter.Base,
105 Reflex.DynamicWriter.Class,
106 Reflex.EventWriter,
107 Reflex.EventWriter.Base,
108 Reflex.EventWriter.Class,
109 Reflex.FastWeak,
110 Reflex.FunctorMaybe,
111 Reflex.Host.Class,
112 Reflex.Network,
113 Reflex.NotReady.Class,
114 Reflex.Patch,
115 Reflex.Patch.Class,
116 Reflex.Patch.DMap,
117 Reflex.Patch.DMapWithMove,
118 Reflex.Patch.DMapWithReset,
119 Reflex.Patch.IntMap,
120 Reflex.Patch.Map,
121 Reflex.Patch.MapWithMove,
122 Reflex.Patch.Patchable,
123 Reflex.PerformEvent.Base,
124 Reflex.PerformEvent.Class,
125 Reflex.PostBuild.Base,
126 Reflex.PostBuild.Class,
127 Reflex.Profiled,
128 Reflex.Pure,
129 Reflex.Query.Base,
130 Reflex.Query.Class,
131 Reflex.Requester.Base,
132 Reflex.Requester.Class,
133 Reflex.Spider,
134 Reflex.Spider.Internal,
135 Reflex.Time,
136 Reflex.TriggerEvent.Base,
137 Reflex.TriggerEvent.Class,
138 Reflex.Widget.Basic,
139 Reflex.Workflow
141 ghc-options: -Wall -fwarn-redundant-constraints -fwarn-tabs -funbox-strict-fields -O2 -fspecialise-aggressively
143 if flag(debug-trace-events)
144 cpp-options: -DDEBUG_TRACE_EVENTS
145 build-depends: bytestring
147 if flag(use-reflex-optimizer)
148 cpp-options: -DUSE_REFLEX_OPTIMIZER
149 build-depends: ghc
150 exposed-modules: Reflex.Optimizer
152 if flag(use-template-haskell)
153 cpp-options: -DUSE_TEMPLATE_HASKELL
154 build-depends:
155 dependent-sum >= 0.6 && < 0.7,
156 haskell-src-exts >= 1.16 && < 1.22,
157 haskell-src-meta >= 0.6 && < 0.9,
158 template-haskell >= 2.9 && < 2.15
159 exposed-modules:
160 Reflex.Dynamic.TH
161 other-extensions: TemplateHaskell
162 else
163 build-depends:
164 dependent-sum >= 0.6 && < 0.7
166 if flag(fast-weak) && impl(ghcjs)
167 cpp-options: -DGHCJS_FAST_WEAK
169 if impl(ghcjs)
170 build-depends: ghcjs-base
172test-suite semantics
173 type: exitcode-stdio-1.0
174 main-is: semantics.hs
175 hs-source-dirs: test
176 ghc-options: -O2 -Wall -rtsopts
177 build-depends:
178 base,
179 bifunctors,
180 containers,
181 deepseq,
182 dependent-map,
183 dependent-sum,
184 mtl,
185 ref-tf,
186 reflex,
187 split,
188 transformers
189 other-modules:
190 Reflex.Bench.Focused
191 Reflex.Plan.Pure
192 Reflex.Plan.Reflex
193 Reflex.Test
194 Reflex.Test.Micro
195 Reflex.TestPlan
197test-suite CrossImpl
198 type: exitcode-stdio-1.0
199 main-is: Reflex/Test/CrossImpl.hs
200 hs-source-dirs: test
201 ghc-options: -O2 -Wall -rtsopts
202 build-depends:
203 base,
204 containers,
205 dependent-map,
206 dependent-sum,
207 deepseq,
208 mtl,
209 transformers,
210 ref-tf,
211 reflex
212 other-modules:
213 Reflex.Test
214 Reflex.TestPlan
215 Reflex.Plan.Reflex
216 Reflex.Plan.Pure
218test-suite hlint
219 type: exitcode-stdio-1.0
220 main-is: hlint.hs
221 hs-source-dirs: test
222 build-depends: base
223 , directory
224 , filepath
225 , filemanip
226 , hlint < 2.1 || >= 2.2.2
227 if impl(ghcjs)
228 buildable: False
230test-suite EventWriterT
231 type: exitcode-stdio-1.0
232 main-is: EventWriterT.hs
233 hs-source-dirs: test
234 build-depends: base
235 , containers
236 , deepseq
237 , dependent-map
238 , dependent-sum
239 , lens
240 , mtl
241 , these
242 , transformers
243 , reflex
244 , ref-tf
246 if flag(split-these)
247 build-depends: these-lens
249 other-modules:
250 Reflex.Test
251 Reflex.TestPlan
252 Reflex.Plan.Reflex
253 Reflex.Plan.Pure
254 Test.Run
257test-suite RequesterT
258 type: exitcode-stdio-1.0
259 main-is: RequesterT.hs
260 hs-source-dirs: test
261 build-depends: base
262 , containers
263 , deepseq
264 , dependent-sum
265 , dependent-map
266 , lens
267 , mtl
268 , these
269 , transformers
270 , reflex
271 , ref-tf
273 if flag(split-these)
274 build-depends: these-lens
276 other-modules:
277 Reflex.TestPlan
278 Reflex.Plan.Pure
279 Test.Run
281test-suite QueryT
282 type: exitcode-stdio-1.0
283 main-is: QueryT.hs
284 hs-source-dirs: test
285 build-depends: base
286 , containers
287 , dependent-map
288 , dependent-sum
289 , deepseq
290 , lens
291 , monoidal-containers
292 , mtl
293 , ref-tf
294 , reflex
295 , these
296 , transformers
298 if flag(split-these)
299 build-depends: semialign, these-lens
301 other-modules:
302 Test.Run
303 Reflex.TestPlan
304 Reflex.Plan.Reflex
305 Reflex.Plan.Pure
307test-suite GC-Semantics
308 type: exitcode-stdio-1.0
309 main-is: GC.hs
310 hs-source-dirs: test
311 build-depends: base
312 , containers
313 , dependent-sum
314 , dependent-map
315 , deepseq
316 , mtl
317 , these
318 , transformers
319 , reflex
320 , ref-tf
322 if flag(split-these)
323 build-depends: semialign
325 other-modules:
326 Reflex.Plan.Pure
327 Reflex.Plan.Reflex
328 Reflex.TestPlan
329 Test.Run
331test-suite rootCleanup
332 type: exitcode-stdio-1.0
333 main-is: rootCleanup.hs
334 hs-source-dirs: test
335 build-depends: base
336 , containers
337 , deepseq
338 , dependent-sum
339 , mtl
340 , reflex
341 , ref-tf
342 , these
343 other-modules:
344 Reflex.Plan.Pure
345 Reflex.TestPlan
346 Test.Run
348benchmark spider-bench
349 type: exitcode-stdio-1.0
350 hs-source-dirs: bench test
351 main-is: Main.hs
352 ghc-options: -Wall -O2 -rtsopts
353 build-depends:
354 base,
355 containers,
356 criterion,
357 deepseq,
358 dependent-map,
359 dependent-sum,
360 ref-tf,
361 mtl,
362 primitive,
363 reflex,
364 split,
365 stm,
366 transformers
367 other-modules:
368 Reflex.TestPlan
369 Reflex.Plan.Reflex
370 Reflex.Bench.Focused
372benchmark saulzar-bench
373 type: exitcode-stdio-1.0
374 hs-source-dirs: bench test
375 c-sources: bench-cbits/checkCapability.c
376 main-is: RunAll.hs
377 ghc-options: -Wall -O2 -rtsopts -threaded
378 build-depends:
379 base,
380 containers,
381 criterion,
382 deepseq,
383 dependent-map,
384 dependent-sum,
385 loch-th,
386 mtl,
387 primitive,
388 process,
389 ref-tf,
390 reflex,
391 split,
392 stm,
393 time,
394 transformers
395 other-modules:
396 Reflex.TestPlan
397 Reflex.Plan.Reflex
398 Reflex.Bench.Focused
400source-repository head
401 type: git
402 location: https://github.com/reflex-frp/reflex