Comments (8)
I understand. I am very sorry about this. Once localstack is updated to support SQS JSON, you should be able to upgrade SQS and core - no need to upgrade your other SDK gems unless you want to (you should)
Have you created an issue or feature request? I can also poke the author to state that this is now expected, and we can possibly help with code.
It was not intended to break, however, we've only heard of 2 other cases of SQS related breakage. Given that was minor in that only a few customers were impacted, we decided to commit with the overall changes. Those other customers were able to upgrade easily.
For now, you can possibly get away with upgrading aws-sdk-core while also doing a monkey patch. I'm not exactly sure what affected method you would need to patch, but my guess would be xml_name
in Aws::Xml::Parser::Frame
. You can try monkey patching the method to be what it used to be in https://github.com/aws/aws-sdk-ruby/pull/2988/files#diff-576fcdf895f808f67ab8e4d1b4993ae6598414e23be5fd8c58063aa8858212fd.
from aws-sdk-ruby.
We're aware of the sweeping protocol changes that affected xml in some way. This was an organizational effort to align with expected behavior. There is not much we can do about it now. My question is, why are you trying to upgrade core and not the sqs gem? If you were to upgrade both, you shouldn't see any issue.
from aws-sdk-ruby.
@mullermp
Thanky for your reply!
I understand updating both aws-sdk-sqs and aws-sdk-core is the best solution. We are working towards that.
However, in order to update aws-sdk-sqs, several other prerequisites must be met, so it may take some time. (For example, localstack v2 does not support AWS SQS APIs in JSON format.)
And we were motivated to apply patches for aws-sdk-core iteration issues sooner. (#3015, #3021)
Additionally, our application is so huge that updating all AWS SDK gems at the same time is difficult.
These are why we have tried to update aws-sdk-core only.
This was an organizational effort to align with expected behavior. There is not much we can do about it now.
Does this mean that the backward compatibility break reported in this issue is intentional and cannot be fixed?
from aws-sdk-ruby.
Thank you!
Our basic policy at the moment is as follows.
- Upgrade localstack to v3
- Update aws-sdk-core and aws-sdk-sqs
However, I was interested in this incompatibility, so I filed this issue.
Is it possible that a similar problem occurs with AWS services other than SQS?
my guess would be xml_name in Aws::Xml::Parser::Frame.
Thank you, I agree.
When I reverted the implementation of that method, the problem was resolved. (But, I did not adopt it as a solution because I could not estimate the impact on other areas.)
Have you created an issue or feature request?
Does this mean that there is a point of contact other than this repository to report this issue?
from aws-sdk-ruby.
Is it possible that a similar problem occurs with AWS services other than SQS?
Possibly, but we haven't seen any reports. The query protocol is not largely used anymore.
Does this mean that there is a point of contact other than this repository to report this issue?
I meant for localstack. Is SQS JSON supported in localstack v3? If so, then your path is to upgrade. If not, create an issue or feature request with their repo and I can put a comment on it.
When I reverted the implementation of that method, the problem was resolved. (But, I did not adopt it as a solution because I could not estimate the impact on other areas.)
I would say you can use that monkey patch if it's working for you. You may as well also patch the other xml parsing changes as well just so it is complete.
from aws-sdk-ruby.
The query protocol is not largely used anymore.
👍
I'm going to check if the AWS services we use use the query protocol.
I meant for localstack.
I got it thanks. locastack v3 supports SQS JSON, we are working on upgrading localstack in progress.
We're having a bit of a problem because of another issue, but that's our problem.
I sincerely appreciate your response. I understand that this issue will not be fixed.
from aws-sdk-ruby.
Thank you. I'm sorry again that this affected you. I think it would be best to monkey patch the parser for now until you can upgrade your local stack and then finally your SDK gems.
from aws-sdk-ruby.
This issue is now closed. Comments on closed issues are hard for our team to see.
If you need more assistance, please open a new issue that references this one.
from aws-sdk-ruby.
Related Issues (20)
- SimpleDB gem issues with aws-sdk-core >= 3.192.0 HOT 4
- Seahorse http connection pool may crash after fork(2) HOT 7
- aws-eventstream not available in Ruby 3.2 lambda runtime HOT 6
- presigned_url always adds content-type to signed headers HOT 3
- Aws::EC2::Resources raises `InvalidParameterCombination` when some parameters are specified HOT 2
- In Ruby, S3 get_object_attributes() breaks in aws-sdk-core v3.192.0 and newer. HOT 5
- Content Type error in BedrockRuntime client on latest aws-sdk-core version HOT 5
- CloudFront KeyValueStore can't work HOT 3
- stub_responses function in Dynamodb, how can I pass query when stub? HOT 4
- aws-sdk-s3: intermittent SignatureDoesNotMatch errors HOT 7
- get_bucket_policy in 1.52.1 results in Seahorse::Client::NetworkingError Empty or incomplete response body HOT 5
- ECS capacity errors have inconsistent behavior. HOT 2
- Access to the credit_notes? HOT 3
- SImpleDB stopped working after upgrade HOT 9
- Fix INI parsing of whitespace preceding config key HOT 7
- AWS SDK Core 3.192.0 broke older SQS gem ability to receive messages HOT 5
- Breaking Change from Minor Release in `aws-sdk-core` from 3.198.0 to latest HOT 6
- "Passing a single string to Aws::ProcessCredentials.new is insecure" now appearing when using credential_process option in an aws config HOT 4
- Client-side encryption with presigned URLs HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aws-sdk-ruby.