-
Notifications
You must be signed in to change notification settings - Fork 427
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
Workaround for _convert_to_request_dict change #1083
Conversation
Worth noting that #1079 will also fix this particular issue (by relying on less private APIs, but not all) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, and +1 to backporting to a 5.x release (I'd rather not ship 6.0 yet)
Thanks for the quick fix. I'd love to get this as a 5.2.2 hotfix rather than waiting to 6.0.0. |
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
In #1083 we've started passing an `endpoint_url` parameter to _convert_to_request_dict due to changes made in botocore 1.28. When a model does not specify a `host`, the `endpoint_url` would be `None`. To determine the actual `endpoint_url` in botocore ≥1.28, we must call another private method, `_resolve_endpoint_ruleset`.
In #1083 we've started passing an `endpoint_url` parameter to _convert_to_request_dict due to changes made in botocore 1.28. When a model does not specify a `host`, the `endpoint_url` would be `None`. To determine the actual `endpoint_url` in botocore ≥1.28, we must call another private method, `_resolve_endpoint_ruleset`.
In #1083 we've started passing an `endpoint_url` parameter to _convert_to_request_dict due to changes made in botocore 1.28. When a model does not specify a `host`, the `endpoint_url` would be `None`. To determine the actual `endpoint_url` in botocore ≥1.28, we must call another private method, `_resolve_endpoint_ruleset`.
Would love to see this backported to 4.x as a 4.3.4 release. |
As a side note, 5.2.3 fixes compatibility with python-botocore >= 1.28.0 [1] [1] pynamodb/PynamoDB#1083 git-svn-id: file:///srv/repos/svn-community/svn@1345925 9fca08f4-af9d-4005-b8df-a31f2cc04f65
As a side note, 5.2.3 fixes compatibility with python-botocore >= 1.28.0 [1] [1] pynamodb/PynamoDB#1083 git-svn-id: file:///srv/repos/svn-community/svn@1345925 9fca08f4-af9d-4005-b8df-a31f2cc04f65
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
4.x backport should be available at https://pypi.org/project/pynamodb/4.4.0/ |
@ikonst I am getting this error |
I had the same issue with one lambda containerized. I used aws public image for the lambda with the tag Also, if you do install requirements in this container, make sure you use target in the command |
Are you suggesting that recent pynamodb doesn't work well with old botocore 1.20? |
@dobeerman I am using lambda containerization with this image |
Thanks a lot. This fixed my bug. |
botocore 1.28 changed the signature of private method botocore.client.BaseClient._convert_to_request_dict adding an endpoint_url parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.
botocore 1.28 changed the signature of private method
botocore.client.BaseClient._convert_to_request_dict
adding anendpoint_url
parameter. We are updating pynamodb to inspect the signature and add this parameter as needed.P.S. we would probably need to backport this to 5.x.