From 4bb114b04becbf7b9d9a5a5c4bd87acf20250f99 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 9 Oct 2024 11:16:22 +0200 Subject: [PATCH] python312Packages.pymbolic: refactor --- .../python-modules/pymbolic/default.nix | 33 ++++++++++++++----- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/pymbolic/default.nix b/pkgs/development/python-modules/pymbolic/default.nix index bc5292e6d15e..b68bf1c6ef16 100644 --- a/pkgs/development/python-modules/pymbolic/default.nix +++ b/pkgs/development/python-modules/pymbolic/default.nix @@ -1,18 +1,23 @@ { lib, + astunparse, buildPythonPackage, - fetchPypi, fetchpatch, + fetchPypi, + immutabledict, matchpy, + numpy, pytestCheckHook, pythonOlder, pytools, + setuptools, + typing-extensions, }: buildPythonPackage rec { pname = "pymbolic"; version = "2022.2"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.7"; @@ -29,24 +34,34 @@ buildPythonPackage rec { }) ]; - propagatedBuildInputs = [ pytools ]; - - nativeCheckInputs = [ - matchpy - pytestCheckHook - ]; - postPatch = '' # pytest is a test requirement not a run-time one substituteInPlace setup.py \ --replace '"pytest>=2.3",' "" ''; + build-system = [ setuptools ]; + + dependencies = [ + astunparse + immutabledict + pytools + typing-extensions + ]; + + optional-dependencies = { + matchpy = [ matchpy ]; + numpy = [ numpy ]; + }; + + nativeCheckInputs = [ pytestCheckHook ] ++ lib.flatten (builtins.attrValues optional-dependencies); + pythonImportsCheck = [ "pymbolic" ]; meta = with lib; { description = "Package for symbolic computation"; homepage = "https://documen.tician.de/pymbolic/"; + changelog = "https://github.com/inducer/pymbolic/releases/tag/v${version}"; license = licenses.mit; maintainers = [ ]; };