From 92213966d704d852e91cd9c32b4a84928f990e74 Mon Sep 17 00:00:00 2001 From: Mircea Hasegan Date: Wed, 17 Apr 2024 20:20:21 +0200 Subject: [PATCH] fix(core)!: decentralizationParameter was removed in babbage --- packages/core/src/Cardano/types/ProtocolParameters.ts | 9 +++++++-- .../core/src/Serialization/Update/ProtocolParamUpdate.ts | 9 ++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/core/src/Cardano/types/ProtocolParameters.ts b/packages/core/src/Cardano/types/ProtocolParameters.ts index a47a960a17c..cb1d898dc63 100644 --- a/packages/core/src/Cardano/types/ProtocolParameters.ts +++ b/packages/core/src/Cardano/types/ProtocolParameters.ts @@ -103,7 +103,10 @@ type NewProtocolParamsInBabbage = { }; // coinsPerUtxoWord was replaced by coinsPerUtxoByte and extraEntropy was deprecated. -type BabbageProtocolParameters = Omit & +type BabbageProtocolParameters = Omit< + AlonzoProtocolParams, + 'coinsPerUtxoWord' | 'extraEntropy' | 'decentralizationParameter' +> & NewProtocolParamsInBabbage; // Voting thresholds @@ -142,7 +145,9 @@ export type ConwayProtocolParameters = Omit>; +export type ProtocolParametersUpdate = Partial< + ProtocolParameters & Pick +>; export type ProtocolParametersUpdateConway = Partial; export type GenesisDelegateKeyHash = Crypto.Hash28ByteBase16; diff --git a/packages/core/src/Serialization/Update/ProtocolParamUpdate.ts b/packages/core/src/Serialization/Update/ProtocolParamUpdate.ts index 169258bd675..2b43349ab90 100644 --- a/packages/core/src/Serialization/Update/ProtocolParamUpdate.ts +++ b/packages/core/src/Serialization/Update/ProtocolParamUpdate.ts @@ -468,9 +468,6 @@ export class ProtocolParamUpdate { params.#treasuryGrowthRate = parametersUpdate.treasuryExpansion ? UnitInterval.fromFloat(Number(parametersUpdate.treasuryExpansion)) : undefined; - params.#d = parametersUpdate.decentralizationParameter - ? UnitInterval.fromFloat(Number(parametersUpdate.decentralizationParameter)) - : undefined; params.#minPoolCost = parametersUpdate.minPoolCost ? BigInt(parametersUpdate.minPoolCost) : undefined; params.#maxValueSize = parametersUpdate.maxValueSize; params.#maxTxSize = parametersUpdate.maxTxSize; @@ -501,8 +498,10 @@ export class ProtocolParamUpdate { ? UnitInterval.fromFloat(Number(parametersUpdate.minFeeRefScriptCostPerByte)) : undefined; - const { protocolVersion, extraEntropy } = parametersUpdate as unknown as Cardano.ProtocolParametersUpdate; - if (protocolVersion !== undefined || extraEntropy !== undefined) { + const { protocolVersion, extraEntropy, decentralizationParameter } = + parametersUpdate as unknown as Cardano.ProtocolParametersUpdate; + if (protocolVersion !== undefined || extraEntropy !== undefined || decentralizationParameter) { + params.#d = decentralizationParameter ? UnitInterval.fromFloat(Number(decentralizationParameter)) : undefined; params.#protocolVersion = protocolVersion ? ProtocolVersion.fromCore(protocolVersion) : undefined; params.#extraEntropy = extraEntropy ? HexBlob(extraEntropy) : undefined; }