From c186675652ac044d5432da023c58f9c26c4ae95a Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Wed, 7 Dec 2022 09:58:30 -0800 Subject: [PATCH 1/2] Fix bug where SDK returned annonymous function instead of return value specified in user code to the Functions Framework. --- src/v2/providers/alerts/alerts.ts | 2 +- src/v2/providers/alerts/appDistribution.ts | 8 ++++---- src/v2/providers/alerts/billing.ts | 2 +- src/v2/providers/testLab.ts | 2 +- src/v2/trace.ts | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/v2/providers/alerts/alerts.ts b/src/v2/providers/alerts/alerts.ts index 9b6f7644a..1826d653a 100644 --- a/src/v2/providers/alerts/alerts.ts +++ b/src/v2/providers/alerts/alerts.ts @@ -215,7 +215,7 @@ export function onAlertPublished( const [opts, alertType, appId] = getOptsAndAlertTypeAndApp(alertTypeOrOpts); const func = (raw: CloudEvent) => { - return wrapTraceContext(handler(convertAlertAndApp(raw) as AlertEvent)); + return wrapTraceContext(handler)(convertAlertAndApp(raw) as AlertEvent); }; func.run = handler; diff --git a/src/v2/providers/alerts/appDistribution.ts b/src/v2/providers/alerts/appDistribution.ts index 4bbda8e82..117b3f94b 100644 --- a/src/v2/providers/alerts/appDistribution.ts +++ b/src/v2/providers/alerts/appDistribution.ts @@ -250,8 +250,8 @@ export function onNewTesterIosDevicePublished( const [opts, appId] = getOptsAndApp(appIdOrOptsOrHandler); const func = (raw: CloudEvent) => { - return wrapTraceContext( - handler(convertAlertAndApp(raw) as AppDistributionEvent) + return wrapTraceContext(handler)( + convertAlertAndApp(raw) as AppDistributionEvent ); }; @@ -315,8 +315,8 @@ export function onInAppFeedbackPublished( const [opts, appId] = getOptsAndApp(appIdOrOptsOrHandler); const func = (raw: CloudEvent) => { - return wrapTraceContext( - handler(convertAlertAndApp(raw) as AppDistributionEvent) + return wrapTraceContext(handler)( + convertAlertAndApp(raw) as AppDistributionEvent ); }; diff --git a/src/v2/providers/alerts/billing.ts b/src/v2/providers/alerts/billing.ts index afff1cba8..3b2af87b5 100644 --- a/src/v2/providers/alerts/billing.ts +++ b/src/v2/providers/alerts/billing.ts @@ -152,7 +152,7 @@ export function onOperation( } const func = (raw: CloudEvent) => { - return wrapTraceContext(handler(convertAlertAndApp(raw) as BillingEvent)); + return wrapTraceContext(handler)(convertAlertAndApp(raw) as BillingEvent); }; func.run = handler; diff --git a/src/v2/providers/testLab.ts b/src/v2/providers/testLab.ts index d24e6e003..0283a0280 100644 --- a/src/v2/providers/testLab.ts +++ b/src/v2/providers/testLab.ts @@ -190,7 +190,7 @@ export function onTestMatrixCompleted( const specificOpts = optionsToEndpoint(optsOrHandler); const func: any = (raw: CloudEvent) => { - return wrapTraceContext(handler(raw as CloudEvent)); + return wrapTraceContext(handler)(raw as CloudEvent); }; func.run = handler; diff --git a/src/v2/trace.ts b/src/v2/trace.ts index 2bb9e2179..585686b89 100644 --- a/src/v2/trace.ts +++ b/src/v2/trace.ts @@ -28,6 +28,6 @@ export function wrapTraceContext( // eslint-disable-next-line prefer-spread return handler.apply(null, args); } - traceContext.run(traceParent, handler, ...args); + return traceContext.run(traceParent, handler, ...args); }; } From 5dbc0ee207c99e56f12c4aa55841acbf8665e350 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Wed, 7 Dec 2022 10:09:18 -0800 Subject: [PATCH 2/2] Add CHANGELOG.md entry. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e69de29bb..6d3c15ef4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -0,0 +1 @@ +- Fix bug where some FireAlerts v2 functions didn't correctly return values back to Functions Framework. (#1324)