1{ lib
2, buildPythonPackage
3, fetchPypi
4, fetchpatch
5, google-cloud-storage
6, mock
7, pytestCheckHook
8, pythonOlder
9, smart-open
10, typer
11}:
12
13buildPythonPackage rec {
14 pname = "pathy";
15 version = "0.10.3";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchPypi {
21 inherit pname version;
22 hash = "sha256-tFGF0G+bGMbTNG06q4gauWh0VT9mHuiMzS5gJG4QPCI=";
23 };
24
25 propagatedBuildInputs = [
26 google-cloud-storage
27 smart-open
28 typer
29 ];
30
31 nativeCheckInputs = [
32 mock
33 pytestCheckHook
34 ];
35
36 disabledTestPaths = [
37 # Exclude tests that require provider credentials
38 "pathy/_tests/test_clients.py"
39 "pathy/_tests/test_gcs.py"
40 "pathy/_tests/test_s3.py"
41 ];
42
43 pythonImportsCheck = [
44 "pathy"
45 ];
46
47 meta = with lib; {
48 description = "A Path interface for local and cloud bucket storage";
49 homepage = "https://github.com/justindujardin/pathy";
50 license = licenses.asl20;
51 maintainers = with maintainers; [ melling ];
52 };
53}