GNU bug report logs - #78443
[PATCH] gnu: python-pulp: Update to 3.1.1.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Wiktor Żelazny <wz@HIDDEN>; Keywords: patch moreinfo; dated Thu, 15 May 2025 13:48:02 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.
Added tag(s) moreinfo. Request was from Ludovic Courtès <ludo@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 78443 <at> debbugs.gnu.org:


Received: (at 78443) by debbugs.gnu.org; 7 Jun 2025 15:02:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 07 11:02:05 2025
Received: from localhost ([127.0.0.1]:49287 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uNv3d-0000a2-4D
	for submit <at> debbugs.gnu.org; Sat, 07 Jun 2025 11:02:05 -0400
Received: from hera.aquilenet.fr ([185.233.100.1]:60454)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <andreas@HIDDEN>) id 1uNv3a-0000ZS-28
 for 78443 <at> debbugs.gnu.org; Sat, 07 Jun 2025 11:02:02 -0400
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id A66A5255;
 Sat,  7 Jun 2025 17:01:55 +0200 (CEST)
Authentication-Results: hera.aquilenet.fr;
	none
X-Virus-Scanned: Debian amavis at hera.aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavis, port 10024) with ESMTP
 id bLdcznd9Jd49; Sat,  7 Jun 2025 17:01:55 +0200 (CEST)
Received: from jurong (176-179-191-150.abo.bbox.fr [176.179.191.150])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id E2EB362;
 Sat,  7 Jun 2025 17:01:54 +0200 (CEST)
Date: Sat, 7 Jun 2025 17:01:53 +0200
From: Andreas Enge <andreas@HIDDEN>
To: Wiktor =?utf-8?Q?=C5=BBelazny?= <wz@HIDDEN>
Subject: Re: [PATCH v2] gnu: python-pulp: Update to 3.1.1.
Message-ID: <aERUYYT23eEdceBP@jurong>
References: <20250530173428.3882-1-wz@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20250530173428.3882-1-wz@HIDDEN>
X-Rspamd-Server: hera
X-Rspamd-Queue-Id: A66A5255
X-Spamd-Result: default: False [-5.56 / 15.00]; BAYES_HAM(-3.00)[99.98%];
 NEURAL_HAM(-2.96)[-0.986]; MID_RHS_NOT_FQDN(0.50)[];
 MIME_GOOD(-0.10)[text/plain]; FROM_EQ_ENVFROM(0.00)[];
 MIME_TRACE(0.00)[0:+]; RCVD_TLS_ALL(0.00)[];
 RCVD_COUNT_TWO(0.00)[2]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[];
 FREEMAIL_ENVRCPT(0.00)[gmail.com]; RCVD_VIA_SMTP_AUTH(0.00)[];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[3];
 FREEMAIL_CC(0.00)[debbugs.gnu.org,gmail.com]
X-Rspamd-Action: no action
X-Spamd-Bar: -----
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78443
Cc: 78443 <at> debbugs.gnu.org, Sharlatan Hellseher <sharlatanus@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hello,

your v2 patch also modifies snakemake, which needs to be mentioned in
the commit message. Also, instead of updating python-pulp, it rather
adds a second version.

Would it be possible to update snakemake at the same time?
(Actually I just see there are lots of different snakemake packages, one
for each major version; are all of these really needed? It would be nice
if this could be tidied up, possibly by removing outdated dependencies;
not necessarily in this patch series, of course.)

Andreas





Information forwarded to guix-patches@HIDDEN:
bug#78443; Package guix-patches. Full text available.

Message received at 78443 <at> debbugs.gnu.org:


Received: (at 78443) by debbugs.gnu.org; 30 May 2025 17:36:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 30 13:36:27 2025
Received: from localhost ([127.0.0.1]:50305 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uL3ec-0006eG-Gk
	for submit <at> debbugs.gnu.org; Fri, 30 May 2025 13:36:27 -0400
Received: from freeshell.de ([116.202.128.144]:51002)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <wz@HIDDEN>) id 1uL3eZ-0006dr-P6
 for 78443 <at> debbugs.gnu.org; Fri, 30 May 2025 13:36:24 -0400
Received: from localhost.localdomain (cst-prg-10-132.cust.vodafone.cz
 [46.135.10.132]) (Authenticated sender: wz)
 by freeshell.de (Postfix) with ESMTPSA id 5973CB4C3D6B
 for <78443 <at> debbugs.gnu.org>; Fri, 30 May 2025 19:36:16 +0200 (CEST)
From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= <wz@HIDDEN>
To: 78443 <at> debbugs.gnu.org
Subject: [PATCH v2] gnu: python-pulp: Update to 3.1.1.
Date: Fri, 30 May 2025 19:34:28 +0200
Message-ID: <20250530173428.3882-1-wz@HIDDEN>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78443
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

* gnu/packages/python-xyz.scm (python-pulp-2.4): Copy from python-pulp.
* gnu/packages/python-science.scm (snakemake): Use python-pulp-2.4.
* gnu/packages/python-science.scm (snakemake-{5,6,7}): Use python-pulp-2.4.
* gnu/packages/patches/python-pulp-exclude-solver-binaries.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/python-xyz.scm (python-pulp): Update to 3.1.1.
[source]: Update the uri capitalization.
[source]: Add a snippet for skipping a failing test.
[source]: Apply the new patch.
[build-system]: Change to pyproject-build-system.
[native-inputs]: Add cbc, glpk, highs, python-setuptools, and python-wheel.
[propagated-inputs]: Remove python-amply.
[agruments]<#:phases>: Add a phase to remove solver binaries.
[agruments]<#:phases>: Test using pulptest.
[synopsis]: Change according to About in the code repository.
[description]: Extend according to README.rst in the code repository.

Change-Id: I41a7ea4066302d1195913815eb030c45dec9014d
---
 gnu/local.mk                                  |  1 +
 .../python-pulp-exclude-solver-binaries.patch | 36 ++++++++++++++++
 gnu/packages/python-science.scm               |  8 ++--
 gnu/packages/python-xyz.scm                   | 42 +++++++++++++++++++
 4 files changed, 83 insertions(+), 4 deletions(-)
 create mode 100644 gnu/packages/patches/python-pulp-exclude-solver-binaries.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f534768c2de..424a8d92f1d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2028,6 +2028,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-matplotlib-fix-legend-loc-best-test.patch	\
   %D%/packages/patches/python-random2-getrandbits-test.patch		\
   %D%/packages/patches/python-pillow-use-zlib-1.3.patch	\
+  %D%/packages/patches/python-pulp-exclude-solver-binaries.patch	\
   %D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch	\
   %D%/packages/patches/python-pyreadstat-link-libiconv.patch	\
   %D%/packages/patches/python-sip-include-dirs.patch	\
diff --git a/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch b/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch
new file mode 100644
index 00000000000..57e9a1421b0
--- /dev/null
+++ b/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch
@@ -0,0 +1,36 @@
+This patch excludes solver binary executables that the project uses for
+testing. In the package definition, solvers are provided as native inputs,
+instead.
+
+This is an original patch. It was not submitted upstream.
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 82f9d48..0925858 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -61,26 +61,11 @@ dev = [
+ [tool.setuptools]
+ packages = [
+         "pulp",
+-        "pulp.solverdir",
+-        "pulp.solverdir.cbc.linux.i32",
+-        "pulp.solverdir.cbc.linux.i64",
+-        "pulp.solverdir.cbc.linux.arm64",
+-        "pulp.solverdir.cbc.win.i32",
+-        "pulp.solverdir.cbc.win.i64",
+-        "pulp.solverdir.cbc.osx.i64",
+         "pulp.apis",
+         "pulp.tests"]
+ # This is a workaround for https://github.com/astral-sh/uv/issues/9513
+ license-files = []
+
+-[tool.setuptools.package-data]
+-"pulp.solverdir.cbc.linux.i32"= ["*", "*.*"]
+-"pulp.solverdir.cbc.linux.i64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.linux.arm64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.win.i32"= ["*", "*.*"]
+-"pulp.solverdir.cbc.win.i64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.osx.i64"= ["*", "*.*"]
+-
+ [project.scripts]
+ pulptest = "pulp.tests.run_tests:pulpTestAll"
diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 376ae67570c..fdfa88c56c7 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -4976,7 +4976,7 @@ (define-public snakemake
            python-nbformat
            python-packaging
            python-psutil
-           python-pulp
+           python-pulp-2.4 ;https://github.com/snakemake/snakemake/issues/2607
            python-pyyaml
            python-requests
            python-reretry
@@ -5068,7 +5068,7 @@ (define-public snakemake-5
            python-nbformat
            python-networkx
            python-psutil
-           python-pulp
+           python-pulp-2.4 ;https://github.com/snakemake/snakemake/issues/2607
            python-pyyaml
            python-ratelimiter
            python-requests
@@ -5155,7 +5155,7 @@ (define-public snakemake-6
            python-nbformat
            python-networkx
            python-psutil
-           python-pulp
+           python-pulp-2.4 ;https://github.com/snakemake/snakemake/issues/2607
            python-pyyaml
            python-py-tes
            python-ratelimiter
@@ -5253,7 +5253,7 @@ (define-public snakemake-7
            python-nbformat
            python-networkx
            python-psutil
-           python-pulp
+           python-pulp-2.4 ;https://github.com/snakemake/snakemake/issues/2607
            python-pyyaml
            python-py-tes
            python-requests
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0058c665e3d..090b534b368 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15041,6 +15041,48 @@ (define-public python-amply
     (license license:epl1.0)))
 
 (define-public python-pulp
+  (package
+    (name "python-pulp")
+    (version "3.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pulp" version))
+       ;; https://github.com/coin-or/pulp/issues/832
+       (modules '((guix build utils)))
+       (snippet '(substitute* "pulp/tests/test_pulp.py"
+                   (("        def test_time_limit_no_solution")
+                    "        @unittest.skip
+        def test_time_limit_no_solution")))
+       (sha256
+        (base32 "15bdjv0hpzg3lfbz25w16sf4h3gkpd4mhvysgynak73wj47362ih"))
+       (patches (search-patches "python-pulp-exclude-solver-binaries.patch"))))
+    (build-system pyproject-build-system)
+    (native-inputs (list cbc ;a solver for testing
+                         glpk ;a solver for testing
+                         highs ;a solver for testing
+                         python-setuptools
+                         python-wheel))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'build 'remove-solver-binaries
+                    (lambda _
+                      (delete-file-recursively "pulp/solverdir/")))
+                  (replace 'check
+                    (lambda* (#:key tests? #:allow-other-keys)
+                      (if tests?
+                          (invoke "pulptest")))))))
+    (home-page "https://github.com/coin-or/pulp")
+    (synopsis "Python Linear Programming API")
+    (description
+     "PuLP is an linear and mixed integer programming modeler written in
+Python.  With PuLP, it is simple to create MILP optimisation problems and solve
+them with the latest open-source (or proprietary) solvers.  PuLP can generate
+MPS or LP files and call solvers such as GLPK, COIN-OR CLP/CBC, CPLEX, GUROBI,
+MOSEK, XPRESS, CHOCO, MIPCL, HiGHS, SCIP/FSCIP.")
+    (license license:expat)))
+
+(define-public python-pulp-2.4
   (package
     (name "python-pulp")
     (version "2.4")

base-commit: b750d54703d849fe58dcacf94f23d34ab85b23a2
-- 
2.49.0





Information forwarded to guix-patches@HIDDEN:
bug#78443; Package guix-patches. Full text available.

Message received at 78443 <at> debbugs.gnu.org:


Received: (at 78443) by debbugs.gnu.org; 26 May 2025 16:56:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 26 12:56:48 2025
Received: from localhost ([127.0.0.1]:58868 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uJb84-0006wD-Bh
	for submit <at> debbugs.gnu.org; Mon, 26 May 2025 12:56:48 -0400
Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]:52273)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <sharlatanus@HIDDEN>)
 id 1uJb82-0006vl-BX
 for 78443 <at> debbugs.gnu.org; Mon, 26 May 2025 12:56:46 -0400
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-440685d6afcso30629255e9.0
 for <78443 <at> debbugs.gnu.org>; Mon, 26 May 2025 09:56:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1748278600; x=1748883400; darn=debbugs.gnu.org;
 h=mime-version:message-id:date:subject:cc:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=0a4323ML+DyZDMDgPqRLfSH5crOiwh4VK2lGqcEhkJ0=;
 b=jaMGQU9s+Ob8iseTNy9OphcN2ZvN0a2oXEr6SrvxJ2Aoe6GJIPShcpR63CCUA05k1z
 4ns0rW8eMvJll1Sv4wrjAtBQyKbuIDlMRJt+jUrfXXUVICCPlGge1F5GyCooBjsM1gX5
 9wDw9rUrp2Zru9koBvxgoc/kp8qdDv8hcYkZakyDn5jT0LkFv99keIlYJABkvP6IotCi
 QgVcSscVlNKoRqMjgC9oakC5QWZbwiM+SfmT6rVvWecsKvI49hikgmLQ93T4mwcRfm6S
 1sGlYGRflu7xO1Q17CVhgh+okrAiSu1v6I3HcWebeYIohrUc0vhmiNDdauDXx88Mx+XE
 c9dg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1748278600; x=1748883400;
 h=mime-version:message-id:date:subject:cc:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=0a4323ML+DyZDMDgPqRLfSH5crOiwh4VK2lGqcEhkJ0=;
 b=PntxmX613JgzKgTSBxmN4MYu62cE1K79SLdRiUemIEp8GffabJjUNnFT13HzKCMprm
 FImWo3Rzqn7JceNJCkXIpRqxt15o3tuWuWvx6+A6ki4Cx6eLud+JernrIcnCppdpuJPX
 03PMsurUlVsmILiTokZiEImxrd9FLkfVWL6QV/1ZCzspk0ydXBX4l33++As8TNMlBR0R
 LM4qIMcvYCD10xf/p3wOETAQo6JDcr/tZetSvT6muaPCOvdAaOFelHf76JGXfzcUXf8o
 CVbiPhvzUIJhKOYzr7H9A9zLZTYwTVYvHrTv5woQ4xYTh7C7iWlUCjiwsVskDomSihEF
 qCqA==
X-Gm-Message-State: AOJu0YwnrR4NEctIc/idIoXn6y/lxXkIB5ybDanUehf4nIklcwV1Ggf4
 3mVYsvOp1bQMr8MDhzHwFxA7dR0A0MtQzUXuyNxB254kuqbUMN0y7Ej+MOUQJg==
X-Gm-Gg: ASbGncvIm893kysVJ1JzESDrMNQfyM3tzuu+mqZE4ucbyLMrt7Qkli792qbsLvZDAmW
 JNq8fi9OfG5XrDQxW67foac9NapVIP17FoBRn8lSVO5onO8PjdPwMRG+OXBgee+HLE0Jz0gTaa6
 XDcB2L3siuGxOqBGyctddIZFBAdsvUGTcpJC+FXQnA4tfvu42xlHxYbblfGWDw94pmYFrcdmXUk
 UGe1qZLRXv6o2CYykhfFYJwknndoBC6+dptyrXb9RRHMewFPxWNCMNBzlyTfu7RkaMGaCHjcH6Y
 f2i7tvsUQdMlF3KLrOk3fVxkoA/XuG1fCbaL3pRbuGwSmK3X+kR3H30H1v0VyU8e1L+06Pz7sEd
 XDHYv61vULCnxkFTy8Jcx/hpRHV4=
X-Google-Smtp-Source: AGHT+IGVzaOdWkz/BWeuERSgSObOQ9wYih9ZUuDeT329uRcFBc5pzZxku8R3KFLDNINGyayNADgXIw==
X-Received: by 2002:a05:600c:5249:b0:442:f990:3ce7 with SMTP id
 5b1f17b1804b1-44c9465cecfmr90138125e9.16.1748278599535; 
 Mon, 26 May 2025 09:56:39 -0700 (PDT)
Received: from guxtil (cpc100684-bagu15-2-0-cust967.1-3.cable.virginm.net.
 [86.8.111.200]) by smtp.gmail.com with ESMTPSA id
 5b1f17b1804b1-447f73d3d6csm249268005e9.19.2025.05.26.09.56.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 26 May 2025 09:56:38 -0700 (PDT)
From: Sharlatan Hellseher <sharlatanus@HIDDEN>
To: 78443 <at> debbugs.gnu.org
Subject: [PATCH] gnu: python-pulp: Update to 3.1.1.
Date: Mon, 26 May 2025 17:56:36 +0100
Message-ID: <87sekrjoor.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78443
Cc: wzelazny@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain


Hi,

Thanks for the patch.

After appling it snakemake@HIDDEN has failed.

Please check with 'guix build -P1 python-pulp'
You might also may open a PR on <https://codeberg.org/guix/guix>

--
Oleg

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQJKBAEBCgA0FiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmg0nUQWHHNoYXJsYXRh
bnVzQGdtYWlsLmNvbQAKCRB21ye/9izStTdbEACTPVY3KqPdHrNJSXlZkF8Zbwj1
7TeY4jzH9Ytc3mJPNi6BZV84k1SoZMjk+/smPnsREdaUQOlb+zLhO/Ox1lw3oSpd
FcGN47/lx/giS11aCcKnwIo3PgTkPgsUZcG0t9jBHtYL2ssiOSIyHvj+Q6Tn7+TD
HG+73ikzYiiegiqx4yfSFL+Qcc3YhiPWymhcJ/NZ6lYfTy8cC/QY0QlEgkcrspkY
zM4qebHcKK+1Q4r9QP33cmx1kNIK4FgWWDALKOzIUr4GvWgJqeWqUsEJFiWd1FHe
r6QApsQ4qMY26gPQUJ8VvbdsEb5RYgwH+ym38W4OHaevd4tYwpbZvQvEV6G0ta9M
UJ7xdjm2BFeizpnI1+/w+fGSUgDs9YMtYByhbZP9nXkgyMIVvydQibWSTCUVe/vC
FxSmce7Kkwmlb0fdH2pjO/Rw8Eeic7B6yqHpBShPy3SibW24yDxDus99q4nDA3/8
3aa24cg8bsW6UrGNiGT5+0L2htB7l2JUeOVaR1k5C+1u0QQqwHUuzTnXbTRZbS/H
fjb/3HBwlSmpwDngBgZyOBmobKWJnUhc5fDuVIMfU0N8nivzrVeOhLGgjH0Vp98X
2uWeMq5h/EGdxtAVO2piUMfwrMI+IGxap3YtTP4PX1Jqo9hROSIxiGZ+boyXLg8P
GhqfL3HS5uMJhQlEWA==
=2e/S
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#78443; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 15 May 2025 13:47:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 15 09:47:33 2025
Received: from localhost ([127.0.0.1]:52778 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uFYvs-0001XD-PF
	for submit <at> debbugs.gnu.org; Thu, 15 May 2025 09:47:33 -0400
Received: from lists.gnu.org ([2001:470:142::17]:58692)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <wz@HIDDEN>) id 1uFYvo-0001Wt-Ks
 for submit <at> debbugs.gnu.org; Thu, 15 May 2025 09:47:29 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <wz@HIDDEN>) id 1uFYvh-0008Mv-8f
 for guix-patches@HIDDEN; Thu, 15 May 2025 09:47:22 -0400
Received: from freeshell.de ([2a01:4f8:231:482b::2])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <wz@HIDDEN>) id 1uFYve-0006bT-7F
 for guix-patches@HIDDEN; Thu, 15 May 2025 09:47:20 -0400
Received: from localhost.localdomain (cst-prg-25-66.cust.vodafone.cz
 [46.135.25.66]) (Authenticated sender: wz)
 by freeshell.de (Postfix) with ESMTPSA id B9B0EB4C1F0A
 for <guix-patches@HIDDEN>; Thu, 15 May 2025 15:47:10 +0200 (CEST)
From: =?UTF-8?q?Wiktor=20=C5=BBelazny?= <wz@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH] gnu: python-pulp: Update to 3.1.1.
Date: Thu, 15 May 2025 15:45:32 +0200
Message-ID: <20250515134532.3543-1-wz@HIDDEN>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=2a01:4f8:231:482b::2;
 envelope-from=wz@HIDDEN; helo=freeshell.de
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.1 (/)

* gnu/packages/patches/python-pulp-exclude-solver-binaries.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/python-xyz.scm (python-pulp): Update to 3.1.1.
[source]: Update the uri capitalization.
[source]: Add a snippet for skipping a failing test.
[source]: Apply the new patch.
[build-system]: Change to pyproject-build-system.
[native-inputs]: Add cbc, glpk, highs, python-setuptools, and python-wheel.
[propagated-inputs]: Remove python-amply.
[agruments]<#:phases>: Add a phase to remove solver binaries.
[agruments]<#:phases>: Test using pulptest.
[synopsis]: Change according to About in the code repository.
[description]: Extend according to README.rst in the code repository.

Change-Id: I1a0644da575da997f9d31cf9099d738e95d5f3a0
---
 gnu/local.mk                                  |  1 +
 .../python-pulp-exclude-solver-binaries.patch | 36 ++++++++++++++++
 gnu/packages/python-xyz.scm                   | 42 ++++++++++++++-----
 3 files changed, 68 insertions(+), 11 deletions(-)
 create mode 100644 gnu/packages/patches/python-pulp-exclude-solver-binaries.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index dfafe8b8953..0074805dd40 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2021,6 +2021,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-matplotlib-fix-legend-loc-best-test.patch	\
   %D%/packages/patches/python-random2-getrandbits-test.patch		\
   %D%/packages/patches/python-pillow-use-zlib-1.3.patch	\
+  %D%/packages/patches/python-pulp-exclude-solver-binaries.patch	\
   %D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch	\
   %D%/packages/patches/python-pyreadstat-link-libiconv.patch	\
   %D%/packages/patches/python-sip-include-dirs.patch	\
diff --git a/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch b/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch
new file mode 100644
index 00000000000..57e9a1421b0
--- /dev/null
+++ b/gnu/packages/patches/python-pulp-exclude-solver-binaries.patch
@@ -0,0 +1,36 @@
+This patch excludes solver binary executables that the project uses for
+testing. In the package definition, solvers are provided as native inputs,
+instead.
+
+This is an original patch. It was not submitted upstream.
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 82f9d48..0925858 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -61,26 +61,11 @@ dev = [
+ [tool.setuptools]
+ packages = [
+         "pulp",
+-        "pulp.solverdir",
+-        "pulp.solverdir.cbc.linux.i32",
+-        "pulp.solverdir.cbc.linux.i64",
+-        "pulp.solverdir.cbc.linux.arm64",
+-        "pulp.solverdir.cbc.win.i32",
+-        "pulp.solverdir.cbc.win.i64",
+-        "pulp.solverdir.cbc.osx.i64",
+         "pulp.apis",
+         "pulp.tests"]
+ # This is a workaround for https://github.com/astral-sh/uv/issues/9513
+ license-files = []
+
+-[tool.setuptools.package-data]
+-"pulp.solverdir.cbc.linux.i32"= ["*", "*.*"]
+-"pulp.solverdir.cbc.linux.i64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.linux.arm64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.win.i32"= ["*", "*.*"]
+-"pulp.solverdir.cbc.win.i64"= ["*", "*.*"]
+-"pulp.solverdir.cbc.osx.i64"= ["*", "*.*"]
+-
+ [project.scripts]
+ pulptest = "pulp.tests.run_tests:pulpTestAll"
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5d0ac818398..923da91821d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15037,23 +15037,43 @@ (define-public python-amply
 (define-public python-pulp
   (package
     (name "python-pulp")
-    (version "2.4")
+    (version "3.1.1")
     (source
      (origin
        (method url-fetch)
-       (uri (pypi-uri "PuLP" version))
+       (uri (pypi-uri "pulp" version))
+       ;; https://github.com/coin-or/pulp/issues/832
+       (modules '((guix build utils)))
+       (snippet '(substitute* "pulp/tests/test_pulp.py"
+                   (("        def test_time_limit_no_solution")
+                    "        @unittest.skip
+        def test_time_limit_no_solution")))
        (sha256
-        (base32
-         "1dammrg0f1v0r028i3rpxbf2bsyxmjq0q6ihb4x2wsdki44z3bxj"))))
-    (build-system python-build-system)
-    (propagated-inputs
-     (list python-amply))
+        (base32 "15bdjv0hpzg3lfbz25w16sf4h3gkpd4mhvysgynak73wj47362ih"))
+       (patches (search-patches "python-pulp-exclude-solver-binaries.patch"))))
+    (build-system pyproject-build-system)
+    (native-inputs (list cbc ;a solver for testing
+                         glpk ;a solver for testing
+                         highs ;a solver for testing
+                         python-setuptools
+                         python-wheel))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'build 'remove-solver-binaries
+                    (lambda _
+                      (delete-file-recursively "pulp/solverdir/")))
+                  (replace 'check
+                    (lambda* (#:key tests? #:allow-other-keys)
+                      (if tests?
+                          (invoke "pulptest")))))))
     (home-page "https://github.com/coin-or/pulp")
-    (synopsis "Linear Programming modeler")
+    (synopsis "Python Linear Programming API")
     (description
-     "PuLP is a Linear Programming modeler written in Python.  PuLP can
-generate MPS or LP files and call GLPK, COIN CLP/CBC, CPLEX, and GUROBI to
-solve linear problems.")
+     "PuLP is an linear and mixed integer programming modeler written in
+Python.  With PuLP, it is simple to create MILP optimisation problems and solve
+them with the latest open-source (or proprietary) solvers.  PuLP can generate
+MPS or LP files and call solvers such as GLPK, COIN-OR CLP/CBC, CPLEX, GUROBI,
+MOSEK, XPRESS, CHOCO, MIPCL, HiGHS, SCIP/FSCIP.")
     (license license:expat)))
 
 (define-public python-py-partiql-parser

base-commit: ff50f88935f6d04664ad3c907a9bff62714668c6
-- 
2.49.0





Acknowledgement sent to Wiktor Żelazny <wz@HIDDEN>:
New bug report received and forwarded. Copy sent to guix-patches@HIDDEN. Full text available.
Report forwarded to guix-patches@HIDDEN:
bug#78443; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 9 Jun 2025 20:15:03 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.