Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
0a3e6d7
[wip] Bump Hackage and CHaP index states, add SRPs
geo2a Feb 6, 2026
3d5a159
Use `cardano-crypto-class-2.3.*`
geo2a Feb 12, 2026
6fee683
Use `typed-protocols-1.2.*`
geo2a Feb 12, 2026
390beb8
Bump Plutus and API
geo2a Jan 5, 2026
85e17b8
Bump Network and Consensus packages, adapt to new structure
geo2a Feb 6, 2026
7fb9286
Bump kes-agent
geo2a Feb 6, 2026
2424f0b
Bump ekg-forward
geo2a Mar 10, 2026
ce6a0ce
trace-forward: add new Network tracers
geo2a Feb 10, 2026
09a56e5
Rename Network imports
geo2a Feb 10, 2026
f53cfc7
Integrate tracing changes
geo2a Jan 6, 2026
bfab78d
Config parsing for TxSubmissionLogicVersion and TxSubmissionInitDelay
geo2a Mar 12, 2026
ff7d0ad
Initialise node feature flags as empty
geo2a Mar 12, 2026
8ff3816
Fix `readPeerSnapshotFile`
geo2a Mar 12, 2026
ed2cb90
cardano-tracer: integrate new Network packages
geo2a Feb 24, 2026
36e1ac7
tx-generator: update to latest Ledger and Network
geo2a Feb 25, 2026
86fd771
cardano-testnet: adapt to latest ledger
geo2a Feb 26, 2026
2de4bf1
nix: don't generate Haddocks for cardano-diffusion
johnalotoski Mar 4, 2026
8c1ba86
plutus-scripts-bench: Bump plutus to 1.59
geo2a Mar 4, 2026
51b8acc
[wip] cardano-node: add kes-agent support
fraser-iohk Jun 26, 2025
6f6f5a8
[wip] kes-agent: work on HasTextEnvelope TODOs
geo2a Mar 10, 2026
baf45b2
kes-agent: fix compilation of tx-generator
geo2a Nov 28, 2025
d18ee9f
kes-agent: run kes-agent in cardano-testnet
geo2a Dec 2, 2025
a7b7d1b
cardano-testnet: enable use with kes-agent
geo2a Mar 10, 2026
91700d2
network integration
crocodile-dentist Mar 11, 2026
9fe755b
Removed connectedPeers metrics
coot Mar 11, 2026
b09244b
Removed Cardano.Node.Tracing.Tracers.Diffusion
coot Mar 11, 2026
bd7b7d0
Removed an unused import
coot Mar 11, 2026
5c6fa41
cardano-tracer: fix cardano-tracer-test-ext
geo2a Mar 11, 2026
7701d51
trace-forward: fix tests
geo2a Mar 11, 2026
6e7549c
cardano-note: fix tests
geo2a Mar 11, 2026
1d442be
musl: keep the static liuring.a file in postInstall
johnalotoski Mar 10, 2026
f70d5a8
ci: fix aarch64-linux.musl ghc-iserv failures
johnalotoski Mar 12, 2026
4c4af5e
cardano-node: Migrate to Network-provided topology types
geo2a Mar 12, 2026
eb0332a
cardano-testnet: adapt to NetworkTopology type changes
geo2a Mar 12, 2026
d438368
cleanup
crocodile-dentist Mar 13, 2026
a38f95e
disable txsubmission init delay in tests
crocodile-dentist Mar 13, 2026
3c79501
Bump Network to 1.1
geo2a Mar 17, 2026
c5a3193
cardano-submit-api: adapt to API and Network changes
geo2a Mar 18, 2026
5cf7fc1
tx-generator: adapt to changes in API and Network
geo2a Mar 18, 2026
44e38b8
cardano-testnet: adapt to changes in `TxSubmitResult`
geo2a Mar 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions bench/locli/locli.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -126,8 +126,8 @@ library
, fingertree == 0.1.5.0
, hashable
, optparse-applicative
, ouroboros-consensus
, ouroboros-network-api ^>= 0.16
, ouroboros-consensus:ouroboros-consensus
, ouroboros-network:api ^>= 1.1
, sop-core
, split
, sqlite-easy >= 1.1.0.1
Expand Down
6 changes: 3 additions & 3 deletions bench/plutus-scripts-bench/plutus-scripts-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,9 @@ library
--------------------------
build-depends:
, cardano-api ^>=10.24.1
, plutus-ledger-api ^>=1.58
, plutus-tx ^>=1.58
, plutus-tx-plugin ^>=1.58
, plutus-ledger-api ^>=1.59
, plutus-tx ^>=1.59
, plutus-tx-plugin ^>=1.59

------------------------
-- Non-IOG dependencies
Expand Down
2 changes: 1 addition & 1 deletion bench/tx-generator/src/Cardano/Benchmarking/Command.hs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ import Data.Foldable (for_)
import Data.Maybe (catMaybes)
import qualified Data.Text.IO as Text
import Options.Applicative as Opt
import Ouroboros.Network.NodeToClient (IOManager, withIOManager)
import Cardano.Network.NodeToClient (IOManager, withIOManager)

import System.Exit

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,9 @@ import Ouroboros.Network.KeepAlive
import Ouroboros.Network.Magic
import Ouroboros.Network.Mux (MiniProtocolCb (..),
OuroborosApplication (..), OuroborosBundle, RunMiniProtocol (..))
import Ouroboros.Network.NodeToClient (chainSyncPeerNull)
import Ouroboros.Network.NodeToNode (NetworkConnectTracers (..))
import qualified Ouroboros.Network.NodeToNode as NtN
import Cardano.Network.NodeToClient (chainSyncPeerNull)
import Cardano.Network.NodeToNode (NetworkConnectTracers (..))
import qualified Cardano.Network.NodeToNode as NtN
import Ouroboros.Network.PeerSelection.PeerSharing (PeerSharing (..))
import Ouroboros.Network.PeerSelection.PeerSharing.Codec (decodeRemoteAddress,
encodeRemoteAddress)
Expand Down
2 changes: 1 addition & 1 deletion bench/tx-generator/src/Cardano/Benchmarking/LogTypes.hs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ import Cardano.TxGenerator.Types (TPSRate)
import Ouroboros.Consensus.Ledger.SupportsMempool (GenTxId)
import Ouroboros.Network.Driver (TraceSendRecv (..))
import Ouroboros.Network.IOManager (IOManager)
import Ouroboros.Network.NodeToNode (NodeToNodeVersion, RemoteConnectionId)
import Cardano.Network.NodeToNode (NodeToNodeVersion, RemoteConnectionId)
import Ouroboros.Network.Protocol.Handshake.Type (Handshake)
import Ouroboros.Network.Protocol.TxSubmission2.Type (TxSubmission2)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ module Cardano.Benchmarking.OuroborosImports

import Cardano.Api (BlockType (..), ConsensusModeParams (..), EpochSlots (..),
LocalNodeConnectInfo (..), NetworkId (..), PaymentKey, SigningKey, SocketPath,
TxInMode, TxValidationErrorInCardanoMode, protocolInfo, submitTxToNodeLocal)
TxInMode, TxSubmitResult (..), protocolInfo, submitTxToNodeLocal)

import Cardano.CLI.Type.Common (SigningKeyFile)
import Cardano.Ledger.Shelley.Genesis (ShelleyGenesis)
Expand All @@ -35,7 +35,6 @@ import Ouroboros.Consensus.Config (TopLevelConfig, configBlock, config
import Ouroboros.Consensus.Config.SupportsNode (ConfigSupportsNode (..), getNetworkMagic)
import Ouroboros.Consensus.Node (ProtocolInfo (..))
import Ouroboros.Consensus.Shelley.Eras (StandardCrypto)
import Ouroboros.Network.Protocol.LocalTxSubmission.Type (SubmitResult (..))

import Prelude

Expand All @@ -61,4 +60,4 @@ makeLocalConnectInfo :: NetworkId -> SocketPath -> LocalNodeConnectInfo
makeLocalConnectInfo networkId socketPath
= LocalNodeConnectInfo (CardanoModeParams (EpochSlots 21600)) networkId socketPath

type LocalSubmitTx = (TxInMode -> IO (SubmitResult TxValidationErrorInCardanoMode))
type LocalSubmitTx = (TxInMode -> IO TxSubmitResult)
10 changes: 7 additions & 3 deletions bench/tx-generator/src/Cardano/Benchmarking/Script/Core.hs
Original file line number Diff line number Diff line change
Expand Up @@ -207,16 +207,20 @@ waitForEra era = do
liftIO $ threadDelay 1_000_000
waitForEra era

localSubmitTx :: TxInMode -> ActionM (SubmitResult TxValidationErrorInCardanoMode)
localSubmitTx :: TxInMode -> ActionM TxSubmitResult
localSubmitTx tx = do
submit <- getLocalSubmitTx
ret <- liftIO $ submit tx
case ret of
SubmitSuccess -> return ret
SubmitFail e -> do
TxSubmitSuccess -> return ret
TxSubmitFail e -> do
let msg = concat [ "local submit failed: " , show e , " (" , show tx , ")" ]
traceDebug msg
return ret
TxSubmitError e -> do
let msg = concat [ "local submit error: " , show e , " (" , show tx , ")" ]
traceDebug msg
return ret
-- throwE $ ApiError msg

-- TODO:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ import Cardano.Node.Protocol.Types (SomeConsensusProtocol)
import Cardano.TxGenerator.PlutusContext (PlutusBudgetSummary)
import Cardano.TxGenerator.Setup.NixService as Nix (NixServiceOptions)
import Cardano.TxGenerator.Types (TxGenError (..))
import Ouroboros.Network.NodeToClient (IOManager)
import Cardano.Network.NodeToClient (IOManager)

import Prelude

Expand Down
28 changes: 9 additions & 19 deletions bench/tx-generator/src/Cardano/Benchmarking/Tracer.hs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ import qualified Cardano.Logging.Types as Net
import Cardano.Node.Startup
import Cardano.Node.Tracing.NodeInfo ()
import Ouroboros.Network.IOManager (IOManager)
import qualified Ouroboros.Network.Protocol.TxSubmission2.Type as TxSubmission
import Ouroboros.Network.Tracing ()

import Control.Exception (SomeException (..))
import Control.Monad (forM, guard)
Expand All @@ -49,6 +51,8 @@ import Data.Maybe (fromMaybe)
import qualified Data.Text as Text
import Data.Time.Clock
import GHC.Generics
import Network.Mux.Tracing ()
import qualified Network.TypedProtocol.Codec as TypedProtocol

import Trace.Forward.Forwarding (InitForwardingConfig (..), initForwardingDelayed)
import Trace.Forward.Utils.TraceObject
Expand Down Expand Up @@ -395,30 +399,16 @@ instance MetaTrace NodeToNodeSubmissionTrace where
, Namespace [] ["TxList"]
]

instance LogFormatting SendRecvConnect where
instance (Show txid, Show tx) => LogFormatting (TypedProtocol.AnyMessage (TxSubmission.TxSubmission2 txid tx)) where
forHuman = Text.pack . show
forMachine _ _ = KeyMap.fromList [ "kind" .= A.String "SendRecvConnect" ]
forMachine _ _ = KeyMap.fromList [ "kind" .= A.String "TxSubmission2" ]

instance MetaTrace SendRecvConnect where
namespaceFor _ = Namespace [] ["ReqIdsBlocking"]
instance MetaTrace (TypedProtocol.AnyMessage (TxSubmission.TxSubmission2 tx a)) where
namespaceFor _ = Namespace [] ["TxSubmission2"]
severityFor _ _ = Just Info

documentFor _ = Just ""

allNamespaces = [
Namespace [] ["SendRecvConnect"]
]

instance LogFormatting SendRecvTxSubmission2 where
forHuman = Text.pack . show
forMachine _ _ = KeyMap.fromList [ "kind" .= A.String "SendRecvTxSubmission2" ]

instance MetaTrace SendRecvTxSubmission2 where
namespaceFor _ = Namespace [] ["SendRecvTxSubmission2"]
severityFor _ _ = Just Info

documentFor _ = Just ""

allNamespaces = [
Namespace [] ["SendRecvTxSubmission2"]
Namespace [] ["TxSubmission2"]
]
25 changes: 13 additions & 12 deletions bench/tx-generator/src/Cardano/TxGenerator/ProtocolParameters.hs
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ import qualified Cardano.Ledger.Babbage.Core as Ledger
import qualified Cardano.Ledger.BaseTypes as Ledger
import qualified Cardano.Ledger.Coin as L
import qualified Cardano.Ledger.Plutus.Language as Plutus
import qualified Cardano.Ledger.Compactible as L

import Data.Aeson ((.!=), (.:), (.:?), (.=))
import qualified Data.Aeson as Aeson
Expand Down Expand Up @@ -379,8 +380,8 @@ toShelleyCommonPParams
protVer <- mkProtVer protocolParamProtocolVersion
let ppCommon =
emptyPParams
& ppMinFeeAL .~ protocolParamTxFeePerByte
& ppMinFeeBL .~ protocolParamTxFeeFixed
& ppTxFeePerByteL .~ (CoinPerByte . L.compactCoinOrError $ protocolParamTxFeePerByte)
& ppTxFeeFixedL .~ protocolParamTxFeeFixed
& ppMaxBBSizeL .~ fromIntegral protocolParamMaxBlockBodySize
& ppMaxTxSizeL .~ fromIntegral protocolParamMaxTxSize
& ppMaxBHSizeL .~ fromIntegral protocolParamMaxBlockHeaderSize
Expand Down Expand Up @@ -457,9 +458,9 @@ toAlonzoCommonPParams
& ppPricesL .~ prices
& ppMaxTxExUnitsL .~ toAlonzoExUnits maxTxExUnits
& ppMaxBlockExUnitsL .~ toAlonzoExUnits maxBlockExUnits
& ppMaxValSizeL .~ maxValueSize
& ppCollateralPercentageL .~ collateralPercent
& ppMaxCollateralInputsL .~ maxCollateralInputs
& ppMaxValSizeL .~ fromIntegral maxValueSize
& ppCollateralPercentageL .~ fromIntegral collateralPercent
& ppMaxCollateralInputsL .~ fromIntegral maxCollateralInputs
pure ppAlonzoCommon

-- Was removed in "cardano-api" module "Cardano.Api.Internal.ProtocolParameters"
Expand Down Expand Up @@ -495,7 +496,7 @@ toBabbagePParams
requireParam "protocolParamUTxOCostPerByte" Right protocolParamUTxOCostPerByte
let ppBabbage =
ppAlonzoCommon
& ppCoinsPerUTxOByteL .~ CoinPerByte utxoCostPerByte
& ppCoinsPerUTxOByteL .~ CoinPerByte (L.compactCoinOrError utxoCostPerByte)
pure ppBabbage

-- Was removed in "cardano-api" module "Cardano.Api.Internal.ProtocolParameters"
Expand Down Expand Up @@ -531,8 +532,8 @@ fromShelleyCommonPParams pp =
, protocolParamMaxBlockHeaderSize = fromIntegral $ pp ^. ppMaxBHSizeL
, protocolParamMaxBlockBodySize = fromIntegral $ pp ^. ppMaxBBSizeL
, protocolParamMaxTxSize = fromIntegral $ pp ^. ppMaxTxSizeL
, protocolParamTxFeeFixed = pp ^. ppMinFeeBL
, protocolParamTxFeePerByte = pp ^. ppMinFeeAL
, protocolParamTxFeeFixed = pp ^. ppTxFeeFixedL
, protocolParamTxFeePerByte = L.fromCompact . L.unCoinPerByte $ pp ^. ppTxFeePerByteL
, protocolParamStakeAddressDeposit = pp ^. ppKeyDepositL
, protocolParamStakePoolDeposit = pp ^. ppPoolDepositL
, protocolParamMinPoolCost = pp ^. ppMinPoolCostL
Expand Down Expand Up @@ -579,9 +580,9 @@ fromAlonzoPParams pp =
, protocolParamPrices = Just . fromAlonzoPrices $ pp ^. ppPricesL
, protocolParamMaxTxExUnits = Just . fromAlonzoExUnits $ pp ^. ppMaxTxExUnitsL
, protocolParamMaxBlockExUnits = Just . fromAlonzoExUnits $ pp ^. ppMaxBlockExUnitsL
, protocolParamMaxValueSize = Just $ pp ^. ppMaxValSizeL
, protocolParamCollateralPercent = Just $ pp ^. ppCollateralPercentageL
, protocolParamMaxCollateralInputs = Just $ pp ^. ppMaxCollateralInputsL
, protocolParamMaxValueSize = Just $ fromIntegral (pp ^. ppMaxValSizeL)
, protocolParamCollateralPercent = Just $ fromIntegral (pp ^. ppCollateralPercentageL)
, protocolParamMaxCollateralInputs = Just $ fromIntegral (pp ^. ppMaxCollateralInputsL)
}

fromExactlyAlonzoPParams
Expand All @@ -599,7 +600,7 @@ fromBabbagePParams
-> ProtocolParameters
fromBabbagePParams pp =
(fromAlonzoPParams pp)
{ protocolParamUTxOCostPerByte = Just . unCoinPerByte $ pp ^. ppCoinsPerUTxOByteL
{ protocolParamUTxOCostPerByte = Just . L.fromCompact . unCoinPerByte $ pp ^. ppCoinsPerUTxOByteL
, protocolParamDecentralization = Nothing
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import Cardano.Node.Protocol.Cardano
import Cardano.Node.Protocol.Types (SomeConsensusProtocol (..))
import Cardano.Node.Types (ConfigYamlFilePath (..), GenesisFile,
NodeProtocolConfiguration (..), NodeShelleyProtocolConfiguration (..),
ProtocolFilepaths (..))
ProtocolFilepaths (..), KESSource(..))
import Cardano.TxGenerator.Types
import qualified Ouroboros.Consensus.Cardano.Node as Consensus

Expand Down Expand Up @@ -70,7 +70,7 @@ mkNodeConfig configFp_
ProtocolFilepaths
{ byronCertFile = Just ""
, byronKeyFile = Just ""
, shelleyKESFile = Just ""
, shelleyKESSource = Just (KESKeyFilePath "")
, shelleyVRFFile = Just ""
, shelleyCertFile = Just ""
, shelleyBulkCredsFile = Just ""
Expand Down
12 changes: 5 additions & 7 deletions bench/tx-generator/tx-generator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -114,13 +114,15 @@ library
, cardano-crypto-class
, cardano-crypto-wrapper
, cardano-data
, cardano-diffusion ^>= 1.0
, cardano-git-rev ^>= 0.2.2
, cardano-ledger-alonzo
, cardano-ledger-api
, cardano-ledger-byron
, cardano-ledger-core
, cardano-node
, cardano-prelude
, cardano-strict-containers >=0.1
, contra-tracer
, cborg >= 0.2.2 && < 0.3
, containers
Expand All @@ -137,16 +139,12 @@ library
, network
, network-mux
, optparse-applicative
, ouroboros-consensus >= 0.6
, ouroboros-consensus-cardano >= 0.5
, ouroboros-consensus-diffusion >= 0.7.0
, ouroboros-network
, ouroboros-network-api
, ouroboros-network-framework
, ouroboros-network-protocols
, ouroboros-consensus:{ouroboros-consensus, cardano, diffusion} >= 1.0
, ouroboros-network:{api, framework, framework-tracing, ouroboros-network, protocols} >= 1.1
, plutus-ledger-api
, plutus-tx
, random
, typed-protocols ^>= 1.2
, serialise
, streaming
, cardano-ledger-shelley
Expand Down
22 changes: 19 additions & 3 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ repository cardano-haskell-packages
-- See CONTRIBUTING for information about these, including some Nix commands
-- you need to run if you change them
index-state:
, hackage.haskell.org 2026-02-06T20:27:32Z
, cardano-haskell-packages 2026-03-03T10:50:34Z
, hackage.haskell.org 2026-02-17T10:15:41Z
, cardano-haskell-packages 2026-03-17T16:28:00Z

constraints:
-- haskell.nix patch does not work for 1.6.8
Expand All @@ -41,7 +41,7 @@ packages:
extra-packages: alex

program-options
ghc-options: -Werror
-- ghc-options: -Werror

test-show-details: direct

Expand Down Expand Up @@ -77,3 +77,19 @@ if impl(ghc >= 9.12)
-- IMPORTANT
-- Do NOT add more source-repository-package stanzas here unless they are strictly
-- temporary! Please read the section in CONTRIBUTING about updating dependencies.

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-api
tag: 95686930a5d6bc5fa75df62fa1a27618e189d402
--sha256: sha256-DYTTajLfkYRsXO/QGwnB1dPq2REl1jj0HbSvHxQ8hZ4=
subdir:
cardano-api

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli
tag: c4cb83020f8b26f67219193d4251d59376b6d5f2
--sha256: sha256-9FK+/1Q59yn/f02LDK5xNFkeEpKz48S7vAYTKwQGMME=
subdir:
cardano-cli
12 changes: 5 additions & 7 deletions cardano-node-chairman/cardano-node-chairman.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -44,17 +44,15 @@ executable cardano-node-chairman
build-depends: cardano-api
, cardano-crypto-class
, cardano-git-rev ^>= 0.2.2
, cardano-ledger-core ^>= 1.18
, cardano-ledger-core ^>= 1.19
, cardano-node ^>= 10.6
, cardano-prelude
, containers
, contra-tracer
, io-classes:{io-classes, strict-stm, si-timers}
, io-classes:{io-classes, strict-stm, si-timers} ^>= 1.8
, optparse-applicative
, ouroboros-consensus
, ouroboros-consensus-cardano
, ouroboros-network-api
, ouroboros-network-protocols
, ouroboros-consensus:{ouroboros-consensus, cardano}
, ouroboros-network:{api, protocols}
, text
, time

Expand All @@ -69,7 +67,7 @@ test-suite chairman-tests

build-depends: , cardano-api
, cardano-testnet
, cardano-crypto-class ^>=2.2.3.2
, cardano-crypto-class ^>=2.3
, data-default-class
, filepath
, hedgehog
Expand Down
1 change: 1 addition & 0 deletions cardano-node/app/cardano-node.hs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
{-# LANGUAGE QuantifiedConstraints #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE TemplateHaskell #-}
Expand Down
Loading
Loading