Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 10.2.0 #6050

Draft
wants to merge 33 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
4e78f00
Use cardano-ledger-conway 1.17.3
crocodile-dentist Nov 26, 2024
de3c809
cardanoProtocolVersion and CHaP bump
crocodile-dentist Nov 26, 2024
36871ba
Merge pull request #6043 from IntersectMBO/mwojtowicz/10.1.3
crocodile-dentist Nov 27, 2024
a2c4bcb
Merge tag '10.1.3' into HEAD
neilmayhew Dec 5, 2024
236d596
Bump Hackage and CHaP
neilmayhew Dec 4, 2024
53560dd
switch to ekg-wai backend from ekg
mgmeier Oct 21, 2024
c899f62
trace-forward: update to typed-protocols-0.3
Icelandjack Oct 30, 2024
c26c6a1
trace-resources: update version bound in cardano-node
neilmayhew Dec 4, 2024
90e00ee
plutus upgrade: use emptyMintValue instead of mempty
neilmayhew Dec 10, 2024
71c4b71
plutus upgrade: increase version bounds in plutus-scripts-bench
neilmayhew Dec 10, 2024
a1ce0f4
cardano-ledger upgrade: increase version bounds
neilmayhew Dec 4, 2024
eec4bca
cardano-ledger upgrade: adjust to removed constructors
neilmayhew Dec 5, 2024
2f73951
cardano-ledger upgrade: adjust to use of Mismatch in predicate failures
neilmayhew Dec 6, 2024
9e80ef8
cardano-ledger upgrade: accommodate the new VRFVerKeyHash type
neilmayhew Dec 6, 2024
26d857a
ouroboros-network upgrade: increase version bounds
neilmayhew Dec 4, 2024
849ef06
ouroboros-network upgrade: use the new namespace for Network.Mux types
neilmayhew Dec 5, 2024
e25f462
ouroboros-network upgrade: connectToNode changes
crocodile-dentist Dec 5, 2024
7bd0829
ouroboros-network upgrade: update NodeToClient versions
neilmayhew Dec 5, 2024
e192306
ouroboros-network-upgrade: AnyMessage changes
neilmayhew Dec 5, 2024
6def29e
ouroboros-network upgrade: adjust to namespace changes
neilmayhew Dec 5, 2024
bb3f97c
ouroboros-network upgrade: accommodate new and changed constructors
neilmayhew Dec 5, 2024
70802f9
ouroboros-network upgrade: instances for stateful protocol messages
neilmayhew Dec 6, 2024
70a5b79
ouroboros-network upgrade: support the KeepAlive message type
neilmayhew Dec 6, 2024
36844e6
ouroboros-network upgrade: add new information to configuration
neilmayhew Dec 10, 2024
9c55fe9
ouroboros-network upgrade: add LedgerPeerSnapshot reader to config
neilmayhew Dec 10, 2024
00a7ab4
ouroboros-network upgrade: blocking style changes
neilmayhew Dec 10, 2024
9785315
ouroboros-consensus upgrade: adjust to ResourceRegistry being spun off
neilmayhew Dec 5, 2024
b501de7
ouroboros-consensus upgrade: adjust to changed constructors and types
neilmayhew Dec 5, 2024
5aa9edd
ouroboros-consensus upgrade: TriggerHardFork changes
neilmayhew Dec 6, 2024
9546937
ouroboros-consensus upgrade: integrate ledger snapshot checksum
geo2a Dec 4, 2024
2b1d1ce
cardano-api upgrade: increase version bounds
neilmayhew Dec 4, 2024
696032a
cardano-api upgrade: use convert instead of deprecated conwayEraOnwar…
neilmayhew Dec 10, 2024
222bb5d
Add srp's
neilmayhew Dec 4, 2024
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
2 changes: 1 addition & 1 deletion bench/locli/locli.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ library
, hashable
, optparse-applicative-fork >= 0.18.1
, ouroboros-consensus
, ouroboros-network-api ^>= 0.10
, ouroboros-network-api ^>= 0.11
, sop-core
, split
, statistics
Expand Down
8 changes: 4 additions & 4 deletions bench/plutus-scripts-bench/plutus-scripts-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,10 @@ library
-- IOG dependencies
--------------------------
build-depends:
, cardano-api ^>=10.1
, plutus-ledger-api ^>=1.36
, plutus-tx ^>=1.36
, plutus-tx-plugin ^>=1.36
, cardano-api ^>=10.3
, plutus-ledger-api ^>=1.37
, plutus-tx ^>=1.37
, plutus-tx-plugin ^>=1.37

------------------------
-- Non-IOG dependencies
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ module Cardano.Benchmarking.GeneratorTx.NodeToNode
, benchmarkConnectTxSubmit
) where

import Cardano.Prelude (forever, liftIO)
import Cardano.Prelude (forever, liftIO, throwIO)
import Prelude

import "contra-tracer" Control.Tracer (Tracer (..))
Expand All @@ -25,7 +25,8 @@ import Data.ByteString.Lazy (ByteString)
import Data.Foldable (fold)
import qualified Data.Map.Strict as Map
import Data.Proxy (Proxy (..))
import Data.Void (Void)
import Data.Void (Void, absurd)
import qualified Network.Mux as Mux
import Network.Socket (AddrInfo (..))
import System.Random (newStdGen)

Expand All @@ -45,7 +46,7 @@ import Ouroboros.Network.DeltaQ (defaultGSV)
import Ouroboros.Network.Driver (runPeer, runPeerWithLimits)
import Ouroboros.Network.KeepAlive
import Ouroboros.Network.Magic
import Ouroboros.Network.Mux (MiniProtocolCb (..), MuxMode (..),
import Ouroboros.Network.Mux (MiniProtocolCb (..),
OuroborosApplication (..), OuroborosBundle, RunMiniProtocol (..))
import Ouroboros.Network.NodeToClient (chainSyncPeerNull)
import Ouroboros.Network.NodeToNode (NetworkConnectTracers (..))
Expand Down Expand Up @@ -84,8 +85,8 @@ benchmarkConnectTxSubmit
-- ^ the particular txSubmission peer
-> IO ()

benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codecConfig networkMagic remoteAddr myTxSubClient =
NtN.connectTo
benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codecConfig networkMagic remoteAddr myTxSubClient = do
done <- NtN.connectTo
(socketSnocket envIOManager)
NetworkConnectTracers {
nctMuxTracer = mempty,
Expand All @@ -94,6 +95,11 @@ benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codec
peerMultiplex
(addrAddress <$> Nothing)
(addrAddress remoteAddr)
case done of
Left err -> throwIO err
Right choice -> case choice of
Left () -> return ()
Right void -> absurd void
where
ownPeerSharing = PeerSharingDisabled
mkApp :: OuroborosBundle mode initiatorCtx responderCtx bs m a b
Expand All @@ -114,7 +120,7 @@ benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codec
peerMultiplex :: NtN.Versions NodeToNodeVersion
NtN.NodeToNodeVersionData
(OuroborosApplication
'InitiatorMode
'Mux.InitiatorMode
(MinimalInitiatorContext NtN.RemoteAddress)
(ResponderContext NtN.RemoteAddress)
ByteString IO () Void)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ import Cardano.Tracing.OrphanInstances.Consensus ()
import Cardano.Tracing.OrphanInstances.Network ()
import Cardano.Tracing.OrphanInstances.Shelley ()

import Ouroboros.Network.Protocol.TxSubmission2.Type (TokBlockingStyle (..))
import Ouroboros.Network.Protocol.TxSubmission2.Type (SingBlockingStyle (..))

import Cardano.Api hiding (Active)
import Cardano.TxGenerator.Types (TPSRate, TxGenError)
Expand Down Expand Up @@ -124,11 +124,11 @@ mkSubmissionSummary startTime reportsRefs
txStreamSource :: forall era. MVar (StreamState (TxStream IO era)) -> TpsThrottle -> TxSource era
txStreamSource streamRef tpsThrottle = Active worker
where
worker :: forall m blocking . MonadIO m => TokBlockingStyle blocking -> Req -> m (TxSource era, [Tx era])
worker :: forall m blocking . MonadIO m => SingBlockingStyle blocking -> Req -> m (TxSource era, [Tx era])
worker blocking req = do
(done, txCount) <- case blocking of
TokBlocking -> liftIO $ consumeTxsBlocking tpsThrottle req
TokNonBlocking -> liftIO $ consumeTxsNonBlocking tpsThrottle req
SingBlocking -> liftIO $ consumeTxsBlocking tpsThrottle req
SingNonBlocking -> liftIO $ consumeTxsNonBlocking tpsThrottle req
txList <- liftIO $ unFold txCount
case done of
Stop -> return (Exhausted, txList)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ import qualified Ouroboros.Consensus.Shelley.Ledger.Mempool as Mempool (TxId (Sh
import Ouroboros.Network.Protocol.TxSubmission2.Client (ClientStIdle (..),
ClientStTxIds (..), ClientStTxs (..), TxSubmissionClient (..))
import Ouroboros.Network.Protocol.TxSubmission2.Type (BlockingReplyList (..),
NumTxIdsToAck (..), NumTxIdsToReq (..), TokBlockingStyle (..))
NumTxIdsToAck (..), NumTxIdsToReq (..), SingBlockingStyle (..))
import Ouroboros.Network.SizeInBytes

import Prelude (error, fail)
Expand All @@ -71,14 +71,14 @@ data TxSource era
= Exhausted
| Active (ProduceNextTxs era)

type ProduceNextTxs era = (forall m blocking . MonadIO m => TokBlockingStyle blocking -> Req -> m (TxSource era, [Tx era]))
type ProduceNextTxs era = (forall m blocking . MonadIO m => SingBlockingStyle blocking -> Req -> m (TxSource era, [Tx era]))

produceNextTxs :: forall m blocking era . MonadIO m => TokBlockingStyle blocking -> Req -> LocalState era -> m (LocalState era, [Tx era])
produceNextTxs :: forall m blocking era . MonadIO m => SingBlockingStyle blocking -> Req -> LocalState era -> m (LocalState era, [Tx era])
produceNextTxs blocking req (txProducer, unack, stats) = do
(newTxProducer, txList) <- produceNextTxs' blocking req txProducer
return ((newTxProducer, unack, stats), txList)

produceNextTxs' :: forall m blocking era . MonadIO m => TokBlockingStyle blocking -> Req -> TxSource era -> m (TxSource era, [Tx era])
produceNextTxs' :: forall m blocking era . MonadIO m => SingBlockingStyle blocking -> Req -> TxSource era -> m (TxSource era, [Tx era])
produceNextTxs' _ _ Exhausted = return (Exhausted, [])
produceNextTxs' blocking req (Active callback) = callback blocking req

Expand All @@ -99,10 +99,10 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
TxSubmissionClient $
pure $ client (initialTxSource, UnAcked [], SubmissionThreadStats 0 0 0)
where
discardAcknowledged :: TokBlockingStyle a -> Ack -> LocalState era -> m (LocalState era)
discardAcknowledged :: SingBlockingStyle a -> Ack -> LocalState era -> m (LocalState era)
discardAcknowledged blocking (Ack ack) (txSource, UnAcked unAcked, stats) = do
when (tokIsBlocking blocking && ack /= length unAcked) $ do
let err = "decideAnnouncement: TokBlocking, but length unAcked != ack"
let err = "decideAnnouncement: SingBlocking, but length unAcked != ack"
traceWith bmtr (TraceBenchTxSubError err)
fail (T.unpack err)
let (stillUnacked, acked) = L.splitAtEnd ack unAcked
Expand All @@ -123,7 +123,7 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =

requestTxIds :: forall blocking.
LocalState era
-> TokBlockingStyle blocking
-> SingBlockingStyle blocking
-> NumTxIdsToAck
-> NumTxIdsToReq
-> m (ClientStTxIds blocking (GenTxId CardanoBlock) (GenTx CardanoBlock) m ())
Expand All @@ -140,15 +140,15 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
traceWith bmtr $ SubmissionClientUnAcked (getTxId . getTxBody <$> outs)

case blocking of
TokBlocking -> case NE.nonEmpty newTxs of
SingBlocking -> case NE.nonEmpty newTxs of
Nothing -> do
traceWith tr EndOfProtocol
endOfProtocolCallback stats
pure $ SendMsgDone ()
(Just txs) -> pure $ SendMsgReplyTxIds
(BlockingReply $ txToIdSize <$> txs)
(client stateC)
TokNonBlocking -> pure $ SendMsgReplyTxIds
SingNonBlocking -> pure $ SendMsgReplyTxIds
(NonBlockingReply $ txToIdSize <$> newTxs)
(client stateC)

Expand Down Expand Up @@ -196,17 +196,17 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
fromGenTxId (Block.GenTxIdConway (Mempool.ShelleyTxId i)) = fromShelleyTxId i
fromGenTxId _ = error "TODO: fix incomplete match"

tokIsBlocking :: TokBlockingStyle a -> Bool
tokIsBlocking :: SingBlockingStyle a -> Bool
tokIsBlocking = \case
TokBlocking -> True
TokNonBlocking -> False
SingBlocking -> True
SingNonBlocking -> False

reqIdsTrace :: Ack -> Req -> TokBlockingStyle a -> NodeToNodeSubmissionTrace
reqIdsTrace :: Ack -> Req -> SingBlockingStyle a -> NodeToNodeSubmissionTrace
reqIdsTrace ack req = \case
TokBlocking -> ReqIdsBlocking ack req
TokNonBlocking -> ReqIdsNonBlocking ack req
SingBlocking -> ReqIdsBlocking ack req
SingNonBlocking -> ReqIdsNonBlocking ack req

idListTrace :: ToAnnce tx -> TokBlockingStyle a -> NodeToNodeSubmissionTrace
idListTrace :: ToAnnce tx -> SingBlockingStyle a -> NodeToNodeSubmissionTrace
idListTrace (ToAnnce toAnn) = \case
TokBlocking -> IdsListBlocking $ length toAnn
TokNonBlocking -> IdsListNonBlocking $ length toAnn
SingBlocking -> IdsListBlocking $ length toAnn
SingNonBlocking -> IdsListNonBlocking $ length toAnn
4 changes: 2 additions & 2 deletions bench/tx-generator/src/Cardano/Benchmarking/LogTypes.hs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ import qualified Control.Concurrent.STM as STM (TVar)
import Data.Text
import Data.Time.Clock (DiffTime, NominalDiffTime)
import GHC.Generics
import Network.Mux (WithMuxBearer (..))
import qualified Network.Mux as Mux

data AsyncBenchmarkControl =
AsyncBenchmarkControl
Expand Down Expand Up @@ -149,7 +149,7 @@ data NodeToNodeSubmissionTrace

type SendRecvTxSubmission2 = TraceSendRecv (TxSubmission2 (GenTxId CardanoBlock) (GenTx CardanoBlock))

type SendRecvConnect = WithMuxBearer
type SendRecvConnect = Mux.WithBearer
RemoteConnectionId
(TraceSendRecv (Handshake
NodeToNodeVersion
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ preExecutePlutusV3 (major, _minor) (PlutusScript _ (PlutusScriptSerialised (scri
{ PlutusV3.txInfoInputs = []
, PlutusV3.txInfoOutputs = []
, PlutusV3.txInfoFee = 0
, PlutusV3.txInfoMint = mempty
, PlutusV3.txInfoMint = PlutusV3.emptyMintValue
, PlutusV3.txInfoTxCerts = []
, PlutusV3.txInfoWdrl = PlutusV3.unsafeFromList []
, PlutusV3.txInfoValidRange = PlutusV3.always
Expand Down
2 changes: 1 addition & 1 deletion bench/tx-generator/tx-generator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ library
, attoparsec-aeson
, base16-bytestring
, bytestring
, cardano-api ^>= 10.1
, cardano-api ^>= 10.3
, cardano-binary
, cardano-cli ^>= 10.1
, cardano-crypto-class
Expand Down
90 changes: 88 additions & 2 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 2024-10-10T00:52:24Z
, cardano-haskell-packages 2024-10-30T10:23:17Z
, hackage.haskell.org 2024-11-20T00:00:00Z
, cardano-haskell-packages 2024-11-27T20:49:28Z

packages:
cardano-node
Expand Down Expand Up @@ -68,3 +68,89 @@ allow-newer:
-- 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-ledger.git
tag: 3f5b0467f342fb46a22746bb46ad96cb2b0a9c42
--sha256: sha256-QU5CiiNY41HsN2ynCOgbpUvZPlYYeTanjgxVPFohKkE=
subdir:
eras/allegra/impl
eras/alonzo/impl
eras/alonzo/test-suite
eras/babbage/impl
eras/babbage/test-suite
eras/byron/chain/executable-spec
eras/byron/crypto
eras/byron/crypto/test
eras/byron/ledger/executable-spec
eras/byron/ledger/impl
eras/byron/ledger/impl/test
eras/conway/impl
eras/conway/test-suite
eras/mary/impl
eras/shelley/impl
eras/shelley-ma/test-suite
eras/shelley/test-suite
libs/cardano-data
libs/cardano-ledger-api
libs/cardano-ledger-binary
libs/cardano-ledger-core
libs/cardano-protocol-tpraos
libs/non-integral
libs/plutus-preprocessor
libs/set-algebra
libs/small-steps
libs/vector-map

source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-network.git
tag: 7e8909f97d6ecc9fff320b3ac2b785aec74751c6
--sha256: sha256-Evv2EwaXbr2tXlxnHVr/AAV+QB7B8EWJbQR6t4IvOQ4=
subdir:
cardano-client
cardano-ping
monoidal-synchronisation
network-mux
ntp-client
ouroboros-network
ouroboros-network-api
ouroboros-network-framework
ouroboros-network-mock
ouroboros-network-protocols
ouroboros-network-testing
quickcheck-monoids

source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-consensus.git
tag: 8b0a1e2893cae744026565deff1e6a4596dd4161
--sha256: sha256-mIdoQXTSVZvnxPayyk4yoZkXYsbXHnms5fBgq7bXfU8=
subdir:
ouroboros-consensus
ouroboros-consensus-cardano
ouroboros-consensus-protocol
ouroboros-consensus-diffusion

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-api.git
tag: 43a2524194769ac0c44fc7d8ae6be98256a1a11d
--sha256: sha256-vomTIsTCIqe4NvhhP1x/JYem6e7wocaAg/UV9OHb6tc=
subdir:
cardano-api

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli.git
tag: c6b442a7eace5bcd576037199648b0c9355203a5
--sha256: sha256-D66uuQ9ulgvUHU42Vr4qbWWTAxI70ox9Kknkm9IRIM8=
subdir:
cardano-cli

source-repository-package
type: git
location: https://github.com/neilmayhew/ekg-forward.git
tag: 4ba8bb693093f6cf54d43d6e9bbce1e08b0457dd
--sha256: sha256-g0gYqzRGjmZwxEzihJ4JifJe+GRfdLIMzaot7rUcjlI=
Loading
Loading