1{
2 lib,
3 buildPythonPackage,
4 environs,
5 fetchFromGitHub,
6 httpx,
7 setuptools,
8 pytest-cov-stub,
9 pytest-mock,
10 pytest-vcr,
11 pytestCheckHook,
12 pythonOlder,
13 tornado,
14}:
15
16buildPythonPackage rec {
17 pname = "deezer-python";
18 version = "7.2.0";
19 pyproject = true;
20
21 disabled = pythonOlder "3.9";
22
23 src = fetchFromGitHub {
24 owner = "browniebroke";
25 repo = "deezer-python";
26 tag = "v${version}";
27 hash = "sha256-j7FiZJX2YIYs03bKKu2e+ByElp5oYpmpUheVr8BVXZo=";
28 };
29
30 build-system = [ setuptools ];
31
32 dependencies = [ httpx ];
33
34 nativeCheckInputs = [
35 environs
36 pytest-cov-stub
37 pytest-mock
38 pytest-vcr
39 pytestCheckHook
40 tornado
41 ];
42
43 pythonImportsCheck = [ "deezer" ];
44
45 disabledTests = [
46 # JSONDecodeError issue
47 "test_get_user_flow"
48 "test_with_language_header"
49 ];
50
51 meta = with lib; {
52 description = "Python wrapper around the Deezer API";
53 homepage = "https://github.com/browniebroke/deezer-python";
54 changelog = "https://github.com/browniebroke/deezer-python/releases/tag/v${version}";
55 license = licenses.mit;
56 maintainers = with maintainers; [ synthetica ];
57 };
58}