1{
2 lib,
3 attrs,
4 buildPythonPackage,
5 fetchPypi,
6 pytestCheckHook,
7 pythonOlder,
8 six,
9 testtools,
10}:
11
12buildPythonPackage rec {
13 pname = "effect";
14 version = "1.1.0";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchPypi {
20 inherit pname version;
21 hash = "sha256-ev+2A3B8ZIsHsReB67eTpLmu6KzxrFdkw+0hEq3wyeo=";
22 };
23
24 postPatch = ''
25 substituteInPlace effect/test_do.py \
26 --replace "py.test" "pytest"
27 '';
28
29 propagatedBuildInputs = [
30 attrs
31 six
32 ];
33
34 nativeCheckInputs = [ pytestCheckHook ];
35
36 checkInputs = [ testtools ];
37
38 pythonImportsCheck = [ "effect" ];
39
40 meta = with lib; {
41 description = "Pure effects for Python";
42 homepage = "https://effect.readthedocs.io/";
43 changelog = "https://github.com/python-effect/effect/releases/tag/${version}";
44 license = licenses.mit;
45 maintainers = [ ];
46 };
47}