-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpackage.yaml
More file actions
124 lines (112 loc) · 2.35 KB
/
Copy pathpackage.yaml
File metadata and controls
124 lines (112 loc) · 2.35 KB
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
name: AlgST
version: 2.0.0
github: "proglang/AlgST"
license: MIT
author: "Janek Spaderna"
copyright: "2022 Janek Spaderna"
synopsis: "Parser, Typechecker & Interpreter for Algebraic Session Types"
extra-source-files:
- README.md
data-files:
- examples/*
- examples/*/*
dependencies:
- base >= 4.20 && < 5
- algebraic-graphs
- ansi-terminal
- array
- async
- call-stack
- containers
- deepseq
- directory
- dlist
- filepath
- foldl
- generic-lens-lite
- hashable
- indexed-traversable
- lens-family
- lens-family-th
- monad-validate
- mtl
- optparse-applicative
- scheduler
- semialign
- singletons-th
- stm
- template-haskell
- th-lift-instances
- these
- transformers
- unliftio-core
- unordered-containers
- with-utf8
ghc-options:
- -j
- -Wall
# Orphans are used deliberately in multiple locations.
- -Wno-orphans
# Multiple warnings imported from the FreeST code. Unclear if fixes should be applied.
- -Wno-name-shadowing
# Ticking promoted constructors is mostly visual clutter.
- -Wno-unticked-promoted-constructors
- -Wincomplete-uni-patterns
- -Wincomplete-record-updates
- -Wredundant-constraints
- -Wcompat
default-extensions:
- BlockArguments
- ImportQualifiedPost
- LambdaCase
- TypeOperators
flags:
benchmarker:
description: "Build type equivalence benchmarker into AlgST"
manual: True
default: False
library:
source-dirs: src
build-tools:
- alex
- happy
when:
- condition: flag(benchmarker)
dependencies:
- gauge
cpp-options:
- -DALGST_BENCHMARKER
executables:
algst:
main: Main.hs
source-dirs: exe
dependencies:
- AlgST
build-tools:
- alex
- happy
ghc-options:
- -threaded
- -rtsopts
- -with-rtsopts=-N
tests:
tests:
main: Spec.hs
source-dirs: tests
ghc-options:
- -threaded
- -rtsopts
# Disabling idle collection and parallel collection improves productivity
# (as reported by `+RTS -s`) significantly, this reduces test duration.
- '"-with-rtsopts=-N -qg -I0"'
build-tools:
- algst
- hspec-discover
dependencies:
- AlgST
- hspec
- hspec-core
- hspec-discover
- raw-strings-qq
- reflection
- typed-process