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 aiohttp from 3.3.2 to 3.7.4 and botocore to 1.20.49 #856

Merged
merged 6 commits into from
Apr 9, 2021
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
4 changes: 4 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
Changes
-------
1.3.0 (2021-04-09)
^^^^^^^^^^^^^^^^^^
* Bump to botocore 1.20.49 #856

1.2.2 (2021-03-11)
^^^^^^^^^^^^^^^^^^
* Await call to async method _load_creds_via_assume_role #851 (thanks @puzza007)
Expand Down
27 changes: 14 additions & 13 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,23 @@ url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
codecov = "*"
coverage = "==5.0.3"
flake8 = "==3.7.9"
codecov = "2.1.11"
coverage = "==5.5"
flake8 = "==3.9.0"
flake8-formatter-abspath = "==1.0.1"
docker = '<4' # fix: client version 1.39 is too new. Maximum supported API version is 1.38
moto = {extras = ["server"],version = "==1.3.16"}
idna = "==2.8" # broken pipenv resolver
pytest = "==5.3.5"
pytest-cov = "==2.8.1"
pytest-asyncio = "==0.10.0"
pytest-xdist = "==1.31.0"
dill = "==0.3.1.1"
docker = '5.0.0'
moto = {extras = ["server","s3","sqs","lambda","dynamodb","cloudformation", "sns", "batch"],version = "==2.0.4"}
pytest = "==6.2.3"
pytest-cov = "==2.11.1"
pytest-asyncio = "==0.14.0"
pytest-xdist = "==2.2.1"

# for some reason this is needed when running setup.py check -rms on travis on 3.6.10
# this is needed for test_patches
dill = "==0.3.3"

# this is needed when running setup.py check -rms
Pygments = "*"

[packages]
aiohttp = "==3.3.2"
aiohttp = "==3.7.4.post0"
aiobotocore = {editable = true,extras = ["awscli", "boto3"],path = "."}
2 changes: 1 addition & 1 deletion aiobotocore/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from .session import get_session, AioSession

__all__ = ['get_session', 'AioSession']
__version__ = '1.2.2'
__version__ = '1.3.0'
1 change: 1 addition & 0 deletions aiobotocore/args.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ def get_client_args(self, service_model, region_name, is_secure,
timeout=(new_config.connect_timeout, new_config.read_timeout),
socket_options=socket_options,
client_cert=new_config.client_cert,
proxies_config=new_config.proxies_config,
connector_args=new_config.connector_args)

serializer = botocore.serialize.create_serializer(
Expand Down
3 changes: 3 additions & 0 deletions aiobotocore/endpoint.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ def create_endpoint(self, service_model, region_name, endpoint_url,
proxies=None,
socket_options=None,
client_cert=None,
proxies_config=None,
connector_args=None):
if not is_valid_endpoint_url(endpoint_url):

Expand Down Expand Up @@ -304,6 +305,8 @@ def create_endpoint(self, service_model, region_name, endpoint_url,
ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH,
cafile=str(verify))

# TODO: add support for proxies_config

connector = aiohttp.TCPConnector(
limit=max_pool_connections,
verify_ssl=bool(verify),
Expand Down
4 changes: 2 additions & 2 deletions aiobotocore/waiter.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from botocore.exceptions import ClientError
from botocore.waiter import WaiterModel # noqa: F401, lgtm[py/unused-import]
from botocore.waiter import Waiter, xform_name, logger, WaiterError, \
NormalizedOperationMethod as _NormalizedOperationMethod
NormalizedOperationMethod as _NormalizedOperationMethod, is_valid_waiter_error
from botocore.docs.docstring import WaiterDocstring
from botocore.utils import get_service_module_name

Expand Down Expand Up @@ -40,7 +40,7 @@ async def wait(self, **kwargs):
# If none of the acceptors matched, we should
# transition to the failure state if an error
# response was received.
if 'Error' in response:
if is_valid_waiter_error(response):
# Transition to a failure state, which we
# can just handle here by raising an exception.
raise WaiterError(
Expand Down
6 changes: 3 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# NOTE: When updating botocore make sure to update awscli/boto3 versions below
install_requires = [
# pegged to also match items in `extras_require`
'botocore>=1.19.52,<1.19.53',
'botocore>=1.20.49,<1.20.50',
'aiohttp>=3.3.1',
'wrapt>=1.10.10',
'aioitertools>=0.5.1',
Expand All @@ -19,8 +19,8 @@ def read(f):


extras_require = {
'awscli': ['awscli==1.18.212'],
'boto3': ['boto3==1.16.52'],
'awscli': ['awscli==1.19.49'],
'boto3': ['boto3==1.17.49'],
}


Expand Down
11 changes: 6 additions & 5 deletions tests/test_patches.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,8 @@
# github.com/aio-libs/aiobotocore/pull/248
_AIOHTTP_DIGESTS = {
# for using _body
ClientResponse: {'e178726065b609c69a1c02e8bb78f22efce90792'},
ClientResponse: {'e178726065b609c69a1c02e8bb78f22efce90792',
'225e8033bfcff8cccbc2e975d7bd0c7993f14366'},
}

# These are guards to our main patches
Expand All @@ -73,7 +74,7 @@
# If you're changing these, most likely need to update setup.py as well.
_API_DIGESTS = {
# args.py
ClientArgsCreator.get_client_args: {'e3a44e6f50159e8e31c3d76f5e8a1110dda495fa'},
ClientArgsCreator.get_client_args: {'96d97f97fce6d883281dc4ffe0fa0743e190f7bd'},

# client.py
ClientCreator.create_client: {'281fbf7afc4e6282e5c881c7a03717c9e5e4e176'},
Expand All @@ -91,7 +92,7 @@

# config.py
Config.merge: {'c3dd8c3ffe0da86953ceba4a35267dfb79c6a2c8'},
Config: {'2dcc44190a3dc2a4b26ab0ed9410daefcd7c93c1'},
Config: {'e63975f828f8d20e4d739dbdb4d496ec3a3e3dc9'},

# credentials.py
create_mfa_serial_refresher: {'180b81fc40c91d1cf40de1a28e32ae7d601e1d50'},
Expand Down Expand Up @@ -198,7 +199,7 @@
Endpoint._needs_retry: {'0f40f52d8c90c6e10b4c9e1c4a5ca00ef2c72850'},
Endpoint._send: {'644c7e5bb88fecaa0b2a204411f8c7e69cc90bf1'},

EndpointCreator.create_endpoint: {'36065caa2398573be229bee500e27303bc362348'},
EndpointCreator.create_endpoint: {'502315533a86991ea5f57c04973ea5c837bf6197'},

# eventstream.py
EventStream._create_raw_event_generator: {
Expand Down Expand Up @@ -285,7 +286,7 @@

# waiter.py
NormalizedOperationMethod.__call__: {'79723632d023739aa19c8a899bc2b814b8ab12ff'},
Waiter.wait: {'3a4ff0fdfc78b7ec42bfd41f3e1ba3b741f2d2b9'},
Waiter.wait: {'e9c7f98b12ac8d9ba44637e89499617590bc4f6f'},
create_waiter_with_client: {'c3d12c9a4293105cc8c2ecfc7e69a2152ad564de'},
}

Expand Down
1 change: 1 addition & 0 deletions tests/test_sqs.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ async def test_put_pull_delete_test(sqs_client, sqs_queue_url):

response = await sqs_client.receive_message(
QueueUrl=sqs_queue_url,
MessageAttributeNames=['attr1']
)
pytest.aio.assert_status_code(response, 200)

Expand Down