From 09b2c106c3ff8f17281f0ebd1211a8838de3ac5d Mon Sep 17 00:00:00 2001 From: RahulGautamSingh Date: Fri, 31 Jan 2025 18:06:49 +0530 Subject: [PATCH] refactor(process/libyear): early return if no `releaseTimestamp` for current version (#33967) --- lib/workers/repository/process/libyear.spec.ts | 5 ++++- lib/workers/repository/process/libyear.ts | 17 +++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/lib/workers/repository/process/libyear.spec.ts b/lib/workers/repository/process/libyear.spec.ts index c8e32d80bb8e11..4a4dfb82d13fa1 100644 --- a/lib/workers/repository/process/libyear.spec.ts +++ b/lib/workers/repository/process/libyear.spec.ts @@ -83,11 +83,14 @@ describe('workers/repository/process/libyear', () => { }; calculateLibYears(packageFiles); expect(logger.logger.debug).toHaveBeenCalledWith( - 'No releaseTimestamp for some/image update to 2.0.0', + 'No currentVersionTimestamp for some/image', ); expect(logger.logger.debug).toHaveBeenCalledWith( 'No releaseTimestamp for dep1 update to 3.0.0', ); + expect(logger.logger.debug).toHaveBeenCalledWith( + 'No currentVersionTimestamp for dep3', + ); expect(logger.logger.debug).toHaveBeenCalledWith( { managerLibYears: { diff --git a/lib/workers/repository/process/libyear.ts b/lib/workers/repository/process/libyear.ts index f2bf607b2aa1e9..d18c50bd07efac 100644 --- a/lib/workers/repository/process/libyear.ts +++ b/lib/workers/repository/process/libyear.ts @@ -13,6 +13,15 @@ export function calculateLibYears( for (const file of files) { let fileLibYears = 0; for (const dep of file.deps) { + if (!dep.currentVersionTimestamp) { + logger.debug(`No currentVersionTimestamp for ${dep.depName}`); + continue; + } + // timestamps are in ISO format + const currentVersionDate = DateTime.fromISO( + dep.currentVersionTimestamp, + ); + if (dep.updates?.length) { for (const update of dep.updates) { if (!update.releaseTimestamp) { @@ -21,14 +30,6 @@ export function calculateLibYears( ); continue; } - if (!dep.currentVersionTimestamp) { - logger.debug(`No currentVersionTimestamp for ${dep.depName}`); - continue; - } - // timestamps are in ISO format - const currentVersionDate = DateTime.fromISO( - dep.currentVersionTimestamp, - ); const releaseDate = DateTime.fromISO(update.releaseTimestamp); const libYears = releaseDate.diff( currentVersionDate,