1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 pytestCheckHook,
7}:
8
9buildPythonPackage rec {
10 pname = "merkletools";
11 version = "1.0.3";
12 format = "setuptools";
13
14 disabled = pythonOlder "3.7";
15
16 src = fetchFromGitHub {
17 owner = "Tierion";
18 repo = "pymerkletools";
19 tag = version;
20 hash = "sha256-pd7Wxi7Sk95RcrFOTOtl725nIXidva3ftdKSGxHYPTA=";
21 };
22
23 postPatch = ''
24 # pysha3 is deprecated and not needed for Python > 3.6
25 substituteInPlace setup.py \
26 --replace "install_requires=install_requires" "install_requires=[],"
27 '';
28
29 checkInputs = [ pytestCheckHook ];
30
31 pythonImportsCheck = [ "merkletools" ];
32
33 meta = with lib; {
34 description = "Python tools for creating Merkle trees, generating Merkle proofs, and verification of Merkle proofs";
35 homepage = "https://github.com/Tierion/pymerkletools";
36 changelog = "https://github.com/Tierion/pymerkletools/releases/tag/${version}";
37 license = licenses.mit;
38 };
39}