Subject: [PATCH 14/26] gnu: python-rstr: Update to 3.2.2. Enable tests.

From: Nicolas Graves <[email-masked]>
Date: Mon, 31 Mar 2025 08:18:42 +0200

* gnu/packages/python-xyz.scm (python-rstr): Update to 3.2.2.
[source]: Switch to git-fetch.
[build-system]: Switch to pyproject-build-system.
[arguments]{phases}: Add phase 'pretend-version.
[native-inputs]: Add python-pytest, python-setuptools,
python-setuptools-scm, python-wheel.
---
 gnu/packages/python-xyz.scm | 30 +++++++++++++++++++++++-------
 1 file changed, 23 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 57a62c5233..2487ef88a9 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8719,15 +8719,31 @@ (define-public python-robotframework-seleniumscreenshots
 (define-public python-rstr
   (package
    (name "python-rstr")
-   (version "2.2.6")
+   (version "3.2.2")
    (source
     (origin
-     (method url-fetch)
-     (uri (pypi-uri "rstr" version))
-     (sha256
-      (base32
-       "197dw8mbq0pjjz1l6h1ksi62vgn7x55d373ch74y06744qiq5sjx"))))
-   (build-system python-build-system)
+      (method git-fetch)
+      (uri (git-reference
+            (url "https://github.com/leapfrogonline/rstr")
+            (commit version)))
+      (file-name (git-file-name name version))
+      (sha256
+       (base32 "1z9d660jnv72jn8qzpa9hddpv5f953js8i75hfhkcw68vmdfndnr"))))
+   (build-system pyproject-build-system)
+   (arguments
+    (list
+     #:phases
+     #~(modify-phases %standard-phases
+         (add-before 'build 'pretend-version
+           ;; The version string is usually derived via setuptools-scm, but
+           ;; without the git metadata available, the version string is set to
+           ;; '0.0.0'.
+           (lambda _
+             (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
+   (native-inputs (list python-pytest
+                        python-setuptools
+                        python-setuptools-scm
+                        python-wheel))
    (home-page "https://github.com/leapfrogonline/rstr")
    (synopsis "Generate random strings in Python")
    (description "This package provides a python module for generating
-- 
2.49.0