From 45cc8ee56265cb721a5e64e3bc794e33361eb390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 21 Jan 2025 16:24:43 -0800 Subject: [PATCH] python313Packages.bpython: 0.24 -> 0.25 Changelog: https://github.com/bpython/bpython/blob/0.25/CHANGELOG.rst --- .../python-modules/bpython/default.nix | 52 +++++++++++-------- 1 file changed, 29 insertions(+), 23 deletions(-) diff --git a/pkgs/development/python-modules/bpython/default.nix b/pkgs/development/python-modules/bpython/default.nix index 15f562185e1b..51656522a36b 100644 --- a/pkgs/development/python-modules/bpython/default.nix +++ b/pkgs/development/python-modules/bpython/default.nix @@ -1,63 +1,69 @@ { lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, curtsies, cwcwidth, greenlet, jedi, pygments, pytestCheckHook, - pythonOlder, pyperclip, pyxdg, requests, - typing-extensions, + setuptools, urwid, watchdog, }: buildPythonPackage rec { pname = "bpython"; - version = "0.24"; - format = "setuptools"; + version = "0.25"; + pyproject = true; - disabled = pythonOlder "3.7"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-mHNv/XqMSP0r+1PYmKR19CQb3gtnISVwavBNnQj9Pb0="; + src = fetchFromGitHub { + owner = "bpython"; + repo = "bpython"; + tag = version; + hash = "sha256-p5+IQiHNRRazqr+WRdx3Yw+ImG25tdZGLXvMf7woD9w="; }; - propagatedBuildInputs = [ + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'version = "unknown"' 'version = "${version}"' + ''; + + build-system = [ setuptools ]; + + dependencies = [ curtsies cwcwidth greenlet - jedi pygments - pyperclip pyxdg requests - typing-extensions - urwid - watchdog ]; + optional-dependencies = { + clipboard = [ pyperclip ]; + jedi = [ jedi ]; + urwid = [ urwid ]; + watch = [ watchdog ]; + }; + postInstall = '' substituteInPlace "$out/share/applications/org.bpython-interpreter.bpython.desktop" \ - --replace "Exec=/usr/bin/bpython" "Exec=$out/bin/bpython" + --replace "Exec=/usr/bin/bpython" "Exec=bpython" ''; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytestCheckHook + ] ++ lib.flatten (lib.attrValues optional-dependencies); pythonImportsCheck = [ "bpython" ]; - disabledTests = [ - # Check for syntax error ends with an AssertionError - "test_syntaxerror" - ]; - meta = with lib; { + changelog = "https://github.com/bpython/bpython/blob/${src.tag}/CHANGELOG.rst"; description = "Fancy curses interface to the Python interactive interpreter"; homepage = "https://bpython-interpreter.org/"; license = licenses.mit;