cardano-diffusion:api
Safe HaskellNone
LanguageHaskell2010

Cardano.Network.NodeToClient.Version

Synopsis

Documentation

data NodeToClientVersion Source #

Enumeration of node to client protocol versions.

Historical versions:

NodeToClientV_9
-- ^ enabled CardanoNodeToClientVersion7, i.e., Alonzo
| NodeToClientV_10
-- ^ added GetChainBlockNo and GetChainPoint queries
| NodeToClientV_11
-- ^ added GetRewardInfoPools Block query
| NodeToClientV_12
-- ^ added LocalTxMonitor mini-protocol
| NodeToClientV_13
-- ^ enabled CardanoNodeToClientVersion9, i.e., Babbage
| NodeToClientV_14
-- ^ added GetPoolDistr, GetPoolState, GetSnapshots
| NodeToClientV_15
-- ^ added query to NodeToClientVersionData

Constructors

NodeToClientV_16

Conway era (enabled CardanoNodeToClientVersion11); added ImmutableTip and GetStakeDelegDeposits queries to LocalStateQuery

NodeToClientV_17

added GetProposals and GetRatifyState queries

NodeToClientV_18

added GetFuturePParams query

NodeToClientV_19

added GetBigLedgerPeerSnapshot query

NodeToClientV_20

added QueryStakePoolDefaultVote query; added MsgGetMeasures and MsgReplyGetMeasures to LocalTxMonitor

NodeToClientV_21

new codecs for PParams and CompactGenesis

NodeToClientV_22

support SRV records in GetBigLedgerPeerSnapshot query TODO: remove CBOR instances from LedgerPeers.Type when V22 support is removed, update {To,From}JSON LedgerPeerSnapshot instances and update LedgerPeerSnapshot query encoding in consensus. marked with TODO's.

NodeToClientV_23

added QueryDRepsDelegations, LedgerPeerSnapshot CBOR encoding contains block hash and NetworkMagic

Instances

Instances details
NFData NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Methods

rnf :: NodeToClientVersion -> () #

Bounded NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Enum NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Generic NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Associated Types

type Rep NodeToClientVersion 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersion = D1 ('MetaData "NodeToClientVersion" "Cardano.Network.NodeToClient.Version" "cardano-diffusion-1.0.0.0-inplace-api" 'False) (((C1 ('MetaCons "NodeToClientV_16" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_17" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NodeToClientV_18" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_19" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "NodeToClientV_20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_21" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NodeToClientV_22" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_23" 'PrefixI 'False) (U1 :: Type -> Type))))
Show NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Eq NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Ord NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

PrettyShow NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersion Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersion = D1 ('MetaData "NodeToClientVersion" "Cardano.Network.NodeToClient.Version" "cardano-diffusion-1.0.0.0-inplace-api" 'False) (((C1 ('MetaCons "NodeToClientV_16" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_17" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NodeToClientV_18" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_19" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "NodeToClientV_20" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_21" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NodeToClientV_22" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NodeToClientV_23" 'PrefixI 'False) (U1 :: Type -> Type))))

data NodeToClientVersionData Source #

Version data for NodeToClient protocol v1

Instances

Instances details
NFData NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Methods

rnf :: NodeToClientVersionData -> () #

Generic NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Associated Types

type Rep NodeToClientVersionData 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersionData = D1 ('MetaData "NodeToClientVersionData" "Cardano.Network.NodeToClient.Version" "cardano-diffusion-1.0.0.0-inplace-api" 'False) (C1 ('MetaCons "NodeToClientVersionData" 'PrefixI 'True) (S1 ('MetaSel ('Just "networkMagic") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NetworkMagic) :*: S1 ('MetaSel ('Just "query") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)))
Show NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Eq NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Acceptable NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

Queryable NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

PrettyShow NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersionData Source # 
Instance details

Defined in Cardano.Network.NodeToClient.Version

type Rep NodeToClientVersionData = D1 ('MetaData "NodeToClientVersionData" "Cardano.Network.NodeToClient.Version" "cardano-diffusion-1.0.0.0-inplace-api" 'False) (C1 ('MetaCons "NodeToClientVersionData" 'PrefixI 'True) (S1 ('MetaSel ('Just "networkMagic") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NetworkMagic) :*: S1 ('MetaSel ('Just "query") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)))

nodeToClientVersionCodec :: CodecCBORTerm (Text, Maybe Int) NodeToClientVersion Source #

We set 16ths bit to distinguish NodeToNodeVersion and NodeToClientVersion. This way connecting wrong protocol suite will fail during Handshake negotiation

This is done in backward compatible way, so NodeToClientV_1 encoding is not changed.

newtype NetworkMagic #

Constructors

NetworkMagic 

Instances

Instances details
NFData NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

Methods

rnf :: NetworkMagic -> () #

Generic NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

Associated Types

type Rep NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

type Rep NetworkMagic = D1 ('MetaData "NetworkMagic" "Ouroboros.Network.Magic" "ouroboros-network-1.1.0.0-inplace-api" 'True) (C1 ('MetaCons "NetworkMagic" 'PrefixI 'True) (S1 ('MetaSel ('Just "unNetworkMagic") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))
Show NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

Eq NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

NoThunks NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

type Rep NetworkMagic 
Instance details

Defined in Ouroboros.Network.Magic

type Rep NetworkMagic = D1 ('MetaData "NetworkMagic" "Ouroboros.Network.Magic" "ouroboros-network-1.1.0.0-inplace-api" 'True) (C1 ('MetaCons "NetworkMagic" 'PrefixI 'True) (S1 ('MetaSel ('Just "unNetworkMagic") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))