@@ -3,6 +3,7 @@ name: typed-protocols
3
3
version : 1.0.0.0
4
4
synopsis : A framework for strongly typed protocols
5
5
description : A robust session type framework which supports protocol pipelining.
6
+ Haddocks are published [here](https://input-output-hk.github.io/typed-protocols/)
6
7
license : Apache-2.0
7
8
license-files :
8
9
LICENSE
@@ -16,25 +17,12 @@ tested-with: GHC == {9.6, 9.8, 9.10, 9.12}
16
17
extra-doc-files : CHANGELOG.md
17
18
README.md
18
19
19
- library
20
- exposed-modules : Network.TypedProtocol
21
- , Network.TypedProtocol.Core
22
- , Network.TypedProtocol.Peer
23
- , Network.TypedProtocol.Peer.Client
24
- , Network.TypedProtocol.Peer.Server
25
- , Network.TypedProtocol.Codec
26
- , Network.TypedProtocol.Driver
27
- , Network.TypedProtocol.Proofs
28
- other-modules : Network.TypedProtocol.Lemmas
29
- build-depends : base >= 4.12 && < 4.22 ,
30
- io-classes :io-classes ^>= 1.8 ,
31
- singletons ^>= 3.0
32
-
33
- hs-source-dirs : src
34
- default-language : GHC2021
35
- default-extensions : DataKinds
36
- GADTs
37
- LambdaCase
20
+ -- Minimal GHC setup, additional extensions are enabled per package (e.g.
21
+ -- pervasive type level extensions in the code base like `GADTs` or
22
+ -- `DataKinds`, etc), or per module (e.g. `CPP` or other more exotic ones).
23
+ common GHC
24
+ default-language : GHC2021
25
+ default-extensions : LambdaCase
38
26
ghc-options : -Wall
39
27
-Wno-unticked-promoted-constructors
40
28
-Wcompat
@@ -43,33 +31,40 @@ library
43
31
-Wpartial-fields
44
32
-Widentities
45
33
-Wredundant-constraints
34
+ -Wunused-packages
46
35
47
- library cborg
48
- visibility : public
49
- exposed-modules : Network.TypedProtocol.Codec.CBOR
50
-
51
- build-depends : base,
52
- bytestring >= 0.10 && < 0.13 ,
53
- cborg >= 0.2.1 && < 0.3 ,
54
- singletons,
55
- primitive,
36
+ library
37
+ import : GHC
38
+ exposed-modules : Network.TypedProtocol
39
+ , Network.TypedProtocol.Core
40
+ , Network.TypedProtocol.Peer
41
+ , Network.TypedProtocol.Peer.Client
42
+ , Network.TypedProtocol.Peer.Server
43
+ , Network.TypedProtocol.Codec
44
+ , Network.TypedProtocol.Driver
45
+ , Network.TypedProtocol.Proofs
46
+ other-modules : Network.TypedProtocol.Lemmas
47
+ build-depends : base >= 4.12 && < 4.22 ,
48
+ io-classes :io-classes ^>= 1.8 ,
49
+ singletons ^>= 3.0
50
+ hs-source-dirs : src
51
+ default-extensions : DataKinds
52
+ GADTs
56
53
57
- io-classes :io-classes,
58
- typed-protocols :typed-protocols
54
+ library cborg
55
+ import : GHC
56
+ visibility : public
57
+ exposed-modules : Network.TypedProtocol.Codec.CBOR
58
+ build-depends : base,
59
+ bytestring >= 0.10 && < 0.13 ,
60
+ cborg >= 0.2.1 && < 0.3 ,
59
61
60
- hs-source-dirs : cborg
61
- default-language : GHC2021
62
- default-extensions : LambdaCase
63
- ghc-options : -Wall
64
- -Wno-unticked-promoted-constructors
65
- -Wcompat
66
- -Wincomplete-uni-patterns
67
- -Wincomplete-record-updates
68
- -Wpartial-fields
69
- -Widentities
70
- -Wredundant-constraints
62
+ io-classes :io-classes,
63
+ typed-protocols :typed-protocols
64
+ hs-source-dirs : cborg
71
65
72
66
library stateful
67
+ import : GHC
73
68
visibility : public
74
69
exposed-modules : Network.TypedProtocol.Stateful.Peer
75
70
, Network.TypedProtocol.Stateful.Peer.Client
@@ -81,124 +76,88 @@ library stateful
81
76
singletons,
82
77
io-classes :io-classes,
83
78
typed-protocols :typed-protocols
84
-
85
79
hs-source-dirs : stateful
86
- default-language : GHC2021
87
80
default-extensions : DataKinds
88
81
GADTs
89
82
ImportQualifiedPost
90
- ghc-options : -Wall
91
- -Wno-unticked-promoted-constructors
92
- -Wcompat
93
- -Wincomplete-uni-patterns
94
- -Wincomplete-record-updates
95
- -Wpartial-fields
96
- -Widentities
97
- -Wredundant-constraints
98
83
99
84
library stateful-cborg
100
- visibility : public
101
- exposed-modules : Network.TypedProtocol.Stateful.Codec.CBOR
102
-
103
- build-depends : base,
104
- bytestring,
105
- cborg,
106
- singletons,
85
+ import : GHC
86
+ visibility : public
87
+ exposed-modules : Network.TypedProtocol.Stateful.Codec.CBOR
107
88
108
- io-classes :io-classes,
109
- typed-protocols :{typed-protocols,cborg,stateful}
89
+ build-depends : base,
90
+ bytestring,
91
+ cborg,
110
92
111
- hs-source-dirs : stateful-cborg
112
- default-language : GHC2021
93
+ io-classes :io-classes,
94
+ typed-protocols :{typed-protocols,cborg,stateful}
95
+ hs-source-dirs : stateful-cborg
113
96
default-extensions : ImportQualifiedPost
114
- ghc-options : -Wall
115
- -Wno-unticked-promoted-constructors
116
- -Wcompat
117
- -Wincomplete-uni-patterns
118
- -Wincomplete-record-updates
119
- -Wpartial-fields
120
- -Widentities
121
- -Wredundant-constraints
122
97
123
98
library examples
124
- visibility : public
125
- exposed-modules : Network.TypedProtocol.Channel
126
- , Network.TypedProtocol.Driver.Simple
127
-
128
- , Network.TypedProtocol.PingPong.Type
129
- , Network.TypedProtocol.PingPong.Client
130
- , Network.TypedProtocol.PingPong.Server
131
- , Network.TypedProtocol.PingPong.Codec
132
- , Network.TypedProtocol.PingPong.Codec.CBOR
133
- , Network.TypedProtocol.PingPong.Examples
134
-
135
- , Network.TypedProtocol.ReqResp.Type
136
- , Network.TypedProtocol.ReqResp.Client
137
- , Network.TypedProtocol.ReqResp.Server
138
- , Network.TypedProtocol.ReqResp.Codec
139
- , Network.TypedProtocol.ReqResp.Codec.CBOR
140
- , Network.TypedProtocol.ReqResp.Examples
141
-
142
- , Network.TypedProtocol.ReqResp2.Type
143
- , Network.TypedProtocol.ReqResp2.Client
144
-
145
- , Network.TypedProtocol.Stateful.ReqResp.Type
146
- , Network.TypedProtocol.Stateful.ReqResp.Client
147
- , Network.TypedProtocol.Stateful.ReqResp.Server
148
- , Network.TypedProtocol.Stateful.ReqResp.Codec
149
- , Network.TypedProtocol.Stateful.ReqResp.Examples
150
-
151
- , Network.TypedProtocol.Trans.Wedge
152
- build-depends : base,
153
- bytestring,
154
- cborg,
155
- serialise,
156
- singletons,
157
- contra-tracer,
158
- io-classes :{io-classes, si-timers},
159
- network,
160
- time,
161
- typed-protocols :{typed-protocols,cborg,stateful}
162
-
163
- hs-source-dirs : examples
164
- default-language : GHC2021
99
+ import : GHC
100
+ visibility : public
101
+ exposed-modules : Network.TypedProtocol.Channel
102
+ , Network.TypedProtocol.Driver.Simple
103
+
104
+ , Network.TypedProtocol.PingPong.Type
105
+ , Network.TypedProtocol.PingPong.Client
106
+ , Network.TypedProtocol.PingPong.Server
107
+ , Network.TypedProtocol.PingPong.Codec
108
+ , Network.TypedProtocol.PingPong.Codec.CBOR
109
+ , Network.TypedProtocol.PingPong.Examples
110
+
111
+ , Network.TypedProtocol.ReqResp.Type
112
+ , Network.TypedProtocol.ReqResp.Client
113
+ , Network.TypedProtocol.ReqResp.Server
114
+ , Network.TypedProtocol.ReqResp.Codec
115
+ , Network.TypedProtocol.ReqResp.Codec.CBOR
116
+ , Network.TypedProtocol.ReqResp.Examples
117
+
118
+ , Network.TypedProtocol.ReqResp2.Type
119
+ , Network.TypedProtocol.ReqResp2.Client
120
+
121
+ , Network.TypedProtocol.Stateful.ReqResp.Type
122
+ , Network.TypedProtocol.Stateful.ReqResp.Client
123
+ , Network.TypedProtocol.Stateful.ReqResp.Server
124
+ , Network.TypedProtocol.Stateful.ReqResp.Codec
125
+ , Network.TypedProtocol.Stateful.ReqResp.Examples
126
+
127
+ , Network.TypedProtocol.Trans.Wedge
128
+ build-depends : base,
129
+ bytestring,
130
+ cborg,
131
+ serialise,
132
+ singletons,
133
+ contra-tracer,
134
+ io-classes :{io-classes, si-timers},
135
+ typed-protocols :{typed-protocols,cborg,stateful}
136
+ if !os(windows)
137
+ build-depends : network
138
+ hs-source-dirs : examples
165
139
default-extensions : DataKinds
166
140
GADTs
167
- LambdaCase
168
- ghc-options : -Wall
169
- -Wno-unticked-promoted-constructors
170
- -Wcompat
171
- -Wincomplete-uni-patterns
172
- -Wincomplete-record-updates
173
- -Wpartial-fields
174
- -Widentities
175
- -Wredundant-constraints
176
141
177
142
test-suite test
178
- type : exitcode-stdio-1.0
179
- main-is : Main.hs
180
- hs-source-dirs : test
181
- default-language : GHC2021
143
+ import : GHC
144
+ type : exitcode-stdio-1.0
145
+ main-is : Main.hs
146
+ hs-source-dirs : test
182
147
default-extensions : GADTs
183
- LambdaCase
184
- other-modules : Network.TypedProtocol.PingPong.Tests
185
- , Network.TypedProtocol.ReqResp.Tests
186
- build-depends : base
187
- , bytestring
188
- , contra-tracer
189
- , typed-protocols :{typed-protocols,cborg,examples}
190
- , io-classes :{io-classes,si-timers}
191
- , io-sim
192
- , QuickCheck
193
- , tasty
194
- , tasty-quickcheck
195
-
148
+ other-modules : Network.TypedProtocol.PingPong.Tests
149
+ , Network.TypedProtocol.ReqResp.Tests
150
+ build-depends : base
151
+ , bytestring
152
+ , contra-tracer
153
+ , typed-protocols :{typed-protocols,examples}
154
+ , io-classes :io-classes
155
+ , io-sim
156
+ , QuickCheck
157
+ , tasty
158
+ , tasty-quickcheck
196
159
if !os(windows)
197
160
build-depends : directory
198
161
, network
199
162
, unix
200
-
201
- ghc-options : -rtsopts
202
- -Wall
203
- -Wno-unticked-promoted-constructors
204
- -Wno-orphans
163
+ ghc-options : -rtsopts
0 commit comments