at master 1.4 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 # dependencies 7 cached-property, 8 ckzg, 9 eth-bloom, 10 eth-keys, 11 eth-typing, 12 eth-utils, 13 lru-dict, 14 pydantic, 15 py-ecc, 16 rlp, 17 trie, 18 # nativeCheckInputs 19 factory-boy, 20 hypothesis, 21 pytestCheckHook, 22 pytest-xdist, 23 eth-hash, 24}: 25 26buildPythonPackage rec { 27 pname = "py-evm"; 28 version = "0.12.1-beta.1"; 29 pyproject = true; 30 31 src = fetchFromGitHub { 32 owner = "ethereum"; 33 repo = "py-evm"; 34 tag = "v${version}"; 35 hash = "sha256-n2F0ApdmIED0wrGuNN45lyb7cGu8pRn8mLDehT7Ru9E="; 36 }; 37 38 build-system = [ setuptools ]; 39 40 dependencies = [ 41 cached-property 42 ckzg 43 eth-bloom 44 eth-keys 45 eth-typing 46 eth-utils 47 lru-dict 48 pydantic 49 py-ecc 50 rlp 51 trie 52 ]; 53 54 nativeCheckInputs = [ 55 factory-boy 56 hypothesis 57 pytestCheckHook 58 pytest-xdist 59 ] 60 ++ eth-hash.optional-dependencies.pycryptodome; 61 62 disabledTests = [ 63 # side-effect: runs pip online check and is blocked by sandbox 64 "test_install_local_wheel" 65 ]; 66 67 disabledTestPaths = [ 68 # json-fixtures require fixture submodule and execution spec 69 "tests/json-fixtures" 70 ]; 71 72 pythonImportsCheck = [ "eth" ]; 73 74 meta = { 75 description = "Python implementation of the Ethereum Virtual Machine"; 76 homepage = "https://github.com/ethereum/py-evm"; 77 license = lib.licenses.mit; 78 maintainers = with lib.maintainers; [ hellwolf ]; 79 }; 80}