1{
2 lib,
3 stdenv,
4 buildPythonPackage,
5 fetchPypi,
6 jaraco-classes,
7 more-itertools,
8 pytestCheckHook,
9 setuptools-scm,
10 setuptools,
11 pythonOlder,
12}:
13
14buildPythonPackage rec {
15 pname = "jaraco-functools";
16 version = "4.2.1";
17 pyproject = true;
18
19 disabled = pythonOlder "3.8";
20
21 src = fetchPypi {
22 pname = "jaraco_functools";
23 inherit version;
24 hash = "sha256-vmNKv8yrzlb6MFP4x+vje2gmg6Tud5NnDO0XurAIc1M=";
25 };
26
27 postPatch = ''
28 sed -i "/coherent\.licensed/d" pyproject.toml
29 '';
30
31 build-system = [
32 setuptools
33 setuptools-scm
34 ];
35
36 dependencies = [ more-itertools ];
37
38 nativeCheckInputs = [
39 jaraco-classes
40 pytestCheckHook
41 ];
42
43 # test is flaky on darwin
44 disabledTests = if stdenv.hostPlatform.isDarwin then [ "test_function_throttled" ] else null;
45
46 pythonNamespaces = [ "jaraco" ];
47
48 pythonImportsCheck = [ "jaraco.functools" ];
49
50 meta = with lib; {
51 description = "Additional functools in the spirit of stdlib's functools";
52 homepage = "https://github.com/jaraco/jaraco.functools";
53 changelog = "https://github.com/jaraco/jaraco.functools/blob/v${version}/NEWS.rst";
54 license = licenses.mit;
55 maintainers = [ ];
56 };
57}