Skip to content

nuget-dressca: Bump NSwag.AspNetCore and NSwag.MSBuild#5285

Closed
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/samples/Dressca/dressca-backend/nswag-packages-674688d9de
Closed

nuget-dressca: Bump NSwag.AspNetCore and NSwag.MSBuild#5285
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/samples/Dressca/dressca-backend/nswag-packages-674688d9de

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 27, 2026

Updated NSwag.AspNetCore from 14.6.3 to 14.7.1.

Release notes

Sourced from NSwag.AspNetCore's releases.

14.7.1

[!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).

Corrections to 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).

Observable client changes vs v14.7.0

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.

What's Changed

Full Changelog: RicoSuter/NSwag@v14.7.0...v14.7.1

14.7.0

[!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.


What's Changed

NJsonSchema v11.6.0 (potentially breaking changes)

This release updates to NJsonSchema v11.6.0 and Namotion.Reflection v3.5.0, which include the following changes that may affect generated code:

  • C# 11 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.
  • Removed extra blank line before class declarations in generated C# controller code (cosmetic).
  • New WriteAccessor setting to control property setter syntax (set vs init).
  • New JsonLibraryVersion setting for controlling enum attribute generation with System.Text.Json.
  • Fixed MinLength validation no longer incorrectly applied to DateTime properties.
  • Fixed nullable enum array detection for string enum converters.
  • Support for public fields with System.Text.Json when IncludeFields is enabled.

For the full list of changes, see the NJsonSchema v11.6.0 release notes.

New Contributors

Full Changelog: RicoSuter/NSwag@v14.6.3...v14.7.0

Commits viewable in compare view.

Updated NSwag.MSBuild from 14.6.3 to 14.7.1.

Release notes

Sourced from NSwag.MSBuild's releases.

14.7.1

[!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).

Corrections to 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).

Observable client changes vs v14.7.0

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.

What's Changed

Full Changelog: RicoSuter/NSwag@v14.7.0...v14.7.1

14.7.0

[!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.


What's Changed

NJsonSchema v11.6.0 (potentially breaking changes)

This release updates to NJsonSchema v11.6.0 and Namotion.Reflection v3.5.0, which include the following changes that may affect generated code:

  • C# 11 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.
  • Removed extra blank line before class declarations in generated C# controller code (cosmetic).
  • New WriteAccessor setting to control property setter syntax (set vs init).
  • New JsonLibraryVersion setting for controlling enum attribute generation with System.Text.Json.
  • Fixed MinLength validation no longer incorrectly applied to DateTime properties.
  • Fixed nullable enum array detection for string enum converters.
  • Support for public fields with System.Text.Json when IncludeFields is enabled.

For the full list of changes, see the NJsonSchema v11.6.0 release notes.

New Contributors

Full Changelog: RicoSuter/NSwag@v14.6.3...v14.7.0

Commits viewable in compare view.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file nuget NuGetパッケージの更新 target: Dressca サンプルアプリケーションDresscaに関係がある labels Apr 27, 2026
Bumps NSwag.AspNetCore from 14.6.3 to 14.7.1
Bumps NSwag.MSBuild from 14.6.3 to 14.7.1

---
updated-dependencies:
- dependency-name: NSwag.AspNetCore
  dependency-version: 14.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nswag-packages
- dependency-name: NSwag.MSBuild
  dependency-version: 14.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nswag-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title nuget-dressca: Bump the nswag-packages group with 2 updates nuget-dressca: Bump NSwag.AspNetCore and NSwag.MSBuild Apr 28, 2026
@dependabot dependabot Bot force-pushed the dependabot/nuget/samples/Dressca/dressca-backend/nswag-packages-674688d9de branch from 52054c7 to 650cee2 Compare April 28, 2026 06:27
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github Apr 28, 2026

Superseded by #5299.

@dependabot dependabot Bot closed this Apr 28, 2026
@dependabot dependabot Bot deleted the dependabot/nuget/samples/Dressca/dressca-backend/nswag-packages-674688d9de branch April 28, 2026 06:28
@github-actions
Copy link
Copy Markdown

Test Result 📝

Test was a success.
Completed in 4530ms with 221 passed, 0 failed and 0 skipped.

Coverage 📐

Summary
Generated on: 04/28/2026 - 06:28:50
Parser: MultiReport (5x Cobertura)
Assemblies: 7
Classes: 108
Files: 104
Line coverage: 33.4% (1289 of 3855)
Covered lines: 1289
Uncovered lines: 2566
Coverable lines: 3855
Total lines: 7961
Branch coverage: 35.6% (213 of 598)
Covered branches: 213
Total branches: 598
Method coverage: Feature is only available for sponsors
Tag: 619_25037535258
Dressca.ApplicationCore - 93.5%
Name Line Branch
Dressca.ApplicationCore 93.5% 80%
Dressca.ApplicationCore.Accounting.Account 92.8% 100%
Dressca.ApplicationCore.Accounting.AccountItem 88.8%
Dressca.ApplicationCore.ApplicationCoreServicesExtensions 100%
Dressca.ApplicationCore.ApplicationService.AssetApplicationService 100% 70%
Dressca.ApplicationCore.ApplicationService.AssetApplicationService.AssetStr
eamInfo
100%
Dressca.ApplicationCore.ApplicationService.CatalogApplicationService 100% 75%
Dressca.ApplicationCore.ApplicationService.CatalogBrandNotExistingInReposit
oryException
100%
Dressca.ApplicationCore.ApplicationService.CatalogCategoryNotExistingInRepo
sitoryException
100%
Dressca.ApplicationCore.ApplicationService.CatalogItemNotExistingInReposito
ryException
100%
Dressca.ApplicationCore.ApplicationService.OrderApplicationService 100% 75%
Dressca.ApplicationCore.ApplicationService.ShoppingApplicationService 99% 85%
Dressca.ApplicationCore.ApplicationService.TransactionScopeManager 100% 100%
Dressca.ApplicationCore.Assets.Asset 88.8% 100%
Dressca.ApplicationCore.Assets.AssetNotFoundException 100%
Dressca.ApplicationCore.Assets.AssetTypes 100% 100%
Dressca.ApplicationCore.Authorization.NotConnectedUserStore 0%
Dressca.ApplicationCore.Authorization.PermissionDeniedException 100%
Dressca.ApplicationCore.Authorization.Roles 100%
Dressca.ApplicationCore.Baskets.Basket 100% 100%
Dressca.ApplicationCore.Baskets.BasketItem 84.2% 75%
Dressca.ApplicationCore.Baskets.CatalogItemNotExistingInBasketException 100%
Dressca.ApplicationCore.Catalog.CatalogBrand 84.6% 100%
Dressca.ApplicationCore.Catalog.CatalogCategory 84.6% 100%
Dressca.ApplicationCore.Catalog.CatalogDomainService 100% 60%
Dressca.ApplicationCore.Catalog.CatalogItem 91% 66.6%
Dressca.ApplicationCore.Catalog.CatalogItemAsset 85.7% 75%
Dressca.ApplicationCore.Events 100%
Dressca.ApplicationCore.Ordering.Address 57.8% 100%
Dressca.ApplicationCore.Ordering.CatalogItemOrdered 96.7% 100%
Dressca.ApplicationCore.Ordering.EmptyBasketOnCheckoutException 100%
Dressca.ApplicationCore.Ordering.NullBasketOnCheckoutException 100%
Dressca.ApplicationCore.Ordering.Order 90.4% 90%
Dressca.ApplicationCore.Ordering.OrderFactory 94.1%
Dressca.ApplicationCore.Ordering.OrderItem 88.2% 25%
Dressca.ApplicationCore.Ordering.OrderItemAsset 85.7% 75%
Dressca.ApplicationCore.Ordering.OrderNotFoundException 100%
Dressca.ApplicationCore.Ordering.ShipTo 53.8% 50%
Dressca.EfInfrastructure - 14.3%
Name Line Branch
Dressca.EfInfrastructure 14.3% 7%
Dressca.EfInfrastructure.Configurations.Assets.AssetConfiguration 100%
Dressca.EfInfrastructure.Configurations.Baskets.BasketConfiguration 100%
Dressca.EfInfrastructure.Configurations.Baskets.BasketItemConfiguration 100%
Dressca.EfInfrastructure.Configurations.Catalog.CatalogBrandConfiguration 100%
Dressca.EfInfrastructure.Configurations.Catalog.CatalogCategoryConfiguratio
n
100%
Dressca.EfInfrastructure.Configurations.Catalog.CatalogItemAssetConfigurati
on
100%
Dressca.EfInfrastructure.Configurations.Catalog.CatalogItemConfiguration 100%
Dressca.EfInfrastructure.Configurations.Ordering.OrderConfiguration 100% 100%
Dressca.EfInfrastructure.Configurations.Ordering.OrderItemAssetConfiguratio
n
100%
Dressca.EfInfrastructure.Configurations.Ordering.OrderItemConfiguration 100% 100%
Dressca.EfInfrastructure.DresscaDbContext 83.7% 50%
Dressca.EfInfrastructure.DresscaDbContextHealthCheck 60%
Dressca.EfInfrastructure.EfAssetRepository 0% 0%
Dressca.EfInfrastructure.EfBasketRepository 0% 0%
Dressca.EfInfrastructure.EfCatalogBrandRepository 0% 0%
Dressca.EfInfrastructure.EfCatalogCategoryRepository 0% 0%
Dressca.EfInfrastructure.EfCatalogRepository 0% 0%
Dressca.EfInfrastructure.EfInfrastructureServicesExtension 86.2% 75%
Dressca.EfInfrastructure.EfOrderRepository 0% 0%
Dressca.EfInfrastructure.Events 0%
Dressca.EfInfrastructure.HealthChecksBuilderExtensions 100% 100%
Dressca.EfInfrastructure.Migrations.DresscaDbContextModelSnapshot 0% 0%
Dressca.EfInfrastructure.Migrations.InitialCreate 0% 0%
Dressca.Store.Assets.StaticFiles - 17.2%
Name Line Branch
Dressca.Store.Assets.StaticFiles 17.2% 0%
Dressca.Store.Assets.StaticFiles.Events 0%
Dressca.Store.Assets.StaticFiles.StaticFileAssetStore 0% 0%
Dressca.Store.Assets.StaticFiles.StaticFileAssetStoreServicesExtension 100%
Dressca.SystemCommon - 42.3%
Name Line Branch
Dressca.SystemCommon 42.3% 66.6%
Dressca.SystemCommon.PagedList 0% 0%
System.ObjectExtensions 100% 100%
System.StringExtentions 100% 100%
Dressca.Web - 32.1%
Name Line Branch
Dressca.Web 32.1% 19%
__OptionValidationGeneratedAttributes 0% 0%
__OptionValidationStaticInstances 0%
Dressca.Web.Authorization.DummyAuthenticationHandler 100%
Dressca.Web.Authorization.StatusCodeMapAuthorizationMiddlewareResultHandler 0% 0%
Dressca.Web.Configuration.CookieSettingValidator 0% 0%
Dressca.Web.Configuration.CookieSetting 0%
Dressca.Web.Configuration.ValidateWebServerOptions 0% 0%
Dressca.Web.Configuration.WebServerOptions 100%
Dressca.Web.Controllers.ActionNameHelper 0% 0%
Dressca.Web.Controllers.ErrorController 8.3% 0%
Dressca.Web.Events 100%
Dressca.Web.Extensions.HttpSecurityHeadersMiddleware 100%
Dressca.Web.Extensions.HttpSecurityHeadersMiddlewareExtensions 100%
Dressca.Web.HealthChecks.HealthCheckDescriptionProvider 7.8% 25%
Dressca.Web.HealthChecks.HealthCheckDescriptionProvider.HealthCheckControll
erMetadata
0% 0%
Dressca.Web.Http.ApplicationCookieBuilder 0% 0%
Dressca.Web.Runtime.BusinessExceptionDevelopmentFilter 100% 57.1%
Dressca.Web.Runtime.BusinessExceptionFilter 100% 57.1%
Dressca.Web.Runtime.BusinessExceptionFilterBase 100% 83.3%
Dressca.Web.Runtime.DbUpdateConcurrencyExceptionDevelopmentFilter 100% 50%
Dressca.Web.Runtime.DbUpdateConcurrencyExceptionFilter 100% 50%
Dressca.Web.Runtime.DbUpdateConcurrencyExceptionFilterBase 100% 75%
Dressca.Web.Admin - 29.9%
Name Line Branch
Dressca.Web.Admin 29.9% 21.9%
Dressca.Web.Admin.Assets.AssetExtensions 0% 0%
Dressca.Web.Admin.Authorization.UserStore 0% 0%
Dressca.Web.Admin.Controllers.ApiModel.FindCatalogItemsQuery 0%
Dressca.Web.Admin.Controllers.AssetsController 0% 0%
Dressca.Web.Admin.Controllers.CatalogBrandsController 0% 0%
Dressca.Web.Admin.Controllers.CatalogCategoriesController 0% 0%
Dressca.Web.Admin.Controllers.CatalogItemsController 0% 0%
Dressca.Web.Admin.Controllers.UsersController 0% 0%
Dressca.Web.Admin.Events 0%
Dressca.Web.Admin.Mapper.CatalogBrandMapper 0% 0%
Dressca.Web.Admin.Mapper.CatalogCategoryMapper 0% 0%
Dressca.Web.Admin.Mapper.CatalogItemMapper 0% 0%
Dressca.Web.Admin.Mapper.DtoMapperServicesExtension 100%
Program 80.3% 75%
Dressca.Web.Admin.Dto - 0%
Name Line Branch
Dressca.Web.Admin.Dto 0% ****
Dressca.Web.Admin.Dto.CatalogBrands.GetCatalogBrandsResponse 0%
Dressca.Web.Admin.Dto.CatalogCategories.GetCatalogCategoriesResponse 0%
Dressca.Web.Admin.Dto.CatalogItems.GetCatalogItemResponse 0%
Dressca.Web.Admin.Dto.CatalogItems.PostCatalogItemRequest 0%
Dressca.Web.Admin.Dto.CatalogItems.PutCatalogItemRequest 0%
Dressca.Web.Admin.Dto.Users.GetLoginUserResponse 0%

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

Labels

dependencies Pull requests that update a dependency file nuget NuGetパッケージの更新 target: Dressca サンプルアプリケーションDresscaに関係がある

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Nullable required fields are marked as not null in typescript & C#

0 participants