1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 deprecated,
6 importlib-metadata,
7 pydantic_1,
8 ruamel-yaml,
9 semver,
10 types-deprecated,
11 setuptools,
12 setuptools-scm,
13 pytest-mock,
14 pytestCheckHook,
15}:
16
17buildPythonPackage rec {
18 pname = "pydantic_yaml-0";
19 # nixpkgs-update: no auto update
20 version = "0.11.2";
21
22 pyproject = true;
23
24 src = fetchFromGitHub {
25 owner = "NowanIlfideme";
26 repo = "pydantic-yaml";
27 rev = "refs/tags/v${version}";
28 hash = "sha256-AeUyVav0/k4Fz69Qizn4hcJKoi/CDR9eUan/nJhWsDY=";
29 };
30
31 postPatch = ''
32 substituteInPlace src/pydantic_yaml/version.py \
33 --replace-fail "0.0.0" "${version}"
34 '';
35
36 nativeBuildInputs = [
37 setuptools
38 setuptools-scm
39 ];
40
41 propagatedBuildInputs = [
42 deprecated
43 importlib-metadata
44 pydantic_1
45 ruamel-yaml
46 semver
47 types-deprecated
48 ];
49
50 pythonImportsCheck = [ "pydantic_yaml" ];
51
52 nativeCheckInputs = [
53 pytest-mock
54 pytestCheckHook
55 ];
56
57 meta = {
58 description = "A small helper library that adds some YAML capabilities to pydantic";
59 homepage = "https://github.com/NowanIlfideme/pydantic-yaml";
60 changelog = "https://github.com/NowanIlfideme/pydantic-yaml/releases/tag/v${version}";
61 license = lib.licenses.mit;
62 maintainers = with lib.maintainers; [ jnsgruk ];
63 };
64}