From 221464d5df7e0f5af986f4b873aed9fa2e886b10 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 11 Jan 2024 00:28:28 +0100 Subject: [PATCH 1/2] python311Packages.jinja2: 3.1.2 -> 3.1.3 https://github.com/pallets/jinja/releases/tag/3.1.3 https://github.com/pallets/jinja/security/advisories/GHSA-h5c8-rqwp-cp95 --- pkgs/development/python-modules/jinja2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jinja2/default.nix b/pkgs/development/python-modules/jinja2/default.nix index 1b154f90d386..836583136daa 100644 --- a/pkgs/development/python-modules/jinja2/default.nix +++ b/pkgs/development/python-modules/jinja2/default.nix @@ -15,13 +15,13 @@ buildPythonPackage rec { pname = "Jinja2"; - version = "3.1.2"; + version = "3.1.3"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-MTUacCpAip51laj8YVD8P0O7a/fjGXcMvA2535Q36FI="; + hash = "sha256-rIvWVE1Lssl5K/OhWegLuo/afwfoG8Ou1WVDLVklupA="; }; propagatedBuildInputs = [ From 0c56aff1f27dd769f38866ebdcb7b7e0ee002eb3 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 11 Jan 2024 00:43:54 +0100 Subject: [PATCH 2/2] python311Packages.jinja2: refactor - Use pep517 builder - Expose babel as i18n extra - Update meta --- .../python-modules/jinja2/default.nix | 78 ++++++++++--------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/pkgs/development/python-modules/jinja2/default.nix b/pkgs/development/python-modules/jinja2/default.nix index 836583136daa..1c260e37c7b0 100644 --- a/pkgs/development/python-modules/jinja2/default.nix +++ b/pkgs/development/python-modules/jinja2/default.nix @@ -9,79 +9,83 @@ , pytestCheckHook , sphinxHook , pallets-sphinx-themes +, setuptools , sphinxcontrib-log-cabinet , sphinx-issues }: buildPythonPackage rec { - pname = "Jinja2"; + pname = "jinja2"; version = "3.1.3"; + pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { - inherit pname version; + pname = "Jinja2"; + inherit version; hash = "sha256-rIvWVE1Lssl5K/OhWegLuo/afwfoG8Ou1WVDLVklupA="; }; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ - babel markupsafe ]; + passthru.optional-dependencies = { + i18n = [ + babel + ]; + }; + # Multiple tests run out of stack space on 32bit systems with python2. # See https://github.com/pallets/jinja/issues/1158 doCheck = !stdenv.is32bit; nativeCheckInputs = [ pytestCheckHook - ]; + ] ++ passthru.optional-dependencies.i18n; - pytestFlagsArray = [ - # Avoid failure due to deprecation warning - # Fixed in https://github.com/python/cpython/pull/28153 - # Remove after cpython 3.9.8 - "-p no:warnings" - ]; + passthru.doc = stdenv.mkDerivation { + # Forge look and feel of multi-output derivation as best as we can. + # + # Using 'outputs = [ "doc" ];' breaks a lot of assumptions. + name = "${pname}-${version}-doc"; + inherit src pname version; - passthru = { - doc = stdenv.mkDerivation { - # Forge look and feel of multi-output derivation as best as we can. - # - # Using 'outputs = [ "doc" ];' breaks a lot of assumptions. - name = "${pname}-${version}-doc"; - inherit src pname version; + patches = [ + # Fix import of "sphinxcontrib-log-cabinet" + ./patches/import-order.patch + ]; - patches = [ - # Fix import of "sphinxcontrib-log-cabinet" - ./patches/import-order.patch - ]; + postInstallSphinx = '' + mv $out/share/doc/* $out/share/doc/python$pythonVersion-$pname-$version + ''; - postInstallSphinx = '' - mv $out/share/doc/* $out/share/doc/python$pythonVersion-$pname-$version - ''; + nativeBuildInputs = [ + sphinxHook + sphinxcontrib-log-cabinet + pallets-sphinx-themes + sphinx-issues + ]; - nativeBuildInputs = [ - sphinxHook - sphinxcontrib-log-cabinet - pallets-sphinx-themes - sphinx-issues - ]; - - inherit (python) pythonVersion; - inherit meta; - }; + inherit (python) pythonVersion; + inherit meta; }; meta = with lib; { - homepage = "https://jinja.palletsprojects.com/"; - description = "Stand-alone template engine"; + changelog = "https://github.com/pallets/jinja/blob/${version}/CHANGES.rst"; + description = "Very fast and expressive template engine"; + downloadPage = "https://github.com/pallets/jinja"; + homepage = "https://jinja.palletsprojects.com"; license = licenses.bsd3; longDescription = '' Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to Python syntax. Then the template is passed data to render the final document. - an optional sandboxed environment. ''; maintainers = with maintainers; [ pierron ]; };