1{
2 lib,
3 appdirs,
4 buildPythonPackage,
5 fetchPypi,
6 fsspec,
7 funcy,
8 google-api-python-client,
9 oauth2client,
10 pyopenssl,
11 pythonOlder,
12 pyyaml,
13 setuptools,
14 setuptools-scm,
15 tqdm,
16}:
17
18buildPythonPackage rec {
19 pname = "pydrive2";
20 version = "1.19.0";
21 pyproject = true;
22
23 disabled = pythonOlder "3.8";
24
25 src = fetchPypi {
26 pname = "PyDrive2";
27 inherit version;
28 hash = "sha256-Ia6n2idjXCw/cFDgICBhkfOwMFxlUDFebo491Sb4tTE=";
29 };
30
31 nativeBuildInputs = [
32 setuptools
33 setuptools-scm
34 ];
35
36 propagatedBuildInputs = [
37 google-api-python-client
38 oauth2client
39 pyopenssl
40 pyyaml
41 ];
42
43 passthru.optional-dependencies = {
44 fsspec = [
45 appdirs
46 fsspec
47 funcy
48 tqdm
49 ];
50 };
51
52 # Tests require a account and network access
53 doCheck = false;
54
55 pythonImportsCheck = [ "pydrive2" ];
56
57 meta = with lib; {
58 description = "Google Drive API Python wrapper library";
59 homepage = "https://github.com/iterative/PyDrive2";
60 changelog = "https://github.com/iterative/PyDrive2/releases/tag/${version}";
61 license = licenses.asl20;
62 maintainers = with maintainers; [ sei40kr ];
63 };
64}