bbc / sqs-consumer

Build Amazon Simple Queue Service (SQS) based applications without the boilerplate
https://bbc.github.io/sqs-consumer/
Other
1.74k stars 331 forks source link

[Bug]: RetrieveMessage is missing the MessageSystemAttributeNames parameter #515

Open ericfuxealth opened 1 month ago

ericfuxealth commented 1 month ago

Describe the bug

AWS SDK v3 client-sqs's ReceiveMessageCommandInput takes a "MessageSystemAttributeNames" parameter. See https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-sqs/Interface/ReceiveMessageCommandInput/

This option is currently not available in SQSConsumer

Your minimal, reproducible example

3.592.0

Steps to reproduce

AWS doc https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html#API_ReceiveMessage_RequestSyntax

[AttributeNames] This parameter has been deprecated but will be supported for backward compatibility. To provide attribute names, you are encouraged to use MessageSystemAttributeNames.

SQSConsumer should provide an option to pass in MessageSystemAttributeNames to client/sqs to be forward compatible.

Expected behavior

Consumer.create() should have an option to pass in MessageSystemAttributeNames

How often does this bug happen?

Every time

Screenshots or Videos

No response

Platform

NodeJS 18

Package version

v11.0.2

AWS SDK version

3.633.0

Additional context

N/A

nicholasgriffintn commented 2 days ago

Sorry, I didn't spot this, been working on the day to day, this makes sense, if you want to open a PR, I'll happily take a look through, otherwise, I'll take a look this Friday.