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

Bump FastEndpoints and FastEndpoints.Swagger #900

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 30, 2024

Bumps FastEndpoints and FastEndpoints.Swagger. These dependencies needed to be updated together.
Updates FastEndpoints from 5.32.0 to 5.33.0

Release notes

Sourced from FastEndpoints's releases.

v5.33 Release


❇️ Help Keep FastEndpoints Free & Open-Source ❇️

Due to the current unfortunate state of FOSS, please consider becoming a sponsor and help us beat the odds to keep the project alive and free for everyone.


New 🎉

If you're using the FastEndpoints.Testing package in your test projects, take the following steps to migrate your projects:

  1. Update all "FastEndpoints" package references in your projects to "5.33.0".
  2. In your test project's .csproj file:
    1. Remove the package reference to the xunit v2 package.
    2. Add a package reference to the new xunit.v3 library with version 1.0.0
    3. Change the version of xunit.runner.visualstudio to 3.0.0
  3. Build the solution.
  4. If there are compilation errors related to the return type of overridden methods in your derived AppFixture<TProgram> classes, such as SetupAsync and TearDownAsync. Change their return type from Task to ValueTask to resolve these errors.
  5. If there are any compilation errors related to XUnit.Abstractions namespace not being found, simply delete those "using statements" as that namespace has been removed in xUnit v3.

After doing the above, it should pretty much be smooth sailing, unless your project is affected by the removal of previously deprecated classes as mentioned in the "Breaking Changes" section below.

Until now, when binding from sources other than JSON body, you had to annotate request DTO properties with the [BindFrom("my_field")] attribute when the incoming field name is different to the DTO property name. A new setting has now been introduced which allows you to use the same property naming policy as the serializer for matching incoming request parameters without having to use any attributes.

app.UseFastEndpoints(c => c.Binding.UsePropertyNamingPolicy = true)

This only applies to properties where you haven't specified the field names manually using an attribute such as [BindFrom(...)], [FromClaim(...)]. [FromHeader(...)] etc.

The default binding order is designed to minimize attribute clutter on DTO models. In most cases, disabling binding sources is unnecessary. However, for rare scenarios where a binding source must be explicitly blocked, you can now do the following:

[DontBind(Source.QueryParam | Source.RouteParam)] 
public string UserID { get; set; } 
</tr></table> 

... (truncated)

Commits
  • d05bb6e v5.33 release
  • 559097d disable new binding setting by default
  • d8cccbe change non-json property matching behavior
  • 4b24e53 fix nre in swagger processor due to incorrect use
  • 6e1a150 fluent generic ep support for reflection generator
  • 95f9b04 allow reflection generation for no request endpoints
  • 8292918 beta 12 build
  • 10b6756 add indexing support for simple collections
  • 5e0c3d7 fix bug in complex binders
  • 5e69e38 minor refactor
  • Additional commits viewable in compare view

Updates FastEndpoints.Swagger from 5.31.0 to 5.33.0

Release notes

Sourced from FastEndpoints.Swagger's releases.

v5.33 Release


❇️ Help Keep FastEndpoints Free & Open-Source ❇️

Due to the current unfortunate state of FOSS, please consider becoming a sponsor and help us beat the odds to keep the project alive and free for everyone.


New 🎉

If you're using the FastEndpoints.Testing package in your test projects, take the following steps to migrate your projects:

  1. Update all "FastEndpoints" package references in your projects to "5.33.0".
  2. In your test project's .csproj file:
    1. Remove the package reference to the xunit v2 package.
    2. Add a package reference to the new xunit.v3 library with version 1.0.0
    3. Change the version of xunit.runner.visualstudio to 3.0.0
  3. Build the solution.
  4. If there are compilation errors related to the return type of overridden methods in your derived AppFixture<TProgram> classes, such as SetupAsync and TearDownAsync. Change their return type from Task to ValueTask to resolve these errors.
  5. If there are any compilation errors related to XUnit.Abstractions namespace not being found, simply delete those "using statements" as that namespace has been removed in xUnit v3.

After doing the above, it should pretty much be smooth sailing, unless your project is affected by the removal of previously deprecated classes as mentioned in the "Breaking Changes" section below.

Until now, when binding from sources other than JSON body, you had to annotate request DTO properties with the [BindFrom("my_field")] attribute when the incoming field name is different to the DTO property name. A new setting has now been introduced which allows you to use the same property naming policy as the serializer for matching incoming request parameters without having to use any attributes.

app.UseFastEndpoints(c => c.Binding.UsePropertyNamingPolicy = true)

This only applies to properties where you haven't specified the field names manually using an attribute such as [BindFrom(...)], [FromClaim(...)]. [FromHeader(...)] etc.

The default binding order is designed to minimize attribute clutter on DTO models. In most cases, disabling binding sources is unnecessary. However, for rare scenarios where a binding source must be explicitly blocked, you can now do the following:

[DontBind(Source.QueryParam | Source.RouteParam)] 
public string UserID { get; set; } 
</tr></table> 

... (truncated)

Commits
  • d05bb6e v5.33 release
  • 559097d disable new binding setting by default
  • d8cccbe change non-json property matching behavior
  • 4b24e53 fix nre in swagger processor due to incorrect use
  • 6e1a150 fluent generic ep support for reflection generator
  • 95f9b04 allow reflection generation for no request endpoints
  • 8292918 beta 12 build
  • 10b6756 add indexing support for simple collections
  • 5e0c3d7 fix bug in complex binders
  • 5e69e38 minor refactor
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [FastEndpoints](https://github.com/FastEndpoints/FastEndpoints) and [FastEndpoints.Swagger](https://github.com/FastEndpoints/FastEndpoints). These dependencies needed to be updated together.

Updates `FastEndpoints` from 5.32.0 to 5.33.0
- [Release notes](https://github.com/FastEndpoints/FastEndpoints/releases)
- [Commits](FastEndpoints/FastEndpoints@v5.32...v5.33)

Updates `FastEndpoints.Swagger` from 5.31.0 to 5.33.0
- [Release notes](https://github.com/FastEndpoints/FastEndpoints/releases)
- [Commits](FastEndpoints/FastEndpoints@v5.31...v5.33)

---
updated-dependencies:
- dependency-name: FastEndpoints
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: FastEndpoints.Swagger
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Dec 30, 2024
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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants