1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 flit-core,
6 packaging,
7 pytestCheckHook,
8 pythonOlder,
9 pytz,
10 simplejson,
11}:
12
13buildPythonPackage rec {
14 pname = "marshmallow";
15 version = "3.21.1";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "marshmallow-code";
22 repo = "marshmallow";
23 rev = "refs/tags/${version}";
24 hash = "sha256-KhXasYKooZRokRoFlWKOaQzSUe6tXDtUlrf65eGGUi8=";
25 };
26
27 nativeBuildInputs = [ flit-core ];
28
29 propagatedBuildInputs = [ packaging ];
30
31 nativeCheckInputs = [
32 pytestCheckHook
33 pytz
34 simplejson
35 ];
36
37 pythonImportsCheck = [ "marshmallow" ];
38
39 meta = with lib; {
40 description = "Library for converting complex objects to and from simple Python datatypes";
41 homepage = "https://github.com/marshmallow-code/marshmallow";
42 changelog = "https://github.com/marshmallow-code/marshmallow/blob/${version}/CHANGELOG.rst";
43 license = licenses.mit;
44 maintainers = with maintainers; [ cript0nauta ];
45 };
46}