From 95e6cb0de58c08f624d140be5bcbc4ea00528d39 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 11:48:57 -0700 Subject: [PATCH 1/6] python3Packages.pymupdf: 1.26.7 -> 1.27.1 Required some mypy-running tests to be disabled. --- pkgs/development/python-modules/pymupdf/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pymupdf/default.nix b/pkgs/development/python-modules/pymupdf/default.nix index 589b57f819a3..209680050eb3 100644 --- a/pkgs/development/python-modules/pymupdf/default.nix +++ b/pkgs/development/python-modules/pymupdf/default.nix @@ -44,14 +44,14 @@ let in buildPythonPackage rec { pname = "pymupdf"; - version = "1.26.7"; + version = "1.27.1"; pyproject = true; src = fetchFromGitHub { owner = "pymupdf"; repo = "PyMuPDF"; tag = version; - hash = "sha256-7OidTOG3KAx7EaQ3Bu4i1Fw007oXVAipBHeYNkmbIcA="; + hash = "sha256-Ebvdkvp0y7seG0sciMMnztflIBVRHh/Cowpw/lSLYLE="; }; patches = [ @@ -122,6 +122,7 @@ buildPythonPackage rec { "test_codespell" "test_pylint" "test_flake8" + "test_4751" # Upstream recommends disabling these when not using bundled MuPDF build "test_color_count" "test_3050" @@ -140,6 +141,9 @@ buildPythonPackage rec { disabledTestPaths = [ # mad about markdown table formatting "tests/test_tables.py::test_markdown" + + # Do not lint code + "tests/test_typing.py" ] ++ lib.optional stdenv.hostPlatform.isDarwin [ # Trace/BPT trap: 5 when getting widget options From bbdda46732fa0e5205a55db7133d262b79c72717 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 12:19:21 -0700 Subject: [PATCH 2/6] python3Packages.pymupdf: migrate to finalAttrs --- pkgs/development/python-modules/pymupdf/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pymupdf/default.nix b/pkgs/development/python-modules/pymupdf/default.nix index 209680050eb3..29ae26cd4837 100644 --- a/pkgs/development/python-modules/pymupdf/default.nix +++ b/pkgs/development/python-modules/pymupdf/default.nix @@ -42,7 +42,7 @@ let mupdf-cxx-lib = toPythonModule (lib.getLib mupdf-cxx); mupdf-cxx-dev = lib.getDev mupdf-cxx; in -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "pymupdf"; version = "1.27.1"; pyproject = true; @@ -50,7 +50,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "pymupdf"; repo = "PyMuPDF"; - tag = version; + tag = finalAttrs.version; hash = "sha256-Ebvdkvp0y7seG0sciMMnztflIBVRHh/Cowpw/lSLYLE="; }; @@ -168,9 +168,9 @@ buildPythonPackage rec { meta = { description = "Python bindings for MuPDF's rendering library"; homepage = "https://github.com/pymupdf/PyMuPDF"; - changelog = "https://github.com/pymupdf/PyMuPDF/releases/tag/${src.tag}"; + changelog = "https://github.com/pymupdf/PyMuPDF/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ sarahec ]; platforms = lib.platforms.unix; }; -} +}) From 5a7459df7f38023b7ac047e04231878bce3c217d Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 12:12:25 -0700 Subject: [PATCH 3/6] python3Packages.pymupdf4llm: 0.2.9 -> 0.3.4 --- .../python-modules/pymupdf4llm/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pymupdf4llm/default.nix b/pkgs/development/python-modules/pymupdf4llm/default.nix index 695dc03b962e..e0e1ad587f0b 100644 --- a/pkgs/development/python-modules/pymupdf4llm/default.nix +++ b/pkgs/development/python-modules/pymupdf4llm/default.nix @@ -4,25 +4,29 @@ fetchFromGitHub, setuptools, pymupdf, + tabulate, }: buildPythonPackage rec { pname = "pymupdf4llm"; - version = "0.2.9"; + version = "0.3.4"; pyproject = true; src = fetchFromGitHub { owner = "pymupdf"; repo = "RAG"; - tag = version; - hash = "sha256-iuffv49voZLiuabwhag+YC3j3Oa2IAevZtcJtMVzX/4="; + tag = "v${version}"; + hash = "sha256-SgJ47jkE6GcSXVsOMOx8Hm+Ce6pCAjLEhdxGeJEu6DQ="; }; sourceRoot = "${src.name}/pymupdf4llm"; build-system = [ setuptools ]; - dependencies = [ pymupdf ]; + dependencies = [ + pymupdf + tabulate + ]; checkPhase = '' runHook preCheck From 5b60a70ab24202af1ff3dfcecfa06f88accc641b Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 12:21:14 -0700 Subject: [PATCH 4/6] python3Packages.pymupdf4llm: migrate to finalAttrs --- .../development/python-modules/pymupdf4llm/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/pymupdf4llm/default.nix b/pkgs/development/python-modules/pymupdf4llm/default.nix index e0e1ad587f0b..b93929758c47 100644 --- a/pkgs/development/python-modules/pymupdf4llm/default.nix +++ b/pkgs/development/python-modules/pymupdf4llm/default.nix @@ -7,7 +7,7 @@ tabulate, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "pymupdf4llm"; version = "0.3.4"; pyproject = true; @@ -15,11 +15,11 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "pymupdf"; repo = "RAG"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-SgJ47jkE6GcSXVsOMOx8Hm+Ce6pCAjLEhdxGeJEu6DQ="; }; - sourceRoot = "${src.name}/pymupdf4llm"; + sourceRoot = "${finalAttrs.src.name}/pymupdf4llm"; build-system = [ setuptools ]; @@ -53,8 +53,8 @@ buildPythonPackage rec { meta = { description = "PyMuPDF Utilities for LLM/RAG - converts PDF pages to Markdown format for Retrieval-Augmented Generation"; homepage = "https://github.com/pymupdf/RAG"; - changelog = "https://github.com/pymupdf/RAG/blob/${src.tag}/CHANGES.md"; + changelog = "https://github.com/pymupdf/RAG/blob/${finalAttrs.src.tag}/CHANGES.md"; license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ ryota2357 ]; }; -} +}) From aa622fdef78316f8ff5b071c4e0a3a578d3cc645 Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 12:32:00 -0700 Subject: [PATCH 5/6] python3Packages.browsr: relax broken dependency --- pkgs/by-name/br/browsr/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/br/browsr/package.nix b/pkgs/by-name/br/browsr/package.nix index 6a1ab78df485..3b4ec6140b0a 100644 --- a/pkgs/by-name/br/browsr/package.nix +++ b/pkgs/by-name/br/browsr/package.nix @@ -77,6 +77,7 @@ python3Packages.buildPythonApplication rec { "rich-pixels" "rich" "textual" + "universal-pathlib" ]; pythonImportsCheck = [ From 8953237d19c96fe3477881993deb1726e295a11a Mon Sep 17 00:00:00 2001 From: Sarah Clark Date: Sun, 8 Mar 2026 12:35:01 -0700 Subject: [PATCH 6/6] python3Packages.browsr: migrate to finalAttrs --- pkgs/by-name/br/browsr/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/br/browsr/package.nix b/pkgs/by-name/br/browsr/package.nix index 3b4ec6140b0a..db45c39c6d68 100644 --- a/pkgs/by-name/br/browsr/package.nix +++ b/pkgs/by-name/br/browsr/package.nix @@ -6,7 +6,7 @@ extras ? [ "all" ], }: -python3Packages.buildPythonApplication rec { +python3Packages.buildPythonApplication (finalAttrs: { pname = "browsr"; version = "1.22.1"; pyproject = true; @@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec { src = fetchFromGitHub { owner = "juftin"; repo = "browsr"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-eISOADs++ZF62qkWbhFZu6JkEVtTytg3q5nbwS2m+8g="; }; @@ -46,7 +46,7 @@ python3Packages.buildPythonApplication rec { textual textual-universal-directorytree ] - ++ lib.attrVals extras optional-dependencies; + ++ lib.attrVals extras finalAttrs.passthru.optional-dependencies; optional-dependencies = with python3Packages; { all = [ @@ -96,8 +96,8 @@ python3Packages.buildPythonApplication rec { description = "File explorer in your terminal"; mainProgram = "browsr"; homepage = "https://juftin.com/browsr"; - changelog = "https://github.com/juftin/browsr/releases/tag/v${version}"; + changelog = "https://github.com/juftin/browsr/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = [ ]; }; -} +})