1{ stdenv
2, lib
3, buildPythonPackage
4, fetchPypi
5, wasmer
6, wasmer-compiler-cranelift
7, py
8, pytestCheckHook
9, pytest-benchmark
10}:
11
12buildPythonPackage rec {
13 pname = "fastdiff";
14 version = "0.3.0";
15
16 src = fetchPypi {
17 inherit pname version;
18 sha256 = "4dfa09c47832a8c040acda3f1f55fc0ab4d666f0e14e6951e6da78d59acd945a";
19 };
20
21 postPatch = ''
22 substituteInPlace setup.py \
23 --replace 'pytest-runner' ""
24 substituteInPlace setup.cfg \
25 --replace "collect_ignore = ['setup.py']" ""
26 '';
27
28 propagatedBuildInputs = [
29 wasmer
30 wasmer-compiler-cranelift
31 ];
32
33 nativeCheckInputs = [
34 py
35 pytestCheckHook
36 pytest-benchmark
37 ];
38
39 pytestFlagsArray = [
40 "--benchmark-skip"
41 ];
42
43 pythonImportsCheck = [
44 "fastdiff"
45 ];
46
47 meta = with lib; {
48 description = "A fast native implementation of diff algorithm with a pure Python fallback";
49 homepage = "https://github.com/syrusakbary/fastdiff";
50 license = licenses.mit;
51 maintainers = with maintainers; [ ];
52 # resulting compiled object panics at import
53 broken = stdenv.is32bit;
54 };
55}