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 fe11a96ebaa827a2b5eed70565a525aed0c524eb..443bcf34d2eae6ef52464a808f302c2d5a45075d 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 4a06a965324dc5255005bebc0b3640d08ad6066b..a141232be1057c10ef4e611eaa83455905ec41b2 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 1b3b40fa1e446427aaff3294a1916b0a11103a04..9a3cf8851d1d35539abe27f73e600efb278b9de3 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 86e82d40aa3aa593bfda155de445cd5b0e60aeab..71032a7b5bf875bfa6104e93440252b1060d8e80 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 d44ac205e4a27186f6b484efa37219d43fe222e7..e41ddf85995e30b96348cf6e3da6eaaebd0327e0 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 48f808c24fe294de31592744f55213bcaa1e6444..ce940ac245319a75f6a54f43cd3a31486172e158 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, + })), ), );