Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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 @@ -128,7 +128,7 @@ library
, hashable
, optparse-applicative
, ouroboros-consensus:ouroboros-consensus
, ouroboros-network:api ^>= 1.2
, ouroboros-network:api ^>= 1.3
, sop-core
, split
, sqlite-easy >= 1.1.0.1
Expand Down
2 changes: 1 addition & 1 deletion bench/plutus-scripts-bench/plutus-scripts-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ library
-- IOG dependencies
--------------------------
build-depends:
, cardano-api ^>=11.7
, cardano-api ^>=11.8
, plutus-ledger-api ^>=1.65
, plutus-tx ^>=1.65
, plutus-tx-plugin ^>=1.65
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,10 @@ import Ouroboros.Network.KeepAlive
import Ouroboros.Network.Magic
import Ouroboros.Network.Mux (MiniProtocolCb (..), OuroborosApplication (..),
OuroborosBundle, RunMiniProtocol (..))
import Ouroboros.Network.PerasSupport (PerasSupport (..))
import Ouroboros.Network.PeerSelection.PeerSharing (PeerSharing (..))
import Ouroboros.Network.PeerSelection.PeerSharing.Codec (decodeRemoteAddress,
encodeRemoteAddress)
import Ouroboros.Network.PerasSupport (PerasSupport (..))
import Ouroboros.Network.Protocol.BlockFetch.Client (BlockFetchClient (..),
blockFetchClientPeer)
import Ouroboros.Network.Protocol.Handshake.Version (simpleSingletonVersions)
Expand Down Expand Up @@ -156,17 +156,16 @@ benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codec
(cTxSubmission2Codec myCodecs)
channel
(txSubmissionClientPeer myTxSubClient)
, NtN.perasCertDiffusionProtocol = InitiatorProtocolOnly $ MiniProtocolCb $ \_ctx _channel ->
pure ((), Nothing)
, NtN.perasVoteDiffusionProtocol = InitiatorProtocolOnly $ MiniProtocolCb $ \_ctx _channel ->
pure ((), Nothing)
, NtN.peerSharingProtocol = InitiatorProtocolOnly $ MiniProtocolCb $ \_ctx channel ->
runPeer
mempty
(cPeerSharingCodec myCodecs)
channel
(peerSharingClientPeer peerSharingClientNull)
-- TODO Peras is not supported here
, NtN.perasCertDiffusionProtocol = InitiatorProtocolOnly $ MiniProtocolCb $ \_ctx _channel ->
error "tx-generator: Peras cert diffusion is unsupported"
, NtN.perasVoteDiffusionProtocol = InitiatorProtocolOnly $ MiniProtocolCb $ \_ctx _channel ->
error "tx-generator: Peras vote diffusion is unsupported"
}
n2nVer
n2nData
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{- HLINT ignore "Eta reduce" -}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE TypeApplications #-}

module Cardano.Benchmarking.OuroborosImports
Expand Down Expand Up @@ -42,7 +43,9 @@ toProtocolInfo (SomeConsensusProtocol CardanoBlockType info) = fst <$> protocolI
toProtocolInfo _ = error "toProtocolInfo unknown protocol"

protocolToTopLevelConfig :: SomeConsensusProtocol -> IO (TopLevelConfig CardanoBlock)
protocolToTopLevelConfig ptcl = pInfoConfig <$> toProtocolInfo ptcl
protocolToTopLevelConfig ptcl = do
ProtocolInfo {pInfoConfig} <- toProtocolInfo ptcl
pure pInfoConfig

protocolToCodecConfig :: SomeConsensusProtocol -> IO (CodecConfig CardanoBlock)
protocolToCodecConfig = fmap configCodec . protocolToTopLevelConfig
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ queryEra = do
AnyCardanoEra era <- mapExceptT liftIO .
modifyError (Env.TxGenError . TxGenError . show) $
queryNodeLocalState localNodeConnectInfo (SpecificPoint $ chainTipToChainPoint chainTip) QueryCurrentEra
caseByronOrShelleyBasedEra
inEonForEra
(liftTxGenError $ TxGenError "queryEra Byron not supported")
(return . AnyShelleyBasedEra)
era
Expand Down
4 changes: 2 additions & 2 deletions bench/tx-generator/src/Cardano/Benchmarking/Tracer.hs
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ import Cardano.Node.Tracing.NodeInfo ()
import Ouroboros.Network.IOManager (IOManager)
import qualified Ouroboros.Network.Protocol.TxSubmission2.Type as TxSubmission
import Ouroboros.Network.Tracing ()
import Network.Mux.Tracing ()

import Control.Exception (SomeException (..))
import Control.Monad (forM, guard)
Expand All @@ -51,7 +52,6 @@ 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)
Expand Down Expand Up @@ -182,7 +182,7 @@ configSilent :: ConfigOption
configSilent = ConfSeverity (SeverityF Nothing)

initialTraceConfig :: TraceConfig
initialTraceConfig = emptyTraceConfig
initialTraceConfig = emptyTraceConfig
{ tcOptions = Map.fromList
[ ([], [configSilent])
, setMaxDetail TracerNameBench
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ requireParam paramName = maybe (Left $ PpceMissingParameter paramName)
mkProtVer :: (Natural, Word32) -> Either ProtocolParametersConversionError Ledger.ProtVer
mkProtVer (majorProtVer, minorProtVer) =
maybeToRight (PpceVersionInvalid majorProtVer) $
(`Ledger.ProtVer` minorProtVer) <$> Ledger.mkVersion majorProtVer
(`Ledger.ProtVer` fromIntegral minorProtVer) <$> Ledger.mkVersion majorProtVer

-- Duplicated from "cardano-api" module "Cardano.Api.Internal.ProtocolParameters"
boundRationalEither
Expand Down Expand Up @@ -528,7 +528,7 @@ fromShelleyCommonPParams
fromShelleyCommonPParams pp =
ProtocolParameters
{ protocolParamProtocolVersion = case pp ^. ppProtocolVersionL of
Ledger.ProtVer a b -> (Ledger.getVersion a, b)
Ledger.ProtVer a b -> (Ledger.getVersion a, fromIntegral b)
, protocolParamMaxBlockHeaderSize = fromIntegral $ pp ^. ppMaxBHSizeL
, protocolParamMaxBlockBodySize = fromIntegral $ pp ^. ppMaxBBSizeL
, protocolParamMaxTxSize = fromIntegral $ pp ^. ppMaxTxSizeL
Expand Down
10 changes: 5 additions & 5 deletions bench/tx-generator/tx-generator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -116,13 +116,13 @@ library
, attoparsec-aeson
, base16-bytestring
, bytestring
, cardano-api ^>= 11.7
, cardano-api ^>= 11.8
, cardano-binary
, cardano-cli ^>= 11.2.2
, cardano-cli ^>= 11.3
, cardano-crypto-class
, cardano-crypto-wrapper
, cardano-data
, cardano-diffusion ^>= 1.1.1
, cardano-diffusion ^>= 1.3
, cardano-git-rev ^>= 0.2.2
, cardano-ledger-alonzo
, cardano-ledger-api
Expand All @@ -149,8 +149,8 @@ library
, network-mux
, network-uri
, optparse-applicative
, ouroboros-consensus:{ouroboros-consensus, cardano, diffusion} >= 4.2.0.1
, ouroboros-network:{api, framework, tracing, ouroboros-network, protocols} >= 1.1
, ouroboros-consensus:{ouroboros-consensus, cardano, diffusion} >= 4.0
, ouroboros-network:{api, framework, ouroboros-network, protocols, tracing} >= 1.2
, plutus-ledger-api
, plutus-tx
, random
Expand Down
140 changes: 48 additions & 92 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,18 @@ 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-08-14T13:38:07Z
, cardano-haskell-packages 2026-09-22T20:39:47Z
, hackage.haskell.org 2026-09-02T14:05:07Z
, cardano-haskell-packages 2026-10-07T23:57:11Z

constraints:
-- haskell.nix patch does not work for 1.6.8
-- grapesy currently depends on crypton-x509-system (>=1.6 && <1.7)
, any.crypton-x509-system < 1.6.8 || >= 1.7

, any.crypton-x509-system < 1.6.8 || > 1.6.8
-- haskell.nix tries to use 0.7.1.5 for some reason
, any.proto-lens >= 0.7.1.7
-- https://github.com/channable/alfred-margaret/pull/76
, any.alfred-margaret < 2.1.1.0 || > 2.1.1.0
-- Force cardano-crypto-class 2.6.x to avoid backtracking into 2.5.x
, any.cardano-crypto-class ^>= 2.6

-- acts has a finitary flag; disabling it avoids pulling in finitary entirely,
-- which sidesteps the GHC type-checker plugin incompatibility with
Expand All @@ -48,9 +48,8 @@ packages:
bench/trace-schemas/scripts/schema-gen
trace-forward

-- Shipped as a release binary but not a dependency of any local package, so it
-- has to be added to the install plan explicitly.
extra-packages: dmq-node >= 0.7.0.0
-- Needed when cross compiling
extra-packages: alex, dmq-node

program-options
ghc-options: -Werror
Expand All @@ -65,104 +64,61 @@ package cryptonite
-- generation is dubious. Set the flag so we use /dev/urandom by default.
flags: -support_rdrand

package snap-server
flags: -openssl

package bitvec
flags: -simd

package cardano-diffusion
flags: +optparse-applicative-fork

-- required for haddocks to build successfully
package plutus-scripts-bench
haddock-options: "--optghc=-fplugin-opt=PlutusTx.Plugin:defer-errors"

-- There is a suspected bug in `cabal` (https://github.com/haskell/cabal/issues/11663)
-- that can be worked around with the following allow-newer stanzas
allow-newer:
-- cborg-0.2.10.0 bounds base < 4.22 but GHC 9.14 ships base-4.22
, cborg:base
, io-sim:time
, io-classes:time

-- cabal-allow-newer begin
if impl(ghc >= 9.14)
allow-newer:
, async-timer:unliftio-core
, attoparsec-iso8601:time
, bytestring-trie:base
, canonical-json:containers
, cborg:base
, cborg:containers
, cborg-json:aeson
, cborg-json:base
, compact:base
, crypton-connection:tls
, dependent-map:containers
, diff-containers:base
, dictionary-sharing:containers
, dmq-node:containers
, dmq-node:time
, ekg-json:aeson
, ekg-json:text
, ekg-prometheus-adapter:containers
, ekg-wai:time
, errors:transformers-compat
, fs-sim:QuickCheck
, grapesy:aeson
, grapesy:base
, grapesy:containers
, grapesy:time-manager
, grapesy:tls
, grpc-spec:aeson
, grpc-spec:base
, grpc-spec:containers
, iohk-monitoring:contra-tracer
, lens-family:containers
, lens-family-core:containers
, locli:ouroboros-network
, microstache:aeson
, monad-control:transformers-compat
, nothunks:containers
, nothunks:time
, optparse-generic:time
, partial-order:containers
, pipes-safe:containers
, pipes-safe:mtl
, pipes-safe:primitive
, pipes-safe:transformers
, prometheus:containers
, safe-wild-cards:template-haskell
, serdoc-core:template-haskell
, serialise:base
, serialise:containers
, serialise:time
, servant:QuickCheck
, servant:base
, servant-server:aeson
, servant-server:attoparsec
, servant-server:base
, servant-server:base-compat
, servant-server:base64-bytestring
, servant-server:bytestring
, servant-server:containers
, servant-server:http-api-data
, servant-server:http-types
, servant-server:network
, servant-server:servant
, servant-server:text
, servant-server:transformers
, servant-server:warp
, strict-checked-vars:io-classes
, strict-stm:base
, strict-stm:io-classes
, tdigest:base
, time-locale-compat:time
, tracer-transformers:contra-tracer
, vary:aeson
, with-utf8:base
-- cabal-allow-newer end
, cardano-ping:network-mux
, grapesy:aeson
, grapesy:crypton-x509
, grapesy:crypton-x509-store
, grapesy:crypton-x509-system
, grapesy:crypton-x509-validation
, grapesy:http2
, grapesy:http2-tls
, grapesy:network-run
, grapesy:tls
, grpc-spec:aeson
, http-api-data:text-iso8601
-- plutus-scripts-bench bounds plutus-* ^>=1.65 but we have 1.68
, plutus-scripts-bench:plutus-ledger-api
, plutus-scripts-bench:plutus-tx
, plutus-scripts-bench:plutus-tx-plugin

-- IMPORTANT
-- Do NOT add more source-repository-package stanzas here unless they are strictly
-- temporary! Please read the section in CONTRIBUTING about updating dependencies.

-- These need to be deleted before 11.2 is released
allow-newer:
, ekg-forward:ouroboros-network

source-repository-package
type: git
location: https://github.com/well-typed/grapesy
tag: bd6af64f69ff89e3a8fc02e2c81262e648f4715d
--sha256: sha256-4F+bUoytvrgOcQ8aIWbOY9uYsPoTZwQOlmh7ckgyK9M=
subdir:
grapesy
grpc-spec

-- TEMPORARY: cardano-cli with the `dijkstra transaction sub-transaction` commands
-- (IntersectMBO/cardano-cli#1453, on top of the cardano-cli 11.3.0.0 release), needed by
-- the "Nested transaction swap" test. Remove once #1453 is merged and released.
source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli
tag: 81401048de27fb3ac6d4d76db6391b0fd113f188
--sha256: sha256-nhct9LVRWW4zQ6S4I4puRU5bVS5g/AzNjMzzi5zExcg=
subdir:
cardano-cli
4 changes: 2 additions & 2 deletions cardano-node-chairman/cardano-node-chairman.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ test-suite chairman-tests

build-depends: , cardano-api
, cardano-testnet
, cardano-crypto-class ^>=2.5
, cardano-crypto-class ^>=2.6
, data-default-class
, filepath
, hedgehog
Expand All @@ -86,5 +86,5 @@ test-suite chairman-tests
ghc-options: -threaded -rtsopts "-with-rtsopts=-N -T"

build-tool-depends: cardano-node:cardano-node
, cardano-cli:cardano-cli ^>= 11.2.2
, cardano-cli:cardano-cli ^>= 11.3
, cardano-node-chairman:cardano-node-chairman
Loading
Loading