Skip to content

Commit 3b65eae

Browse files
authored
Merge pull request #73 from input-output-hk/coot/srp
Removed not needed SRP
2 parents 88e3f84 + 0a31c02 commit 3b65eae

File tree

4 files changed

+107
-155
lines changed

4 files changed

+107
-155
lines changed

cabal.project

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
index-state: 2025-05-05T00:00:00Z
1+
index-state: 2025-05-21T15:48:46Z
22

33
packages: ./typed-protocols
44
./typed-protocols-doc
@@ -13,11 +13,3 @@ if impl(ghc >= 9.12)
1313
if os(windows)
1414
package text
1515
flags: -simdutf
16-
17-
source-repository-package
18-
type: git
19-
location: https://github.com/input-output-hk/io-sim
20-
tag: aef112549bf85d51a03919008b6091af8933e9e2
21-
--sha256: sha256-yfhBeAYwWktqBAkvXUVdrgBzNvTwAqMKglcjwflMtM4=
22-
subdir: io-classes
23-
io-sim

typed-protocols/src/Network/TypedProtocol/Codec.hs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -322,8 +322,10 @@ data AnyMessage ps where
322322
-- requires @UndecidableInstances@ and @QuantifiedConstraints@.
323323
instance (forall (st :: ps) (st' :: ps). Show (Message ps st st'))
324324
=> Show (AnyMessage ps) where
325-
show (AnyMessage (msg :: Message ps st st')) =
326-
"AnyMessage " ++ show msg
325+
showsPrec d (AnyMessage (msg :: Message ps st st')) =
326+
showParen (d > app_prec) (showString "AnyMessage " . showsPrec (app_prec + 1) msg)
327+
where
328+
app_prec = 10
327329

328330

329331
-- | A convenient pattern synonym which unwrap 'AnyMessage' giving both the

typed-protocols/test/Network/TypedProtocol/ReqResp/Tests.hs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import Control.Monad.Class.MonadAsync
2121
import Control.Monad.Class.MonadST
2222
import Control.Monad.Class.MonadSTM
2323
import Control.Monad.Class.MonadThrow
24-
import Control.Monad.Class.MonadTimer.SI
2524
import Control.Monad.IOSim
2625
import Control.Monad.ST (runST)
2726
import Control.Tracer (nullTracer)
@@ -193,7 +192,7 @@ prop_channel_ST f xs =
193192

194193

195194
prop_channelPipelined :: ( MonadLabelledSTM m, MonadAsync m, MonadCatch m
196-
, MonadDelay m, MonadST m)
195+
, MonadST m)
197196
=> (Int -> Int -> (Int, Int)) -> [Int]
198197
-> m Bool
199198
prop_channelPipelined f xs = do

typed-protocols/typed-protocols.cabal

Lines changed: 101 additions & 142 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ name: typed-protocols
33
version: 1.0.0.0
44
synopsis: A framework for strongly typed protocols
55
description: A robust session type framework which supports protocol pipelining.
6+
Haddocks are published [here](https://input-output-hk.github.io/typed-protocols/)
67
license: Apache-2.0
78
license-files:
89
LICENSE
@@ -16,25 +17,12 @@ tested-with: GHC == {9.6, 9.8, 9.10, 9.12}
1617
extra-doc-files: CHANGELOG.md
1718
README.md
1819

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
3826
ghc-options: -Wall
3927
-Wno-unticked-promoted-constructors
4028
-Wcompat
@@ -43,33 +31,40 @@ library
4331
-Wpartial-fields
4432
-Widentities
4533
-Wredundant-constraints
34+
-Wunused-packages
4635

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
5653

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,
5961

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
7165

7266
library stateful
67+
import: GHC
7368
visibility: public
7469
exposed-modules: Network.TypedProtocol.Stateful.Peer
7570
, Network.TypedProtocol.Stateful.Peer.Client
@@ -81,124 +76,88 @@ library stateful
8176
singletons,
8277
io-classes:io-classes,
8378
typed-protocols:typed-protocols
84-
8579
hs-source-dirs: stateful
86-
default-language: GHC2021
8780
default-extensions: DataKinds
8881
GADTs
8982
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
9883

9984
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
10788

108-
io-classes:io-classes,
109-
typed-protocols:{typed-protocols,cborg,stateful}
89+
build-depends: base,
90+
bytestring,
91+
cborg,
11092

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
11396
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
12297

12398
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
165139
default-extensions: DataKinds
166140
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
176141

177142
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
182147
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
196159
if !os(windows)
197160
build-depends: directory
198161
, network
199162
, unix
200-
201-
ghc-options: -rtsopts
202-
-Wall
203-
-Wno-unticked-promoted-constructors
204-
-Wno-orphans
163+
ghc-options: -rtsopts

0 commit comments

Comments
 (0)