depot/third_party/nixpkgs/pkgs/development/python-modules/pykwalify/default.nix

68 lines
1.8 KiB
Nix

{
lib,
buildPythonPackage,
fetchpatch,
python-dateutil,
docopt,
fetchPypi,
pytestCheckHook,
ruamel-yaml,
testfixtures,
}:
buildPythonPackage rec {
version = "1.8.0";
format = "setuptools";
pname = "pykwalify";
src = fetchPypi {
inherit pname version;
hash = "sha256-eWsq0+1MuZuIMItTP7L1WcMPpu+0+p/aETR/SD0kWIQ=";
};
patches = [
# fix test failures with ruamel.yaml 0.18+
(fetchpatch {
name = "pykwalify-fix-tests-ruamel-yaml-0.18.patch";
url = "https://github.com/Grokzen/pykwalify/commit/57bb2ba5c28b6928edb3f07ef581a5a807524baf.diff";
hash = "sha256-XUiebDzFSvNrPpRMoc2lv9m+30cfFh0N0rznMiSdQ/0=";
})
];
propagatedBuildInputs = [
python-dateutil
docopt
ruamel-yaml
];
nativeCheckInputs = [
pytestCheckHook
testfixtures
];
pythonImportsCheck = [ "pykwalify" ];
meta = with lib; {
homepage = "https://github.com/Grokzen/pykwalify";
description = "YAML/JSON validation library";
mainProgram = "pykwalify";
longDescription = ''
This framework is a port with a lot of added functionality
of the Java version of the framework kwalify that can be found at
http://www.kuwata-lab.com/kwalify/
The original source code can be found at
http://sourceforge.net/projects/kwalify/files/kwalify-java/0.5.1/
The source code of the latest release that has been used can be found at
https://github.com/sunaku/kwalify.
Please note that source code is not the original authors code
but a fork/upload of the last release available in Ruby.
The schema this library is based on and extended from:
http://www.kuwata-lab.com/kwalify/ruby/users-guide.01.html#schema
'';
license = licenses.mit;
maintainers = with maintainers; [ siriobalmelli ];
};
}