Repository navigation
IOG Hydra / ci/hydra-build:x86_64-linux.native.formattingLinting.fourmolu
failed
Oct 9, 2026 in 26s
Build failed
1 failed steps
Details
Failed Steps
Step 1
Derivation
/nix/store/1s9mjqgz8262sqqsisszfly9y5l8apy8-check-fourmolu-exe-fourmolu.drv
Log
unpacking source archive /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source
source root is 1kafv79rpxq1j1zbplwf0vdicwcjw4by-source
The custom options for formatting this repo are:
fourmolu 0.18.0.0
using ghc-lib-parser 9.12.3.20251228
> indentation: 2
> column-limit: 100
> import-export-style: leading
> haddock-style: single-line
> single-constraint-parens: never
> single-deriving-parens: never
> import-grouping: single
Formatting haskell files...
Loaded config from: fourmolu.yaml
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Config.hs ./ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Config.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Config.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Config.hs 2026-10-09 22:03:00.926061215 +0000
@@ -49,15 +49,15 @@
-- | The top-level node configuration
data TopLevelConfig blk = TopLevelConfig
{ topLevelConfigProtocol :: !(ConsensusConfig (BlockProtocol blk))
- -- ^ TODO both @topLevelConfigProtocol@ and @ConsensusConfig@ are misnomers,
- -- which isn't too surprising considering they couldn't even agree :/
- --
- -- I think "header" be the best non-exotic classifier for this. It's still
- -- somewhat confusing, since "chains of blocks" /inherit/ semantics of the
- -- "chains of headers" that this config /directly/ affects. So any effect
- -- some value within @topLevelConfigHeader/HeaderConfig@ might have on the
- -- treatment of blocks could cause confusion. But that's seems preferable to
- -- the current, extremely nebulous classifers "protocol" and "consensus".
+ -- ^ TODO both @topLevelConfigProtocol@ and @ConsensusConfig@ are misnomers,
+ -- which isn't too surprising considering they couldn't even agree :/
+ --
+ -- I think "header" be the best non-exotic classifier for this. It's still
+ -- somewhat confusing, since "chains of blocks" /inherit/ semantics of the
+ -- "chains of headers" that this config /directly/ affects. So any effect
+ -- some value within @topLevelConfigHeader/HeaderConfig@ might have on the
+ -- treatment of blocks could cause confusion. But that's seems preferable to
+ -- the current, extremely nebulous classifers "protocol" and "consensus".
, topLevelConfigLedger :: !(LedgerConfig blk)
, topLevelConfigBlock :: !(BlockConfig blk)
, topLevelConfigCodec :: !(CodecConfig blk)
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/src/unstable-consensus-testlib/Test/Util/LeiosTestBlock.hs ./ouroboros-consensus/src/unstable-consensus-testlib/Test/Util/LeiosTestBlock.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/src/unstable-consensus-testlib/Test/Util/LeiosTestBlock.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus/src/unstable-consensus-testlib/Test/Util/LeiosTestBlock.hs 2026-10-09 22:03:09.476959975 +0000
@@ -97,7 +97,6 @@
import Codec.Serialise (Serialise (..), deserialiseOrFail, serialise)
import Control.Monad (foldM, guard, replicateM, replicateM_)
import Control.Monad.Except (throwError)
-import Data.String (fromString)
import qualified Data.Binary.Get as Get
import qualified Data.Binary.Put as Put
import qualified Data.ByteString as BS
@@ -113,6 +112,7 @@
import qualified Data.Map.Strict as Map
import Data.Proxy
import Data.Ratio (denominator, numerator, (%))
+import Data.String (fromString)
import qualified Data.Text as Text
import Data.Time.Calendar (fromGregorian)
import Data.Time.Clock (UTCTime (..))
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/test/consensus-test/Test/LeiosDemoLogic/Invariants.hs ./ouroboros-consensus/test/consensus-test/Test/LeiosDemoLogic/Invariants.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus/test/consensus-test/Test/LeiosDemoLogic/Invariants.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus/test/consensus-test/Test/LeiosDemoLogic/Invariants.hs 2026-10-09 22:03:13.579911342 +0000
@@ -46,9 +46,9 @@
import qualified Data.ByteString as BS
import qualified Data.ByteString.Short as SBS
import Data.Foldable (foldl', toList)
-import Data.List (sort)
import qualified Data.IntMap.Strict as IntMap
import qualified Data.IntSet as IntSet
+import Data.List (sort)
import qualified Data.Map.Strict as Map
import Data.Maybe.Strict (StrictMaybe (SJust, SNothing))
import Data.Sequence.NonEmpty (NESeq)
@@ -76,14 +76,6 @@
)
import qualified LeiosDemoLogic.Announcements as Announcements
import LeiosDemoLogic.Announcements.ElBimap (ElId (MkElId))
-import Test.Util.LeiosTestBlock
- ( LeiosTestBlock
- , announcing
- , firstLeiosBlock
- , issuedBy
- , successorLeiosBlock
- )
-import Ouroboros.Consensus.Forecast (OutsideForecastRange)
import LeiosDemoTypes
( AnnouncementSource (..)
, BytesSize
@@ -112,6 +104,7 @@
( RelativeTime (..)
, SystemTime (..)
)
+import Ouroboros.Consensus.Forecast (OutsideForecastRange)
import Ouroboros.Consensus.Util.IOLike (IOLike, evaluate)
import Ouroboros.Network.PeerSelection.LedgerPeers.Type
( IsBigLedgerPeer (..)
@@ -121,6 +114,13 @@
import Test.Tasty (TestTree, testGroup)
import Test.Tasty.HUnit (assertBool, assertFailure, testCase, (@?=))
import Test.Tasty.QuickCheck (testProperty)
+import Test.Util.LeiosTestBlock
+ ( LeiosTestBlock
+ , announcing
+ , firstLeiosBlock
+ , issuedBy
+ , successorLeiosBlock
+ )
import Test.Util.Orphans.IOLike ()
import Test.Util.TestEnv (adjustQuickCheckTests)
@@ -280,14 +280,15 @@
-- preloaded to 'used'
run bigLedgerPeers used =
let outstanding =
- (\o -> o{Leios.requestedBytesSizePerPeer = Map.singleton peerId used}) $
+ (\o -> o{Leios.requestedBytesSizePerPeer = Map.singleton peerId used})
+ $
-- the election fetching it, without which nothing is requested
Leios.focusElectionIfUnfocused
(Leios.announcementElection (announcementOf point 0))
h
- $ Leios.acquireEbBody h jobPool
- $ Leios.recordMaxAnnouncementSlot h (SlotNo 10) SNothing
- $ (emptyLeiosOutstanding (mkStdGen 0) (SlotNo 0) :: LeiosOutstanding Int)
+ $ Leios.acquireEbBody h jobPool
+ $ Leios.recordMaxAnnouncementSlot h (SlotNo 10) SNothing
+ $ (emptyLeiosOutstanding (mkStdGen 0) (SlotNo 0) :: LeiosOutstanding Int)
(_o, reqs, _d) =
leiosFetchLogicIteration
demoLeiosFetchStaticEnv
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/ouroboros-consensus-cardano/Ouroboros/Consensus/Cardano/CanHardFork.hs ./ouroboros-consensus-cardano/src/ouroboros-consensus-cardano/Ouroboros/Consensus/Cardano/CanHardFork.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/ouroboros-consensus-cardano/Ouroboros/Consensus/Cardano/CanHardFork.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/ouroboros-consensus-cardano/Ouroboros/Consensus/Cardano/CanHardFork.hs 2026-10-09 22:02:53.913144125 +0000
@@ -90,9 +90,9 @@
import Ouroboros.Consensus.Protocol.Abstract hiding
( translateChainDepState
)
+import Ouroboros.Consensus.Protocol.Leios (PraosWithLeios)
import Ouroboros.Consensus.Protocol.PBFT.State (PBftState)
import qualified Ouroboros.Consensus.Protocol.PBFT.State as PBftState
-import Ouroboros.Consensus.Protocol.Leios (PraosWithLeios)
import Ouroboros.Consensus.Protocol.Praos (Praos)
import qualified Ouroboros.Consensus.Protocol.Praos as Praos
import Ouroboros.Consensus.Protocol.Praos.Common (PraosTiebreakerView)
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Forge.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Forge.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Forge.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Forge.hs 2026-10-09 22:02:53.783145660 +0000
@@ -47,8 +47,8 @@
import Ouroboros.Consensus.Ledger.Abstract
import Ouroboros.Consensus.Ledger.SupportsMempool
import Ouroboros.Consensus.Protocol.Abstract (CanBeLeader)
-import Ouroboros.Consensus.Protocol.Praos.Common (EitherLeiosF)
import Ouroboros.Consensus.Protocol.Ledger.HotKey (HotKey)
+import Ouroboros.Consensus.Protocol.Praos.Common (EitherLeiosF)
import Ouroboros.Consensus.Shelley.Eras (DijkstraEra)
import Ouroboros.Consensus.Shelley.Ledger.Block
import Ouroboros.Consensus.Shelley.Ledger.Config
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Leios.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Leios.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Leios.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/Leios.hs 2026-10-09 22:02:53.957143605 +0000
@@ -1,4 +1,3 @@
-{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleContexts #-}
@@ -10,6 +9,7 @@
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
+{-# LANGUAGE UndecidableInstances #-}
-- 'SL.unsafeMakeValidated' is deprecated in favour of the ledger's newer
-- 'ValidatedTx', which consensus has not moved to yet (see the same FIXME in
-- "Ouroboros.Consensus.Shelley.Ledger.Mempool"). Suppressed here the way the
@@ -73,7 +73,6 @@
, WhetherToUpperBoundOCERT (..)
)
import qualified Ouroboros.Consensus.Protocol.Praos as PP
-
import Ouroboros.Consensus.Protocol.Praos.Views (plvPoolDistr)
import qualified Ouroboros.Consensus.Protocol.Praos.Views as PP
import Ouroboros.Consensus.Protocol.TPraos (TPraos)
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/SupportsProtocol.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/SupportsProtocol.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/SupportsProtocol.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Ledger/SupportsProtocol.hs 2026-10-09 22:02:53.963143533 +0000
@@ -1,4 +1,3 @@
-{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DisambiguateRecordFields #-}
{-# LANGUAGE FlexibleContexts #-}
@@ -7,6 +6,7 @@
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -Wno-orphans #-}
-- | This module contains 'SupportsProtocol' instances tying the ledger and
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Praos.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Praos.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Praos.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Praos.hs 2026-10-09 22:02:54.027142777 +0000
@@ -1,9 +1,9 @@
-{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
+{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -Wno-orphans #-}
module Ouroboros.Consensus.Shelley.Node.Praos
@@ -19,16 +19,16 @@
import qualified Data.Text as T
import Ouroboros.Consensus.Block
import Ouroboros.Consensus.Config (configConsensus)
-import qualified Ouroboros.Consensus.Protocol.Ledger.HotKey as HotKey
import Ouroboros.Consensus.Protocol.Abstract (CanBeLeader, ConsensusConfig)
+import qualified Ouroboros.Consensus.Protocol.Ledger.HotKey as HotKey
import Ouroboros.Consensus.Protocol.Leios (ConsensusConfig (..), EitherLeiosF (..), PraosWithLeios)
-import Ouroboros.Consensus.Protocol.Praos.Common (PraosCanBeLeader)
import Ouroboros.Consensus.Protocol.Praos
- ( PraosCannotForge
- , Praos
+ ( Praos
+ , PraosCannotForge
, PraosParams (..)
, praosCheckCanForge
)
+import Ouroboros.Consensus.Protocol.Praos.Common (PraosCanBeLeader)
import Ouroboros.Consensus.Shelley.Ledger
( ShelleyBlock
, ShelleyCompatible
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Serialisation.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Serialisation.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Serialisation.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Node/Serialisation.hs 2026-10-09 22:02:54.223140462 +0000
@@ -43,8 +43,7 @@
import Ouroboros.Consensus.Ledger.Tables (EmptyMK)
import Ouroboros.Consensus.Node.Run
import Ouroboros.Consensus.Node.Serialisation
-import Ouroboros.Consensus.Protocol.Praos (BasePraosState)
-import Ouroboros.Consensus.Protocol.Praos (SerialisePraosState)
+import Ouroboros.Consensus.Protocol.Praos (BasePraosState, SerialisePraosState)
import Ouroboros.Consensus.Protocol.TPraos
import Ouroboros.Consensus.Shelley.Eras
import Ouroboros.Consensus.Shelley.Ledger
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Abstract.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Abstract.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Abstract.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Abstract.hs 2026-10-09 22:02:54.163141171 +0000
@@ -64,9 +64,9 @@
)
import Ouroboros.Consensus.Protocol.Ledger.HotKey (HotKey)
import Ouroboros.Consensus.Protocol.Praos.Common
- ( HasMaxMajorProtVer
+ ( EitherLeiosF
+ , HasMaxMajorProtVer
, ShelleyProtocolHeader
- , EitherLeiosF
)
import Ouroboros.Consensus.Protocol.Signed (SignedHeader)
import Ouroboros.Consensus.Util.Condense (Condense (..))
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Praos.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Praos.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Praos.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/Praos.hs 2026-10-09 22:02:54.225140438 +0000
@@ -27,12 +27,17 @@
)
import qualified Cardano.Protocol.TPraos.OCert as SL
import Cardano.Slotting.Block (BlockNo)
+import Control.Monad.Except (Except)
import Data.Either (isRight)
import Data.Maybe.Strict (StrictMaybe (..))
-import Control.Monad.Except (Except)
import Data.Word (Word32, Word64)
+import Ouroboros.Consensus.Protocol.Leios
+ ( ConsensusConfig (..)
+ , EitherLeiosF (..)
+ , LeiosCrypto
+ , PraosWithLeios
+ )
import Ouroboros.Consensus.Protocol.Praos
-import Ouroboros.Consensus.Protocol.Leios (ConsensusConfig (..), EitherLeiosF (..), LeiosCrypto, PraosWithLeios)
import Ouroboros.Consensus.Protocol.Praos.Common
( MaxMajorProtVer (MaxMajorProtVer)
, fromCodecEbAnnouncement
@@ -43,12 +48,12 @@
import Ouroboros.Consensus.Shelley.Protocol.Abstract
( ProtoCrypto
, ProtocolHeaderSupportsEnvelope (..)
- , default_pHeaderLeiosContainsCert
- , default_pHeaderLeiosEbAnnouncement
, ProtocolHeaderSupportsKES (..)
, ProtocolHeaderSupportsProtocol (..)
, ShelleyHash (ShelleyHash)
, ShelleyProtocol
+ , default_pHeaderLeiosContainsCert
+ , default_pHeaderLeiosEbAnnouncement
)
import Ouroboros.Consensus.Shelley.Protocol.EnvelopeChecks
( EnvelopeError
@@ -100,7 +105,6 @@
where
body = LeiosCodec.headerBody hdr
-
{-------------------------------------------------------------------------------
Instances
-------------------------------------------------------------------------------}
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/TPraos.hs ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/TPraos.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/TPraos.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/src/shelley/Ouroboros/Consensus/Shelley/Protocol/TPraos.hs 2026-10-09 22:02:54.170141088 +0000
@@ -82,7 +82,6 @@
MaxMajorProtVer maxPV = tpraosMaxMajorPV (tpraosParams cfg)
instance PraosCrypto c => ProtocolHeaderSupportsKES (TPraos c) where
-
configSlotsPerKESPeriod cfg = tpraosSlotsPerKESPeriod $ tpraosParams cfg
verifyHeaderIntegrity slotsPerKESPeriod hdr =
isRight $ SL.verifySignedKES () ocertVkHot t hdrBody hdrSignature
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/test/tools-test/Main.hs ./ouroboros-consensus-cardano/test/tools-test/Main.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-cardano/test/tools-test/Main.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-cardano/test/tools-test/Main.hs 2026-10-09 22:02:56.795110066 +0000
@@ -325,7 +325,8 @@
}
logStep "checking the endorser blocks were certified"
- config <- pInfoConfig <$> mkProtocolInfo (Cardano.CardanoBlockArgs (fixture </> "config.json") Nothing)
+ config <-
+ pInfoConfig <$> mkProtocolInfo (Cardano.CardanoBlockArgs (fixture </> "config.json") Nothing)
certified <- certifiedBlockSlots config db
length certified == length ebs
@? "endorser blocks were announced at "
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Leios.hs ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Leios.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Leios.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Leios.hs 2026-10-09 22:02:59.262080897 +0000
@@ -27,14 +27,15 @@
import Cardano.Ledger.BaseTypes (Milliseconds32 (..), StrictMaybe (..))
import Cardano.Ledger.Chain (ChainChecksPParams (..))
+import qualified Cardano.Ledger.Dijkstra.Forecast as Dijkstra
import Cardano.Ledger.Keys (hashKey)
+import qualified Cardano.Ledger.Shelley.API as SL
import Cardano.Ledger.State (emptyLeiosCommittee)
import Cardano.Protocol.Crypto (Crypto, StandardCrypto)
import qualified Cardano.Protocol.Leios.BlockHeader as LeiosCodec
import Cardano.Slotting.EpochInfo (epochInfoSlotLength)
import Cardano.Slotting.Slot (SlotNo)
import Cardano.Slotting.Time (SlotLength)
-import Ouroboros.Consensus.Block (WithOrigin (NotOrigin))
import Control.DeepSeq (NFData)
import Control.Monad (when)
import Control.Monad.Except (Except, throwError)
@@ -45,14 +46,12 @@
import GHC.Generics (Generic)
import LeiosDemoTypes (certificationGapOfPeriods, ebAnnouncementSize)
import qualified LeiosDemoTypes as Leios
-import NoThunks.Class (NoThunks)
-import qualified Cardano.Ledger.Dijkstra.Forecast as Dijkstra
-import qualified Cardano.Ledger.Shelley.API as SL
import Lens.Micro ((^.))
+import NoThunks.Class (NoThunks)
+import Ouroboros.Consensus.Block (WithOrigin (NotOrigin))
import qualified Ouroboros.Consensus.HardFork.History as History
import Ouroboros.Consensus.Protocol.Abstract
import Ouroboros.Consensus.Protocol.Praos
-import Ouroboros.Consensus.Protocol.TPraos (TPraos)
import Ouroboros.Consensus.Protocol.Praos.Common
( HasMaxMajorProtVer (..)
, PraosCanBeLeader
@@ -63,6 +62,7 @@
)
import Ouroboros.Consensus.Protocol.Praos.Orphans ()
import qualified Ouroboros.Consensus.Protocol.Praos.Views as Views
+import Ouroboros.Consensus.Protocol.TPraos (TPraos)
{-------------------------------------------------------------------------------
The protocol
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos/Common.hs ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos/Common.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos/Common.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos/Common.hs 2026-10-09 22:02:59.336080022 +0000
@@ -12,8 +12,8 @@
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE StandaloneKindSignatures #-}
{-# LANGUAGE TypeApplications #-}
-{-# LANGUAGE TypeFamilyDependencies #-}
{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE TypeFamilyDependencies #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE UndecidableInstances #-}
@@ -396,7 +396,6 @@
-----
-
-----
-- | @a@ for the protocols without Leios, and @b@ for the ones with it.
@@ -412,7 +411,6 @@
type EitherLeiosF :: Type -> Type -> Type -> Type
data family EitherLeiosF proto a :: Type -> Type
-
-----
-- | The announcement as 'LeiosDemoTypes' spells it.
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos.hs ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/Praos.hs 2026-10-09 22:02:59.544077562 +0000
@@ -3,10 +3,10 @@
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE ExistentialQuantification #-}
+{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
@@ -15,8 +15,8 @@
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE StandaloneKindSignatures #-}
{-# LANGUAGE TypeApplications #-}
-{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE UndecidableSuperClasses #-}
{-# LANGUAGE ViewPatterns #-}
@@ -82,8 +82,8 @@
)
import qualified Cardano.Ledger.Keys as SL
import Cardano.Ledger.Shelley (ShelleyEra)
-import Cardano.Ledger.Slot (Duration (Duration), (+*))
import qualified Cardano.Ledger.Shelley.API as SL
+import Cardano.Ledger.Slot (Duration (Duration), (+*))
import qualified Cardano.Ledger.State as SL
import Cardano.Protocol.Crypto (Crypto, KES, StandardCrypto, VRF)
import qualified Cardano.Protocol.Praos.BlockHeader as PraosCodec
@@ -121,27 +121,27 @@
)
import qualified Codec.CBOR.Encoding as CBOR
import Codec.Serialise (Serialise (decode, encode))
-import Control.Exception (throw)
import Control.DeepSeq (NFData)
+import Control.Exception (throw)
import Control.Monad (unless)
import Control.Monad.Except (Except, runExcept, throwError)
import Data.Coerce (coerce)
import Data.Functor.Identity (runIdentity)
import Data.Kind (Type)
import Data.Map.Strict (Map)
-import Data.Typeable (Typeable)
import qualified Data.Map.Strict as Map
import Data.Proxy (Proxy (Proxy))
+import Data.Typeable (Typeable)
import Data.Void (Void)
import Data.Word (Word64)
import GHC.Generics (Generic)
-import Lens.Micro ((^.))
import LeiosDemoTypes
( EbAnnouncement
, LeiosHeaderErr
, decodeEbAnnouncement
, encodeEbAnnouncement
)
+import Lens.Micro ((^.))
import NoThunks.Class (NoThunks)
import Numeric.Natural (Natural)
import Ouroboros.Consensus.Block (WithOrigin (NotOrigin))
@@ -152,8 +152,8 @@
import Ouroboros.Consensus.Protocol.Ledger.Util (isNewEpoch)
import Ouroboros.Consensus.Protocol.Praos.Common
import Ouroboros.Consensus.Protocol.Praos.Orphans ()
-import Ouroboros.Consensus.Protocol.Signed (Signed)
import qualified Ouroboros.Consensus.Protocol.Praos.Views as Views
+import Ouroboros.Consensus.Protocol.Signed (Signed)
import Ouroboros.Consensus.Protocol.TPraos
( ConsensusConfig (TPraosConfig, tpraosEpochInfo, tpraosParams)
, TPraos
@@ -187,7 +187,7 @@
instance Functor (EitherLeiosF (Praos c) a) where
fmap _ (PraosLeiosLeft a) = PraosLeiosLeft a
-instance (() ~ a) => Applicative (EitherLeiosF (Praos c) a) where
+instance () ~ a => Applicative (EitherLeiosF (Praos c) a) where
pure _ = PraosLeiosLeft ()
PraosLeiosLeft () <*> PraosLeiosLeft () = PraosLeiosLeft ()
@@ -408,7 +408,6 @@
enforceSize "AnnouncedBy" 2
MkAnnouncedBy <$> fromCBOR <*> decodeEbAnnouncement
-
deriving anyclass instance
( Typeable proto
, NoThunks (EitherLeiosF proto () (StrictMaybe AnnouncedBy))
@@ -549,15 +548,15 @@
deriving instance
(BasePraosCrypto proto c, Eq (EitherLeiosF proto Void ())) =>
- Eq (BasePraosValidationErr proto c)
+ Eq (BasePraosValidationErr proto c)
deriving instance
(BasePraosCrypto proto c, Typeable proto, NoThunks (EitherLeiosF proto Void ())) =>
- NoThunks (BasePraosValidationErr proto c)
+ NoThunks (BasePraosValidationErr proto c)
deriving instance
(BasePraosCrypto proto c, Show (EitherLeiosF proto Void ())) =>
- Show (BasePraosValidationErr proto c)
+ Show (BasePraosValidationErr proto c)
instance PraosCrypto c => ConsensusProtocol (Praos c) where
type ChainDepState (Praos c) = BasePraosState (Praos c)
@@ -965,7 +964,6 @@
(Right _) ?!: _ = pure ()
(Left e1) ?!: f = throwError $ f e1
-
infix 1 ?!:
-- | 'checkIsLeader' for any Praos.
diff -ru /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/TPraos.hs ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/TPraos.hs
--- /nix/store/4f2v0q4rjqgwn0m641sfkrvv2knfys3y-1kafv79rpxq1j1zbplwf0vdicwcjw4by-source/ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/TPraos.hs 1970-01-01 00:00:01.000000000 +0000
+++ ./ouroboros-consensus-protocol/src/ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol/TPraos.hs 2026-10-09 22:02:59.457078591 +0000
@@ -182,7 +182,7 @@
instance Functor (EitherLeiosF (TPraos c) a) where
fmap _ (TPraosLeiosLeft a) = TPraosLeiosLeft a
-instance (() ~ a) => Applicative (EitherLeiosF (TPraos c) a) where
+instance () ~ a => Applicative (EitherLeiosF (TPraos c) a) where
pure _ = TPraosLeiosLeft ()
TPraosLeiosLeft () <*> TPraosLeiosLeft () = TPraosLeiosLeft ()
*** fourmolu-exe-fourmolu-0.18.0.0 found changes that need addressed first
Loading