Skip to content

[Repo Assist] Update from .NET 5 to .NET 8 - #431

Merged
dsyme merged 2 commits into
masterfrom
repo-assist/fix-issue-425-net8-update-ea60ced625a14cab
Feb 25, 2026
Merged

[Repo Assist] Update from .NET 5 to .NET 8#431
dsyme merged 2 commits into
masterfrom
repo-assist/fix-issue-425-net8-update-ea60ced625a14cab

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

🤖 This is an automated PR from Repo Assist.

Closes #425

Summary

This PR updates the repository's engineering from .NET 5 to .NET 8, as requested in #425. The approach follows the initial work from #416 (now closed).

The use of netstandard targets is preserved for library compatibility, while test/engineering builds now target net8.0.

Changes

Project files

File Before After
src/FSharp.TypeProviders.SDK.fsproj netstandard2.0;netstandard2.1 netstandard2.0;net8.0
examples/BasicProvider.DesignTime.fsproj netstandard2.1 netstandard2.0;net8.0
examples/BasicProvider.Runtime.fsproj netstandard2.1 netstandard2.0;net8.0 + ProduceReferenceAssembly=false
examples/BasicProvider.Tests.fsproj net5.0 net8.0
examples/StressProvider.fsproj netstandard2.1 netstandard2.0;net8.0 + ProduceReferenceAssembly=false
examples/StressProvider.Tests.fsproj net5.0 net8.0
tests/FSharp.TypeProviders.SDK.Tests.fsproj net5.0 net8.0
templates/content/basic/global.json SDK 5.0.400 SDK 8.0.400
templates/.../MyProvider.DesignTime.fsproj netstandard2.1 netstandard2.0;netstandard2.1
templates/.../MyProvider.Runtime.fsproj netstandard2.1 netstandard2.0;netstandard2.1
templates/.../MyProvider.Tests.fsproj net5.0 net8.0

Other

  • templates/content/basic/.config/dotnet-tools.json: Updated paket from 6.1.3 to 9.0.2
  • src/ProvidedTypes.fs: Added #nowarn "0044" and conditional [(Obsolete(DiagnosticId = "SYSLIB0051"))] attributes for FieldAttributes.NotSerialized and TypeAttributes.Serializable which are deprecated in .NET 5+ (fixes build with TreatWarningsAsErrors=true)
  • tests/FSharp.TypeProviders.SDK.Tests.fsproj: Removed duplicate PackageReference entries that conflicted with paket-managed packages

Test Status

All tests pass on net8.0:

  • tests/FSharp.TypeProviders.SDK.Tests: 83 passed, 1 skipped (the skip is pre-existing)
  • examples/BasicProvider.Tests: 5 passed
  • examples/StressProvider.Tests: 4 passed

Build produces 0 warnings, 0 errors for all updated projects.

Generated by Repo Assist for issue #425

To install this workflow, run gh aw add githubnext/agentics/workflows/repo-assist.md@b87234850bf9664d198f28a02df0f937d0447295. View source at https://github.com/githubnext/agentics/tree/b87234850bf9664d198f28a02df0f937d0447295/workflows/repo-assist.md.

- Update target frameworks from net5.0 to net8.0 in test projects
- Update SDK and design-time/runtime libraries from netstandard2.1 to netstandard2.0;net8.0
- Add ProduceReferenceAssembly=false to type provider runtime assemblies
- Fix deprecation warnings for FieldAttributes.NotSerialized and TypeAttributes.Serializable on .NET 5+
- Update templates global.json from SDK 5.0.400 to 8.0.400
- Update paket template tool from 6.1.3 to 9.0.2
- Remove duplicate PackageReference entries in tests project (paket already manages them)

Closes #425

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dsyme
dsyme marked this pull request as ready for review February 25, 2026 00:59
@dsyme
dsyme merged commit 08db21d into master Feb 25, 2026
2 checks passed
dsyme pushed a commit that referenced this pull request Mar 7, 2026
🤖 *This PR was created by Repo Assist, an automated AI assistant.*

Prepares the RELEASE_NOTES.md for version **8.3.0** — a minor release
capturing significant improvements merged since 8.2.0 (February 24).

## Changes since 8.2.0

| Type | PR | Description |
|------|----|-------------|
| 🐛 Bug fix | #432 | Fix custom attributes on nested erased types |
| 🐛 Bug fix | #458 | Fix `GetNestedType` on
`TypeSymbol`/`ProvidedTypeSymbol` for generic provided types |
| 🐛 Bug fix | #459 | Fix mutable variable captures in
`QuotationSimplifier` — promote to ref cells |
| ⚡ Performance | #443 | Memoize `transType` in `AssemblyCompiler` to
reduce redundant type translation |
| ⚡ Performance | #457 | Cache `transTypeRef` and `transMethRef` in
assembly compiler |
| ✨ Feature | #428 | New warning when all static parameters in a type
provider are optional |
| 📚 Docs | #455 | Documentation guide overhaul |
| 🧪 Tests | #442 | Add coverage tests and Coverage build target |
| 🔧 Toolchain | #431 | Update to .NET 8 SDK and toolchain |

This is a minor version bump (8.2.0 → 8.3.0) due to the new feature
(#428) and significant improvements. If preferred, a patch release
(8.2.1) is also reasonable given the emphasis on bug fixes.

## Test Status

This PR only modifies RELEASE_NOTES.md. The build/test status for the
underlying changes is tracked in the individual PRs listed above (all
passed CI before merging).

---

*To release: merge this PR, then tag `v8.3.0` and publish the NuGet
package via the existing build pipeline.*




> Generated by [Repo
Assist](https://github.com/fsprojects/FSharp.TypeProviders.SDK/actions/runs/22448247879)
>
> To install this [agentic
workflow](https://github.com/githubnext/agentics/tree/afb00b92a9514fee9a14c583f059a03d05738f70/workflows/repo-assist.md),
run
> ```
> gh aw add
githubnext/agentics@afb00b9
> ```

<!-- gh-aw-agentic-workflow: Repo Assist, engine: copilot, id:
22448247879, workflow_id: repo-assist, run:
https://github.com/fsprojects/FSharp.TypeProviders.SDK/actions/runs/22448247879
-->

<!-- gh-aw-workflow-id: repo-assist -->

---------

Co-authored-by: Repo Assist <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update from .NET 5 to .NET 8

1 participant