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

bump botocore to 1.29.161 #1019

Merged
merged 7 commits into from
Jun 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -70,3 +70,5 @@ jobs:

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"
2 changes: 1 addition & 1 deletion .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.7', '3.8', '3.9', '3.10']
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
fail-fast: true
timeout-minutes: 15
steps:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,4 +62,5 @@ target/
# rope
.ropeproject

# we can't check in lock-file because it needs to be generated per python version
Pipfile.lock
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ repos:
hooks:
- id: black
- repo: 'https://github.com/PyCQA/isort'
rev: 5.10.1
rev: 5.12.0
hooks:
- id: isort
- repo: 'https://github.com/pycqa/flake8'
Expand Down
4 changes: 4 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
Changes
-------
2.5.1 (2023-06-27)
^^^^^^^^^^^^^^^^^^
* bump botocore to 1.29.161

2.5.0 (2023-03-06)
^^^^^^^^^^^^^^^^^^
* bump botocore to 1.29.76 (thanks @jakob-keller #999)
Expand Down
1 change: 0 additions & 1 deletion CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ The best way I've seen to upgrade botocore support is by performing the followin
3. Update the "extras" in setup.py to the versions which match the botocore version you are targeting.
4. Now do a directory diff between aiobotocore and your target version botocore directory to ensure the changes were propagated.


See next section describing types of changes we must validate and support.

Hashes of Botocore Code (important)
Expand Down
6 changes: 3 additions & 3 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
codecov = "==2.1.11"
coverage = "==5.5"
codecov = "==2.1.13"
coverage = "==7.2.7"
flake8 = "==3.9.0"
flake8-formatter-abspath = "==1.0.1"
flake8-black = "== 0.3.3"
Expand All @@ -15,7 +15,7 @@ isort = "== 5.10.1"
docker = '==5.0.0'
moto = {extras = ["server","s3","sqs","lambda","dynamodb","cloudformation", "sns", "batch", "ec2", "rds"],version = "~=4.0.0"}
pytest = "==6.2.4"
pytest-cov = "==2.11.1"
pytest-cov = "==4.1.0"
pytest-asyncio = "==0.14.0"
pytest-xdist = "==2.2.1"

Expand Down
2 changes: 1 addition & 1 deletion aiobotocore/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = '2.5.0'
__version__ = '2.5.1'
12 changes: 8 additions & 4 deletions aiobotocore/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -324,9 +324,16 @@ async def _make_api_call(self, operation_name, api_params):
'has_streaming_input': operation_model.has_streaming_input,
'auth_type': operation_model.auth_type,
}
endpoint_url, additional_headers = await self._resolve_endpoint_ruleset( # noqa: BLK100
api_params = await self._emit_api_params(
api_params=api_params,
operation_model=operation_model,
context=request_context,
)
# fmt: off
endpoint_url, additional_headers = await self._resolve_endpoint_ruleset(
operation_model, api_params, request_context
)
# fmt: on
request_dict = await self._convert_to_request_dict(
api_params=api_params,
operation_model=operation_model,
Expand Down Expand Up @@ -399,9 +406,6 @@ async def _convert_to_request_dict(
headers=None,
set_user_agent_header=True,
):
api_params = await self._emit_api_params(
api_params, operation_model, context
)
request_dict = self._serializer.serialize_to_request(
api_params, operation_model
)
Expand Down
11 changes: 10 additions & 1 deletion aiobotocore/signers.py
Original file line number Diff line number Diff line change
Expand Up @@ -325,6 +325,11 @@ async def generate_presigned_url(
raise UnknownClientMethodError(method_name=client_method)

operation_model = self.meta.service_model.operation_model(operation_name)
params = await self._emit_api_params(
api_params=params,
operation_model=operation_model,
context=context,
)
bucket_is_arn = ArnParser.is_arn(params.get('Bucket', ''))
endpoint_url, additional_headers = await self._resolve_endpoint_ruleset(
operation_model,
Expand Down Expand Up @@ -385,7 +390,11 @@ async def generate_presigned_post(
# We choose the CreateBucket operation model because its url gets
# serialized to what a presign post requires.
operation_model = self.meta.service_model.operation_model('CreateBucket')
params = {'Bucket': bucket}
params = await self._emit_api_params(
api_params={'Bucket': bucket},
operation_model=operation_model,
context=context,
)
bucket_is_arn = ArnParser.is_arn(params.get('Bucket', ''))
endpoint_url, additional_headers = await self._resolve_endpoint_ruleset(
operation_model,
Expand Down
13 changes: 7 additions & 6 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@
# NOTE: When updating botocore make sure to update awscli/boto3 versions below
install_requires = [
# pegged to also match items in `extras_require`
'botocore>=1.29.76,<1.29.77',
'aiohttp>=3.3.1',
'wrapt>=1.10.10',
'aioitertools>=0.5.1',
'botocore>=1.29.161,<1.29.162',
'aiohttp>=3.3.1,<4.0.0',
'wrapt>=1.10.10, <2.0.0',
'aioitertools>=0.5.1,<1.0.0',
]

extras_require = {
'awscli': ['awscli>=1.27.76,<1.27.77'],
'boto3': ['boto3>=1.26.76,<1.26.77'],
'awscli': ['awscli>=1.27.161,<1.27.162'],
'boto3': ['boto3>=1.26.161,<1.26.162'],
}


Expand Down Expand Up @@ -53,6 +53,7 @@ def read_version():
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Environment :: Web Environment',
'Framework :: AsyncIO',
],
Expand Down
16 changes: 8 additions & 8 deletions tests/test_patches.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,10 +178,10 @@
ClientCreator._register_legacy_retries: {
'000b2f2a122602e2e741ec2e89308dc2e2b67329'
},
BaseClient._make_api_call: {'bac0b84ebf6276a0c7510095ff168e6fe86a64f6'},
BaseClient._make_api_call: {'eba7540893a631a00ebfc3c287026ee6db993e09'},
BaseClient._make_request: {'cfd8bbf19ea132134717cdf9c460694ddacdbf58'},
BaseClient._convert_to_request_dict: {
'2e423ea67f8773c1a1a64bc516d5102555f4f61a'
'899c223cacbe17be646a33882ecd65aa02290b9b'
},
BaseClient._emit_api_params: {'abd67874dae8d5cd2788412e4699398cb915a119'},
BaseClient._resolve_endpoint_ruleset: {
Expand All @@ -192,7 +192,7 @@
BaseClient.__getattr__: {'3ec17f468f50789fa633d6041f40b66a2f593e77'},
# config.py
Config.merge: {'c3dd8c3ffe0da86953ceba4a35267dfb79c6a2c8'},
Config: {'90f26fb2f264c0424d60f035494402eac69de269'},
Config: {'c22f76d2e45e575d99ae130cdba8ea31cb7f4cdc'},
# credentials.py
create_mfa_serial_refresher: {'9b5e98782fcacdcea5899a6d0d29d1b9de348bb0'},
Credentials.get_frozen_credentials: {
Expand Down Expand Up @@ -450,12 +450,12 @@
'417682868eacc10bf4c65f3dfbdba7d20d9250db'
},
add_generate_presigned_url: {'5820f74ac46b004eb79e00eea1adc467bcf4defe'},
generate_presigned_url: {'4bbb8eea8ebdd3d49a3c9739a990eb219ed12cc4'},
generate_presigned_url: {'48f6745f8a37cfba04b3b2f6fb3910210b4a7201'},
S3PostPresigner.generate_presigned_post: {
'269efc9af054a2fd2728d5b0a27db82c48053d7f'
},
add_generate_presigned_post: {'e30360f2bd893fabf47f5cdb04b0de420ccd414d'},
generate_presigned_post: {'1b48275e09e9c1f872a1d16e74d7e40f34cfaf90'},
generate_presigned_post: {'eedf40b48c63f6772ed05e3f335c8193d187f503'},
add_generate_db_auth_token: {'f61014e6fac4b5c7ee7ac2d2bec15fb16fa9fbe5'},
generate_db_auth_token: {'1f37e1e5982d8528841ce6b79f229b3e23a18959'},
# tokens.py
Expand Down Expand Up @@ -580,7 +580,7 @@
# retries/adaptive.py
# See comments in AsyncTokenBucket: we completely replace the ClientRateLimiter
# implementation from botocore.
adaptive.ClientRateLimiter: {'e9d99c7921170815f0eaf5c2848765cd6ed90177'},
adaptive.ClientRateLimiter: {'9dbf36d36614a4a2e2719ca7e4382aa4694caae3'},
adaptive.register_retry_handler: {
'96c073719a3d5d41d1ca7ae5f7e31bbb431c75b3'
},
Expand Down Expand Up @@ -610,9 +610,9 @@
# retries/bucket.py
# See comments in AsyncTokenBucket: we completely replace the TokenBucket
# implementation from botocore.
TokenBucket: {'bddbf15ba4c2f04cb7fe04992168fa0e839047e5'},
TokenBucket: {'ce932001b13e256d1a2cc625094989fff087d484'},
# awsresponse.py
AWSResponse.content: {'1d74998e3e0abe52b52c251a1eae4971e65b1053'},
AWSResponse.content: {'307a4eb1d46360ef808a876d7d00cbbde6198eb1'},
AWSResponse.text: {'a724100ba9f6d51b333b8fe470fac46376d5044a'},
# httpchecksum.py
handle_checksum_body: {'4b9aeef18d816563624c66c57126d1ffa6fe1993'},
Expand Down