Subject: [bug#77575] [PATCH 08/21] gnu: python-pymodbus: Update to 3.8.6.

From: Nicolas Graves <[email-masked]>
Date: Sun, 6 Apr 2025 14:37:10 +0200

* gnu/packages/python-xyz.scm (python-pymodbus): Update to 3.8.6.
[build-system]: Swith to pyproject.
[arguments]{test-flags}: Ignore failing tests.
{phases}: Remove field, use test-flags instead.
[native-inputs]: Add python-pytest-asyncio, python-pytest-cov,
python-pytest-xdist, python-setuptools, python-wheel.
---
 gnu/packages/python-xyz.scm | 37 +++++++++++++++----------------------
 1 file changed, 15 insertions(+), 22 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d457d89de7..efdf82e58c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24448,7 +24448,7 @@ (define-public python-pymemcache
 (define-public python-pymodbus
   (package
     (name "python-pymodbus")
-    (version "2.5.3")
+    (version "3.8.6")
     (source
      (origin
        (method git-fetch)
@@ -24457,34 +24457,27 @@ (define-public python-pymodbus
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32
-         "0kjjrx7xrlx0pf3y67hhr4xvqrly3xzmvf6ic5as61m6z19m7zd5"))))
-    (build-system python-build-system)
+        (base32 "1sncllh01c6vqq4fh9k3yg9fchmmw661rcp0066l7fis6sp4yw82"))))
+    (build-system pyproject-build-system)
     (arguments
-     `(#:phases (modify-phases %standard-phases
-                  (add-after 'unpack 'disable-problematic-tests
-                    (lambda _
-                      ;; The following test modules rely on Python's own
-                      ;; 'test' module, which is not distributed in the Python
-                      ;; package of Guix.
-                      (delete-file "test/test_client_async_asyncio.py")
-                      (delete-file "test/test_client_sync_diag.py")
-                      ;; The following test module requires the asynctest
-                      ;; library, abandoned without support for Python 3.9+
-                      ;; (see:
-                      ;; https://github.com/riptideio/pymodbus/issues/681).
-                      (delete-file "test/test_server_asyncio.py")))
-                  (replace 'check
-                    (lambda* (#:key tests? #:allow-other-keys)
-                      (when tests?
-                        (invoke "python" "-m" "pytest")))))))
+     (list
+      #:test-flags
+      #~(list "--ignore" "test/server/test_simulator_api.py"
+              ;; These tests require the presence of a certificate.
+              "--ignore-glob" "test/examples/*"
+              "--ignore" "test/client/test_client.py")))
     (native-inputs
      (list python-mock
            python-pytest
+           python-pytest-asyncio
+           python-pytest-cov
+           python-pytest-xdist
            python-redis
+           python-setuptools
            python-sqlalchemy
            python-tornado
-           python-twisted))
+           python-twisted
+           python-wheel))
     (propagated-inputs
      (list python-pyserial
            python-six
-- 
2.49.0