diff --git a/pkgs/development/python-modules/django-phonenumber-field/default.nix b/pkgs/development/python-modules/django-phonenumber-field/default.nix index c568853b5186..a0fca5c7e68f 100644 --- a/pkgs/development/python-modules/django-phonenumber-field/default.nix +++ b/pkgs/development/python-modules/django-phonenumber-field/default.nix @@ -9,56 +9,61 @@ phonenumbers, phonenumberslite, python, + pytestCheckHook, + pytest-django, setuptools-scm, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "django-phonenumber-field"; - version = "8.4.0"; + version = "8.5.0"; pyproject = true; src = fetchFromGitHub { - owner = "stefanfoulis"; + owner = "django-phonenumber-field"; repo = "django-phonenumber-field"; - tag = version; - hash = "sha256-k6r+yy1o7pFJx/9yxI5AbsfRPIhycAc0oXBHyV0GHec="; + tag = finalAttrs.version; + hash = "sha256-hTrW7QeZPBsln9iHh9sV7JMQxdJ9cFcAq4ETyhxFGv0="; }; + nativeBuildInputs = [ gettext ]; + build-system = [ setuptools-scm ]; # Upstream doesn't put phonenumbers in dependencies but the package doesn't # make sense without either of the two optional dependencies. Since, in # Nixpkgs, phonenumberslite depends on phonenumbers, add the latter # unconditionally. - dependencies = [ django ] ++ optional-dependencies.phonenumbers; + dependencies = [ django ] ++ finalAttrs.passthru.optional-dependencies.phonenumbers; - nativeCheckInputs = [ - babel - djangorestframework - ]; - - nativeBuildInputs = [ gettext ]; - - pythonImportsCheck = [ "phonenumber_field" ]; - - checkPhase = '' - ${python.interpreter} -m django test --settings tests.settings - ''; + optional-dependencies = { + babel = [ babel ]; + phonenumbers = [ phonenumbers ]; + phonenumberslite = [ phonenumberslite ]; + }; preBuild = '' ${python.interpreter} -m django compilemessages ''; - optional-dependencies = { - phonenumbers = [ phonenumbers ]; - phonenumberslite = [ phonenumberslite ]; - }; + nativeCheckInputs = [ + djangorestframework + pytestCheckHook + pytest-django + ] + ++ lib.concatAttrValues finalAttrs.passthru.optional-dependencies; + + preCheck = '' + export DJANGO_SETTINGS_MODULE=tests.settings + ''; + + pythonImportsCheck = [ "phonenumber_field" ]; meta = { description = "Django model and form field for normalised phone numbers using python-phonenumbers"; - homepage = "https://github.com/stefanfoulis/django-phonenumber-field/"; - changelog = "https://github.com/stefanfoulis/django-phonenumber-field/releases/tag/${src.tag}"; + homepage = "https://github.com/django-phonenumber-field/django-phonenumber-field"; + changelog = "https://github.com/django-phonenumber-field/django-phonenumber-field/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ sephi ]; }; -} +})