diff --git a/lib/workers/repository/update/branch/get-updated.spec.ts b/lib/workers/repository/update/branch/get-updated.spec.ts index 7846c42a418..3c1e068da3c 100644 --- a/lib/workers/repository/update/branch/get-updated.spec.ts +++ b/lib/workers/repository/update/branch/get-updated.spec.ts @@ -1667,8 +1667,7 @@ describe('workers/repository/update/branch/get-updated', () => { }); }); - // should never happen, but our types allow this - it('rejects when an updated dependency has no new version', async () => { + it('skips the pending-version check when re-extracted dep has no resolvable version', async () => { config.upgrades.push({ packageFile: 'composer.json', manager: 'composer', @@ -1699,19 +1698,16 @@ describe('workers/repository/update/branch/get-updated', () => { ], }); - await expect(getUpdatedPackageFiles(config)).rejects.toThrowError( - 'update-failure', - ); - - expect(logger.logger.error).toHaveBeenCalledWith( + const res = await getUpdatedPackageFiles(config); + expect(res.artifactErrors).toHaveLength(0); + expect(logger.logger.warn).toHaveBeenCalledWith( { packageFile: 'composer.json', manager: 'composer', branchName: 'renovate/pin', depName: 'some-dep', - newVersion: undefined, }, - "No new version found for 'some-dep' after updating 'composer.json'", + "Could not determine resolved version for 'some-dep' after updating 'composer.json'; skipping pending-version check", ); }); diff --git a/lib/workers/repository/update/branch/get-updated.ts b/lib/workers/repository/update/branch/get-updated.ts index 6979d0af5c4..5448041b7c6 100644 --- a/lib/workers/repository/update/branch/get-updated.ts +++ b/lib/workers/repository/update/branch/get-updated.ts @@ -602,17 +602,16 @@ async function checkForPendingVersions( dep.currentVersion ?? dep.currentValue; if (!resolvedVersion) { - logger.error( + logger.warn( { packageFile: packageFileName, manager, branchName: config.branchName, depName, - newVersion: resolvedVersion, }, - `No new version found for '${depName}' after updating '${packageFileName}'`, + `Could not determine resolved version for '${depName}' after updating '${packageFileName}'; skipping pending-version check`, ); - throw new Error(WORKER_FILE_UPDATE_FAILED); + continue; } if (resolvedVersion && upgradeInfo.pendingVersions.has(resolvedVersion)) {