1{ 2 lib, 3 atpublic, 4 buildPythonPackage, 5 fetchPypi, 6 hatchling, 7 psutil, 8 pytest-cov-stub, 9 pytestCheckHook, 10 pythonOlder, 11 sybil, 12}: 13 14buildPythonPackage rec { 15 pname = "flufl-lock"; 16 version = "8.2.0"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.7"; 20 21 src = fetchPypi { 22 pname = "flufl_lock"; 23 inherit version; 24 hash = "sha256-FbMzw1+rGjayI4QAVyWK60zXnw+6+CwUTyPN9s8U1eM="; 25 }; 26 27 build-system = [ hatchling ]; 28 29 dependencies = [ 30 atpublic 31 psutil 32 ]; 33 34 nativeCheckInputs = [ 35 pytestCheckHook 36 pytest-cov-stub 37 sybil 38 ]; 39 40 # disable code coverage checks for all OS. Upstream does not enforce these 41 # checks on Darwin, and code coverage cannot be improved downstream nor is it 42 # relevant to the user. 43 pytestFlags = [ "--no-cov" ]; 44 45 pythonImportsCheck = [ "flufl.lock" ]; 46 47 pythonNamespaces = [ "flufl" ]; 48 49 meta = with lib; { 50 description = "NFS-safe file locking with timeouts for POSIX and Windows"; 51 homepage = "https://flufllock.readthedocs.io/"; 52 changelog = "https://gitlab.com/warsaw/flufl.lock/-/blob/${version}/docs/NEWS.rst"; 53 license = licenses.asl20; 54 maintainers = with maintainers; [ qyliss ]; 55 }; 56}