Skip to content

Bump Refit from 10.1.6 to 11.0.1#24

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/Refit-11.0.1
Closed

Bump Refit from 10.1.6 to 11.0.1#24
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/Refit-11.0.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 4, 2026

Copy link
Copy Markdown

Updated Refit from 10.1.6 to 11.0.1.

Release notes

Sourced from Refit's releases.

11.0.1

🗞️ What's Changed

🧹 General Changes

  • reactiveui/refit@​484edf6e67310493766b9e4010793bdeaacfb1d7 build: default examples to IsPackable=false @​glennawatson

📌 Other

  • reactiveui/refit@​8652c5e7ac8189dc85aa3748dca1808b3c3c825d Proposal to fix 2115 (#​2116) @​xIceFox

🔗 Full Changelog: reactiveui/refit@v11.0.0...11.0.1

🙌 Contributions

🌱 New contributors since the last release: @​xIceFox
💖 Thanks to all the contributors: @​glennawatson, @​xIceFox

11.0.0

⚠️ This is a breaking release (major: 10.x → 11.0.0)

11.0.0 reworks Refit's error/exception model and tightens interface validation. Most apps will compile, but code that inspects ApiResponse.Error, reads StatusCode, or catches transport exceptions around Refit calls will need changes. These are the same breaking changes that briefly shipped in the now‑delisted 10.1.7 and were reported by the community in #​2114.

💡 Need a drop‑in, non‑breaking replacement for 10.1.6? Use 10.2.0 — it is 10.1.6 re‑signed with a valid certificate (the 10.1.6 cert was revoked, see #​2114). Move to 11.0.0 when you're ready to adopt the changes below.

💥 What changed & how to migrate

1. ApiResponse<T>.Error is now ApiExceptionBase? (was ApiException?) (#​2052)
A new abstract base ApiExceptionBase now sits under both ApiException and the new ApiRequestException. ApiExceptionBase does not expose Content / HasContent — those still live on ApiException.

// before
string? body = response.Error?.Content;

// after — narrow to ApiException first
if (response.Error is ApiException apiEx)
{
    string? body = apiEx.Content;   // Content/HasContent are on ApiException
}

2. New ApiRequestException wraps transport/connection failures (#​2052)
Exceptions thrown by HttpClient.SendAsync before a response arrives — HttpRequestException (DNS/host unreachable), TaskCanceledException (timeouts), etc. — are now wrapped in ApiRequestException : ApiExceptionBase, carrying the full request context. For ApiResponse<T> return types these are now surfaced via .Error instead of only being thrown, so you no longer need a separate try/catch and IsSuccessful check.

// catching transport errors: catch the base (or ApiRequestException) now
catch (ApiExceptionBase ex) { /* covers ApiException + ApiRequestException */ }

3. ApiResponse<T>.StatusCode is now nullable (HttpStatusCode?) (#​2052)
When the request never reached the server there is no status code. Code that assumed a non‑null value must handle null:

int code = (int)response.StatusCode;          // ❌ won't compile / may throw
int? code = (int?)response.StatusCode;         // ✅ handle the no-response case

4. Stricter interface validation + enum name handling (#​2068)
Synchronous return types are now only permitted for generated/non‑public interface members (RestMethodInfo enforces the rule), and the System.Text.Json enum converter now maps serialized names both ways (including JsonStringEnumMemberName on .NET 9+). Interfaces that previously relied on unsupported sync members may now fail generation.


🗞️ What's Changed

✨ Features & Enhancements

  • Create ApiRequestException for wrapping SendAsync exceptions (new error model) by @​PressXtoChris in #​2052
  • Support sync interface members & enum names by @​ChrisPulman in #​2068
  • Add AddRefitClient overloads and tests by @​ChrisPulman in #​2084

... (truncated)

10.2.0

NOTE

This is a re-release of v10.1.6 which had a certificate revoked.

🗞️ What's Changed

🐛 Fixes

  • reactiveui/refit@​cfe6862f468ce793fd5d5557ff47554de800a198 Fixes examples, issues 2058, 1761, 1889, and 2056 (#​2061) @​ChrisPulman
  • reactiveui/refit@​71e7a32b8c0fd428ae29949b45bf13f4d17bc2b7 Fix is packable (#​2063) @​ChrisPulman

🧹 General Changes

  • reactiveui/refit@​c945712afe664c07babcb1193e9f68ec20e48eb4 Update AoT, Add Roslyn 5.0, Update serialisation (#​2062) @​ChrisPulman

📦 Dependencies

  • reactiveui/refit@​d3b9f6eb2242728b1577489781d9b1ac9e41ceaf chore(deps): update .net test stack (#​2054) @​ChrisPulman @​renovate[bot]
  • reactiveui/refit@​804eb41f61b200c02765c7a0b63f4ddfe9164528 chore(deps): update .net test stack to v8 (#​2057) @​renovate[bot]

📌 Other

  • reactiveui/refit@​14811e0b27178a9b3da3b5d4bdda1e9cd8ea33fd Enhance release workflow with new jobs and permissions @​ChrisPulman
  • reactiveui/refit@​49858e348e9444b82735068c15919c3f31942bf4 Bump version from 10.0 to 10.1 @​ChrisPulman
  • reactiveui/refit@​2f43b67c0a78b76c048931dede5f671625b807a0 Remove productNamespacePrefix from release workflow @​ChrisPulman

🔗 Full Changelog: reactiveui/refit@10.0.1...10.1.6

🙌 Contributions

💖 Thanks to all the contributors: @​ChrisPulman

🤖 Automated services that contributed: @​renovate[bot]

Commits viewable in compare view.

Dependabot compatibility score

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 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)

---
updated-dependencies:
- dependency-name: Refit
  dependency-version: 11.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Jun 4, 2026
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity · 0 duplication

Metric Results
Complexity 0
Duplication 0

View in Codacy

AI Reviewer: first review requested successfully. AI can make mistakes. Always validate suggestions.

Run reviewer

TIP This summary will be updated as you push new changes.

@codacy-production codacy-production Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull Request Overview

This PR bumps the Refit dependency from version 10.1.6 to 11.0.1. While the package update itself is straightforward, Refit 11.0.0 is a major breaking release that changes the error model and makes status codes nullable.

The current implementation only updates Directory.Packages.props. Without corresponding updates to the consuming code, this PR will likely result in build failures or runtime exceptions where ApiResponse properties are accessed. Acceptance criteria for handling these breaking changes have not been met.

About this PR

  • The PR only contains a version bump in 'Directory.Packages.props'. Because Refit 11.0.0 introduces breaking changes to the error model and status code handling, the absence of updates to the consuming code is highly likely to cause build failures or runtime exceptions.

Test suggestions

  • Verify compilation of all Refit API client interfaces following stricter validation rules in v11.
  • Verify that error handling logic correctly processes the new 'ApiExceptionBase' hierarchy (ApiException vs ApiRequestException).
  • Verify that consumers of 'ApiResponse.StatusCode' correctly handle null values when a request fails to reach the server.
Prompt proposal for missing tests
Consider implementing these tests if applicable:
1. Verify compilation of all Refit API client interfaces following stricter validation rules in v11.
2. Verify that error handling logic correctly processes the new 'ApiExceptionBase' hierarchy (ApiException vs ApiRequestException).
3. Verify that consumers of 'ApiResponse.StatusCode' correctly handle null values when a request fails to reach the server.

TIP Improve review quality by adding custom instructions
TIP How was this review? Give us feedback

Comment thread Directory.Packages.props
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.4.0" />
<PackageVersion Include="Nerdbank.GitVersioning" Version="3.9.50" />
<PackageVersion Include="Refit" Version="10.1.6" />
<PackageVersion Include="Refit" Version="11.0.1" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔴 HIGH RISK

Refit 11.0.0 introduces breaking changes: 'ApiResponse.Error' is now 'ApiExceptionBase?' and 'StatusCode' is now nullable. Consuming code must be updated to handle these changes (e.g., handling null status codes or casting the error to 'ApiException' to access 'Content') to avoid compilation or runtime errors.

@dependabot @github

dependabot Bot commented on behalf of github Jun 8, 2026

Copy link
Copy Markdown
Author

Looks like Refit is no longer updatable, so this is no longer needed.

@dependabot dependabot Bot closed this Jun 8, 2026
@dependabot dependabot Bot deleted the dependabot/nuget/Refit-11.0.1 branch June 8, 2026 09:21
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 .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants