Skip to content

Feature request: migrate examples and docs to .NET 10 #1268

Description

@nicolastarzia

Use case

.NET 10 is the current LTS release (GA Nov 2025, supported until Nov 10, 2028), while .NET 8 reaches end of support on Nov 10, 2026. The example projects and documentation in this repository still target .NET 8 — and several SAM templates were even still on the dotnet6 managed runtime while their .csproj already targeted net8.0 (a pre-existing inconsistency). New users following the examples are pointed at a runtime that is about to go out of support.

The production libraries under libraries/src/ already multi-target net8.0;net10.0, so the examples/docs are the part that lags behind.

Solution/User Experience

Migrate all example projects and documentation to .NET 10, without touching the production libraries:

  • All example .csproj net8.0 → net10.0
  • SAM templates Runtime dotnet6/dotnet8 → dotnet10
  • aws-lambda-tools-defaults.json function-runtime → dotnet10
  • Container examples: Dockerfile base images repinned to real .NET 10 digests (MCR dotnet/sdk:10.0, ECR Public lambda/dotnet:10.x, multi-arch) and publish path net6.0 → net10.0; DockerTag → dotnet10.0-v1
  • Example READMEs and root README updated
  • Add docs/migration-guide-v4.md

After the change, users copying an example get a project that runs on the current LTS runtime out of the box.

Alternative solutions

  • Keep examples on .NET 8 until closer to its EOL — rejected, since .NET 8 EOL is imminent and the libraries already support net10.0.
  • Also modernize libraries/src/ for .NET 10 / C# 14 in the same change — deferred; that is constrained by the shared net8.0+net10.0 source and LangVersion=default, and deserves its own discussion.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions