1{
2 buildPythonPackage,
3 fetchFromGitHub,
4 gitUpdater,
5 google-api-core,
6 google-auth,
7 google-geo-type,
8 lib,
9 proto-plus,
10 protobuf,
11 pytest-asyncio,
12 pytestCheckHook,
13 setuptools,
14}:
15
16buildPythonPackage rec {
17 pname = "google-maps-routing";
18 version = "3.31.3";
19 pyproject = true;
20
21 src = fetchFromGitHub {
22 owner = "googleapis";
23 repo = "google-cloud-python";
24 tag = "google-cloud-build-v${version}";
25 hash = "sha256-qQ+8X6I8lt4OTgbvODsbdab2dYUk0wxWsbaVT2T651U=";
26 };
27
28 sourceRoot = "${src.name}/packages/google-maps-routing";
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 google-api-core
34 google-auth
35 proto-plus
36 protobuf
37 google-geo-type
38 ]
39 ++ google-api-core.optional-dependencies.grpc;
40
41 pythonImportsCheck = [ "google.maps.routing_v2" ];
42
43 nativeCheckInputs = [
44 pytest-asyncio
45 pytestCheckHook
46 ];
47
48 passthru.updateScript = gitUpdater { rev-prefix = "google-maps-routing-v"; };
49
50 meta = {
51 changelog = "https://github.com/googleapis/google-cloud-python/blob/${src.tag}/packages/google-maps-routing/CHANGELOG.md";
52 description = "Google Maps Routing API client library";
53 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-maps-routing";
54 license = lib.licenses.asl20;
55 maintainers = with lib.maintainers; [ dotlambda ];
56 };
57}