about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/google-api-core/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/google-api-core/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-api-core/default.nix92
1 files changed, 92 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/google-api-core/default.nix b/nixpkgs/pkgs/development/python-modules/google-api-core/default.nix
new file mode 100644
index 000000000000..9df9562c3d15
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/google-api-core/default.nix
@@ -0,0 +1,92 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, google-auth
+, googleapis-common-protos
+, grpcio
+, grpcio-gcp
+, grpcio-status
+, mock
+, proto-plus
+, protobuf
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "google-api-core";
+  version = "2.11.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-JdKeBaAFjtXxnGHAp4sbU63qTZNktGTQFPvalB9tHJo=";
+  };
+
+  propagatedBuildInputs = [
+    googleapis-common-protos
+    google-auth
+    protobuf
+    proto-plus
+    requests
+  ];
+
+  passthru.optional-dependencies = {
+    grpc = [
+      grpcio
+      grpcio-status
+    ];
+    grpcgcp = [
+      grpcio-gcp
+    ];
+    grpcio-gcp = [
+      grpcio-gcp
+    ];
+  };
+
+  nativeCheckInputs = [
+    mock
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  # prevent google directory from shadowing google imports
+  preCheck = ''
+    rm -r google
+  '';
+
+  disabledTests = [
+    # Those grpc_helpers tests are failing
+    "test_wrap_unary_errors"
+    "test_wrap_stream_errors_raised"
+    "test_wrap_stream_errors_read"
+    "test_wrap_stream_errors_aiter"
+    "test_wrap_stream_errors_write"
+    "test_wrap_unary_errors"
+    "test___next___w_rpc_error"
+    "test_wrap_stream_errors_invocation"
+    "test_wrap_stream_errors_iterator_initialization"
+    "test_wrap_stream_errors_during_iteration"
+    "test_exception_with_error_code"
+  ];
+
+  pythonImportsCheck = [
+    "google.api_core"
+  ];
+
+  meta = with lib; {
+    description = "Core Library for Google Client Libraries";
+    longDescription = ''
+      This library is not meant to stand-alone. Instead it defines common
+      helpers used by all Google API clients.
+    '';
+    homepage = "https://github.com/googleapis/python-api-core";
+    changelog = "https://github.com/googleapis/python-api-core/blob/v${version}/CHANGELOG.md";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ];
+  };
+}