1{ lib
2, buildPythonPackage
3, dj-database-url
4, dj-email-url
5, dj-search-url
6, django
7, django-cache-url
8, fetchPypi
9, importlib-metadata
10, mock
11, pythonOlder
12, setuptools-scm
13}:
14
15buildPythonPackage rec {
16 pname = "django-configurations";
17 version = "2.5";
18 format = "setuptools";
19
20 disabled = pythonOlder "3.6";
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-Y/olLEDciOoXuLkPX0oxonJuWGrLH/Dtx0wijGHxnl0=";
25 };
26
27 buildInputs = [
28 setuptools-scm
29 ];
30
31 propagatedBuildInputs = [
32 django
33 ] ++ lib.optionals (pythonOlder "3.8") [
34 importlib-metadata
35 ];
36
37 nativeCheckInputs = [
38 mock
39 dj-database-url
40 dj-email-url
41 dj-search-url
42 django-cache-url
43 ];
44
45 checkPhase = ''
46 export PYTHONPATH=.:$PYTHONPATH
47 export DJANGO_SETTINGS_MODULE="tests.settings.main"
48 export DJANGO_CONFIGURATION="Test"
49 ${django}/bin/django-admin.py test
50 '';
51
52 # django.core.exceptions.ImproperlyConfigured: django-configurations settings importer wasn't correctly installed
53 doCheck = false;
54
55 pythonImportsCheck = [
56 "configurations"
57 ];
58
59 meta = with lib; {
60 description = "A helper for organizing Django settings";
61 homepage = "https://django-configurations.readthedocs.io/";
62 license = licenses.bsd0;
63 maintainers = with maintainers; [ ];
64 };
65}