1{ lib
2, buildPythonPackage
3, pythonOlder
4, fetchFromGitHub
5, cython
6, setuptools
7, libyaml
8, python
9}:
10
11buildPythonPackage rec {
12 pname = "pyyaml";
13 version = "6.0.1";
14
15 disabled = pythonOlder "3.6";
16
17 format = "pyproject";
18
19 src = fetchFromGitHub {
20 owner = "yaml";
21 repo = "pyyaml";
22 rev = version;
23 hash = "sha256-YjWMyMVDByLsN5vEecaYjHpR1sbBey1L/khn4oH9SPA=";
24 };
25
26 nativeBuildInputs = [
27 cython
28 setuptools
29 ];
30
31 buildInputs = [ libyaml ];
32
33 checkPhase = ''
34 runHook preCheck
35 PYTHONPATH="tests/lib:$PYTHONPATH" ${python.interpreter} -m test_all
36 runHook postCheck
37 '';
38
39 pythonImportsCheck = [ "yaml" ];
40
41 meta = with lib; {
42 description = "The next generation YAML parser and emitter for Python";
43 homepage = "https://github.com/yaml/pyyaml";
44 license = licenses.mit;
45 maintainers = with maintainers; [ dotlambda ];
46 };
47}