From 6fec5aac83e7ad4206050fab82d8e913a8f657bf Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 3 Mar 2019 14:23:27 +0100 Subject: [PATCH] pythonPackages.face_recognition: 1.2.2 -> 1.2.3 There's no git tag for 1.2.3, hence we need to pin to the corresponding revision because we build from a git source. After recent breakage on Hydra[1], the tests were disabled. Although some build machines don't support AVX, we shouldn't use a DLib without AVX as the builder's result is also used on modern machines with AVX support. Before merging changes, maintainers should run the check phase locally in a `nix-shell`. [1] https://hydra.nixos.org/build/89533530 --- .../python-modules/face_recognition/default.nix | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/face_recognition/default.nix b/pkgs/development/python-modules/face_recognition/default.nix index b532c7d19f73cb..2856eeeab1b94d 100644 --- a/pkgs/development/python-modules/face_recognition/default.nix +++ b/pkgs/development/python-modules/face_recognition/default.nix @@ -4,13 +4,13 @@ buildPythonPackage rec { pname = "face_recognition"; - version = "1.2.2"; + version = "1.2.3"; src = fetchFromGitHub { repo = pname; owner = "ageitgey"; - rev = "v${version}"; - sha256 = "17jnyr80j1p74gyvh1jabvwd3zsxvip2y7cjhh2g6gsjv2dpvrjv"; + rev = "634db2e4309a365cee2503cb65d6f2e88f519d1e"; + sha256 = "06zw5hq417d5yp17zynhxhb73074lx2qy64fqfzf711rw5vrn2mx"; }; postPatch = '' @@ -19,6 +19,15 @@ buildPythonPackage rec { propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ]; + # Our dlib is compiled with AVX instructions by default which breaks + # with "Illegal instruction" on some builders due to missing hardware features. + # + # As this makes the build fairly unreliable, it's better to skip the test and to ensure that + # the build is working and after each change to the package, manual testing should be done. + doCheck = false; + + # Although tests are disabled by default, checkPhase still exists, so + # maintainers can check the package's functionality locally before modifying it. checkInputs = [ flake8 pytest glibcLocales ]; checkPhase = '' LC_ALL="en_US.UTF-8" py.test