diff --git a/lib/modules/versioning/hashicorp/index.ts b/lib/modules/versioning/hashicorp/index.ts index c736d22b42fa25fe0a8f7c50f2a399e48c4c53c2..d89564391db720753eee7c55cbd3779c62154011 100644 --- a/lib/modules/versioning/hashicorp/index.ts +++ b/lib/modules/versioning/hashicorp/index.ts @@ -1,3 +1,4 @@ +import { logger } from '../../../logger'; import type { RangeStrategy } from '../../../types/versioning'; import { api as npm } from '../npm'; import type { NewValueConfig, VersioningApi } from '../types'; @@ -25,6 +26,7 @@ export function isValid(input: string): boolean { try { return npm.isValid(hashicorp2npm(input)); } catch (err) { + logger.debug({ value: input }, 'Unsupported hashicorp versioning value'); return false; } } @@ -32,7 +34,7 @@ export function isValid(input: string): boolean { } function matches(version: string, range: string): boolean { - return npm.matches(version, hashicorp2npm(range)); + return isValid(range) && npm.matches(version, hashicorp2npm(range)); } function getSatisfyingVersion( diff --git a/lib/util/package-rules/current-version.ts b/lib/util/package-rules/current-version.ts index d93cb11e667f9793ec99e6602f4963ec4f32f38d..e01cb1a37e016faeb984df6246b1888f3f6d3f48 100644 --- a/lib/util/package-rules/current-version.ts +++ b/lib/util/package-rules/current-version.ts @@ -39,6 +39,7 @@ export class CurrentVersionMatcher extends Matcher { isUnconstrainedValue || !!( currentValue && + version.isValid(currentValue) && version.matches(matchCurrentVersionStr, currentValue) ) ); diff --git a/lib/util/package-rules/index.spec.ts b/lib/util/package-rules/index.spec.ts index f788a327a1300ba55c1ac0708f052a5221281dba..b521b99189f3359a85628d5940bf23bad185993a 100644 --- a/lib/util/package-rules/index.spec.ts +++ b/lib/util/package-rules/index.spec.ts @@ -727,6 +727,7 @@ describe('util/package-rules/index', () => { x: 1, }, ], + versioning: 'npm', }; const res1 = applyPackageRules({ ...config,