NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
NuGet · #447 most downloaded on NuGet
NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript
Last release 5 months ago
20 Apr 2026
Release timing varies
gaps range from 2 weeks to 5 months
Rarely documented
notes for 10 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
121 releases · first in 2019
Important Upgrade directly from v14.6.3 to v14.7.1 — skip v14.7.0.
Important
Upgrade directly from v14.6.3 to v14.7.1 — skip v14.7.0.
v14.7.0 bundled NJsonSchema v11.6.0, which contained a regression that silently dropped nullability on required T? / [JsonRequired] T? DTO properties. The resulting OpenAPI/JSON schema marked those properties as non-nullable, so generated TypeScript and C# clients lost null-safety for fields the server can legitimately return as null (#5359).
v14.7.1 updates to NJsonSchema v11.6.1, which corrects the handling of the C# required keyword and [JsonRequired]:
string?, T?) is preserved.MinLength=1 on non-nullable strings.[Required] semantics remain unchanged (still suppresses nullability and adds MinLength=1 to strings by default, matching its runtime behavior).For public required string[]? OptionList { get; init; } (#5359):
| TypeScript client | C# client | |
|---|---|---|
| v14.7.0 (broken) | optionList: string[] ❌ |
public string[] OptionList ❌ |
| v14.7.1 | optionList: string[] | null ✅ |
public string[]? OptionList ✅ |
For full details and truth tables across all required / [Required] / [JsonRequired] / [JsonProperty(Required=*)] combinations, see the NJsonSchema v11.6.1 release notes and NJsonSchema #1919.
Full Changelog: v14.7.0...v14.7.1
One column per quarter.
NSwag v14.7.1 (NJsonSchema v11.6.1) Latest
Latest
Compare
NJsonSchema v11.6.0 (potentially breaking changes)
Caution
Do not use this release — upgrade to v14.7.1 or later.
v14.7.0 bundles NJsonSchema v11.6.0, which contained a regression that silently dropped nullability on required T? / [JsonRequired] T? DTO properties. Generated TypeScript and C# clients lost null-safety for fields the server can legitimately return as null (#5359). Fixed in v14.7.1.
NSwag.Npm resulting in a NConsole.UnusedArgumentException by @ptasev in #5320This release updates to NJsonSchema v11.6.0 and Namotion.Reflection v3.5.0, which include the following changes that may affect generated code:
required keyword now correctly recognized: Properties using the C# 11 required keyword (via RequiredMemberAttribute / JsonRequiredAttribute) are now properly treated as required in the schema and generated code. Previously these were incorrectly treated as optional.WriteAccessor setting to control property setter syntax (set vs init).JsonLibraryVersion setting for controlling enum attribute generation with System.Text.Json.MinLength validation no longer incorrectly applied to DateTime properties.IncludeFields is enabled.For the full list of changes, see the NJsonSchema v11.6.0 release notes.
Full Changelog: v14.6.3...v14.7.0
v14.7.1 updates to NJsonSchema v11.6.1 , which corrects the handling of the C# required keyword and [JsonRequired] :
These are now treated as presence markers (the property must be present in the JSON) rather than value constraints.
Nullability from the declared type ( string? , T? ) is preserved.
No spurious MinLength=1 on non-nullable strings.
DataAnnotations [Required] semantics remain unchanged (still suppresses nullability and adds MinLength=1 to strings by default, matching its runtime behavior).
For public required string[]? OptionList { get; init; } ( #5359 ):
TypeScript client C# client
v14.7.0 (broken) optionList: string[] ❌ public string[] OptionList ❌
v14.7.1 optionList: string[] | null ✅ public string[]? OptionList ✅
For full details and truth tables across all required / [Required] / [JsonRequired] / [JsonProperty(Required=*)] combinations, see the NJsonSchema v11.6.1 release notes and NJsonSchema #1919 .
Updated packages for CVE-2025-55315 by @erjdev in #5299
Full Changelog: v14.6.2...v14.6.3
Fixes EnumValue regression in v14.6.1 by introducing a new JsonLibraryVersion configuration (default 8.0)
Fixes EnumValue regression in v14.6.1 by introducing a new JsonLibraryVersion configuration (default 8.0)
Full Changelog: v14.6.1...v14.6.2
Fix binary operation result type generation for AspNetCore CSharp by @xamele0n in #5255
Full Changelog: v14.6.0...v14.6.1
Update NJS v11.5.0, breaking: minimum TypeScript output version is now 4.3 by @RicoSuter in #5268
Full Changelog: v14.5.0...v14.6.0
Remove deprecated tslint suppression by @CaringDev in #5020
Full Changelog: v14.4.0...v14.5.0
Fix optional parameter ordering in generated TS/CS clients by @lahma in #5135
Full Changelog: v14.3.0...v14.4.0
Updated to NJsonSchema v11.2.0, see https://github.com/RicoSuter/NJsonSchema/releases/tag/v11.2.0
Updated to NJsonSchema v11.2.0, see https://github.com/RicoSuter/NJsonSchema/releases/tag/v11.2.0
Microsoft.NET.Tests.Sdk and Verify.XUnit by @Saibamen in #5059Full Changelog: v14.2.0...v14.3.0
Support $ref in requestBody by @eatdrinksleepcode in #4917
$ref in requestBody by @eatdrinksleepcode in #4917Full Changelog: v14.1.0...v14.2.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →