plutus-ledger-api-1.38.0.0: Interface to the Plutus ledger for the Cardano ledger.
Safe HaskellSafe-Inferred
LanguageHaskell2010

PlutusLedgerApi.Common.ProtocolVersions

Synopsis

Documentation

newtype MajorProtocolVersion Source #

This represents the major component of the Cardano protocol version. The ledger can only supply the major component of the protocol version, not the minor component, and Plutus should only need to care about the major component anyway. This relies on careful understanding between us and the ledger as to what this means.

Instances

Instances details
Generic MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Associated Types

type Rep MajorProtocolVersionTypeType Source #

Show MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Eq MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Ord MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Pretty MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Serialise MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

type Rep MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

type Rep MajorProtocolVersion = D1 ('MetaData "MajorProtocolVersion" "PlutusLedgerApi.Common.ProtocolVersions" "plutus-ledger-api-1.38.0.0-inplace" 'True) (C1 ('MetaCons "MajorProtocolVersion" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMajorProtocolVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Protocol Version aliases

shelleyPVMajorProtocolVersion Source #

Shelley era was introduced in protocol version 2.0

allegraPVMajorProtocolVersion Source #

Allegra era was introduced in protocol version 3.0

maryPVMajorProtocolVersion Source #

Mary era was introduced in protocol version 4.0

alonzoPVMajorProtocolVersion Source #

Alonzo era was introduced in protocol version 5.0

vasilPVMajorProtocolVersion Source #

The Vasil HF introduced the Babbage era and Plutus V2

valentinePVMajorProtocolVersion Source #

Valentine was an intra-era HF where builtin functions VerifyEcdsaSecp256k1Signature and VerifySchnorrSecp256k1Signature were enabled.

changPVMajorProtocolVersion Source #

The Chang HF introduced the Conway era and Plutus V3

changPlus1PVMajorProtocolVersion Source #

The Chang+1 HF will be an intra-era HF where some new builtin functions are introduced in Plutus V2 and V3.

knownPVsSet MajorProtocolVersion Source #

The set of protocol versions that are "known", i.e. that have been released and have actual differences associated with them.

futurePVMajorProtocolVersion Source #

This is a placeholder for when we don't yet know what protocol version will be used for something. It's a very high protocol version that should never appear in reality. New builtins should always be given this protocol version until they've been finalised.

We should not assign names to future protocol versions until it's confirmed that they are correct, otherwise we could accidentally associate something with the wrong protocol version.