diff --git a/pkgs/development/python-modules/google_cloud_pubsub/default.nix b/pkgs/development/python-modules/google_cloud_pubsub/default.nix index 56a95692846..4af622dc66e 100644 --- a/pkgs/development/python-modules/google_cloud_pubsub/default.nix +++ b/pkgs/development/python-modules/google_cloud_pubsub/default.nix @@ -1,36 +1,34 @@ -{ stdenv -, buildPythonPackage -, fetchPypi -, enum34 -, grpc_google_iam_v1 -, google_api_core -, pytest -, mock -}: +{ stdenv, buildPythonPackage, fetchPypi, pythonOlder, pytestCheckHook +, google_api_core, google_cloud_testutils, grpc_google_iam_v1, libcst, mock +, proto-plus, pytest-asyncio }: buildPythonPackage rec { pname = "google-cloud-pubsub"; - version = "1.7.0"; + version = "2.1.0"; src = fetchPypi { inherit pname version; - sha256 = "c8d098ebd208d00c8f3bb55eefecd8553e7391d59700426a97d35125f0dcb248"; + sha256 = "0358g5q4igq1pgy8dznbbkc6y7zf36y4m81hhh8hvzzhaa37vc22"; }; - checkInputs = [ pytest mock ]; - propagatedBuildInputs = [ enum34 grpc_google_iam_v1 google_api_core ]; + disabled = pythonOlder "3.6"; - # tests don't clean up file descriptors correctly - doCheck = false; - checkPhase = '' - pytest tests/unit + checkInputs = [ google_cloud_testutils mock pytestCheckHook pytest-asyncio ]; + propagatedBuildInputs = + [ grpc_google_iam_v1 google_api_core libcst proto-plus ]; + + # prevent google directory from shadowing google imports + # Tests in pubsub_v1 attempt to contact pubsub.googleapis.com + preCheck = '' + rm -r google + rm -r tests/unit/pubsub_v1 ''; pythonImportsCheck = [ "google.cloud.pubsub" ]; meta = with stdenv.lib; { description = "Google Cloud Pub/Sub API client library"; - homepage = "https://github.com/GoogleCloudPlatform/google-cloud-python"; + homepage = "https://pypi.org/project/google-cloud-pubsub"; license = licenses.asl20; maintainers = [ maintainers.costrouc ]; };