Skip to content

Commit

Permalink
feat: release for .NET 9.0 (#1234)
Browse files Browse the repository at this point in the history
* chore: prepare for support of net9.0
* test: run QA for all supported versions of .NET
* feat: version compatible with .NET 9.0 (#1224)
* chore: include System.Json.Text in dependabot.yml
* ci: install .NET 9.0 in appveyor
  • Loading branch information
Seddryck authored Nov 25, 2024
1 parent b2cec42 commit 76e71bd
Show file tree
Hide file tree
Showing 27 changed files with 57 additions and 49 deletions.
3 changes: 2 additions & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ updates:
Snowflake.Data:
patterns:
- "Snowflake.Data"
System.Management:
System:
patterns:
- "System.Management"
- "System.Text.Json"
2 changes: 1 addition & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

<PropertyGroup>
<LangVersion>12.0</LangVersion>
<TargetFrameworks>net6.0;net7.0;net8.0</TargetFrameworks>
<TargetFrameworks>net6.0;net8.0;net9.0</TargetFrameworks>
<Platform>AnyCPU</Platform>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.Adomd/DubUrl.Adomd.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
<ItemGroup>
<PackageReference Include="Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64" Version="19.84.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="System.Management" Version="8.0.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="System.Management" Version="9.0.0" />
</ItemGroup>

Expand Down
4 changes: 2 additions & 2 deletions DubUrl.Extensions.Testing/DubUrl.Extensions.Testing.csproj
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
Expand All @@ -8,7 +8,7 @@
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.1" />
<PackageReference Include="Microsoft.Extensions.Options" Version="8.0.2" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.0" />
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.Extensions/DubUrl.Extensions.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">

<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
Expand All @@ -10,7 +10,7 @@
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.2" />
<PackageReference Include="Microsoft.Extensions.Options" Version="8.0.2" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.0" />
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.OleDb/DubUrl.OleDb.csproj
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">

<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="System.Data.OleDb" Version="8.0.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="System.Data.OleDb" Version="9.0.0" />
</ItemGroup>

Expand Down
4 changes: 2 additions & 2 deletions DubUrl.QA/CockRoach/deploy-cockroach-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
if ($force) {
Write-Host "Enforcing QA testing for CockRoachDB"
Expand Down Expand Up @@ -49,4 +49,4 @@ if ($force -or ($filesChanged -like "*cockroach*")) {
exit $testSuccessful
} else {
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/Drill/deploy-drill-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -79,4 +79,4 @@ if ($force -or ($filesChanged -like "*drill*")) {
exit $testSuccessful
} else {
return -1
}
}
14 changes: 8 additions & 6 deletions DubUrl.QA/DubUrl.QA.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -95,28 +95,30 @@
<PackageReference Include="FirebirdSql.Data.FirebirdClient" Version="10.3.1" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.2.2" />
<PackageReference Include="Microsoft.Data.Sqlite.Core" Version="9.0.0" />
<PackageReference Include="MySqlConnector" Version="2.3.7" />
<PackageReference Include="Npgsql" Version="9.0.1" />
<PackageReference Include="NReco.PrestoAdo" Version="1.1.0" />
<PackageReference Include="SingleStoreConnector" Version="1.1.4" />
<PackageReference Include="SQLitePCLRaw.bundle_e_sqlite3" Version="2.1.10" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="System.Data.Odbc" Version="8.0.1" />
<PackageReference Include="System.Data.OleDb" Version="8.0.1" />
<PackageReference Include="MySqlConnector" Version="2.3.7" />
<PackageReference Include="Npgsql" Version="8.0.5" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="System.Data.Odbc" Version="9.0.0" />
<PackageReference Include="System.Data.OleDb" Version="9.0.0" />
<PackageReference Include="MySqlConnector" Version="2.4.0" />
<PackageReference Include="Npgsql" Version="9.0.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Ini" Version="8.0.0" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.0" />
Expand Down
2 changes: 1 addition & 1 deletion DubUrl.QA/DuckDB/deploy-duckdb-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, $config= "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1

Expand Down
4 changes: 2 additions & 2 deletions DubUrl.QA/FirebirdSQL/deploy-firebirdsql-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Param(
, $package= "Firebird-4.0.2.2816-0-x64"
, [string] $config= "Release"
, [string] $extension = "zip"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1

Expand Down Expand Up @@ -166,4 +166,4 @@ if ($force -or ($filesChanged -like "*firebird*")) {
exit $testSuccessful
} else {
return -1
}
}
2 changes: 1 addition & 1 deletion DubUrl.QA/MsAccess/deploy-msaccess-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1

Expand Down
4 changes: 2 additions & 2 deletions DubUrl.QA/MsExcel/deploy-msexcel-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1

Expand Down Expand Up @@ -39,4 +39,4 @@ if ($force -or ($filesChanged -like "*excel*")) {
exit $testSuccessful
} else {
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/MsSqlServer/deploy-mssqlserver-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Param(
[switch] $force=$false
, [string] $databaseService= "MSSQL`$SQL2019"
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Windows-Service.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -72,4 +72,4 @@ if ($force -or ($filesChanged -like "*mssql*")) {
exit $testSuccessful
} else {
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/Mysql/deploy-mysql-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Param(
, [string] $databaseService= "MySQL80"
, [string[]] $odbcDrivers = @("MariaDB", "MySQL")
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -149,4 +149,4 @@ if ($force -or ($filesChanged -like "*mysql*")) {
exit $testSuccessful
} else {
return -1
}
}
2 changes: 1 addition & 1 deletion DubUrl.QA/Postgresql/deploy-postgresql-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Param(
[switch] $force=$false
, $databaseService= "postgresql-x64-15"
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Windows-Service.ps1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
, [string] $downloadUrl = "https://download.microsoft.com/download/8/8/0/880BCA75-79DD-466A-927D-1ABF1F5454B0/PBIDesktopSetup_x64.exe"
, [string] $processName = "PBIDesktop"
)
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.QA/QuestDB/deploy-questdb-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -51,4 +51,4 @@ if ($force -or ($filesChanged -like "*quest*")) {
exit $testSuccessful
} else {
return -1
}
}
2 changes: 1 addition & 1 deletion DubUrl.QA/Run-TestSuite.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Function Run-TestSuite {
[ValidateNotNullOrEmpty()]
[string[]] $categories
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)

Begin {
Expand Down
2 changes: 1 addition & 1 deletion DubUrl.QA/SingleStore/deploy-singlestore-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Param(
[switch] $force=$false
, [string[]] $odbcDrivers = @("MariaDB", "MySQL")
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.QA/Sqlite/deploy-sqlite-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, $config= "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
, $extension = "zip"
)
. $PSScriptRoot\..\Run-TestSuite.ps1
Expand Down Expand Up @@ -90,4 +90,4 @@ if ($force -or ($filesChanged -like "*sqlite*")) {
} else {
Write-Host "Skipping the deployment and run of QA testing for Sqlite"
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/Text/deploy-text-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1

Expand Down Expand Up @@ -40,4 +40,4 @@ if ($force -or ($filesChanged -like "*csv*")) {
exit $testSuccessful
} else {
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/Timescale/deploy-timescale-test-env.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Param(
[switch] $force=$false
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -42,4 +42,4 @@ if ($force -or ($filesChanged -like "*timescale*")) {
exit $testSuccessful
} else {
return -1
}
}
4 changes: 2 additions & 2 deletions DubUrl.QA/Trino/deploy-trino-test-env.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Param(
[switch] $force=$false
, [string] $networkName = "trino-network"
, [string] $config = "Release"
, [string[]] $frameworks = @("net6.0", "net7.0")
, [string[]] $frameworks = @("net6.0", "net8.0", "net9.0")
)
. $PSScriptRoot\..\Run-TestSuite.ps1
. $PSScriptRoot\..\Docker-Container.ps1
Expand Down Expand Up @@ -89,4 +89,4 @@ if ($force -or ($filesChanged -like "*trino*")) {
exit $testSuccessful
} else {
return -1
}
}
2 changes: 1 addition & 1 deletion DubUrl.QA/deploy-test-harness.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Param(
[switch] $force=$false,
[string] $config = "Release",
[string[]] $frameworks = @("net6.0", "net7.0"),
[string[]] $frameworks = @("net6.0", "net8.0", "net9.0"),
[Parameter(Position = 0, ParameterSetName='single')]
[string] $suite=$null,
[Parameter(ParameterSetName='multiple')]
Expand Down
4 changes: 2 additions & 2 deletions DubUrl.Testing/DubUrl.Testing.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@
<PackageReference Include="Snowflake.Data" Version="4.2.0" />
<PackageReference Include="Teradata.Client.Provider" Version="20.0.3" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
<PackageReference Include="System.Management" Version="8.0.0" />
<PackageReference Include="Npgsql" Version="8.0.5" />
<PackageReference Include="MySqlConnector" Version="2.3.7" />
<PackageReference Include="System.Data.Odbc" Version="8.0.1" />
<PackageReference Include="System.Data.OleDb" Version="8.0.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="'$(TargetFramework)' != 'net6.0'">
<PackageReference Include="System.Management" Version="9.0.0" />
<PackageReference Include="Npgsql" Version="9.0.1" />
<PackageReference Include="MySqlConnector" Version="2.4.0" />
Expand Down
9 changes: 7 additions & 2 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ init:
- cmd: RefreshEnv.cmd
- pwsh: Write-Host "Target branch is '$($env:APPVEYOR_REPO_BRANCH)'"

install:
- ps: |
Invoke-WebRequest -Uri 'https://dot.net/v1/dotnet-install.ps1' -UseBasicParsing -OutFile "$env:temp\dotnet-install.ps1"
& $env:temp\dotnet-install.ps1 -Architecture x64 -Version '9.0.100' -InstallDir "$env:ProgramFiles\dotnet"
before_build:
- cmd: gitversion /output buildserver /verbosity Minimal
- pwsh: Write-Host "Building DubUrl version $($env:GitVersion_SemVer)"
Expand All @@ -48,7 +53,7 @@ before_build:
}
build_script:
#- dotnet --info
- dotnet --info
- dotnet build DubUrl.sln -p:version="%GitVersion_SemVer%" -c Release /p:ContinuousIntegrationBuild=true --nologo

test_script:
Expand All @@ -71,7 +76,7 @@ test_script:
- pwsh: |
$force = ($env:APPVEYOR_REPO_BRANCH -eq "main") #Valid for a Pull Request or a Commit on main
& .\DubUrl.QA\deploy-test-harness.ps1 -force:$force -config "Release" -frameworks @("net6.0") -exclude @("CockRoach", "Drill", "Trino", "PowerBIDesktop", "SsasMultdim", "SsasTabular", "SingleStore", "CrateDB")
& .\DubUrl.QA\deploy-test-harness.ps1 -force:$force -config "Release" -frameworks @("net6.0", "net8.0", "net9.0") -exclude @("CockRoach", "Drill", "Trino", "PowerBIDesktop", "SsasMultdim", "SsasTabular", "SingleStore", "CrateDB")
if ($lastexitcode -gt 0) {
throw "At least one of the test-suite was not successful. Build stopped."
}
Expand Down

0 comments on commit 76e71bd

Please sign in to comment.