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

Added dependency injection/easy registration for async filters #3030

Merged
merged 10 commits into from
Aug 27, 2024

Conversation

tofi92
Copy link
Contributor

@tofi92 tofi92 commented Aug 16, 2024

Async filters (#2938) could not be registered with the SwaggerGenOptions, so there was no way of using DI with async filters.

I extended the SwaggerGenOptions for all the async filters and also added extension methods similiar to the sync equivalents, so added async filters is now as intuitive as sync filters, e.g. swaggerGenOptions.DocumentAsyncFilter<MyAsyncFilter>().

tofi92 and others added 2 commits August 18, 2024 18:48
Co-authored-by: Martin Costello <martin@martincostello.com>
@tofi92 tofi92 marked this pull request as draft August 20, 2024 06:04
@pinkfloydx33
Copy link

I was very say today when I converted a bunch of filters to be async and then couldn't register them without a bunch of ceremony. I definitely would like this to make it in in some form!

@codecov-commenter
Copy link

codecov-commenter commented Aug 21, 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.43%. Comparing base (e390697) to head (0dc82d9).

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

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3030      +/-   ##
==========================================
+ Coverage   90.18%   90.43%   +0.24%     
==========================================
  Files          74       74              
  Lines        2964     3041      +77     
  Branches      463      487      +24     
==========================================
+ Hits         2673     2750      +77     
  Misses        291      291              
Flag Coverage Δ
Linux 90.43% <100.00%> (+0.24%) ⬆️
Windows 90.43% <100.00%> (+0.24%) ⬆️
macOS 90.43% <100.00%> (+0.24%) ⬆️

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.

@martincostello
Copy link
Collaborator

Thanks for your contribution - this looks good.

Could you bump the version to 6.8.0 as we're adding new public API members please? Then this looks good to merge.

<VersionPrefix>6.7.2</VersionPrefix>

@tofi92
Copy link
Contributor Author

tofi92 commented Aug 27, 2024

Hi @martincostello
sorry for the delay, some family problems.

Thanks for your input and for accepting :)

@tofi92 tofi92 marked this pull request as ready for review August 27, 2024 06:02
@martincostello martincostello added this to the v6.8.0 milestone Aug 27, 2024
@martincostello martincostello merged commit d358e7b into domaindrivendev:master Aug 27, 2024
9 checks passed
@tofi92 tofi92 deleted the tofi92/async-filters-di branch August 27, 2024 08:18
renovate bot referenced this pull request in orso-co/Orso.Arpa.Api Sep 27, 2024
This PR contains the following updates:

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

---

### Release Notes

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

###
[`v6.8.0`](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/releases/tag/v6.8.0)

##### What's Changed

- Added dependency injection/easy registration for async filters by
[@&#8203;tofi92](https://redirect.github.com/tofi92) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3030](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3030)
- Improve IncludeXmlComments performance (2) by
[@&#8203;mus65](https://redirect.github.com/mus65) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3044](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3044)
- Apply ParameterFilters and RequestBodyFilters for WithOpenApi
endpoints by
[@&#8203;jgarciadelanoceda](https://redirect.github.com/jgarciadelanoceda)
in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3059](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3059)
- Swagger plugins support by
[@&#8203;jvmlet](https://redirect.github.com/jvmlet) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3056](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3056)
- Add benchmarks project by
[@&#8203;martincostello](https://redirect.github.com/martincostello) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3050](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3050)
- Fix NuGet badge by
[@&#8203;martincostello](https://redirect.github.com/martincostello) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3064](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3064)
- SwaggerGen - Improved handling of dictionaries with enum key by
[@&#8203;flarestudiopl](https://redirect.github.com/flarestudiopl) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3068](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3068)
- Fix typo by
[@&#8203;tom-star119](https://redirect.github.com/tom-star119) in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3073](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3073)
- Do not fill the RequestBody description with the first parameter of a…
by
[@&#8203;jgarciadelanoceda](https://redirect.github.com/jgarciadelanoceda)
in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3076](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3076)

##### New Contributors

- [@&#8203;tofi92](https://redirect.github.com/tofi92) made their first
contribution in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3030](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3030)
- [@&#8203;mus65](https://redirect.github.com/mus65) made their first
contribution in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3044](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3044)
- [@&#8203;jvmlet](https://redirect.github.com/jvmlet) made their first
contribution in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3056](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3056)
- [@&#8203;flarestudiopl](https://redirect.github.com/flarestudiopl)
made their first contribution in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3068](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3068)
- [@&#8203;tom-star119](https://redirect.github.com/tom-star119) made
their first contribution in
[https://github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3073](https://redirect.github.com/domaindrivendev/Swashbuckle.AspNetCore/pull/3073)

**Full Changelog**:
domaindrivendev/Swashbuckle.AspNetCore@v6.7.3...v6.8.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 is behind base branch, 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://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/orso-co/Orso.Arpa.Api).

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

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.

4 participants