1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pythonOlder,
6
7 # build-system
8 setuptools,
9 setuptools-scm,
10
11 # dependencies
12 redis,
13
14 # tests
15 pygments,
16 pytestCheckHook,
17}:
18
19buildPythonPackage rec {
20 pname = "portalocker";
21 version = "3.1.1";
22 pyproject = true;
23
24 disabled = pythonOlder "3.7";
25
26 src = fetchPypi {
27 inherit pname version;
28 hash = "sha256-7CD23aKtnOifo5ml8x9PFJX1FZWPDLfKZUPO97tadJ4=";
29 };
30
31 postPatch = ''
32 sed -i "/--cov/d" pytest.ini
33 '';
34
35 nativeBuildInputs = [
36 setuptools
37 setuptools-scm
38 ];
39
40 propagatedBuildInputs = [ redis ];
41
42 nativeCheckInputs = [
43 pygments
44 pytestCheckHook
45 ];
46
47 pythonImportsCheck = [ "portalocker" ];
48
49 meta = with lib; {
50 changelog = "https://github.com/wolph/portalocker/releases/tag/v${version}";
51 description = "Library to provide an easy API to file locking";
52 homepage = "https://github.com/WoLpH/portalocker";
53 license = licenses.psfl;
54 maintainers = [ ];
55 };
56}