1{
2 lib,
3 buildPythonPackage,
4 cython,
5 expandvars,
6 fetchFromGitHub,
7 pep517,
8 pytestCheckHook,
9 pythonOlder,
10 setuptools,
11 wheel,
12}:
13
14buildPythonPackage rec {
15 pname = "frozenlist";
16 version = "1.7.0";
17 pyproject = true;
18
19 disabled = pythonOlder "3.7";
20
21 src = fetchFromGitHub {
22 owner = "aio-libs";
23 repo = "frozenlist";
24 tag = "v${version}";
25 hash = "sha256-aBHX/U1L2mcah80edJFY/iXsM05DVas7lJT8yVTjER8=";
26 };
27
28 postPatch = ''
29 rm pytest.ini
30 '';
31
32 nativeBuildInputs = [
33 expandvars
34 cython
35 pep517
36 setuptools
37 wheel
38 ];
39
40 nativeCheckInputs = [ pytestCheckHook ];
41
42 preBuild = ''
43 cython frozenlist/_frozenlist.pyx
44 '';
45
46 pythonImportsCheck = [ "frozenlist" ];
47
48 meta = with lib; {
49 description = "Python module for list-like structure";
50 homepage = "https://github.com/aio-libs/frozenlist";
51 changelog = "https://github.com/aio-libs/frozenlist/blob/${src.tag}/CHANGES.rst";
52 license = licenses.asl20;
53 maintainers = with maintainers; [ fab ];
54 };
55}