1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, marshmallow
5, marshmallow-enum
6, pytestCheckHook
7, pythonOlder
8, typeguard
9, typing-inspect
10}:
11
12buildPythonPackage rec {
13 pname = "marshmallow-dataclass";
14 version = "8.5.3";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.6";
18
19 src = fetchFromGitHub {
20 owner = "lovasoa";
21 repo = "marshmallow_dataclass";
22 rev = "v${version}";
23 sha256 = "0mngkjfs2nxxr0y77n429hb22rmjxbnn95j4vwqr9y6q16bqxs0w";
24 };
25
26 propagatedBuildInputs = [
27 marshmallow
28 typing-inspect
29 ];
30
31 checkInputs = [
32 marshmallow-enum
33 pytestCheckHook
34 typeguard
35 ];
36
37 pythonImportsCheck = [ "marshmallow_dataclass" ];
38
39 meta = with lib; {
40 description = "Automatic generation of marshmallow schemas from dataclasses";
41 homepage = "https://github.com/lovasoa/marshmallow_dataclass";
42 license = with licenses; [ mit ];
43 maintainers = with maintainers; [ fab ];
44 };
45}