on ce9282a help sign in
patch/reflex.cabal
373 lines 8.9 kB history raw
1Name: reflex
2Version: 0.6.2.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
18 ChangeLog.md
20tested-with:
21 GHC ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5
23flag use-reflex-optimizer
24 description: Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.
25 default: False
26 manual: True
28flag use-template-haskell
29 description: Use template haskell to generate lenses
30 default: True
31 manual: True
33flag debug-trace-events
34 description: Add instrumentation that outputs the stack trace of the definition of an event whenever it is subscribed to. Warning: It is very slow!
35 default: False
36 manual: True
38flag fast-weak
39 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
40 default: False
41 manual: True
43library
44 hs-source-dirs: src
45 build-depends:
46 MemoTrie == 0.6.*,
47 base >= 4.9 && < 4.13,
48 bifunctors >= 5.2 && < 5.6,
49 comonad,
50 constraints-extras >= 0.2,
51 containers >= 0.5 && < 0.7,
52 data-default >= 0.5 && < 0.8,
53 dependent-map >= 0.3 && < 0.4,
54 exception-transformers == 0.4.*,
55 profunctors,
56 lens >= 4.7 && < 5,
57 monad-control >= 1.0.1 && < 1.1,
58 monoidal-containers >= 0.4 && < 0.6,
59 mtl >= 2.1 && < 2.3,
60 prim-uniq >= 0.1.0.1 && < 0.2,
61 primitive >= 0.5 && < 0.7,
62 random == 1.1.*,
63 ref-tf == 0.4.*,
64 reflection == 2.1.*,
65 semigroupoids >= 4.0 && < 6,
66 semigroups >= 0.16 && < 0.19,
67 stm >= 2.4 && < 2.6,
68 syb >= 0.5 && < 0.8,
69 these >= 0.4 && < 0.9,
70 time >= 1.4 && < 1.9,
71 transformers >= 0.2,
72 transformers-compat >= 0.3,
73 unbounded-delays >= 0.1.0.0 && < 0.2,
74 witherable >= 0.2 && < 0.4
76 exposed-modules:
77 Data.AppendMap,
78 Data.FastMutableIntMap,
79 Data.FastWeakBag,
80 Data.Functor.Misc,
81 Data.Map.Misc,
82 Data.WeakBag,
83 Reflex,
84 Reflex.Class,
85 Reflex.Adjustable.Class,
86 Reflex.BehaviorWriter.Base,
87 Reflex.BehaviorWriter.Class,
88 Reflex.Collection,
89 Reflex.Dynamic,
90 Reflex.Dynamic.Uniq,
91 Reflex.DynamicWriter,
92 Reflex.DynamicWriter.Base,
93 Reflex.DynamicWriter.Class,
94 Reflex.EventWriter,
95 Reflex.EventWriter.Base,
96 Reflex.EventWriter.Class,
97 Reflex.FastWeak,
98 Reflex.FunctorMaybe,
99 Reflex.Host.Class,
100 Reflex.Network,
101 Reflex.NotReady.Class,
102 Reflex.Patch,
103 Reflex.Patch.Class,
104 Reflex.Patch.DMap,
105 Reflex.Patch.DMapWithMove,
106 Reflex.Patch.IntMap,
107 Reflex.Patch.Map,
108 Reflex.Patch.MapWithMove,
109 Reflex.PerformEvent.Base,
110 Reflex.PerformEvent.Class,
111 Reflex.PostBuild.Base,
112 Reflex.PostBuild.Class,
113 Reflex.Profiled,
114 Reflex.Pure,
115 Reflex.Query.Base,
116 Reflex.Query.Class,
117 Reflex.Requester.Base,
118 Reflex.Requester.Class,
119 Reflex.Spider,
120 Reflex.Spider.Internal,
121 Reflex.Time,
122 Reflex.TriggerEvent.Base,
123 Reflex.TriggerEvent.Class,
124 Reflex.Widget.Basic,
125 Reflex.Workflow
127 ghc-options: -Wall -fwarn-redundant-constraints -fwarn-tabs -funbox-strict-fields -O2 -fspecialise-aggressively
129 if flag(debug-trace-events)
130 cpp-options: -DDEBUG_TRACE_EVENTS
131 build-depends: bytestring
133 if flag(use-reflex-optimizer)
134 cpp-options: -DUSE_REFLEX_OPTIMIZER
135 build-depends: ghc
136 exposed-modules: Reflex.Optimizer
138 if flag(use-template-haskell)
139 cpp-options: -DUSE_TEMPLATE_HASKELL
140 build-depends:
141 dependent-sum >= 0.6 && < 0.7,
142 haskell-src-exts >= 1.16 && < 1.22,
143 haskell-src-meta >= 0.6 && < 0.9,
144 template-haskell >= 2.9 && < 2.15
145 exposed-modules:
146 Reflex.Dynamic.TH
147 other-extensions: TemplateHaskell
148 else
149 build-depends:
150 dependent-sum == 0.6.*
152 if flag(fast-weak) && impl(ghcjs)
153 cpp-options: -DGHCJS_FAST_WEAK
155 if impl(ghcjs)
156 build-depends: ghcjs-base
158test-suite semantics
159 type: exitcode-stdio-1.0
160 main-is: semantics.hs
161 hs-source-dirs: test
162 ghc-options: -O2 -Wall -rtsopts
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 , containers
244 , deepseq >= 1.3 && < 1.5
245 , dependent-sum
246 , dependent-map
247 , lens
248 , mtl
249 , these
250 , transformers
251 , reflex
252 , ref-tf
253 other-modules:
254 Reflex.TestPlan
255 Reflex.Plan.Pure
257test-suite QueryT
258 type: exitcode-stdio-1.0
259 main-is: QueryT.hs
260 hs-source-dirs: test
261 build-depends: base
262 , containers
263 , dependent-map
264 , dependent-sum
265 , deepseq >= 1.3 && < 1.5
266 , lens
267 , monoidal-containers
268 , mtl
269 , ref-tf
270 , reflex
271 , semigroups
272 , these
273 , transformers
274 other-modules:
275 Test.Run
276 Reflex.TestPlan
277 Reflex.Plan.Reflex
278 Reflex.Plan.Pure
280test-suite GC-Semantics
281 type: exitcode-stdio-1.0
282 main-is: GC.hs
283 hs-source-dirs: test
284 build-depends: base
285 , containers
286 , dependent-sum
287 , dependent-map
288 , deepseq >= 1.3 && < 1.5
289 , mtl
290 , these
291 , transformers
292 , reflex
293 , ref-tf
294 if impl(ghc < 8)
295 build-depends: semigroups
296 other-modules:
297 Reflex.Plan.Pure
298 Reflex.Plan.Reflex
299 Reflex.TestPlan
300 Test.Run
302test-suite rootCleanup
303 type: exitcode-stdio-1.0
304 main-is: rootCleanup.hs
305 hs-source-dirs: test
306 build-depends: base
307 , containers
308 , deepseq >= 1.3 && < 1.5
309 , dependent-sum
310 , mtl
311 , reflex
312 , ref-tf
313 , these
314 other-modules:
315 Reflex.Plan.Pure
316 Reflex.TestPlan
317 Test.Run
319benchmark spider-bench
320 type: exitcode-stdio-1.0
321 hs-source-dirs: bench test
322 main-is: Main.hs
323 ghc-options: -Wall -O2 -rtsopts
324 build-depends:
325 base,
326 containers,
327 criterion >= 1.1 && < 1.6,
328 deepseq >= 1.3 && < 1.5,
329 dependent-map,
330 dependent-sum,
331 ref-tf,
332 mtl,
333 primitive,
334 reflex,
335 split,
336 stm,
337 transformers >= 0.3
338 other-modules:
339 Reflex.TestPlan
340 Reflex.Plan.Reflex
341 Reflex.Bench.Focused
343benchmark saulzar-bench
344 type: exitcode-stdio-1.0
345 hs-source-dirs: bench test
346 c-sources: bench-cbits/checkCapability.c
347 main-is: RunAll.hs
348 ghc-options: -Wall -O2 -rtsopts -threaded
349 build-depends:
350 base,
351 containers >= 0.5 && < 0.7,
352 criterion >= 1.1 && < 1.6,
353 deepseq >= 1.3 && < 1.5,
354 dependent-map,
355 dependent-sum,
356 loch-th,
357 mtl,
358 primitive,
359 process,
360 ref-tf,
361 reflex,
362 split,
363 stm,
364 time,
365 transformers >= 0.3
366 other-modules:
367 Reflex.TestPlan
368 Reflex.Plan.Reflex
369 Reflex.Bench.Focused
371source-repository head
372 type: git
373 location: https://github.com/reflex-frp/reflex