1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, simpleeval
5, isPy27
6, coveralls
7}:
8
9buildPythonPackage rec {
10 pname = "casbin";
11 version = "0.8.3";
12
13 disabled = isPy27;
14
15 src = fetchFromGitHub {
16 owner = pname;
17 repo = "pycasbin";
18 rev = "v${version}";
19 sha256 = "1s89m62933m4wprsknwhabgg7irykrcimv80hh2zkyyslz5vbq71";
20 };
21
22 propagatedBuildInputs = [
23 simpleeval
24 ];
25
26 checkInputs = [
27 coveralls
28 ];
29
30 checkPhase = ''
31 coverage run -m unittest discover -s tests -t tests
32 '';
33
34 meta = with lib; {
35 description = "An authorization library that supports access control models like ACL, RBAC, ABAC in Python";
36 homepage = https://github.com/casbin/pycasbin;
37 license = licenses.asl20;
38 maintainers = [ maintainers.costrouc ];
39 };
40}