Suave.Json
3.6.1
See the version list below for details.
dotnet add package Suave.Json --version 3.6.1
NuGet\Install-Package Suave.Json -Version 3.6.1
<PackageReference Include="Suave.Json" Version="3.6.1" />
<PackageVersion Include="Suave.Json" Version="3.6.1" />
<PackageReference Include="Suave.Json" />
paket add Suave.Json --version 3.6.1
#r "nuget: Suave.Json, 3.6.1"
#:package Suave.Json@3.6.1
#addin nuget:?package=Suave.Json&version=3.6.1
#tool nuget:?package=Suave.Json&version=3.6.1
Suave.Json provides a small JSON serialization layer for Suave, backed by DataContractJsonSerializer. This package relies on runtime reflection and is NOT compatible with .NET Native AOT.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FSharp.Core (>= 10.0.102)
- Suave (>= 3.2.0 && < 4.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Keep-alive CPU per request is now within ≈1% of ASP.NET Core Minimal API on Linux with the server pinned to 4 cores (8.98 vs 8.89 µs, down from ≈9.7 µs in v3.6.0) (#865)
Suave is compiled without F# `.tail` calls: `async` continuations in `bind` (`>=>`), `choose`, `tryThen`, `inject`, `<|>`, the router and others passed the `HttpContext` struct on as a tail call, which went through the runtime's slow, copying tail-call helper (#865)
The request head is taken from the input with one pipe read and parsed in place, instead of three read/advance pairs; `TcpTransport` no longer takes a lock to fetch the socket on every read and write (#865)
Benchmarks: `benchmarks/cpu-per-request.sh` measures server CPU time per request; `benchmarks/HTTP_COMPARISON.md` documents the pinned-core and `perf` profiling method (#865)