Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
15ec526
[wip] Bump Hackage and CHaP index states, add SRPs
geo2a Feb 6, 2026
763b53a
Use `cardano-crypto-class-2.3.*`
geo2a Feb 12, 2026
a4786dd
Use `typed-protocols-1.2.*`
geo2a Feb 12, 2026
9f1e43e
Bump Plutus and API
geo2a Jan 5, 2026
533c217
Bump Network and Consensus packages, adapt to new structure
geo2a Feb 6, 2026
dada5a8
Bump kes-agent
geo2a Feb 6, 2026
8981a49
Bump ekg-forward
geo2a Mar 10, 2026
0cadcdb
trace-forward: add new Network tracers
geo2a Feb 10, 2026
2f30c90
Rename Network imports
geo2a Feb 10, 2026
258bad4
Integrate tracing changes
geo2a Jan 6, 2026
20eade4
Config parsing for TxSubmissionLogicVersion and TxSubmissionInitDelay
geo2a Mar 12, 2026
24636ef
Initialise node feature flags as empty
geo2a Mar 12, 2026
b8ec2c1
Fix `readPeerSnapshotFile`
geo2a Mar 12, 2026
c48d028
cardano-tracer: integrate new Network packages
geo2a Feb 24, 2026
acbbfa7
tx-generator: update to latest Ledger and Network
geo2a Feb 25, 2026
beb1f32
cardano-testnet: adapt to latest ledger
geo2a Feb 26, 2026
115ec54
nix: don't generate Haddocks for cardano-diffusion
johnalotoski Mar 4, 2026
0a340e7
plutus-scripts-bench: Bump plutus to 1.59
geo2a Mar 4, 2026
af36b47
[wip] cardano-node: add kes-agent support
fraser-iohk Jun 26, 2025
b460012
[wip] kes-agent: work on HasTextEnvelope TODOs
geo2a Mar 10, 2026
8933b96
kes-agent: fix compilation of tx-generator
geo2a Nov 28, 2025
bdf6513
kes-agent: run kes-agent in cardano-testnet
geo2a Dec 2, 2025
40bf024
cardano-testnet: enable use with kes-agent
geo2a Mar 10, 2026
28fe12a
network integration
crocodile-dentist Mar 11, 2026
87bc0c1
Removed connectedPeers metrics
coot Mar 11, 2026
496c9fb
Removed Cardano.Node.Tracing.Tracers.Diffusion
coot Mar 11, 2026
8ef1431
Removed an unused import
coot Mar 11, 2026
79b2eef
cardano-tracer: fix cardano-tracer-test-ext
geo2a Mar 11, 2026
86d8002
trace-forward: fix tests
geo2a Mar 11, 2026
084e440
cardano-note: fix tests
geo2a Mar 11, 2026
41905c2
musl: keep the static liuring.a file in postInstall
johnalotoski Mar 10, 2026
38e4acc
ci: fix aarch64-linux.musl ghc-iserv failures
johnalotoski Mar 12, 2026
f540923
cardano-node: Migrate to Network-provided topology types
geo2a Mar 12, 2026
9456155
cardano-testnet: adapt to NetworkTopology type changes
geo2a Mar 12, 2026
95cc60f
cleanup
crocodile-dentist Mar 13, 2026
e72bcce
disable txsubmission init delay in tests
crocodile-dentist Mar 13, 2026
a0b1e2c
Bump Network to 1.1
geo2a Mar 17, 2026
5e234f3
[wip] Add SRP for ekg-forward
geo2a Mar 17, 2026
31c820b
nixosTests: add ci test for db tools vs node compatibility
johnalotoski Mar 5, 2026
33245fb
releaseBins: add kes-agent bins for linux arches only
johnalotoski Mar 3, 2026
9e508e3
cardano-tracer: rename runCommandNoCCLocal for nixpkgs 25.11
johnalotoski Feb 13, 2026
69706b1
releaseBins: add dmq-node todo
johnalotoski Mar 5, 2026
bb45606
oci: improve the launch run-node script
johnalotoski Mar 6, 2026
72abe42
oci: add tracer network opts to run-node script
johnalotoski Mar 6, 2026
dfc8994
oci: improve the launch run-client script
johnalotoski Mar 6, 2026
8ef3932
oci: improve the launch run-tracer script
johnalotoski Mar 6, 2026
24bb251
oci: improve the node entrypoint
johnalotoski Mar 6, 2026
6f733f8
oci: improve the tracer entrypoint
johnalotoski Mar 6, 2026
b810329
nodeNixosSvc: add independent lsm db paths and asserts
johnalotoski Mar 6, 2026
f706ea4
sre: todo prior to tagging
johnalotoski Mar 6, 2026
8565251
oci/nodeNixosSvc: add kes agent cli arg support
johnalotoski Mar 10, 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 @@ -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
3 changes: 2 additions & 1 deletion bench/tx-generator/src/Cardano/TxGenerator/Utils.hs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import qualified Cardano.Ledger.Coin as L
import Cardano.TxGenerator.Types

import Data.Maybe (fromJust)
import Data.Maybe.Strict
import GHC.Stack


Expand Down Expand Up @@ -76,7 +77,7 @@ mkTxFee = TxFeeExplicit shelleyBasedEra
-- `TxValidityNoUpperBound` with the constraint of `IsShelleyBasedEra`.
mkTxValidityUpperBound :: forall era. IsShelleyBasedEra era => SlotNo -> TxValidityUpperBound era
mkTxValidityUpperBound slotNo =
TxValidityUpperBound (fromJust $ forEraMaybeEon (cardanoEra @era)) (Just slotNo)
TxValidityUpperBound (fromJust $ forEraMaybeEon (cardanoEra @era)) (SJust slotNo)

-- | `mkTxInModeCardano` never uses the `TxInByronSpecial` constructor
-- because its type enforces it being a Shelley-based era.
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}
, plutus-ledger-api
, plutus-tx
, random
, typed-protocols ^>= 1.2
, serialise
, streaming
, cardano-ledger-shelley
Expand Down
30 changes: 27 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-17T12:33:13Z

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,27 @@ 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: 3aa87d596ec1c3b70eea50dcd02ab5d974beb9dc
--sha256: sha256-1eyMjI46uLJEz2qWkl6NZ1gpKGeSLudW831VTSxIN3w=
subdir:
cardano-api

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli
tag: e8b67c281d815c0b3a19d3e33f008924e4bad868
--sha256: sha256-SP6u4yMHUza9DTrBkB+9kCZjw3IpLLLuTCkHS7wDYq4=
subdir:
cardano-cli

source-repository-package
type: git
location: https://github.com/input-output-hk/ekg-forward
tag: 2cb3373b05c69a90f5256bcc59add9e8a6b56a56
--sha256: sha256-uJNiMzczALkI26gVXZBNirjAUJhBh0qPUdXgBjG3Tts=
subdir:
.
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