From c6f393b9dfd1b71b924616fc4cd4b1317325da9a Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 14:49:30 +0300 Subject: [PATCH 01/12] python312Packages.pybtex: no with lib; in meta --- pkgs/development/python-modules/pybtex/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix index 94df8e4f62bb..4b6170fe336c 100644 --- a/pkgs/development/python-modules/pybtex/default.nix +++ b/pkgs/development/python-modules/pybtex/default.nix @@ -26,9 +26,9 @@ buildPythonPackage rec { sha256 = "818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755"; }; - meta = with lib; { + meta = { homepage = "https://pybtex.org/"; description = "BibTeX-compatible bibliography processor written in Python"; - license = licenses.mit; + license = lib.licenses.mit; }; } From 6a058ea348a812862a07e5461eca6f01407a323d Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 14:49:56 +0300 Subject: [PATCH 02/12] python312Packages.pybtex: add meta.changelog --- pkgs/development/python-modules/pybtex/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix index 4b6170fe336c..c38171cc48ec 100644 --- a/pkgs/development/python-modules/pybtex/default.nix +++ b/pkgs/development/python-modules/pybtex/default.nix @@ -28,6 +28,7 @@ buildPythonPackage rec { meta = { homepage = "https://pybtex.org/"; + changelog = "https://bitbucket.org/pybtex-devs/pybtex/src/master/CHANGES"; description = "BibTeX-compatible bibliography processor written in Python"; license = lib.licenses.mit; }; From b92e4ee231c8bf26815a043a203b7246890e6459 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 14:51:10 +0300 Subject: [PATCH 03/12] python312Packages.pybtex: reorder inputs and arguments modernly --- .../python-modules/pybtex/default.nix | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix index c38171cc48ec..998b9ff606bf 100644 --- a/pkgs/development/python-modules/pybtex/default.nix +++ b/pkgs/development/python-modules/pybtex/default.nix @@ -2,30 +2,38 @@ lib, buildPythonPackage, fetchPypi, + + # build-system + setuptools, + + # dependencies latexcodec, pyyaml, - setuptools, }: buildPythonPackage rec { - version = "0.24.0"; - format = "setuptools"; pname = "pybtex"; - - doCheck = false; - pythonImportsCheck = [ "pybtex" ]; - - propagatedBuildInputs = [ - latexcodec - pyyaml - setuptools - ]; + version = "0.24.0"; + pyproject = true; src = fetchPypi { inherit version pname; sha256 = "818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755"; }; + build-system = [ + setuptools + ]; + + dependencies = [ + latexcodec + pyyaml + ]; + + pythonImportsCheck = [ "pybtex" ]; + + doCheck = false; + meta = { homepage = "https://pybtex.org/"; changelog = "https://bitbucket.org/pybtex-devs/pybtex/src/master/CHANGES"; From 640593d0e5634eb505226f8a476c871348170947 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 15:58:32 +0200 Subject: [PATCH 04/12] python312Packages.pybibget: use standard formatting --- pkgs/by-name/py/pybibget/package.nix | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/py/pybibget/package.nix b/pkgs/by-name/py/pybibget/package.nix index 4aad76fdc760..af7b3d2515f5 100644 --- a/pkgs/by-name/py/pybibget/package.nix +++ b/pkgs/by-name/py/pybibget/package.nix @@ -4,20 +4,16 @@ fetchPypi, }: -let +python3.pkgs.buildPythonApplication rec { pname = "pybibget"; version = "0.1.0"; + pyproject = true; src = fetchPypi { inherit pname version; hash = "sha256-M6CIctTOVn7kIPmsoHQmYl2wQaUzfel7ryw/3ebQitg="; }; -in -python3.pkgs.buildPythonApplication { - inherit pname version src; - pyproject = true; - propagatedBuildInputs = with python3.pkgs; [ lxml httpx From 43b3fd8851cda983ff545c9fd3da33202dea9b73 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 15:59:07 +0200 Subject: [PATCH 05/12] python313Packages.pybibget: use setuptools in build-system Needed ever since `pybtex` stopped propagating setuptools in a previous commit. --- pkgs/by-name/py/pybibget/package.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/by-name/py/pybibget/package.nix b/pkgs/by-name/py/pybibget/package.nix index af7b3d2515f5..b8cad1e423fb 100644 --- a/pkgs/by-name/py/pybibget/package.nix +++ b/pkgs/by-name/py/pybibget/package.nix @@ -14,6 +14,10 @@ python3.pkgs.buildPythonApplication rec { hash = "sha256-M6CIctTOVn7kIPmsoHQmYl2wQaUzfel7ryw/3ebQitg="; }; + build-system = [ + python3.pkgs.setuptools + ]; + propagatedBuildInputs = with python3.pkgs; [ lxml httpx From aa9a1b2c8dbd9790b36b5cc8eb3599acfc19aaa4 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 13:24:46 +0300 Subject: [PATCH 06/12] python313Packages.pybtex: 0.24.0 -> 0.25.1 --- pkgs/development/python-modules/pybtex/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix index 998b9ff606bf..68c98f91a0b5 100644 --- a/pkgs/development/python-modules/pybtex/default.nix +++ b/pkgs/development/python-modules/pybtex/default.nix @@ -13,12 +13,12 @@ buildPythonPackage rec { pname = "pybtex"; - version = "0.24.0"; + version = "0.25.1"; pyproject = true; src = fetchPypi { inherit version pname; - sha256 = "818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755"; + sha256 = "sha256-nq+QJnx+g+Ilr4n+plw3Cvv2X0WCINOUap4wSeHspJE="; }; build-system = [ From 0fb19cb4ed54e949c24980263bb2a303baab690d Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 14:53:00 +0300 Subject: [PATCH 07/12] python313Packages.pybtex: enable tests --- pkgs/development/python-modules/pybtex/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix index 68c98f91a0b5..f2eb9539e1d9 100644 --- a/pkgs/development/python-modules/pybtex/default.nix +++ b/pkgs/development/python-modules/pybtex/default.nix @@ -9,6 +9,9 @@ # dependencies latexcodec, pyyaml, + + # tests + pytestCheckHook, }: buildPythonPackage rec { @@ -32,7 +35,9 @@ buildPythonPackage rec { pythonImportsCheck = [ "pybtex" ]; - doCheck = false; + nativeCheckInputs = [ + pytestCheckHook + ]; meta = { homepage = "https://pybtex.org/"; From 0b5e6cbcbee29beb914dd28fd5b36de416af79f2 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 14:01:25 +0200 Subject: [PATCH 08/12] python312Packages.sphinxcontrib-bibtex: 2.6.3 -> 2.6.5 Diff: https://github.com/mcmtroffaes/sphinxcontrib-bibtex/compare/refs/tags/2.6.3...refs/tags/2.6.5 NOTE: This update is coupled to `pybtex: 0.24.0 -> 0.25.1` update from a previous commit. --- .../python-modules/sphinxcontrib-bibtex/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix b/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix index 377682ae2529..3e1f64080743 100644 --- a/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix +++ b/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "sphinxcontrib-bibtex"; - version = "2.6.3"; + version = "2.6.5"; pyproject = true; disabled = pythonOlder "3.7"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "mcmtroffaes"; repo = "sphinxcontrib-bibtex"; tag = version; - hash = "sha256-cqz5Jamtlflo5rFhWPCPlYoymApUtXPG4oTRjfDI+WY="; + hash = "sha256-sT23DkIfJcb3cFBFdL31RRzlDoJRcCUYIdpUVuYjGuo="; }; build-system = [ setuptools ]; From 9b7323641ebf266b26cce717ffd9b3ea63548eb9 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 1 Jul 2025 16:59:39 +0300 Subject: [PATCH 09/12] python312Packages.svgpathtools: init at 1.7.1 --- .../python-modules/svgpathtools/default.nix | 54 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/python-modules/svgpathtools/default.nix diff --git a/pkgs/development/python-modules/svgpathtools/default.nix b/pkgs/development/python-modules/svgpathtools/default.nix new file mode 100644 index 000000000000..abd043fed018 --- /dev/null +++ b/pkgs/development/python-modules/svgpathtools/default.nix @@ -0,0 +1,54 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + numpy, + scipy, + svgwrite, + + # tests + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "svgpathtools"; + version = "1.7.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mathandy"; + repo = "svgpathtools"; + tag = "v${version}"; + hash = "sha256-SzYssDJ+uGb5zXZ16XaMCvIPF8BKJ4VVI/gUghz1IyA="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + numpy + scipy + svgwrite + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "svgpathtools" + ]; + + meta = { + description = "A collection of tools for manipulating and analyzing SVG Path objects and Bezier curves"; + homepage = "https://github.com/mathandy/svgpathtools"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9a5fa59e59dc..bbd73abf9545 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17358,6 +17358,8 @@ self: super: with self; { svglib = callPackage ../development/python-modules/svglib { }; + svgpathtools = callPackage ../development/python-modules/svgpathtools { }; + svgutils = callPackage ../development/python-modules/svgutils { }; svgwrite = callPackage ../development/python-modules/svgwrite { }; From bc40ea87d49c8df046b91e44b6f199d12bfc079e Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 1 Jul 2025 16:51:34 +0300 Subject: [PATCH 10/12] python312Packages.svgdigitizer: init at 0.12.6 --- .../python-modules/svgdigitizer/default.nix | 81 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 83 insertions(+) create mode 100644 pkgs/development/python-modules/svgdigitizer/default.nix diff --git a/pkgs/development/python-modules/svgdigitizer/default.nix b/pkgs/development/python-modules/svgdigitizer/default.nix new file mode 100644 index 000000000000..e94e7e0e7a96 --- /dev/null +++ b/pkgs/development/python-modules/svgdigitizer/default.nix @@ -0,0 +1,81 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + astropy, + click, + frictionless, + matplotlib, + mergedeep, + pandas, + pillow, + pybtex, + pymupdf, + pyyaml, + scipy, + svg-path, + svgpathtools, + svgwrite, + + # tests + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "svgdigitizer"; + version = "0.12.6"; + pyproject = true; + + src = fetchFromGitHub { + owner = "echemdb"; + repo = "svgdigitizer"; + tag = version; + hash = "sha256-aodPjms92+/6bbheIs/8w+M4T+mfw5PWf1dsxFuojwA="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + astropy + click + frictionless + matplotlib + mergedeep + pandas + pillow + pybtex + pymupdf + pyyaml + scipy + svg-path + svgpathtools + svgwrite + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + pytestFlags = [ + "--doctest-modules" + "svgdigitizer" + ]; + + pythonImportsCheck = [ + "svgdigitizer" + ]; + + meta = { + description = "(x,y) Data Points from SVG files"; + homepage = "https://github.com/echemdb/svgdigitizer"; + changelog = "https://github.com/echemdb/svgdigitizer/blob/${src.rev}/ChangeLog"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bbd73abf9545..53831ece72e4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17354,6 +17354,8 @@ self: super: with self; { svg2tikz = callPackage ../development/python-modules/svg2tikz { }; + svgdigitizer = callPackage ../development/python-modules/svgdigitizer { }; + svgelements = callPackage ../development/python-modules/svgelements { }; svglib = callPackage ../development/python-modules/svglib { }; From 500d5bcce15cd83c91684044c77e9b63f1116a99 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 18:03:11 +0300 Subject: [PATCH 11/12] python312Packages.pymatgen: disable another failing test on Darwin --- pkgs/development/python-modules/pymatgen/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/pymatgen/default.nix b/pkgs/development/python-modules/pymatgen/default.nix index adb87f41b992..e5599671c90b 100644 --- a/pkgs/development/python-modules/pymatgen/default.nix +++ b/pkgs/development/python-modules/pymatgen/default.nix @@ -170,6 +170,7 @@ buildPythonPackage rec { # attempt to insert nil object from objects[1] "test_timer_10_2_7" + "test_timer" ]; disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [ From 42cbb4f64d27fbcdcad77687b9c1bac824e53790 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Wed, 9 Jul 2025 18:03:54 +0300 Subject: [PATCH 12/12] python313Packages.svgdigitizer: mark as broken on Darwin --- pkgs/development/python-modules/svgdigitizer/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/svgdigitizer/default.nix b/pkgs/development/python-modules/svgdigitizer/default.nix index e94e7e0e7a96..e66a37255080 100644 --- a/pkgs/development/python-modules/svgdigitizer/default.nix +++ b/pkgs/development/python-modules/svgdigitizer/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + stdenv, # build-system setuptools, @@ -77,5 +78,7 @@ buildPythonPackage rec { changelog = "https://github.com/echemdb/svgdigitizer/blob/${src.rev}/ChangeLog"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ doronbehar ]; + # https://github.com/echemdb/svgdigitizer/issues/252 + broken = stdenv.hostPlatform.isDarwin; }; }