1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitea,
5 aiobtclientrpc,
6 async-timeout,
7 httpx,
8 torf,
9 pytest-asyncio,
10 pytest-mock,
11 pytestCheckHook,
12 setuptools,
13}:
14
15buildPythonPackage rec {
16 pname = "aiobtclientapi";
17 version = "1.1.3";
18 pyproject = true;
19
20 src = fetchFromGitea {
21 domain = "codeberg.org";
22 owner = "plotski";
23 repo = "aiobtclientapi";
24 tag = "v${version}";
25 hash = "sha256-ZpUaMsJs1vdVGQOid7aJ+SJKaCbTtHfSw7cOwPTL0ss=";
26 };
27
28 pythonRelaxDeps = [
29 "async-timeout"
30 ];
31
32 build-system = [
33 setuptools
34 ];
35
36 dependencies = [
37 aiobtclientrpc
38 async-timeout
39 httpx
40 torf
41 ];
42
43 nativeCheckInputs = [
44 pytest-asyncio
45 pytest-mock
46 pytestCheckHook
47 ];
48
49 pythonImportsCheck = [ "aiobtclientapi" ];
50
51 disabledTestPaths = [
52 # AttributeError
53 "tests/clients_test/rtorrent_test/rtorrent_api_test.py"
54 ];
55
56 meta = {
57 description = "Asynchronous high-level communication with BitTorrent clients";
58 homepage = "https://aiobtclientapi.readthedocs.io";
59 license = lib.licenses.gpl3Plus;
60 maintainers = with lib.maintainers; [ ambroisie ];
61 };
62}