Skip to content

Commit 8fc08e6

Browse files
author
Wen Kokke
committed
fix: parse (but don't support) Rust-only configuration options in Haskell
1 parent f23582c commit 8fc08e6

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

simulation/src/LeiosProtocol/Config.hs

+8
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ data Config = Config
9191
, multiplexMiniProtocols :: Bool
9292
, treatBlocksAsFull :: Bool
9393
, cleanupPolicies :: CleanupPolicies
94+
, simulateTransactions :: Bool
9495
, leiosStageLengthSlots :: Word
9596
, leiosStageActiveVotingSlots :: Word
9697
, leiosVoteSendRecvStages :: Bool
@@ -118,6 +119,7 @@ data Config = Config
118119
, ibDiffusionMaxWindowSize :: Word16
119120
, ibDiffusionMaxHeadersToRequest :: Word16
120121
, ibDiffusionMaxBodiesToRequest :: Word16
122+
, ibShards :: Word16
121123
, ebGenerationProbability :: Double
122124
, ebGenerationCpuTimeMs :: DurationMs
123125
, ebValidationCpuTimeMs :: DurationMs
@@ -157,6 +159,7 @@ instance Default Config where
157159
, multiplexMiniProtocols = True
158160
, treatBlocksAsFull = False
159161
, cleanupPolicies = def
162+
, simulateTransactions = True
160163
, leiosStageLengthSlots = 20
161164
, leiosStageActiveVotingSlots = 1
162165
, leiosVoteSendRecvStages = False
@@ -184,6 +187,7 @@ instance Default Config where
184187
, ibDiffusionMaxWindowSize = 100
185188
, ibDiffusionMaxHeadersToRequest = 100
186189
, ibDiffusionMaxBodiesToRequest = 1
190+
, ibShards = 1
187191
, ebGenerationProbability = 1.5
188192
, ebGenerationCpuTimeMs = 75.0
189193
, ebValidationCpuTimeMs = 1.0
@@ -227,6 +231,7 @@ configToKVsWith getter cfg =
227231
, get @"multiplexMiniProtocols" getter cfg
228232
, get @"treatBlocksAsFull" getter cfg
229233
, get @"cleanupPolicies" getter cfg
234+
, get @"simulateTransactions" getter cfg
230235
, get @"leiosStageLengthSlots" getter cfg
231236
, get @"leiosStageActiveVotingSlots" getter cfg
232237
, get @"leiosVoteSendRecvStages" getter cfg
@@ -254,6 +259,7 @@ configToKVsWith getter cfg =
254259
, get @"ibDiffusionMaxWindowSize" getter cfg
255260
, get @"ibDiffusionMaxHeadersToRequest" getter cfg
256261
, get @"ibDiffusionMaxBodiesToRequest" getter cfg
262+
, get @"ibShards" getter cfg
257263
, get @"ebGenerationProbability" getter cfg
258264
, get @"ebGenerationCpuTimeMs" getter cfg
259265
, get @"ebValidationCpuTimeMs" getter cfg
@@ -307,6 +313,7 @@ instance FromJSON Config where
307313
multiplexMiniProtocols <- parseFieldOrDefault @Config @"multiplexMiniProtocols" obj
308314
treatBlocksAsFull <- parseFieldOrDefault @Config @"treatBlocksAsFull" obj
309315
cleanupPolicies <- parseFieldOrDefault @Config @"cleanupPolicies" obj
316+
simulateTransactions <- parseFieldOrDefault @Config @"simulateTransactions" obj
310317
leiosStageLengthSlots <- parseFieldOrDefault @Config @"leiosStageLengthSlots" obj
311318
leiosStageActiveVotingSlots <- parseFieldOrDefault @Config @"leiosStageActiveVotingSlots" obj
312319
leiosVoteSendRecvStages <- parseFieldOrDefault @Config @"leiosVoteSendRecvStages" obj
@@ -334,6 +341,7 @@ instance FromJSON Config where
334341
ibDiffusionMaxWindowSize <- parseFieldOrDefault @Config @"ibDiffusionMaxWindowSize" obj
335342
ibDiffusionMaxHeadersToRequest <- parseFieldOrDefault @Config @"ibDiffusionMaxHeadersToRequest" obj
336343
ibDiffusionMaxBodiesToRequest <- parseFieldOrDefault @Config @"ibDiffusionMaxBodiesToRequest" obj
344+
ibShards <- parseFieldOrDefault @Config @"ibShards" obj
337345
ebGenerationProbability <- parseFieldOrDefault @Config @"ebGenerationProbability" obj
338346
ebGenerationCpuTimeMs <- parseFieldOrDefault @Config @"ebGenerationCpuTimeMs" obj
339347
ebValidationCpuTimeMs <- parseFieldOrDefault @Config @"ebValidationCpuTimeMs" obj

0 commit comments

Comments
 (0)