Skip to content

fix(deps): update dependency sqs-consumer to v15#967

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/sqs-consumer-15.x
Open

fix(deps): update dependency sqs-consumer to v15#967
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/sqs-consumer-15.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 5, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
sqs-consumer (source) ^7.0.0^15.0.0 age confidence

Release Notes

bbc/sqs-consumer (sqs-consumer)

v15.0.2

Compare Source

Bug Fixes
Chores

v15.0.1

Compare Source

Chores

v15.0.0

Compare Source

Chores

v14.2.8

Compare Source

Chores
  • adding formatting config (0d2e4a1)

v14.2.7

Compare Source

Bug Fixes
Chores

v14.2.6

Compare Source

Chores

v14.2.5

Compare Source

Chores

v14.2.4

Compare Source

Chores
  • deps: bump actions/setup-node from 6.2.0 to 6.3.0 (#​738) (75a85cc)
  • deps: bump github/codeql-action from 4.32.5 to 4.33.0 (#​741) (aa5165f)
  • deps: bump oven-sh/setup-bun from 2.1.2 to 2.2.0 (#​740) (86abfc2)
  • deps: bump zgosalvez/github-actions-report-lcov (#​742) (57fad30)

v14.2.3

Compare Source

Chores

v14.2.2

Compare Source

Chores

v14.2.1

Compare Source

Chores

v14.2.0

Compare Source

Features
  • Preserve AWSError as cause when rethrowing as SQSError (#​662) (be74bda)
Chores
  • Updates dependencies across the board over a number of changes

v14.1.0

Compare Source

Features
Dependency Updates
Dev Dependency Updates

v14.0.1

Compare Source

This release adds on changes to start the deprecation of void, this should have been part of the v14 release and that is why it has been considered a patch change / a bug fix. This is an attempt to reduce the likelihood of users not noticing the move to explicit returns in v14.

In a future minor release a new strictReturns flag will be added (#​604), this will not be enabled by default initially. We will gather feedback on if this setting makes sense. If it does, strictReturns will be turned on by default.

Bug Fixes
  • prepare for return void deprecation and ensure that returning void errors in typescript / console warns in the logs (#​598) (3b99825)
Chores

Updated some dependencies and adjusted Dependabot workflow

v14.0.0

Compare Source

SQS Consumer v14.0.0 Migration Guide

Overview

Version 14.0.0 introduces a breaking change to how message acknowledgment works. This change makes acknowledgment behavior more explicit and predictable, addressing user confusion about when messages are acknowledged.

What Changed

Previous Behavior (<=v13.x)
  • Messages were acknowledged automatically in certain scenarios
  • Returning void (nothing) from handlers had implicit acknowledgment behavior
  • Users were often unclear about when messages would be acknowledged
New Behavior (>=v14.0)
  • Explicit acknowledgment only: Messages are acknowledged only when explicitly returned
  • Returning void (nothing) means no acknowledgment by default
  • Clear, predictable behavior based on what your handler returns

Benefits of the New Approach

  • Clarity: Explicit acknowledgment makes code intent clear
  • Reliability: Reduce accidental acknowledgment of failed processing
  • Debugging: Easier to trace acknowledgment behavior
  • Flexibility: Fine-grained control over which messages are acknowledged

Migration Steps

handleMessage()
Step 1: Identify Your Current Handler Pattern

First, determine which pattern your current message handlers follow:

// Pattern A: Handler that processes and implicitly acknowledges
const handleMessage = async (message) => {
  await processMessage(message);
  // No explicit return - was implicitly acknowledged in v13.x
};

// Pattern B: Handler with conditional acknowledgment
const handleMessage = async (message) => {
  const success = await processMessage(message);
  if (success) {
    return message; // Only acknowledge on success
  }
  // Don't acknowledge on failure
};

// Pattern C: Error handling
const handleMessage = async (message) => {
  try {
    await processMessage(message);
  } catch (error) {
    // Message acknowledgment behavior was unclear
    throw error;
  }
};
Step 2: Update Your Handlers
For Pattern A (Implicit Acknowledgment)

Option 1: Explicit Return

const consumer = Consumer.create({
  queueUrl: 'your-queue-url',
  handleMessage: async (message) => {
    console.log('Processing:', message.Body);
    await processMessage(message);
    return message; // Explicit acknowledgment
  }
});

Option 2: Use alwaysAcknowledge

const consumer = Consumer.create({
  queueUrl: 'your-queue-url',
  alwaysAcknowledge: true, // Maintains v13.x behavior
  handleMessage: async (message) => {
    console.log('Processing:', message.Body);
    await processMessage(message);
    return undefined; // Will be acknowledged due to alwaysAcknowledge setting
  }
});
For Pattern B and C (Conditional Acknowledgment)
const consumer = Consumer.create({
  queueUrl: 'your-queue-url',
  handleMessage: async (message) => {
    try {
      await processMessage(message);
      return message; // Acknowledge on success
    } catch (error) {
      console.error('Processing failed:', error);
      return undefined; // Don't return anything - message won't be acknowledged (you could also re-throw the error here)
      // It will be retried based on your queue's redrive policy
    }
  }
});
handleMessageBatch()

This is largely similar to the above recommendations, you just need to adjust to build up an array of the messages that you want to acknowledge and then return that array.

const handleMessageBatch = async (messages) => {
  const processed = [];
  
  for (const message of messages) {
    try {
      await processMessage(message);
      processed.push(message); // Add to acknowledgment list
    } catc

>  **Note**
> 
> PR body was truncated to here.


</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

 **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://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/Swydo/byol).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNTkuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE5NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

@renovate renovate Bot force-pushed the renovate/sqs-consumer-15.x branch 3 times, most recently from 3d33918 to 813d51f Compare May 19, 2026 01:42
@renovate renovate Bot force-pushed the renovate/sqs-consumer-15.x branch from 813d51f to ea75b00 Compare May 26, 2026 22:50
@renovate renovate Bot force-pushed the renovate/sqs-consumer-15.x branch from ea75b00 to 1b98e81 Compare May 28, 2026 14:17
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.

0 participants