1{ lib
2, aiofiles
3, aioftp
4, aiohttp
5, buildPythonPackage
6, fetchPypi
7, pytest-asyncio
8, pytest-localserver
9, pytest-socket
10, pytestCheckHook
11, pythonOlder
12, setuptools-scm
13, tqdm
14}:
15
16buildPythonPackage rec {
17 pname = "parfive";
18 version = "2.0.2";
19 format = "setuptools";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 inherit pname version;
25 hash = "sha256-kIIR+cXLUtyLJ5YmhyCV88zhXahok/U7QXbezt3PyF0=";
26 };
27
28 buildInputs = [
29 setuptools-scm
30 ];
31
32 propagatedBuildInputs = [
33 aioftp
34 aiohttp
35 tqdm
36 ];
37
38 nativeCheckInputs = [
39 aiofiles
40 pytest-asyncio
41 pytest-localserver
42 pytest-socket
43 pytestCheckHook
44 ];
45
46 disabledTests = [
47 # Requires network access
48 "test_ftp"
49 "test_ftp_pasv_command"
50 "test_ftp_http"
51 ];
52
53 pythonImportsCheck = [
54 "parfive"
55 ];
56
57 meta = with lib; {
58 description = "A HTTP and FTP parallel file downloader";
59 homepage = "https://parfive.readthedocs.io/";
60 license = licenses.mit;
61 maintainers = with maintainers; [ ];
62 };
63}