Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Take into account JsonRequired of STJ #2988

Conversation

jgarciadelanoceda
Copy link
Contributor

@jgarciadelanoceda jgarciadelanoceda commented Jul 18, 2024

Fixes #2686
JsonRequiredAttribute was introduced in dotnet7 altough you can opt in with a nuget reference.. I do not see this an option because previous versions of dotnet are about to get out of support

@codecov-commenter
Copy link

codecov-commenter commented Jul 18, 2024

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.67%. Comparing base (fdb7d6b) to head (9bd77e5).

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2988   +/-   ##
=======================================
  Coverage   90.66%   90.67%           
=======================================
  Files          74       74           
  Lines        2946     2948    +2     
  Branches      468      468           
=======================================
+ Hits         2671     2673    +2     
  Misses        275      275           
Flag Coverage Δ
Linux 90.67% <100.00%> (+<0.01%) ⬆️
Windows ?
macOS 90.67% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Collaborator

@martincostello martincostello left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add (or amend an existing) verification test for this scenario please?

@martincostello martincostello enabled auto-merge (squash) July 18, 2024 16:41
@martincostello martincostello added this to the v6.7.0 milestone Jul 18, 2024
@martincostello martincostello merged commit 3553751 into domaindrivendev:master Jul 18, 2024
9 checks passed
@jgarciadelanoceda jgarciadelanoceda deleted the issue_2686_AddSupportForJsonRequired branch July 18, 2024 16:47
@cremor
Copy link
Contributor

cremor commented Jul 19, 2024

JsonRequiredAttribute was introduced in dotnet7 altough you can opt in with a nuget reference.. I do not see this an option because previous versions of dotnet are about to get out of support

Do I understand that correctly that you only had to wrap the code in an #if because Swashbuckle references STJ 4.6.0, which doesn't contain JsonRequiredAttribute?
If so, then why doesn't Swashbuckle update to the current version of STJ? As far as I can see it the current version of STJ (8.0.4) would still support all the target frameworks that Swashbuckle.AspNetCore.SwaggerGen uses.

@martincostello
Copy link
Collaborator

We will review the dependencies and their versions when we tackle #2798.

Trying to use the latest version with multiple TFMs can introduce a lot of complexity.

renovate bot added a commit to orso-co/Orso.Arpa.Api that referenced this pull request Aug 4, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[Swashbuckle.AspNetCore](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore)
| `6.6.2` -> `6.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/nuget/Swashbuckle.AspNetCore/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Swashbuckle.AspNetCore/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Swashbuckle.AspNetCore/6.6.2/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Swashbuckle.AspNetCore/6.6.2/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>domaindrivendev/Swashbuckle.AspNetCore
(Swashbuckle.AspNetCore)</summary>

###
[`v6.7.0`](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.7.0)

##### What's Changed

- Allow Swagger UI CSS and JS paths to be configurable by
[@&#8203;mag1art](https://togithub.com/mag1art) in
[domaindrivendev/Swashbuckle.AspNetCore#2908
- Add `IncludeXmlCommentsForAssembly()` convience overload by
[@&#8203;leotsarev](https://togithub.com/leotsarev) in
[domaindrivendev/Swashbuckle.AspNetCore#2909
- Add snapshot tests using Verify by
[@&#8203;keahpeters](https://togithub.com/keahpeters) in
[domaindrivendev/Swashbuckle.AspNetCore#2929
- Add posibility to ignore properties in `[FromForm]` with
`[SwaggerIgnore]` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2928
- Adding check for existing directory and creating if doesn't exist by
[@&#8203;matt-lethargic](https://togithub.com/matt-lethargic) in
[domaindrivendev/Swashbuckle.AspNetCore#2927
- Default null value on nullable types caused errors by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2941
- Add additional Verify tests by
[@&#8203;keahpeters](https://togithub.com/keahpeters) in
[domaindrivendev/Swashbuckle.AspNetCore#2950
- Only apply a SchemaFilter to create the description on SwaggerUI by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2943
- Add support for async filters by
[@&#8203;mauve](https://togithub.com/mauve) in
[domaindrivendev/Swashbuckle.AspNetCore#2938
- Fix package validation by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2926
- Adding support for .NET 8 Model State attributes by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2958
- Only set Exclusive Range when they are by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2960
- `[AsParameters]` throwing error on cast when showing the description
with `EnableAnnotations()` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2962
- Fix `RequestBodyFilterAnnotation` and `MultipleFromForm` for Minimal
APIs by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2963
- Swagger UI refactoring by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2942
- Add help wanted badge by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2911
- Move inline css and js to external files for SwaggerUI and ReDoc by
[@&#8203;junior-santana](https://togithub.com/junior-santana) in
[domaindrivendev/Swashbuckle.AspNetCore#2965
- Missing properties section when generating
`IFomFile`/`IFormFileCollection` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2972
- Missing Encoding and RequiredProperties when `IFormFile` with OpenAPI
by [@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda)
in
[domaindrivendev/Swashbuckle.AspNetCore#2979
- Use `ApiParameter.Type` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2980
- Document arrays of generic parameters with XML comments and support
overload methods by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2982
- Take into account \[JsonRequired] for System.Text.Json by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2988
- Configure non-nullable types as required by
[@&#8203;AntiGuideAkquinet](https://togithub.com/AntiGuideAkquinet) in
[domaindrivendev/Swashbuckle.AspNetCore#2803
- Use `HttpMethods.IsGet()` by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2971

##### New Contributors

- [@&#8203;mag1art](https://togithub.com/mag1art) made their first
contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2908
- [@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda)
made their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2928
- [@&#8203;matt-lethargic](https://togithub.com/matt-lethargic) made
their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2927
- [@&#8203;mauve](https://togithub.com/mauve) made their first
contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2938
- [@&#8203;junior-santana](https://togithub.com/junior-santana) made
their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2965
- [@&#8203;AntiGuideAkquinet](https://togithub.com/AntiGuideAkquinet)
made their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2803

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.6.2...v6.7.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 10pm every weekday,every
weekend,before 5am every weekday" in timezone Europe/Berlin, Automerge -
At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
[repository job
log](https://developer.mend.io/github/orso-co/Orso.Arpa.Api).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to smartive/cas-fee-adv-mumble-api that referenced this pull request Sep 5, 2024
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[Swashbuckle.AspNetCore](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore)
| `6.6.2` -> `6.7.3` |
[![age](https://developer.mend.io/api/mc/badges/age/nuget/Swashbuckle.AspNetCore/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Swashbuckle.AspNetCore/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Swashbuckle.AspNetCore/6.6.2/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Swashbuckle.AspNetCore/6.6.2/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[Swashbuckle.AspNetCore.Annotations](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore)
| `6.6.2` -> `6.7.3` |
[![age](https://developer.mend.io/api/mc/badges/age/nuget/Swashbuckle.AspNetCore.Annotations/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/Swashbuckle.AspNetCore.Annotations/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/Swashbuckle.AspNetCore.Annotations/6.6.2/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Swashbuckle.AspNetCore.Annotations/6.6.2/6.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>domaindrivendev/Swashbuckle.AspNetCore
(Swashbuckle.AspNetCore)</summary>

###
[`v6.7.3`](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.7.3)

##### What's Changed

- Fix nested types nullable context check by
[@&#8203;VladimirTyrin](https://togithub.com/VladimirTyrin) in
[domaindrivendev/Swashbuckle.AspNetCore#3043
- Use NullabilityInfoContext to determine if member is nullable by
[@&#8203;patrikwlund](https://togithub.com/patrikwlund) in
[domaindrivendev/Swashbuckle.AspNetCore#3046

##### New Contributors

- [@&#8203;VladimirTyrin](https://togithub.com/VladimirTyrin) made their
first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#3043

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.7.2...v6.7.3

###
[`v6.7.2`](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.7.2)

#### What's Changed

- Use NullabilityInfoContext to determine dictionary value nullability
by [@&#8203;patrikwlund](https://togithub.com/patrikwlund) in
[domaindrivendev/Swashbuckle.AspNetCore#3041

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.7.1...v6.7.2

###
[`v6.7.1`](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.7.1)

#### What's Changed

- docs: Update README.md by
[@&#8203;WeihanLi](https://togithub.com/WeihanLi) in
[domaindrivendev/Swashbuckle.AspNetCore#3002
- Support `[DataMember]` `IsRequired` in
`NewtonsoftDataContractResolver` by
[@&#8203;ouvreboite](https://togithub.com/ouvreboite) in
[domaindrivendev/Swashbuckle.AspNetCore#2644
- Add API analysers by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#3003
- Update README by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#3004
- docs: fix example code formatting by
[@&#8203;WeihanLi](https://togithub.com/WeihanLi) in
[domaindrivendev/Swashbuckle.AspNetCore#3010
- Fixes nullability problems with dictionaries by
[@&#8203;ozziepeeps](https://togithub.com/ozziepeeps) in
[domaindrivendev/Swashbuckle.AspNetCore#3023
- Fix handling of nullable structs by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#3015
- Fix missing form parameter XML documentation by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#3020

#### New Contributors

- [@&#8203;ouvreboite](https://togithub.com/ouvreboite) made their first
contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2644

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.7.0...v6.7.1

###
[`v6.7.0`](https://togithub.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.7.0)

#### What's Changed

- Allow Swagger UI CSS and JS paths to be configurable by
[@&#8203;mag1art](https://togithub.com/mag1art) in
[domaindrivendev/Swashbuckle.AspNetCore#2908
- Add `IncludeXmlCommentsForAssembly()` convience overload by
[@&#8203;leotsarev](https://togithub.com/leotsarev) in
[domaindrivendev/Swashbuckle.AspNetCore#2909
- Add snapshot tests using Verify by
[@&#8203;keahpeters](https://togithub.com/keahpeters) in
[domaindrivendev/Swashbuckle.AspNetCore#2929
- Add posibility to ignore properties in `[FromForm]` with
`[SwaggerIgnore]` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2928
- Adding check for existing directory and creating if doesn't exist by
[@&#8203;matt-lethargic](https://togithub.com/matt-lethargic) in
[domaindrivendev/Swashbuckle.AspNetCore#2927
- Default null value on nullable types caused errors by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2941
- Add additional Verify tests by
[@&#8203;keahpeters](https://togithub.com/keahpeters) in
[domaindrivendev/Swashbuckle.AspNetCore#2950
- Only apply a SchemaFilter to create the description on SwaggerUI by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2943
- Add support for async filters by
[@&#8203;mauve](https://togithub.com/mauve) in
[domaindrivendev/Swashbuckle.AspNetCore#2938
- Fix package validation by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2926
- Adding support for .NET 8 Model State attributes by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2958
- Only set Exclusive Range when they are by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2960
- `[AsParameters]` throwing error on cast when showing the description
with `EnableAnnotations()` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2962
- Fix `RequestBodyFilterAnnotation` and `MultipleFromForm` for Minimal
APIs by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2963
- Swagger UI refactoring by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2942
- Add help wanted badge by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2911
- Move inline css and js to external files for SwaggerUI and ReDoc by
[@&#8203;junior-santana](https://togithub.com/junior-santana) in
[domaindrivendev/Swashbuckle.AspNetCore#2965
- Missing properties section when generating
`IFomFile`/`IFormFileCollection` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2972
- Missing Encoding and RequiredProperties when `IFormFile` with OpenAPI
by [@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda)
in
[domaindrivendev/Swashbuckle.AspNetCore#2979
- Use `ApiParameter.Type` by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2980
- Document arrays of generic parameters with XML comments and support
overload methods by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2982
- Take into account \[JsonRequired] for System.Text.Json by
[@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda) in
[domaindrivendev/Swashbuckle.AspNetCore#2988
- Configure non-nullable types as required by
[@&#8203;AntiGuideAkquinet](https://togithub.com/AntiGuideAkquinet) in
[domaindrivendev/Swashbuckle.AspNetCore#2803
- Use `HttpMethods.IsGet()` by
[@&#8203;martincostello](https://togithub.com/martincostello) in
[domaindrivendev/Swashbuckle.AspNetCore#2971

#### New Contributors

- [@&#8203;mag1art](https://togithub.com/mag1art) made their first
contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2908
- [@&#8203;jgarciadelanoceda](https://togithub.com/jgarciadelanoceda)
made their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2928
- [@&#8203;matt-lethargic](https://togithub.com/matt-lethargic) made
their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2927
- [@&#8203;mauve](https://togithub.com/mauve) made their first
contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2938
- [@&#8203;junior-santana](https://togithub.com/junior-santana) made
their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2965
- [@&#8203;AntiGuideAkquinet](https://togithub.com/AntiGuideAkquinet)
made their first contribution in
[domaindrivendev/Swashbuckle.AspNetCore#2803

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.6.2...v6.7.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone
Europe/Zurich, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/smartive/cas-fee-adv-mumble-api).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM4LjU2LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

JsonRequired property from STJ not marked as required in generated OpenApi Schema
4 participants