nixpkgs/pkgs/development/python-modules/jq/default.nix
2024-05-22 17:32:03 +02:00

56 lines
1.1 KiB
Nix

{
lib,
buildPythonPackage,
cython,
fetchFromGitHub,
jq,
oniguruma,
pytestCheckHook,
pythonOlder,
}:
buildPythonPackage rec {
pname = "jq";
version = "1.6.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "mwilliamson";
repo = "jq.py";
rev = "refs/tags/${version}";
hash = "sha256-c6tJI/mPlBGIYTk5ObIQ1CUTq73HouQ2quMZVWG8FFg=";
};
env.JQPY_USE_SYSTEM_LIBS = 1;
nativeBuildInputs = [ cython ];
buildInputs = [
jq
oniguruma
];
preBuild = ''
cython jq.pyx
'';
nativeCheckInputs = [ pytestCheckHook ];
disabledTests = [
# intentional behavior change in jq 1.7.1 not reflected upstream
"test_given_json_text_then_strings_containing_null_characters_are_preserved"
];
pythonImportsCheck = [ "jq" ];
meta = with lib; {
description = "Python bindings for jq, the flexible JSON processor";
homepage = "https://github.com/mwilliamson/jq.py";
changelog = "https://github.com/mwilliamson/jq.py/blob/${version}/CHANGELOG.rst";
license = licenses.bsd2;
maintainers = with maintainers; [ benley ];
};
}