Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatibility with boto3==1.36 and aiobotocore==2.18.0 #8513

Closed
cvjjm opened this issue Jan 22, 2025 · 4 comments
Closed

Incompatibility with boto3==1.36 and aiobotocore==2.18.0 #8513

cvjjm opened this issue Jan 22, 2025 · 4 comments
Labels

Comments

@cvjjm
Copy link

cvjjm commented Jan 22, 2025

I initially filed a bug against aiobotocore describing the problem here
aio-libs/aiobotocore#1272 (comment)

From the discussion there it seems like people believe that the problem needs to be fixed moto.
Please have a look because currently moto does not work correctly with boto3==1.36 and aiobotocore==2.18.0.

@bblommers
Copy link
Collaborator

We only support botocore/boto3 @cvjjm - we don't guarantee compatibility with third-party libraries like aiobotocore.

This comes up every now and then, and the ideal way would probably be for someone in the community to create an aiomoto repo that is compatible with aiobotocore - but it's out of scope for us.

@bblommers bblommers closed this as not planned Won't fix, can't repro, duplicate, stale Jan 22, 2025
@cvjjm
Copy link
Author

cvjjm commented Jan 22, 2025

I will openly admit that my understanding of precisely which of these libraries is responsible for what is very limited. But if you look at the stack trace you will see that the error arises when moto (in moto/core/responses.py) calls a function that is part of botocore (in botocore/httpchecksum.py).

Are you saying the problem is that aiobotocore is using moto in an unsupported way?

@brentropic
Copy link

Looks like there might be a temporary solution here:

aio-libs/aiobotocore#755 (comment)

@bblommers
Copy link
Collaborator

Are you saying the problem is that aiobotocore is using moto in an unsupported way?

IIRC - aiobotocore patches the botocore methods to become async, and changes the signature in the process (changes the return value)
moto doesn't know about this, and just returns the value that is correct according to the original botocore signature

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants