python3Packages.pyssim: modernize (#395720)

Changed files
+11 -3
pkgs
development
python-modules
pyssim
+11 -3
pkgs/development/python-modules/pyssim/default.nix
···
pillow,
pywavelets,
fetchpatch,
+
setuptools,
}:
buildPythonPackage rec {
pname = "pyssim";
version = "0.7";
-
format = "setuptools";
+
pyproject = true;
+
+
build-system = [
+
setuptools
+
];
dependencies = [
numpy
···
# PyPI tarball doesn't contain test images so let's use GitHub
src = fetchFromGitHub {
owner = "jterrace";
-
repo = pname;
-
rev = "v${version}";
+
repo = "pyssim";
+
tag = "v${version}";
sha256 = "sha256-LDNIugQeRqNsAZ5ZxS/NxHokEAwefpfRutTRpR0IcXk=";
};
···
# Tests are copied from .github/workflows/python-package.yml
checkPhase = ''
+
runHook preCheck
$out/bin/pyssim test-images/test1-1.png test-images/test1-1.png | grep 1
$out/bin/pyssim test-images/test1-1.png test-images/test1-2.png | grep 0.998
$out/bin/pyssim test-images/test1-1.png "test-images/*" | grep -E " 1| 0.998| 0.672| 0.648" | wc -l | grep 4
$out/bin/pyssim --cw --width 128 --height 128 test-images/test1-1.png test-images/test1-1.png | grep 1
$out/bin/pyssim --cw --width 128 --height 128 test-images/test3-orig.jpg test-images/test3-rot.jpg | grep 0.938
+
runHook postCheck
'';
meta = {
description = "Module for computing Structured Similarity Image Metric (SSIM) in Python";
mainProgram = "pyssim";
homepage = "https://github.com/jterrace/pyssim";
+
changelog = "https://github.com/jterrace/pyssim/blob/${src.tag}/CHANGES.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ jluttine ];
};