1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, hatchling
5, pydantic
6, python-dotenv
7, pytestCheckHook
8, pytest-examples
9, pytest-mock
10}:
11
12buildPythonPackage rec {
13 pname = "pydantic-settings";
14 version = "2.0.3";
15 format = "pyproject";
16
17 src = fetchFromGitHub {
18 owner = "pydantic";
19 repo = "pydantic-settings";
20 rev = "v${version}";
21 hash = "sha256-3V6daCibvVr8RKo2o+vHC++QgIYKAOyRg11ATrCzM5Y=";
22 };
23
24 nativeBuildInputs = [
25 hatchling
26 ];
27
28 propagatedBuildInputs = [
29 pydantic
30 python-dotenv
31 ];
32
33 pythonImportsCheck = [ "pydantic_settings" ];
34
35 nativeCheckInputs = [
36 pytestCheckHook
37 pytest-examples
38 pytest-mock
39 ];
40
41 preCheck = ''
42 export HOME=$TMPDIR
43 '';
44
45 meta = with lib; {
46 description = "Settings management using pydantic";
47 homepage = "https://github.com/pydantic/pydantic-settings";
48 license = licenses.mit;
49 broken = lib.versionOlder pydantic.version "2.0.0";
50 maintainers = with maintainers; [ ];
51 };
52}