1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 # dependencies
7 typing-extensions,
8 # nativeCheckInputs
9 pytestCheckHook,
10 pytest-xdist,
11}:
12
13buildPythonPackage rec {
14 pname = "eth-typing";
15 version = "5.2.1";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "ethereum";
20 repo = "eth-typing";
21 tag = "v${version}";
22 hash = "sha256-w/xYqDmtlNs9dk4lTX0zxjdlUc7l7vi8ZnSE62W0m8o=";
23 };
24
25 build-system = [ setuptools ];
26
27 dependencies = [ typing-extensions ];
28
29 nativeCheckInputs = [
30 pytestCheckHook
31 pytest-xdist
32 ];
33
34 pythonImportsCheck = [ "eth_typing" ];
35
36 disabledTests = [
37 # side-effect: runs pip online check and is blocked by sandbox
38 "test_install_local_wheel"
39 ];
40
41 meta = {
42 description = "Common type annotations for Ethereum Python packages";
43 homepage = "https://github.com/ethereum/eth-typing";
44 changelog = "https://github.com/ethereum/eth-typing/blob/v${version}/docs/release_notes.rst";
45 license = lib.licenses.mit;
46 maintainers = with lib.maintainers; [ siraben ];
47 };
48}