From 13796e2cf730ad6df87e4904db4ce4cf10d37aec Mon Sep 17 00:00:00 2001 From: lewenhaupt Date: Wed, 4 Feb 2026 20:57:44 +0100 Subject: [PATCH] fix: suppress error when using newer cdk versions and spy on dynamo --- src/ServerlessSpy.ts | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/ServerlessSpy.ts b/src/ServerlessSpy.ts index 6d1ae0e..f47ddb6 100644 --- a/src/ServerlessSpy.ts +++ b/src/ServerlessSpy.ts @@ -585,18 +585,15 @@ export class ServerlessSpy extends Construct { (table.node.defaultChild as dynamoDb.CfnTable).streamSpecification = { streamViewType: dynamoDb.StreamViewType.NEW_AND_OLD_IMAGES, }; - var tableStreamArnDescriptor = Object.getOwnPropertyDescriptor( - table, - 'tableStreamArn' - ); - - if ( - tableStreamArnDescriptor === undefined || - tableStreamArnDescriptor.get === undefined - ) { - (table as any)['tableStreamArn'] = ( + try { + (table as any).tableStreamArn = ( table.node.defaultChild as dynamoDb.CfnTable ).attrStreamArn; + } catch (e) { + // Property is read-only in newer CDK versions, skip the assignment + if (!(e instanceof TypeError && e.message.includes('only a getter'))) { + throw e; // Re-throw if it's a different error + } } this.lambdaSubscriptionMain.function.addEventSource(