Skip to content

Update botocore to 1.37.3 #1323

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

Merged
merged 4 commits into from
May 1, 2025
Merged

Conversation

stj
Copy link
Contributor

@stj stj commented Apr 7, 2025

Description of Change

Update the botocore to version 1.37.3.
Includes changes to support for the smithy-rpc-v2-cbor protocol.

Assumptions

Replace this text with any assumptions made (if any)

Checklist for All Submissions

  • I have added change info to CHANGES.rst
  • If this is resolving an issue (needed so future developers can determine if change is still necessary and under what conditions) (can be provided via link to issue with these details):
    • Detailed description of issue
    • Alternative methods considered (if any)
    • How issue is being resolved
    • How issue can be reproduced
  • If this is providing a new feature (can be provided via link to issue with these details):
    • Detailed description of new feature
    • Why needed
    • Alternatives methods considered (if any)

Checklist when updating botocore and/or aiohttp versions

  • I have read and followed CONTRIBUTING.rst
  • I have updated test_patches.py where/if appropriate (also check if no changes necessary)
  • I have ensured that the awscli/boto3 versions match the updated botocore version

@jakob-keller jakob-keller added the dependencies Pull requests that update a dependency file label Apr 7, 2025
@stj stj marked this pull request as draft April 7, 2025 21:26
@stj stj marked this pull request as ready for review April 7, 2025 22:06
@thehesiod
Copy link
Collaborator

cool thanks! we'll review shortly

@stj
Copy link
Contributor Author

stj commented Apr 8, 2025

Thanks. I am planning to create a few more PRs to get to at least 1.37.20.
Though I will wait for feedback on this PR to learn more about the process before starting that work.

Might force push to address the commit signature requirement.

@stj stj force-pushed the update-botocore-1.37.3 branch from 98d8913 to 2ff71b5 Compare April 8, 2025 16:43
@thehesiod
Copy link
Collaborator

diff: boto/botocore@1.37.0...1.37.2

@albarsil
Copy link

albarsil commented Apr 9, 2025

praise: Nice initiative! This PR is required for projects that use botocore==1.37.25 and need aiobotocore.

Copy link

codecov bot commented Apr 9, 2025

Codecov Report

Attention: Patch coverage is 96.61017% with 6 lines in your changes missing coverage. Please review.

Project coverage is 90.96%. Comparing base (54dba34) to head (e208ffd).
Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
tests/botocore_tests/unit/test_protocols.py 96.61% 6 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1323      +/-   ##
==========================================
+ Coverage   90.63%   90.96%   +0.33%     
==========================================
  Files          67       68       +1     
  Lines        6597     6774     +177     
==========================================
+ Hits         5979     6162     +183     
+ Misses        618      612       -6     
Flag Coverage Δ
unittests 90.96% <96.61%> (+0.33%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@nalbion
Copy link

nalbion commented Apr 16, 2025

botocore 1.37.25 please - this supports Anthropic prompt caching

@stj
Copy link
Contributor Author

stj commented Apr 16, 2025

I merged and pushed a change. The parser method is now async for all AioParsers, making the interface more consistent. Insight the parser classes the _do_parse method can be async or sync. Let me know if that change requires more entries in tests/test_patches.py to cover these changes. My current assumption is that parsers are an internal class and not documented for public use. If they are public, this will be a breaking change.

@stj stj requested review from thehesiod and jakob-keller April 16, 2025 23:03
@thehesiod
Copy link
Collaborator

thanks will take a look soon, under some high pressure at work (and home) this week

@stj
Copy link
Contributor Author

stj commented Apr 18, 2025

The last commit are output protocol tests that I copied from botocore and adjusted to work with asyncio.
It got coverage of parsers.py to 81% compared to 73% on the main branch. Though, overall coverage went down 1% from 91% to 90%. I'll wait for feedback before making more changes.

Copy link
Collaborator

@jakob-keller jakob-keller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for preparing the PR. I agree that moving parse() up to AioResponseParser is a good idea. Would you mind putting that in a separate PR? That would simplify reviews.

@stj
Copy link
Contributor Author

stj commented Apr 21, 2025

@jakob-keller created pull #1328

@jakob-keller
Copy link
Collaborator

@stj: Since #1347 has been merged, this could now move forward. Do you want to update the PR or should I prepare a fresh one? Mine is more or less ready to go.

@stj
Copy link
Contributor Author

stj commented Apr 29, 2025

@jakob-keller I merged master, resolved conflicts and adjusted my changes.
Still a lot of copied tests from upstream botocore in this change.
Please take a look.

Copy link
Collaborator

@jakob-keller jakob-keller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reviewed everything except the unit tests. Could you look at my comments. Fell free to copy over anything from https://github.com/aio-libs/aiobotocore/pull/1348/files

jakob-keller
jakob-keller previously approved these changes Apr 29, 2025
@jakob-keller jakob-keller enabled auto-merge April 29, 2025 21:50
@jakob-keller
Copy link
Collaborator

Looks like there are some unverified commits in there. Can you rectify that? Otherwise, I would just try to squash everything.

Adds new RCP V2 CBOR parser.
Copies upstream protocol tests and adjust them to support asyncio.
auto-merge was automatically disabled April 29, 2025 23:20

Head branch was pushed to by a user without write access

@stj stj force-pushed the update-botocore-1.37.3 branch from 4b6d774 to 3cb5682 Compare April 29, 2025 23:20
@stj
Copy link
Contributor Author

stj commented May 1, 2025

@jakob-keller thanks for the thorough reviews. Admit, I didn't do a good job keeping track on what happened on master after I created this PR. Thanks for working with me to get this done. Still much to learn for me on how aiobotocore works with botocore and the design of both libraries. This PR is now just pulling in the protocol tests from upstream and doesn't do anything that is in the PR description. Fell free to close it if the value of this isn't worth the added maintenance burden.

@jakob-keller jakob-keller enabled auto-merge May 1, 2025 16:10
@jakob-keller jakob-keller added this pull request to the merge queue May 1, 2025
@jakob-keller
Copy link
Collaborator

@jakob-keller thanks for the thorough reviews. Admit, I didn't do a good job keeping track on what happened on master after I created this PR. Thanks for working with me to get this done. Still much to learn for me on how aiobotocore works with botocore and the design of both libraries. This PR is now just pulling in the protocol tests from upstream and doesn't do anything that is in the PR description. Fell free to close it if the value of this isn't worth the added maintenance burden.

On the contrary: Thanks a lot for your contributions and persistence! I still remember the steep learning curve when I contributed my first version bump. It all looks easier than it actually is.

Merged via the queue into aio-libs:master with commit a7f74a3 May 1, 2025
20 checks passed
@stj stj deleted the update-botocore-1.37.3 branch May 1, 2025 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants