at master 1.3 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pkgconfig, 6 psutil, 7 pytestCheckHook, 8 python, 9 pythonOlder, 10 setuptools, 11 setuptools-scm, 12}: 13 14buildPythonPackage rec { 15 pname = "lz4"; 16 version = "4.4.4"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.5"; 20 21 # get full repository in order to run tests 22 src = fetchFromGitHub { 23 owner = "python-lz4"; 24 repo = "python-lz4"; 25 tag = "v${version}"; 26 hash = "sha256-RoM2U47T5WLepJlbJhJAeqKRP8Zf3twndqmMSViI5Z8="; 27 }; 28 29 postPatch = '' 30 sed -i '/pytest-cov/d' setup.py 31 ''; 32 33 build-system = [ 34 pkgconfig 35 setuptools-scm 36 setuptools 37 ]; 38 39 pythonImportsCheck = [ 40 "lz4" 41 "lz4.block" 42 "lz4.frame" 43 "lz4.stream" 44 ]; 45 46 nativeCheckInputs = [ 47 psutil 48 pytestCheckHook 49 ]; 50 51 # for lz4.steam 52 env.PYLZ4_EXPERIMENTAL = true; 53 54 # prevent local lz4 directory from getting imported as it lacks native extensions 55 preCheck = '' 56 rm -r lz4 57 export PYTHONPATH=$out/${python.sitePackages}:$PYTHONPATH 58 ''; 59 60 meta = with lib; { 61 description = "LZ4 Bindings for Python"; 62 homepage = "https://github.com/python-lz4/python-lz4"; 63 changelog = "https://github.com/python-lz4/python-lz4/releases/tag/${src.tag}"; 64 license = licenses.bsd3; 65 maintainers = [ ]; 66 }; 67}