diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index fec7d7b6a6dd..cee29c5eba63 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -61,7 +61,9 @@ buildPythonPackage rec { pytest-asyncio sqlalchemy trio - ] ++ passlib.optional-dependencies.bcrypt; + ] + ++ passlib.optional-dependencies.bcrypt + ++ pydantic.optional-dependencies.email; pytestFlagsArray = [ # ignoring deprecation warnings to avoid test failure from diff --git a/pkgs/development/python-modules/pydantic-scim/default.nix b/pkgs/development/python-modules/pydantic-scim/default.nix new file mode 100644 index 000000000000..06a08cb445af --- /dev/null +++ b/pkgs/development/python-modules/pydantic-scim/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pydantic +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "pydantic-scim"; + version = "0.0.7"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "chalk-ai"; + repo = "pydantic-scim"; + rev = "refs/tags/v${version}"; + hash = "sha256-F+uj7kSz6iSb0Vg00VfJ5GcxghooNDKa75S/ZgU7WgI="; + }; + + nativeBuildInputs = [ + setuptools-scm + ]; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + postPatch = '' + substituteInPlace setup.py \ + --replace 'version=get_version(),' 'version="${version}",' + ''; + + propagatedBuildInputs = [ + pydantic + ] ++ pydantic.optional-dependencies.email; + + pythonImportsCheck = [ + "pydanticscim" + ]; + + # no tests + doCheck = false; + + meta = with lib; { + description = "Pydantic types for SCIM"; + homepage = "https://github.com/chalk-ai/pydantic-scim"; + license = licenses.asl20; + maintainers = with maintainers; [ hexa ]; + }; +} diff --git a/pkgs/development/python-modules/pydantic/default.nix b/pkgs/development/python-modules/pydantic/default.nix index 2de8e95d8b20..3674c0d74974 100644 --- a/pkgs/development/python-modules/pydantic/default.nix +++ b/pkgs/development/python-modules/pydantic/default.nix @@ -31,7 +31,8 @@ buildPythonPackage rec { pname = "pydantic"; - version = "1.10.5"; + version = "1.10.7"; + format = "setuptools"; outputs = [ "out" @@ -45,7 +46,7 @@ buildPythonPackage rec { owner = "samuelcolvin"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-hcjnFqHTQiCIJh7L9JfpHHTm8GEZ+Vac6HO59cbEpWM="; + hash = "sha256-7X7rlHJ5Q01CuB9FZzoUfyfwx6AMXtE1BV5t+LnZKIM="; }; postPatch = '' @@ -75,16 +76,23 @@ buildPythonPackage rec { propagatedBuildInputs = [ devtools - email-validator pyupgrade - python-dotenv typing-extensions ]; + passthru.optional-dependencies = { + dotenv = [ + python-dotenv + ]; + email = [ + email-validator + ]; + }; + nativeCheckInputs = [ pytest-mock pytestCheckHook - ]; + ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies); pytestFlagsArray = [ # https://github.com/pydantic/pydantic/issues/4817 diff --git a/pkgs/development/python-modules/transmission-rpc/default.nix b/pkgs/development/python-modules/transmission-rpc/default.nix index 8ee18654ebed..937ff9b07d89 100644 --- a/pkgs/development/python-modules/transmission-rpc/default.nix +++ b/pkgs/development/python-modules/transmission-rpc/default.nix @@ -1,13 +1,13 @@ { lib , buildPythonPackage , fetchFromGitHub -, fetchPypi , poetry-core -, pydantic , pytestCheckHook , pythonOlder +, python-dotenv , pytz , requests +, typing-extensions , yarl }: @@ -30,11 +30,12 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - pydantic requests + typing-extensions ]; nativeCheckInputs = [ + python-dotenv pytz pytestCheckHook yarl diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 865fce36e3cd..ae99d6f30d0d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8152,6 +8152,8 @@ self: super: with self; { pydantic = callPackage ../development/python-modules/pydantic { }; + pydantic-scim = callPackage ../development/python-modules/pydantic-scim { }; + pydash = callPackage ../development/python-modules/pydash { }; pydata-google-auth = callPackage ../development/python-modules/pydata-google-auth { };