biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / development / python-modules / mashumaro / default.nix
blob0cab2ca8dd70b2205e74e504ece31b3e985984bc
2   lib,
3   buildPythonPackage,
4   ciso8601,
5   fetchFromGitHub,
6   msgpack,
7   orjson,
8   pendulum,
9   pytest-mock,
10   pytestCheckHook,
11   pythonOlder,
12   pyyaml,
13   setuptools,
14   tomli,
15   tomli-w,
16   typing-extensions,
19 buildPythonPackage rec {
20   pname = "mashumaro";
21   version = "3.13.1";
22   pyproject = true;
24   disabled = pythonOlder "3.8";
26   src = fetchFromGitHub {
27     owner = "Fatal1ty";
28     repo = "mashumaro";
29     rev = "refs/tags/v${version}";
30     hash = "sha256-Km3RuDU77L3N2RQBhpcEztOjYtQhTXFZoGKu70g5EPU=";
31   };
33   nativeBuildInputs = [ setuptools ];
35   propagatedBuildInputs = [ typing-extensions ];
37   optional-dependencies = {
38     orjson = [ orjson ];
39     msgpack = [ msgpack ];
40     yaml = [ pyyaml ];
41     toml = [ tomli-w ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
42   };
44   nativeCheckInputs = [
45     ciso8601
46     pendulum
47     pytest-mock
48     pytestCheckHook
49   ] ++ lib.flatten (lib.attrValues optional-dependencies);
51   pythonImportsCheck = [ "mashumaro" ];
53   meta = with lib; {
54     description = "Serialization library on top of dataclasses";
55     homepage = "https://github.com/Fatal1ty/mashumaro";
56     changelog = "https://github.com/Fatal1ty/mashumaro/releases/tag/v${version}";
57     license = licenses.asl20;
58     maintainers = with maintainers; [ tjni ];
59   };