Files
nixpkgs/pkgs/development/python-modules/oddsprout/default.nix
T
2025-01-04 00:19:17 +01:00

61 lines
1.4 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch2,
poetry-core,
pytestCheckHook,
pythonOlder,
dahlia,
ixia,
}:
buildPythonPackage rec {
pname = "oddsprout";
version = "0.1.1";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "trag1c";
repo = "oddsprout";
tag = "v${version}";
hash = "sha256-BOUYq4yny3ScgzCzx2cpeK4e7nxxwTj8mJ42nr59mFA=";
};
build-system = [ poetry-core ];
dependencies = [
dahlia
ixia
];
patches = [
# https://github.com/trag1c/oddsprout/pull/8
(fetchpatch2 {
name = "allow-periods-in-path.patch";
url = "https://github.com/trag1c/oddsprout/commit/59713a797e7748d48f59f92397981c93a81f2c28.patch";
hash = "sha256-GAIQQi5s4D6KbTSgmP2hlBizLATxtJ/hzpWqPX4O0U4=";
})
];
# has one test `test_main_recursion_error`
# that has a very low (~1%) but nonzero chance to fail,
# this is known upstream (https://github.com/trag1c/oddsprout/issues/5)
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "oddsprout" ];
meta = with lib; {
changelog = "https://github.com/trag1c/oddsprout/blob/${src.rev}/CHANGELOG.md";
description = "Generate random JSON with no schemas involved";
license = licenses.mit;
homepage = "https://trag1c.github.io/oddsprout";
maintainers = with maintainers; [
itepastra
sigmanificient
];
};
}