1{ lib
2, buildPythonPackage
3, fetchPypi
4, ruamel-base
5, ruamel-ordereddict
6, ruamel-yaml-clib ? null
7, isPy27
8, isPyPy
9}:
10
11buildPythonPackage rec {
12 pname = "ruamel-yaml";
13 version = "0.16.13";
14
15 src = fetchPypi {
16 pname = "ruamel.yaml";
17 inherit version;
18 sha256 = "0hm9yg785f46bkrgqknd6fdvmkby9dpzjnm0b63qf0i748acaj5v";
19 };
20
21 # Tests use relative paths
22 doCheck = false;
23
24 propagatedBuildInputs = [ ruamel-base ]
25 ++ lib.optional isPy27 ruamel-ordereddict
26 ++ lib.optional (!isPyPy) ruamel-yaml-clib;
27
28 # causes namespace clash on py27
29 dontUsePythonImportsCheck = isPy27;
30 pythonImportsCheck = [ "ruamel.yaml" ];
31
32 meta = with lib; {
33 description = "YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order";
34 homepage = "https://sourceforge.net/projects/ruamel-yaml/";
35 license = licenses.mit;
36 maintainers = with maintainers; [ SuperSandro2000 ];
37 };
38}