Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 babel, 4 buildPythonPackage, 5 django, 6 djangorestframework, 7 fetchFromGitHub, 8 gettext, 9 phonenumbers, 10 phonenumberslite, 11 python, 12 pythonOlder, 13 setuptools-scm, 14}: 15 16buildPythonPackage rec { 17 pname = "django-phonenumber-field"; 18 version = "8.0.0"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.8"; 22 23 src = fetchFromGitHub { 24 owner = "stefanfoulis"; 25 repo = "django-phonenumber-field"; 26 tag = version; 27 hash = "sha256-l+BAh7QYGN0AgDHICvlQnBYAcpEn8acu+JBmoo85kF0="; 28 }; 29 30 build-system = [ setuptools-scm ]; 31 32 # Upstream doesn't put phonenumbers in dependencies but the package doesn't 33 # make sense without either of the two optional dependencies. Since, in 34 # Nixpkgs, phonenumberslite depends on phonenumbers, add the latter 35 # unconditionally. 36 dependencies = [ django ] ++ optional-dependencies.phonenumbers; 37 38 nativeCheckInputs = [ 39 babel 40 djangorestframework 41 ]; 42 43 nativeBuildInputs = [ gettext ]; 44 45 pythonImportsCheck = [ "phonenumber_field" ]; 46 47 checkPhase = '' 48 ${python.interpreter} -m django test --settings tests.settings 49 ''; 50 51 preBuild = '' 52 ${python.interpreter} -m django compilemessages 53 ''; 54 55 optional-dependencies = { 56 phonenumbers = [ phonenumbers ]; 57 phonenumberslite = [ phonenumberslite ]; 58 }; 59 60 meta = with lib; { 61 description = "Django model and form field for normalised phone numbers using python-phonenumbers"; 62 homepage = "https://github.com/stefanfoulis/django-phonenumber-field/"; 63 changelog = "https://github.com/stefanfoulis/django-phonenumber-field/releases/tag/${version}"; 64 license = licenses.mit; 65 maintainers = with maintainers; [ sephi ]; 66 }; 67}