summaryrefslogtreecommitdiff
path: root/purescript.cabal
blob: 0df22a167b0cbfccf04bd2566ada6c8a6ea86c4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
name: purescript
version: 0.11.0
cabal-version: >=1.8
build-type: Simple
license: BSD3
license-file: LICENSE
copyright: (c) 2013-16 Phil Freeman, (c) 2014-16 Gary Burgess
maintainer: Phil Freeman <paf31@cantab.net>
stability: experimental
synopsis: PureScript Programming Language Compiler
description: A small strongly, statically typed programming language with expressive types, inspired by Haskell and compiling to JavaScript.
category: Language
Homepage: http://www.purescript.org/
author: Phil Freeman <paf31@cantab.net>,
        Gary Burgess <gary.burgess@gmail.com>,
        Hardy Jones <jones3.hardy@gmail.com>,
        Harry Garrood <harry@garrood.me>,
        Christoph Hegemann <christoph.hegemann1337@gmail.com>

tested-with: GHC==7.10.3

extra-source-files: examples/passing/*.purs
                  , examples/passing/*.js
                  , examples/passing/2018/*.purs
                  , examples/passing/2138/*.purs
                  , examples/passing/2609/*.purs
                  , examples/passing/ClassRefSyntax/*.purs
                  , examples/passing/DctorOperatorAlias/*.purs
                  , examples/passing/ExplicitImportReExport/*.purs
                  , examples/passing/ExportExplicit/*.purs
                  , examples/passing/ExportExplicit2/*.purs
                  , examples/passing/ForeignKind/*.purs
                  , examples/passing/Import/*.purs
                  , examples/passing/ImportExplicit/*.purs
                  , examples/passing/ImportQualified/*.purs
                  , examples/passing/Module/*.purs
                  , examples/passing/ModuleDeps/*.purs
                  , examples/passing/ModuleExport/*.purs
                  , examples/passing/ModuleExportDupes/*.purs
                  , examples/passing/ModuleExportExcluded/*.purs
                  , examples/passing/ModuleExportQualified/*.purs
                  , examples/passing/ModuleExportSelf/*.purs
                  , examples/passing/NonConflictingExports/*.purs
                  , examples/passing/NonOrphanInstanceMulti/*.purs
                  , examples/passing/NonOrphanInstanceFunDepExtra/*.purs
                  , examples/passing/OperatorAliasElsewhere/*.purs
                  , examples/passing/Operators/*.purs
                  , examples/passing/PendingConflictingImports/*.purs
                  , examples/passing/PendingConflictingImports2/*.purs
                  , examples/passing/QualifiedNames/*.purs
                  , examples/passing/RedefinedFixity/*.purs
                  , examples/passing/ReExportQualified/*.purs
                  , examples/passing/ResolvableScopeConflict/*.purs
                  , examples/passing/ResolvableScopeConflict2/*.purs
                  , examples/passing/ResolvableScopeConflict3/*.purs
                  , examples/passing/ShadowedModuleName/*.purs
                  , examples/passing/SolvingIsSymbol/*.purs
                  , examples/passing/StringEdgeCases/*.purs
                  , examples/passing/TransitiveImport/*.purs
                  , examples/passing/TypeOperators/*.purs
                  , examples/passing/TypeWithoutParens/*.purs
                  , examples/failing/*.purs
                  , examples/failing/1733/*.purs
                  , examples/failing/2378/*.purs
                  , examples/failing/2379/*.purs
                  , examples/failing/ConflictingExports/*.purs
                  , examples/failing/ConflictingImports/*.purs
                  , examples/failing/ConflictingImports2/*.purs
                  , examples/failing/ConflictingQualifiedImports/*.purs
                  , examples/failing/ConflictingQualifiedImports2/*.purs
                  , examples/failing/DiffKindsSameName/*.purs
                  , examples/failing/DuplicateModule/*.purs
                  , examples/failing/ExportConflictClass/*.purs
                  , examples/failing/ExportConflictCtor/*.purs
                  , examples/failing/ExportConflictType/*.purs
                  , examples/failing/ExportConflictTypeOp/*.purs
                  , examples/failing/ExportConflictValue/*.purs
                  , examples/failing/ExportConflictValueOp/*.purs
                  , examples/failing/ExportExplicit1/*.purs
                  , examples/failing/ExportExplicit3/*.purs
                  , examples/failing/ImportExplicit/*.purs
                  , examples/failing/ImportExplicit2/*.purs
                  , examples/failing/ImportHidingModule/*.purs
                  , examples/failing/ImportModule/*.purs
                  , examples/failing/InstanceExport/*.purs
                  , examples/failing/OrphanInstance/*.purs
                  , examples/failing/OrphanInstanceFunDepCycle/*.purs
                  , examples/failing/OrphanInstanceWithDetermined/*.purs
                  , examples/failing/OrphanInstanceNullary/*.purs
                  , examples/warning/*.purs
                  , examples/warning/*.js
                  , examples/warning/UnusedExplicitImportTypeOp/*.purs
                  , examples/docs/bower_components/purescript-prelude/src/*.purs
                  , examples/docs/bower.json
                  , examples/docs/src/*.purs
                  , examples/docs/resolutions.json
                  , app/static/index.html
                  , app/static/index.js
                  , app/static/*.css
                  , tests/support/package.json
                  , tests/support/bower.json
                  , tests/support/setup-win.cmd
                  , tests/support/psci/*.purs
                  , tests/support/pscide/src/*.purs
                  , tests/support/pscide/src/*.js
                  , tests/support/pscide/src/*.fail
                  , tests/support/prelude-resolutions.json
                  , stack.yaml
                  , README.md
                  , INSTALL.md
                  , CONTRIBUTORS.md
                  , CONTRIBUTING.md

source-repository head
    type: git
    location: https://github.com/purescript/purescript.git

flag release
  description: Mark this build as a release build: prevents inclusion of extra
               info e.g. commit SHA in --version output)
  default: False

library
    build-depends: base >=4.8 && <5,
                   aeson >= 0.8 && < 1.1,
                   aeson-better-errors >= 0.8,
                   ansi-terminal >= 0.6.2 && < 0.7,
                   base-compat >=0.6.0,
                   blaze-html >= 0.8.1 && < 0.9,
                   bower-json >= 1.0.0.1 && < 1.1,
                   boxes >= 0.1.4 && < 0.2.0,
                   bytestring -any,
                   cheapskate >= 0.1 && < 0.2,
                   containers -any,
                   clock -any,
                   data-ordlist >= 0.4.7.0,
                   deepseq -any,
                   directory >= 1.2,
                   dlist -any,
                   edit-distance -any,
                   filepath -any,
                   fsnotify >= 0.2.1,
                   Glob >= 0.7 && < 0.8,
                   haskeline >= 0.7.0.0,
                   http-client >= 0.4.30 && < 0.6.0,
                   http-types -any,
                   language-javascript >= 0.6.0.9 && < 0.7,
                   lens == 4.*,
                   lifted-base >= 0.2.3 && < 0.2.4,
                   monad-control >= 1.0.0.0 && < 1.1,
                   monad-logger >= 0.3 && < 0.4,
                   mtl >= 2.1.0 && < 2.3.0,
                   parallel >= 3.2 && < 3.3,
                   parsec >=3.1.10,
                   pattern-arrows >= 0.0.2 && < 0.1,
                   pipes >= 4.0.0 && < 4.4.0,
                   pipes-http -any,
                   process >= 1.2.0 && < 1.5,
                   protolude >= 0.1.6,
                   regex-tdfa -any,
                   safe >= 0.3.9 && < 0.4,
                   scientific >= 0.3.4.9 && < 0.4,
                   semigroups >= 0.16.2 && < 0.19,
                   sourcemap >= 0.1.6,
                   spdx == 0.2.*,
                   split -any,
                   stm >= 0.2.4.0,
                   syb -any,
                   text -any,
                   time -any,
                   transformers >= 0.3.0 && < 0.6,
                   transformers-base >= 0.4.0 && < 0.5,
                   transformers-compat >= 0.3.0,
                   unordered-containers -any,
                   utf8-string >= 1 && < 2,
                   vector -any

    exposed-modules: Language.PureScript
                     Language.PureScript.AST
                     Language.PureScript.AST.Binders
                     Language.PureScript.AST.Declarations
                     Language.PureScript.AST.Operators
                     Language.PureScript.AST.Literals
                     Language.PureScript.AST.SourcePos
                     Language.PureScript.AST.Traversals
                     Language.PureScript.AST.Exported
                     Language.PureScript.Bundle
                     Language.PureScript.Crash
                     Language.PureScript.Externs
                     Language.PureScript.CodeGen
                     Language.PureScript.CodeGen.JS
                     Language.PureScript.CodeGen.JS.Common
                     Language.PureScript.CodeGen.JS.Printer
                     Language.PureScript.Constants
                     Language.PureScript.CoreFn
                     Language.PureScript.CoreFn.Ann
                     Language.PureScript.CoreFn.Binders
                     Language.PureScript.CoreFn.Desugar
                     Language.PureScript.CoreFn.Expr
                     Language.PureScript.CoreFn.Meta
                     Language.PureScript.CoreFn.Module
                     Language.PureScript.CoreFn.Traversals
                     Language.PureScript.CoreFn.ToJSON
                     Language.PureScript.CoreImp
                     Language.PureScript.CoreImp.AST
                     Language.PureScript.CoreImp.Optimizer
                     Language.PureScript.CoreImp.Optimizer.Blocks
                     Language.PureScript.CoreImp.Optimizer.Common
                     Language.PureScript.CoreImp.Optimizer.Inliner
                     Language.PureScript.CoreImp.Optimizer.MagicDo
                     Language.PureScript.CoreImp.Optimizer.TCO
                     Language.PureScript.CoreImp.Optimizer.Unused
                     Language.PureScript.Comments
                     Language.PureScript.Environment
                     Language.PureScript.Errors
                     Language.PureScript.Errors.JSON
                     Language.PureScript.Kinds
                     Language.PureScript.Label
                     Language.PureScript.Linter
                     Language.PureScript.Linter.Exhaustive
                     Language.PureScript.Linter.Imports
                     Language.PureScript.Make
                     Language.PureScript.ModuleDependencies
                     Language.PureScript.Names
                     Language.PureScript.Options
                     Language.PureScript.Parser
                     Language.PureScript.Parser.Lexer
                     Language.PureScript.Parser.Common
                     Language.PureScript.Parser.Declarations
                     Language.PureScript.Parser.Kinds
                     Language.PureScript.Parser.State
                     Language.PureScript.Parser.Types
                     Language.PureScript.Pretty
                     Language.PureScript.Pretty.Common
                     Language.PureScript.Pretty.Kinds
                     Language.PureScript.Pretty.Types
                     Language.PureScript.Pretty.Values
                     Language.PureScript.PSString
                     Language.PureScript.Renamer
                     Language.PureScript.Sugar
                     Language.PureScript.Sugar.BindingGroups
                     Language.PureScript.Sugar.CaseDeclarations
                     Language.PureScript.Sugar.DoNotation
                     Language.PureScript.Sugar.LetPattern
                     Language.PureScript.Sugar.Names
                     Language.PureScript.Sugar.Names.Common
                     Language.PureScript.Sugar.Names.Env
                     Language.PureScript.Sugar.Names.Exports
                     Language.PureScript.Sugar.Names.Imports
                     Language.PureScript.Sugar.ObjectWildcards
                     Language.PureScript.Sugar.Operators
                     Language.PureScript.Sugar.Operators.Common
                     Language.PureScript.Sugar.Operators.Expr
                     Language.PureScript.Sugar.Operators.Binders
                     Language.PureScript.Sugar.Operators.Types
                     Language.PureScript.Sugar.TypeClasses
                     Language.PureScript.Sugar.TypeClasses.Deriving
                     Language.PureScript.Sugar.TypeDeclarations
                     Language.PureScript.Traversals
                     Language.PureScript.TypeChecker
                     Language.PureScript.TypeChecker.Entailment
                     Language.PureScript.TypeChecker.Kinds
                     Language.PureScript.TypeChecker.Monad
                     Language.PureScript.TypeChecker.Skolems
                     Language.PureScript.TypeChecker.Subsumption
                     Language.PureScript.TypeChecker.Synonyms
                     Language.PureScript.TypeChecker.Types
                     Language.PureScript.TypeChecker.TypeSearch
                     Language.PureScript.TypeChecker.Unify
                     Language.PureScript.TypeClassDictionaries
                     Language.PureScript.Types

                     Language.PureScript.Docs
                     Language.PureScript.Docs.Convert
                     Language.PureScript.Docs.Convert.Single
                     Language.PureScript.Docs.Convert.ReExports
                     Language.PureScript.Docs.Prim
                     Language.PureScript.Docs.Render
                     Language.PureScript.Docs.Types
                     Language.PureScript.Docs.RenderedCode
                     Language.PureScript.Docs.RenderedCode.Types
                     Language.PureScript.Docs.RenderedCode.RenderType
                     Language.PureScript.Docs.RenderedCode.RenderKind
                     Language.PureScript.Docs.AsMarkdown
                     Language.PureScript.Docs.AsHtml
                     Language.PureScript.Docs.ParseInPackage
                     Language.PureScript.Docs.Utils.MonoidExtras

                     Language.PureScript.Publish
                     Language.PureScript.Publish.Utils
                     Language.PureScript.Publish.ErrorsWarnings
                     Language.PureScript.Publish.BoxesHelpers

                     Language.PureScript.Ide
                     Language.PureScript.Ide.CaseSplit
                     Language.PureScript.Ide.Command
                     Language.PureScript.Ide.Completion
                     Language.PureScript.Ide.Externs
                     Language.PureScript.Ide.Error
                     Language.PureScript.Ide.Filter
                     Language.PureScript.Ide.Imports
                     Language.PureScript.Ide.Logging
                     Language.PureScript.Ide.Matcher
                     Language.PureScript.Ide.Pursuit
                     Language.PureScript.Ide.Rebuild
                     Language.PureScript.Ide.Reexports
                     Language.PureScript.Ide.SourceFile
                     Language.PureScript.Ide.State
                     Language.PureScript.Ide.Types
                     Language.PureScript.Ide.Util
                     Language.PureScript.Ide.Watcher

                     Language.PureScript.Interactive
                     Language.PureScript.Interactive.Types
                     Language.PureScript.Interactive.Parser
                     Language.PureScript.Interactive.Directive
                     Language.PureScript.Interactive.Completion
                     Language.PureScript.Interactive.IO
                     Language.PureScript.Interactive.Message
                     Language.PureScript.Interactive.Module
                     Language.PureScript.Interactive.Printer

                     Control.Monad.Logger
                     Control.Monad.Supply
                     Control.Monad.Supply.Class

                     System.IO.UTF8

    extensions:      ConstraintKinds
                     DataKinds
                     DeriveFunctor
                     EmptyDataDecls
                     FlexibleContexts
                     KindSignatures
                     LambdaCase
                     MultiParamTypeClasses
                     NoImplicitPrelude
                     PatternGuards
                     PatternSynonyms
                     RankNTypes
                     RecordWildCards
                     OverloadedStrings
                     ScopedTypeVariables
                     TupleSections
                     ViewPatterns
    exposed: True
    buildable: True
    hs-source-dirs: src
    other-modules: Paths_purescript
    ghc-options: -Wall -O2

executable purs
    build-depends: base >=4 && <5,
                   aeson >= 0.8 && < 1.1,
                   ansi-terminal >= 0.6.2 && < 0.7,
                   ansi-wl-pprint -any,
                   base-compat >=0.6.0,
                   blaze-html -any,
                   boxes >= 0.1.4 && < 0.2.0,
                   bytestring -any,
                   containers -any,
                   directory -any,
                   file-embed -any,
                   filepath -any,
                   Glob >= 0.7 && < 0.8,
                   haskeline >= 0.7.0.0,
                   http-types == 0.9.*,
                   monad-logger -any,
                   mtl -any,
                   network -any,
                   optparse-applicative >= 0.13.0,
                   parsec -any,
                   process -any,
                   protolude >= 0.1.6,
                   purescript -any,
                   sourcemap >= 0.1.6,
                   split -any,
                   stm >= 0.2.4.0,
                   text -any,
                   time -any,
                   transformers -any,
                   transformers-compat -any,
                   utf8-string >= 1 && < 2,
                   wai == 3.*,
                   wai-websockets == 3.*,
                   warp == 3.*,
                   websockets >= 0.9 && <0.11
    main-is: Main.hs
    buildable: True
    hs-source-dirs: app
    other-modules: Paths_purescript
                   Command.Bundle
                   Command.Compile
                   Command.Docs
                   Command.Docs.Ctags
                   Command.Docs.Etags
                   Command.Docs.Tags
                   Command.Docs.Html
                   Command.Hierarchy
                   Command.Ide
                   Command.Publish
                   Command.REPL
                   Version
    ghc-options: -Wall -O2 -fno-warn-unused-do-bind -threaded -rtsopts "-with-rtsopts=-N"

    if flag(release)
      cpp-options: -DRELEASE
    else
      build-depends: gitrev >= 1.2.0 && <1.3

test-suite tests
    build-depends: base >=4 && <5,
                   purescript -any,
                   aeson -any,
                   aeson-better-errors -any,
                   base-compat -any,
                   bower-json -any,
                   boxes -any,
                   bytestring -any,
                   containers -any,
                   directory -any,
                   filepath -any,
                   Glob -any,
                   haskeline >= 0.7.0.0,
                   hspec -any,
                   hspec-discover -any,
                   HUnit -any,
                   lens -any,
                   monad-logger -any,
                   mtl -any,
                   optparse-applicative -any,
                   parsec -any,
                   process -any,
                   protolude >= 0.1.6,
                   silently -any,
                   stm -any,
                   text -any,
                   time -any,
                   transformers -any,
                   transformers-compat -any,
                   utf8-string -any,
                   vector -any
    ghc-options: -Wall
    type: exitcode-stdio-1.0
    main-is: Main.hs
    other-modules: TestUtils
                   TestCompiler
                   TestDocs
                   TestPrimDocs
                   TestPscPublish
                   TestPsci
                   TestPsci.CommandTest
                   TestPsci.CompletionTest
                   TestPsci.TestEnv
                   TestPscIde
                   PscIdeSpec
                   Language.PureScript.Ide.Test
                   Language.PureScript.Ide.FilterSpec
                   Language.PureScript.Ide.ImportsSpec
                   Language.PureScript.Ide.MatcherSpec
                   Language.PureScript.Ide.RebuildSpec
                   Language.PureScript.Ide.ReexportsSpec
                   Language.PureScript.Ide.SourceFileSpec
                   Language.PureScript.Ide.StateSpec
    buildable: True
    hs-source-dirs: tests