Skip to content

Supporting dotnet 10.0 preview version #1305

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
3 changes: 2 additions & 1 deletion src/dotnet/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "dotnet",
"version": "2.2.1",
"version": "2.3.0",
"name": "Dotnet CLI",
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/dotnet",
"description": "This Feature installs the latest .NET SDK, which includes the .NET CLI and the shared runtime. Options are provided to choose a different version or additional versions.",
Expand All @@ -11,6 +11,7 @@
"latest",
"lts",
"none",
"10.0",
"8.0",
"7.0",
"6.0"
Expand Down
1 change: 1 addition & 0 deletions src/dotnet/scripts/vendor/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,6 @@ dotnet-install.sh [--version latest] --channel 6.0 [--quality GA]
dotnet-install.sh [--version latest] --channel 6.0.4xx [--quality GA]
dotnet-install.sh [--version latest] --channel 8.0 --quality preview
dotnet-install.sh [--version latest] --channel 8.0 --quality daily
dotnet-install.sh [--version latest] --channel 10.0 --quality preview
dotnet-install.sh --version 6.0.413
```
8 changes: 4 additions & 4 deletions test/dotnet/install_dotnet_multiple_versions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ is_dotnet_sdk_version_installed "7.0"
check ".NET SDK 6.0 installed" \
is_dotnet_sdk_version_installed "6.0"

check ".NET SDK 5.0 installed" \
is_dotnet_sdk_version_installed "5.0"
check ".NET SDK 10.0 installed" \
is_dotnet_sdk_version_installed "10.0"

check ".NET Core SDK 3.1 installed" \
is_dotnet_sdk_version_installed "3.1"
Expand All @@ -46,8 +46,8 @@ dotnet run --project projects/net7.0
check "Build and run .NET 6.0 project" \
dotnet run --project projects/net6.0

check "Build and run .NET 5.0 project" \
dotnet run --project projects/net5.0
check "Build and run .NET 10.0 project" \
dotnet run --project projects/net10.0

check "Build and run .NET Core 3.1 project" \
dotnet run --project projects/netcoreapp3.1
Expand Down
32 changes: 32 additions & 0 deletions test/dotnet/projects/net10.0/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
using Newtonsoft.Json;

string json = """
{
"Name": "Inception",
"ReleaseDate": "2010-07-08T00:00:00",
"Genres": [
"Action",
"Thriller"
]
}
""";

Movie? m = JsonConvert.DeserializeObject<Movie>(json);

if (m == default)
{
Console.WriteLine("Decoding failed!");
}
else
{
Console.WriteLine($"Movie name: {m.Name}");
Console.WriteLine($"Release Date: {m.ReleaseDate}");
Console.WriteLine($"Genres: {string.Join(", ", m.Genres)}");
}

class Movie(string? name, DateTime releaseDate, List<string>? genres)
{
public string Name { get; set; } = name ?? "Default Name";
public DateTime ReleaseDate { get; set; } = releaseDate;
public List<string> Genres { get; set; } = genres ?? [];
}
14 changes: 14 additions & 0 deletions test/dotnet/projects/net10.0/example_project.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
</ItemGroup>

</Project>
4 changes: 2 additions & 2 deletions test/dotnet/scenarios.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,12 @@
"remoteUser": "vscode",
"features": {
"dotnet": {
"version": "9.0",
"version": "10.0",
"additionalVersions": [
"9.0",
"8.0",
"7.0",
"6.0",
"5.0",
"3.1"
]
}
Expand Down