From 9c57b66d4964273d09a7c5464e5339f560d98e6a Mon Sep 17 00:00:00 2001 From: Mircea Hasegan Date: Tue, 11 Feb 2025 16:20:33 +0100 Subject: [PATCH 1/2] refactor(cardano-services-client): use CIP129 when querying dreps/:drepId --- .../src/DRepProvider/BlockfrostDRepProvider.ts | 4 ++-- .../test/DRepProvider/BlockfrostDRepProvider.test.ts | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/cardano-services-client/src/DRepProvider/BlockfrostDRepProvider.ts b/packages/cardano-services-client/src/DRepProvider/BlockfrostDRepProvider.ts index cf31e099a32..fe6b7a8c8fa 100644 --- a/packages/cardano-services-client/src/DRepProvider/BlockfrostDRepProvider.ts +++ b/packages/cardano-services-client/src/DRepProvider/BlockfrostDRepProvider.ts @@ -11,8 +11,8 @@ export class BlockfrostDRepProvider extends BlockfrostProvider implements DRepPr async getDRepInfo({ id }: GetDRepInfoArgs): Promise { try { - const cip105DRepId = Cardano.DRepID.toCip105DRepID(id); // Blockfrost only supports CIP-105 DRep IDs - const response = await this.request(`governance/dreps/${cip105DRepId.toString()}`); + const cip129DRepId = Cardano.DRepID.toCip129DRepID(id).toString(); + const response = await this.request(`governance/dreps/${cip129DRepId}`); const amount = BigInt(response.amount); const activeEpoch = response.active_epoch ? Cardano.EpochNo(response.active_epoch) : undefined; const active = response.active; diff --git a/packages/cardano-services-client/test/DRepProvider/BlockfrostDRepProvider.test.ts b/packages/cardano-services-client/test/DRepProvider/BlockfrostDRepProvider.test.ts index b66397a5869..c4511cbb99f 100644 --- a/packages/cardano-services-client/test/DRepProvider/BlockfrostDRepProvider.test.ts +++ b/packages/cardano-services-client/test/DRepProvider/BlockfrostDRepProvider.test.ts @@ -19,11 +19,12 @@ describe('BlockfrostDRepProvider', () => { describe('getDRep', () => { const mockedDRepId = Cardano.DRepID('drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc'); + const mockedCip129DrepID = Cardano.DRepID.toCip129DRepID(mockedDRepId).toString(); const mockedAssetResponse = { active: true, active_epoch: 420, amount: '2000000', - drep_id: 'drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc', + drep_id: mockedCip129DrepID, has_script: true, hex: 'a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d' } as Responses['drep']; @@ -31,7 +32,7 @@ describe('BlockfrostDRepProvider', () => { test('getDRepInfo', async () => { mockResponses(request, [ [ - `governance/dreps/${mockedDRepId}`, + `governance/dreps/${mockedCip129DrepID}`, { ...mockedAssetResponse } From fbc25110faf5c61e1909c7241fd28f959ebb0f9c Mon Sep 17 00:00:00 2001 From: Mircea Hasegan Date: Wed, 12 Feb 2025 13:57:12 +0100 Subject: [PATCH 2/2] chore: use official bf ryo at tag --- compose/common.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compose/common.yml b/compose/common.yml index be0edb78d7a..b629b7cb573 100644 --- a/compose/common.yml +++ b/compose/common.yml @@ -121,7 +121,7 @@ x-sdk-environment: &sdk-environment services: blockfrost-ryo: build: - context: 'https://github.com/mkazlauskas/blockfrost-backend-ryo.git#feat/custom-network-support' + context: 'https://github.com/blockfrost/blockfrost-backend-ryo.git#v3.1.0' dockerfile: Dockerfile environment: BLOCKFROST_CONFIG_SERVER_LISTEN_ADDRESS: 0.0.0.0