1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 lxml,
6 python-dateutil,
7 pythonOlder,
8 requests,
9 setuptools,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "webdavclient3";
15 version = "3.14.6";
16 pyproject = true;
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "ezhov-evgeny";
22 repo = "webdav-client-python-3";
23 tag = "v${version}";
24 hash = "sha256-vtZTBfq3PVrapv3ivYc18+71y7SPpJ+Mwk5qGe/DdTM=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 lxml
31 python-dateutil
32 requests
33 ];
34
35 nativeCheckInputs = [ pytestCheckHook ];
36
37 pythonImportsCheck = [ "webdav3.client" ];
38
39 disabledTestPaths = [
40 # Tests require a local WebDAV instance
41 "tests/test_client_it.py"
42 "tests/test_client_resource_it.py"
43 "tests/test_cyrilic_client_it.py"
44 "tests/test_multi_client_it.py"
45 "tests/test_tailing_slash_client_it.py"
46 ];
47
48 meta = with lib; {
49 description = "Easy to use WebDAV Client for Python 3.x";
50 homepage = "https://github.com/ezhov-evgeny/webdav-client-python-3";
51 license = licenses.mit;
52 maintainers = with maintainers; [ ];
53 mainProgram = "wdc";
54 };
55}