From dda5f189ea3846e19c073c112a9b7840c7f86f35 Mon Sep 17 00:00:00 2001 From: Michael Kriese <michael.kriese@visualon.de> Date: Wed, 29 Nov 2023 14:19:33 +0100 Subject: [PATCH] fix(datasource/dotnet-version): use sdks property to find all sdk version (#26031) --- .../__fixtures__/releases-3.1.json | 40 ++++++++----- .../__fixtures__/releases-5.0.json | 60 +++++++++++-------- .../__fixtures__/releases-6.0.json | 58 +++++++++++------- .../__fixtures__/releases-7.0.json | 20 ++++--- .../datasource/dotnet-version/index.spec.ts | 4 +- .../datasource/dotnet-version/schema.ts | 13 ++-- 6 files changed, 122 insertions(+), 73 deletions(-) diff --git a/lib/modules/datasource/dotnet-version/__fixtures__/releases-3.1.json b/lib/modules/datasource/dotnet-version/__fixtures__/releases-3.1.json index fe11a96eba..443bcf34d2 100644 --- a/lib/modules/datasource/dotnet-version/__fixtures__/releases-3.1.json +++ b/lib/modules/datasource/dotnet-version/__fixtures__/releases-3.1.json @@ -15,10 +15,12 @@ "version": "3.1.29", "version-display": "3.1.29" }, - "sdk": { - "version": "3.1.423", - "version-display": "3.1.423" - } + "sdks": [ + { + "version": "3.1.423", + "version-display": "3.1.423" + } + ] }, { "release-date": "2020-01-14", @@ -29,10 +31,12 @@ "version": "3.1.1", "version-display": "3.1.1" }, - "sdk": { - "version": "3.1.101", - "version-display": "3.1.101" - } + "sdks": [ + { + "version": "3.1.101", + "version-display": "3.1.101" + } + ] }, { "release-date": "2019-12-03", @@ -43,10 +47,12 @@ "version": "3.1.0", "version-display": "3.1.0" }, - "sdk": { - "version": "3.1.100", - "version-display": "3.1.100" - } + "sdks": [ + { + "version": "3.1.100", + "version-display": "3.1.100" + } + ] }, { "release-date": "2019-10-15", @@ -57,10 +63,12 @@ "version": "3.1.0-preview1.19506.1", "version-display": "3.1.0-preview1" }, - "sdk": { - "version": "3.1.100-preview1-014459", - "version-display": "3.1.100-preview1" - } + "sdks": [ + { + "version": "3.1.100-preview1-014459", + "version-display": "3.1.100-preview1" + } + ] } ] } diff --git a/lib/modules/datasource/dotnet-version/__fixtures__/releases-5.0.json b/lib/modules/datasource/dotnet-version/__fixtures__/releases-5.0.json index 4a06a96532..a141232be1 100644 --- a/lib/modules/datasource/dotnet-version/__fixtures__/releases-5.0.json +++ b/lib/modules/datasource/dotnet-version/__fixtures__/releases-5.0.json @@ -15,10 +15,12 @@ "version": "5.0.17", "version-display": "5.0.17" }, - "sdk": { - "version": "5.0.408", - "version-display": "5.0.408" - } + "sdks": [ + { + "version": "5.0.408", + "version-display": "5.0.408" + } + ] }, { "release-date": "2020-12-08", @@ -29,10 +31,12 @@ "version": "5.0.1", "version-display": "5.0.1" }, - "sdk": { - "version": "5.0.101", - "version-display": "5.0.101" - } + "sdks": [ + { + "version": "5.0.101", + "version-display": "5.0.101" + } + ] }, { "release-date": "2020-11-10", @@ -43,10 +47,12 @@ "version": "5.0.0", "version-display": "5.0.0" }, - "sdk": { - "version": "5.0.100", - "version-display": "5.0.100" - } + "sdks": [ + { + "version": "5.0.100", + "version-display": "5.0.100" + } + ] }, { "release-date": "2020-09-14", @@ -57,10 +63,12 @@ "version": "5.0.0-rc.1.20451.14", "version-display": "5.0.0-rc.1" }, - "sdk": { - "version": "5.0.100-rc.1.20452.10", - "version-display": "5.0.100-rc.1" - } + "sdks": [ + { + "version": "5.0.100-rc.1.20452.10", + "version-display": "5.0.100-rc.1" + } + ] }, { "release-date": "2020-08-25", @@ -71,10 +79,12 @@ "version": "5.0.0-preview.8.20407.11", "version-display": "5.0.0-preview.8" }, - "sdk": { - "version": "5.0.100-preview.8.20417.9", - "version-display": "5.0.100-preview.8" - } + "sdks": [ + { + "version": "5.0.100-preview.8.20417.9", + "version-display": "5.0.100-preview.8" + } + ] }, { "release-date": "2020-03-16", @@ -85,10 +95,12 @@ "version": "5.0.0-preview.1.20120.5", "version-display": "5.0.0-preview.1" }, - "sdk": { - "version": "5.0.100-preview.1.20155.7", - "version-display": "5.0.100-preview.1" - } + "sdks": [ + { + "version": "5.0.100-preview.1.20155.7", + "version-display": "5.0.100-preview.1" + } + ] } ] } diff --git a/lib/modules/datasource/dotnet-version/__fixtures__/releases-6.0.json b/lib/modules/datasource/dotnet-version/__fixtures__/releases-6.0.json index 1b3b40fa1e..9a3cf8851d 100644 --- a/lib/modules/datasource/dotnet-version/__fixtures__/releases-6.0.json +++ b/lib/modules/datasource/dotnet-version/__fixtures__/releases-6.0.json @@ -15,10 +15,20 @@ "version": "6.0.9", "version-display": "6.0.9" }, - "sdk": { - "version": "6.0.401", - "version-display": "6.0.401" - } + "sdks": [ + { + "version": "6.0.401", + "version-display": "6.0.401" + }, + { + "version": "6.0.304", + "version-display": "6.0.304" + }, + { + "version": "6.0.109", + "version-display": "6.0.109" + } + ] }, { "release-date": "2021-12-14", @@ -29,10 +39,12 @@ "version": "6.0.1", "version-display": "6.0.1" }, - "sdk": { - "version": "6.0.101", - "version-display": "6.0.101" - } + "sdks": [ + { + "version": "6.0.101", + "version-display": "6.0.101" + } + ] }, { "release-date": "2021-11-08", @@ -43,10 +55,12 @@ "version": "6.0.0", "version-display": "6.0.0" }, - "sdk": { - "version": "6.0.100", - "version-display": "6.0.100" - } + "sdks": [ + { + "version": "6.0.100", + "version-display": "6.0.100" + } + ] }, { "release-date": "2021-09-14", @@ -57,10 +71,12 @@ "version": "6.0.0-rc.1.21451.13", "version-display": "6.0.0-rc.1" }, - "sdk": { - "version": "6.0.100-rc.1.21463.6", - "version-display": "6.0.100-rc.1" - } + "sdks": [ + { + "version": "6.0.100-rc.1.21463.6", + "version-display": "6.0.100-rc.1" + } + ] }, { "release-date": "2021-02-17", @@ -71,10 +87,12 @@ "version": "6.0.0-preview.1.21102.12", "version-display": "6.0.0-preview.1" }, - "sdk": { - "version": "6.0.100-preview.1.21103.13", - "version-display": "6.0.100-preview.1" - } + "sdks": [ + { + "version": "6.0.100-preview.1.21103.13", + "version-display": "6.0.100-preview.1" + } + ] } ] } diff --git a/lib/modules/datasource/dotnet-version/__fixtures__/releases-7.0.json b/lib/modules/datasource/dotnet-version/__fixtures__/releases-7.0.json index 86e82d40aa..71032a7b5b 100644 --- a/lib/modules/datasource/dotnet-version/__fixtures__/releases-7.0.json +++ b/lib/modules/datasource/dotnet-version/__fixtures__/releases-7.0.json @@ -15,10 +15,12 @@ "version": "7.0.0-rc.1.22426.10", "version-display": "7.0.0-rc.1" }, - "sdk": { - "version": "7.0.100-rc.1.22431.12", - "version-display": "7.0.100-rc.1" - } + "sdks": [ + { + "version": "7.0.100-rc.1.22431.12", + "version-display": "7.0.100-rc.1" + } + ] }, { "release-date": "2022-02-17", @@ -29,10 +31,12 @@ "version": "7.0.0-preview.1.22076.8", "version-display": "7.0.0-preview.1" }, - "sdk": { - "version": "7.0.100-preview.1.22110.4", - "version-display": "7.0.100-preview.1" - } + "sdks": [ + { + "version": "7.0.100-preview.1.22110.4", + "version-display": "7.0.100-preview.1" + } + ] } ] } diff --git a/lib/modules/datasource/dotnet-version/index.spec.ts b/lib/modules/datasource/dotnet-version/index.spec.ts index d44ac205e4..e41ddf8599 100644 --- a/lib/modules/datasource/dotnet-version/index.spec.ts +++ b/lib/modules/datasource/dotnet-version/index.spec.ts @@ -126,7 +126,7 @@ describe('modules/datasource/dotnet-version/index', () => { expect(res).toBeDefined(); expect(res?.sourceUrl).toBe('https://github.com/dotnet/sdk'); - expect(res?.releases).toHaveLength(17); + expect(res?.releases).toHaveLength(19); expect(res?.releases).toIncludeAllPartialMembers([ { version: '3.1.100-preview1-014459' }, { version: '3.1.423' }, @@ -134,6 +134,8 @@ describe('modules/datasource/dotnet-version/index', () => { { version: '5.0.408' }, { version: '6.0.100-preview.1.21103.13' }, { version: '6.0.401' }, + { version: '6.0.304' }, + { version: '6.0.109' }, { version: '7.0.100-preview.1.22110.4' }, { version: '7.0.100-rc.1.22431.12' }, ]); diff --git a/lib/modules/datasource/dotnet-version/schema.ts b/lib/modules/datasource/dotnet-version/schema.ts index 48f808c24f..ce940ac245 100644 --- a/lib/modules/datasource/dotnet-version/schema.ts +++ b/lib/modules/datasource/dotnet-version/schema.ts @@ -26,17 +26,22 @@ export const DotnetSdkReleases = z .object({ releases: LooseArray( ReleaseBase.extend({ - sdk: ReleaseDetails, + sdks: z.array(ReleaseDetails), }), ).catch([]), }) .transform(({ releases }): Release[] => - releases.map( + releases.flatMap( ({ - sdk: { version }, + sdks, 'release-date': releaseTimestamp, 'release-notes': changelogUrl, - }) => ({ version, releaseTimestamp, changelogUrl }), + }) => + sdks.map(({ version }) => ({ + version, + releaseTimestamp, + changelogUrl, + })), ), ); -- GitLab