diff --git a/pkgs/development/python-modules/aiobotocore/default.nix b/pkgs/development/python-modules/aiobotocore/default.nix index 6bc62a3854d3..4762372e8c80 100644 --- a/pkgs/development/python-modules/aiobotocore/default.nix +++ b/pkgs/development/python-modules/aiobotocore/default.nix @@ -1,39 +1,88 @@ { lib +, aiohttp +, aioitertools +, botocore , buildPythonPackage -, fetchPypi +, dill +, fetchFromGitHub +, moto +, pytest-asyncio +, pytestCheckHook , pythonOlder , wrapt -, aioitertools -, aiohttp -, botocore }: buildPythonPackage rec { pname = "aiobotocore"; - version = "2.4.0"; + version = "2.4.1"; + format = "setuptools"; + disabled = pythonOlder "3.7"; - src = fetchPypi { - inherit pname version; - sha256 = "sha256-+f4GmMxJeGG9tUzRYWHIBAMfdYralIDDVUDyDAwHg4U="; + src = fetchFromGitHub { + owner = "aio-libs"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-jJ1Yc5vs33vXdSjDFUXhdquz1s7NxzJELQsM3hthhzg="; }; - # relax version constraints: aiobotocore works with newer botocore versions + # Relax version constraints: aiobotocore works with newer botocore versions # the pinning used to match some `extras_require` we're not using. postPatch = '' sed -i "s/'botocore>=.*'/'botocore'/" setup.py ''; - propagatedBuildInputs = [ wrapt aiohttp aioitertools botocore ]; + propagatedBuildInputs = [ + aiohttp + aioitertools + botocore + wrapt + ]; - # tests not distributed on pypi - doCheck = false; - pythonImportsCheck = [ "aiobotocore" ]; + checkInputs = [ + dill + moto + pytest-asyncio + pytestCheckHook + ]; + + pythonImportsCheck = [ + "aiobotocore" + ]; + + disabledTestPaths = [ + # Tests require network access + "tests/boto_tests/test_signers.py" + "tests/python3.8/" + "tests/test_basic_s3.py" + "tests/test_batch.py" + "tests/test_dynamodb.py" + "tests/test_ec2.py" + "tests/test_eventstreams.py" + "tests/test_lambda.py" + "tests/test_monitor.py" + "tests/test_mturk.py" + "tests/test_patches.py" + "tests/test_sns.py" + "tests/test_sqs.py" + "tests/test_version.py" + "tests/test_waiter.py" + ]; + + disabledTests = [ + "test_get_credential" + "test_load_sso_credentials_without_cache" + "test_load_sso_credentials" + "test_required_config_not_set" + "test_sso_cred_fetcher_raises_helpful_message_on_unauthorized_exception" + "test_sso_credential_fetcher_can_fetch_credentials" + ]; meta = with lib; { description = "Python client for amazon services"; - license = licenses.asl20; homepage = "https://github.com/aio-libs/aiobotocore"; + changelog = "https://github.com/aio-libs/aiobotocore/releases/tag/${version}"; + license = licenses.asl20; maintainers = with maintainers; [ teh ]; }; }