diff --git a/src/lib/features/metrics/instance/findOutdatedSdks.test.ts b/src/lib/features/metrics/instance/findOutdatedSdks.test.ts index 355254e891..10a88faaba 100644 --- a/src/lib/features/metrics/instance/findOutdatedSdks.test.ts +++ b/src/lib/features/metrics/instance/findOutdatedSdks.test.ts @@ -52,7 +52,7 @@ describe('findOutdatedSDKs', () => { }); it('should ignore invalid SDK versions', () => { - const sdkVersions = ['unleash-client-node', '1.2.3']; + const sdkVersions = ['unleash-client-node', '1.2.3', null]; const result = findOutdatedSDKs(sdkVersions); expect(result).toEqual([]); }); diff --git a/src/lib/features/metrics/instance/findOutdatedSdks.ts b/src/lib/features/metrics/instance/findOutdatedSdks.ts index 3af2955e80..8a062d88ea 100644 --- a/src/lib/features/metrics/instance/findOutdatedSdks.ts +++ b/src/lib/features/metrics/instance/findOutdatedSdks.ts @@ -14,7 +14,8 @@ const config: SDKConfig = { 'unleash-client-php': '2.3.0', }; -export const isOutdatedSdk = (sdkVersion: string) => { +export const isOutdatedSdk = (sdkVersion: string | null) => { + if (sdkVersion == null) return false; const result = sdkVersion.split(':'); if (result.length !== 2) return false; const [sdkName, version] = result; @@ -24,8 +25,8 @@ export const isOutdatedSdk = (sdkVersion: string) => { return false; }; -export function findOutdatedSDKs(sdkVersions: string[]): string[] { +export function findOutdatedSDKs(sdkVersions: (string | null)[]): string[] { const uniqueSdkVersions = Array.from(new Set(sdkVersions)); - return uniqueSdkVersions.filter(isOutdatedSdk); + return uniqueSdkVersions.filter(isOutdatedSdk) as string[]; }