1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytestCheckHook,
6 poetry-core,
7 poetry-dynamic-versioning,
8}:
9
10buildPythonPackage rec {
11 pname = "interface-meta";
12 version = "1.3.0";
13
14 format = "pyproject";
15
16 src = fetchFromGitHub {
17 owner = "matthewwardrop";
18 repo = "interface_meta";
19 rev = "v${version}";
20 sha256 = "0rzh11wnab33b11391vc2ynf8ncxn22b12wn46lmgkrc5mqza8hd";
21 };
22
23 patches = [ ./0001-fix-version.patch ];
24
25 nativeBuildInputs = [ poetry-core ];
26
27 propagatedBuildInputs = [ poetry-dynamic-versioning ];
28
29 pythonImportsCheck = [ "interface_meta" ];
30
31 checkInputs = [ pytestCheckHook ];
32
33 meta = {
34 homepage = "https://github.com/matthewwardrop/interface_meta";
35 description = "Convenient way to expose an extensible API with enforced method signatures and consistent documentation";
36 license = lib.licenses.mit;
37 maintainers = with lib.maintainers; [ swflint ];
38 };
39}