Skip to content

feat: upgrade to .NET 10#80

Merged
sliedig merged 6 commits intodevelopfrom
sliedig-dotnet10
Mar 14, 2026
Merged

feat: upgrade to .NET 10#80
sliedig merged 6 commits intodevelopfrom
sliedig-dotnet10

Conversation

@sliedig
Copy link
Contributor

@sliedig sliedig commented Mar 9, 2026

Issue number: #81

Summary

Upgrades the project from .NET 8 to .NET 10, updates all NuGet dependencies to latest stable versions, migrates deprecated DynamoDBContext usage, fixes GitHub Actions workflows, and cleans up the gitignore.

Changes

.NET 10 Upgrade

  • Updated TargetFramework to net10.0 across all projects

NuGet Dependency Updates

  • Aligned all package versions consistently across Contracts, Approvals, and Web services
  • Key updates: Amazon.Lambda.Core 2.8.1, Powertools 3.1.0, AWSSDK.DynamoDBv2 4.0.15, Microsoft.NET.Test.Sdk 18.3.0
  • Fixed Powertools version inconsistency (Approvals/SearchService were on v2.x while others were on v3.x)

DynamoDBContext Migration (CS0618)

  • Migrated from deprecated new DynamoDBContext(client, config) constructor to DynamoDBContextBuilder fluent API
  • Affected files: ContractStatusChangedEventHandler, WaitForContractApprovalFunction, PropertiesApprovalSyncFunction, RequestApprovalFunction
  • Removed unused DynamoDBContextConfig type alias imports

GitHub Actions Fixes

  • Added setup-dotnet with .NET 10.0.x to codeql-analysis.yml before Autobuild step
  • Split release-drafter.yml into config (.github/) and workflow (.github/workflows/) so GitHub discovers it
  • Fixed labellabels typo in release-drafter config

User experience

No user-facing changes. This is a framework and tooling upgrade.

Testing

  • All 9 tests pass
  • Build succeeds with only pre-existing nullable reference warnings (CS8602/CS8618)'

Checklist

Acknowledgment

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

…ects

Update outdated AWS SDK and Lambda packages for .NET 10 compatibility:
- Amazon.Lambda.Core 2.8.0 → 2.8.1
- AWSSDK.DynamoDBv2 4.0.10.8 → 4.0.14
- AWSSDK.XRay 4.0.3.11 → 4.0.3.13
- AWSSDK.EventBridge 4.0.5.13 → 4.0.5.15
- AWSSDK.StepFunctions 4.0.2.7 → 4.0.2.9

Also removes Microsoft.NET.Test.Sdk from Common.csproj as it is a
shared library, not a test project.
@sliedig sliedig requested a review from a team as a code owner March 9, 2026 12:46
@github-actions github-actions bot added the feature New features or minor changes label Mar 9, 2026
@github-actions
Copy link

github-actions bot commented Mar 9, 2026

No acknowledgement section found. Please make sure you used the template to open a PR and didn't remove the acknowledgment section. Check the template here: https://github.com/aws-samples/aws-serverless-developer-experience-workshop-dotnet/blob/develop/.github/PULL_REQUEST_TEMPLATE.md#acknowledgment

@github-actions
Copy link

github-actions bot commented Mar 9, 2026

No related issues found. Please ensure there is an open issue related to this change to avoid significant delays or closure.

@github-actions github-actions bot added do-not-merge PRs that are blocked for varying reasons need-issue PR is missing a related issue for tracking change need-license-agreement-acknowledge PRs that are missing acknowledgement section labels Mar 9, 2026
- Add setup-dotnet step to codeql-analysis.yml for .NET 10.0.x
- Split release-drafter.yml into config (.github/) and workflow (.github/workflows/)
- Fix 'label' typo to 'labels' in Maintenance category config
@sliedig sliedig changed the title feat: upgrade to .NET 10 with updated dependencies and DynamoDBContext migration feat: upgrade to .NET 10 Mar 9, 2026
@sliedig sliedig removed need-license-agreement-acknowledge PRs that are missing acknowledgement section do-not-merge PRs that are blocked for varying reasons need-issue PR is missing a related issue for tracking change labels Mar 9, 2026
…I Gateway payloads

API Gateway sends snake_case JSON (property_id, seller_name) but C# models
used PascalCase properties, causing null deserialization. Added [JsonPropertyName]
attributes to CreateContractRequest, UpdateContractRequest, and
ApprovePublicationRequest. Added tests verifying snake_case JSON deserialization.
@sliedig sliedig merged commit db78168 into develop Mar 14, 2026
3 checks passed
@sliedig sliedig deleted the sliedig-dotnet10 branch March 14, 2026 05:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New features or minor changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant