diff --git a/pkgs/development/python-modules/django-flags/default.nix b/pkgs/development/python-modules/django-flags/default.nix new file mode 100644 index 000000000000..32213502950e --- /dev/null +++ b/pkgs/development/python-modules/django-flags/default.nix @@ -0,0 +1,63 @@ +{ + buildPythonPackage, + coverage, + django, + django-debug-toolbar, + fetchFromGitHub, + jinja2, + lib, + pytest-django, + pytestCheckHook, + setuptools-scm, + setuptools, + pythonOlder, +}: +buildPythonPackage rec { + pname = "django-flags"; + version = "5.0.14"; + pyproject = true; + + src = fetchFromGitHub { + owner = "cfpb"; + repo = "django-flags"; + tag = version; + hash = "sha256-0IOcpl8OamNlalqNqMvmx/bkuIkaNnLwCD7nFclR8S4="; + }; + + dependencies = [ + django + ]; + + disabled = pythonOlder "3.8"; + + build-system = [ + setuptools + setuptools-scm + ]; + doCheck = true; + preCheck = '' + export DJANGO_SETTINGS_MODULE=flags.tests.settings + ''; + pythonImportsCheck = [ "flags" ]; + nativeCheckInputs = [ + coverage + (django-debug-toolbar.overrideAttrs (old: rec { + version = "5.2.0"; + src = old.src.override { + tag = version; + hash = "sha256-/oWirfJaiHVRI1m3N1QveutX2sag8fjYqJYCZ8BnMa0="; + }; + })) + jinja2 + pytest-django + pytestCheckHook + ]; + + meta = with lib; { + description = "Feature flags for Django projects"; + homepage = "https://github.com/cfpb/django-flags"; + changelog = "https://github.com/cfpb/django-flags/releases/tag/${version}"; + license = licenses.cc0; + maintainers = with maintainers; [ kurogeek ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6dd6fd87045b..d58d01232417 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4174,6 +4174,8 @@ self: super: with self; { django-filter = callPackage ../development/python-modules/django-filter { }; + django-flags = callPackage ../development/python-modules/django-flags { }; + django-formset-js-improved = callPackage ../development/python-modules/django-formset-js-improved { };