diff --git a/lib/modules/datasource/flutter-version/index.ts b/lib/modules/datasource/flutter-version/index.ts index a28bb1839d08a7eb7fc50a7e74558c7490f6fb82..803da054fa0cbc1de9ea10bd90f1ffbd3b62add2 100644 --- a/lib/modules/datasource/flutter-version/index.ts +++ b/lib/modules/datasource/flutter-version/index.ts @@ -1,4 +1,5 @@ import { regEx } from '../../../util/regex'; +import { id as semverId } from '../../versioning/semver'; import { Datasource } from '../datasource'; import type { GetReleasesConfig, ReleaseResult } from '../types'; import type { FlutterResponse } from './types'; @@ -18,6 +19,8 @@ export class FlutterVersionDatasource extends Datasource { override readonly caching = true; + override readonly defaultVersioning = semverId; + async getReleases({ registryUrl, }: GetReleasesConfig): Promise<ReleaseResult | null> { diff --git a/lib/modules/datasource/hexpm-bob/index.ts b/lib/modules/datasource/hexpm-bob/index.ts index b298cf39a94af62df237edfa56ce6800bf70f259..fb07083aa1d51f3e5c086c2aa9bdec5a606c132f 100644 --- a/lib/modules/datasource/hexpm-bob/index.ts +++ b/lib/modules/datasource/hexpm-bob/index.ts @@ -3,6 +3,7 @@ import { logger } from '../../../logger'; import { ExternalHostError } from '../../../types/errors/external-host-error'; import { cache } from '../../../util/cache/package/decorator'; import { HttpError } from '../../../util/http'; +import { id as semverId } from '../../versioning/semver'; import { Datasource } from '../datasource'; import type { GetReleasesConfig, ReleaseResult } from '../types'; import { datasource, defaultRegistryUrl } from './common'; @@ -21,6 +22,8 @@ export class HexpmBobDatasource extends Datasource { override readonly caching = true; + override readonly defaultVersioning = semverId; + @cache({ namespace: `datasource-${datasource}`, key: ({ registryUrl, packageName }: GetReleasesConfig) => diff --git a/lib/modules/datasource/index.spec.ts b/lib/modules/datasource/index.spec.ts index 8b8dac55d090c1ae3b492d0493c80fb2894e57d7..e5c91e2c88e8a23c154915abd32fd21bcdf47f55 100644 --- a/lib/modules/datasource/index.spec.ts +++ b/lib/modules/datasource/index.spec.ts @@ -114,7 +114,7 @@ describe('modules/datasource/index', () => { describe('getDefaultVersioning()', () => { it('returns semver if undefined', () => { - expect(getDefaultVersioning(undefined)).toBe('semver'); + expect(getDefaultVersioning(undefined)).toBe('semver-coerced'); }); }); diff --git a/lib/modules/datasource/index.ts b/lib/modules/datasource/index.ts index f9529ddfe1c61289dcfd9c8b8510758b2be0971e..1daa4630569d727d5c9fc1628c6b9b74d25248db 100644 --- a/lib/modules/datasource/index.ts +++ b/lib/modules/datasource/index.ts @@ -10,6 +10,7 @@ import { regEx } from '../../util/regex'; import { Result } from '../../util/result'; import { uniq } from '../../util/uniq'; import { trimTrailingSlash } from '../../util/url'; +import { defaultVersioning } from '../versioning'; import * as allVersioning from '../versioning'; import datasources from './api'; import { addMetaData } from './metadata'; @@ -241,14 +242,14 @@ export function getDefaultVersioning( datasourceName: string | undefined ): string { if (!datasourceName) { - return 'semver'; + return defaultVersioning.id; } const datasource = getDatasourceFor(datasourceName); // istanbul ignore if: wrong regex manager config? if (!datasource) { logger.warn({ datasourceName }, 'Missing datasource!'); } - return datasource?.defaultVersioning ?? 'semver'; + return datasource?.defaultVersioning ?? defaultVersioning.id; } function applyReplacements( diff --git a/lib/modules/versioning/index.ts b/lib/modules/versioning/index.ts index 0346a213a622a6dac4d3db4f41881c7a384418d8..893d05a68de8642ada1b0cec28f65dfc071259b3 100644 --- a/lib/modules/versioning/index.ts +++ b/lib/modules/versioning/index.ts @@ -1,9 +1,12 @@ import versionings from './api'; import { Versioning } from './schema'; +import * as semverCoerced from './semver-coerced'; import type { VersioningApi, VersioningApiConstructor } from './types'; export * from './types'; +export const defaultVersioning = semverCoerced; + export const getVersioningList = (): string[] => Array.from(versionings.keys()); /** * Get versioning map. Can be used to dynamically add new versioning type