Skip to content

chore: bump version to 1.7.0 - #213

Merged
felipefreitag merged 1 commit into
mainfrom
release/v1.7.0
Jul 31, 2026
Merged

chore: bump version to 1.7.0#213
felipefreitag merged 1 commit into
mainfrom
release/v1.7.0

Conversation

@felipefreitag

@felipefreitag felipefreitag commented Jul 31, 2026

Copy link
Copy Markdown
Member

Stacked on #210. Merge #210 first, then this.

What

Cuts 1.7.0 with the suppressions endpoints (#208) and the 404 error mapping (#210).

Changes

Version choice

1.7.0, not 2.0.0.

The 404 change is breaking for code that rescues InvalidRequestError specifically to catch 404s, so strict SemVer points at a major. The blast radius is narrow: NotFoundError and InvalidRequestError share the ServerError parent, so anything rescuing Resend::Error or ServerError is unaffected.

A major bump signals a rewrite. 1.0.0 was a genuine Contacts API redesign. The Resend::Error::ClientError hierarchy fix is the change that warrants 2.0.0 — see the follow-up note below.

The ⚠️ changelog entry carries the migration instruction.

Follow-up, not in this PR

Resend::Error::ClientError (lib/resend/errors.rb:8) is referenced nowhere in the repo. Every 4xx code — 400, 401, 404, 422, 429 — subclasses ServerError instead. That inverted hierarchy is the root cause of #209: NotFoundError was unreachable because the tree was never wired up. 401 => InvalidRequestError has the same problem, with no auth-specific class.

Reparenting the 4xx classes is a real breaking change and belongs in 2.0.0.

Verification

Ran in a ruby:3.4 container, since the gem requires >= 3.2:

  • bundle exec rspec — 336 examples, 0 failures
  • bundle exec rubocop — 39 files, no offenses
  • Resend::VERSION resolves to 1.7.0

Before publishing

Put the ⚠️ migration note in the GitHub release body. Auto-generated notes render #210 as fix(errors): map 404 to NotFoundError by @Mohith26 in #210, which does not warn anyone upgrading for suppressions.


Summary by cubic

Cut resend v1.7.0 with the suppressions API, 404 -> NotFoundError mapping, and changelog compare-link fixes.

  • New Features

    • Suppressions API: add, list, get, and remove suppressed emails, plus batch add/remove (up to 100).
  • Migration

    • If you rescue InvalidRequestError for 404s, change to NotFoundError. Rescuing Resend::Error or ServerError is unaffected.

Written for commit 9264ee5. Summary will update on new commits.

Review in cubic

@socket-security

socket-security Bot commented Jul 31, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedresend@​1.6.0 ⏵ 1.7.0N/AN/AN/AN/AN/A

View full report

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 10 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Heads up: you’re close to your included review allowance. Set a flex budget so reviews don’t pause.

Auto-approved: This release bundles already-reviewed features into a version bump. The only behavioral change is migrating a single error class, as shown by the diff; no new operational, security, or data-handling decisions are introduced.

Re-trigger cubic

Add the suppressions entry (#208) and promote the Unreleased heading from
#210 into the 1.7.0 section.

Add the missing compare-link definitions for 1.7.0 and 1.6.0. The 1.6.0
heading has rendered as a broken reference link since it was added.
@felipefreitag
felipefreitag merged commit 0bdf01e into main Jul 31, 2026
10 checks passed
@felipefreitag
felipefreitag deleted the release/v1.7.0 branch July 31, 2026 17:56
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.

1 participant