all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#66930] [PATCH] gnu: Add python-pyamg.
@ 2023-11-04 15:05 Felix Gruber
  2023-11-04 15:41 ` Vinicius Monego
  2024-01-21 17:44 ` bug#66930: " Sharlatan Hellseher
  0 siblings, 2 replies; 3+ messages in thread
From: Felix Gruber @ 2023-11-04 15:05 UTC (permalink / raw)
  To: 66930
  Cc: Felix Gruber, Lars-Dominik Braun, Marius Bakke, Munyoki Kilyungi,
	jgart

* gnu/packages/python-science.scm (python-pyamg): New variable.

Change-Id: Ibf39fecd14d4e6fd72078b217737e5e5cbbf2321
---
 gnu/packages/python-science.scm | 36 +++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 4063797a30..1c2edda118 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -387,6 +387,42 @@ (define-public python-trimesh
 library.")
     (license license:expat)))
 
+(define-public python-pyamg
+  (package
+    (name "python-pyamg")
+    (version "5.0.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pyamg" version))
+              (sha256
+               (base32
+                "0bm0cbqcj5zgs4k7djs5ga98pb95raxxdd674g744hv1iwi6gfga"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list pybind11 python-numpy python-scipy))
+    (native-inputs (list python-setuptools-scm python-pytest))
+    (arguments
+     (list
+      #:test-flags
+      ;; Test installed package in order to find C++ modules.
+      #~(list "--pyargs" "pyamg.tests")))
+    (home-page "https://github.com/pyamg/pyamg")
+    (synopsis "Algebraic Multigrid Solvers in Python")
+    (description "PyAMG is a Python library of Algebraic Multigrid
+(AMG) solvers.
+
+PyAMG features implementations of:
+@itemize
+@item Ruge-Stuben (RS) or Classical AMG
+@item AMG based on Smoothed Aggregation (SA)
+@item Adaptive Smoothed Aggregation (αSA)
+@item Compatible Relaxation (CR)
+@item Krylov methods such as CG, GMRES, FGMRES, BiCGStab, MINRES, etc.
+@end itemize
+PyAMG is primarily written in Python with supporting C++ code for
+performance critical operations.
+")
+    (license license:expat)))
+
 (define-public python-tspex
   (package
     (name "python-tspex")

base-commit: 9dcd8802f5bc472579f23a38dcf437f8a9ac976c
-- 
2.42.0





^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [bug#66930] [PATCH] gnu: Add python-pyamg.
  2023-11-04 15:05 [bug#66930] [PATCH] gnu: Add python-pyamg Felix Gruber
@ 2023-11-04 15:41 ` Vinicius Monego
  2024-01-21 17:44 ` bug#66930: " Sharlatan Hellseher
  1 sibling, 0 replies; 3+ messages in thread
From: Vinicius Monego @ 2023-11-04 15:41 UTC (permalink / raw)
  To: 66930

Hello,

Em 04/11/2023 12:05, Felix Gruber escreveu:
> * gnu/packages/python-science.scm (python-pyamg): New variable.
>
> Change-Id: Ibf39fecd14d4e6fd72078b217737e5e5cbbf2321
> ---
>   gnu/packages/python-science.scm | 36 +++++++++++++++++++++++++++++++++
>   1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
> index 4063797a30..1c2edda118 100644
> --- a/gnu/packages/python-science.scm
> +++ b/gnu/packages/python-science.scm
> @@ -387,6 +387,42 @@ (define-public python-trimesh
>   library.")
>       (license license:expat)))
>   
> +(define-public python-pyamg
> +  (package
> +    (name "python-pyamg")
> +    (version "5.0.0")

I saw that version 5.0.1 is out since Jul 3, 2023. Does it fail to build?

> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "pyamg" version))
> +              (sha256
> +               (base32
> +                "0bm0cbqcj5zgs4k7djs5ga98pb95raxxdd674g744hv1iwi6gfga"))))
> +    (build-system pyproject-build-system)
> +    (propagated-inputs (list pybind11 python-numpy python-scipy))

Pybind11 is usually a native or normal input. Does it have to be 
propagated here?

> +    (native-inputs (list python-setuptools-scm python-pytest))
> +    (arguments
> +     (list
> +      #:test-flags
> +      ;; Test installed package in order to find C++ modules.
> +      #~(list "--pyargs" "pyamg.tests")))
> +    (home-page "https://github.com/pyamg/pyamg")
> +    (synopsis "Algebraic Multigrid Solvers in Python")
> +    (description "PyAMG is a Python library of Algebraic Multigrid
> +(AMG) solvers.
> +
> +PyAMG features implementations of:

Nitpick: to avoid repeating "PyAMG", you can say "It" in the second 
paragraph and join with the first.

> +@itemize
> +@item Ruge-Stuben (RS) or Classical AMG
> +@item AMG based on Smoothed Aggregation (SA)
> +@item Adaptive Smoothed Aggregation (αSA)
> +@item Compatible Relaxation (CR)
> +@item Krylov methods such as CG, GMRES, FGMRES, BiCGStab, MINRES, etc.
> +@end itemize
> +PyAMG is primarily written in Python with supporting C++ code for
> +performance critical operations.
> +")

Implementation details like in this last sentence about languages and 
performance should be transparent to the user and can be omitted.

> +    (license license:expat)))
> +
>   (define-public python-tspex
>     (package
>       (name "python-tspex")
>
> base-commit: 9dcd8802f5bc472579f23a38dcf437f8a9ac976c

I also noticed that amg_core contains cpp files generated by the 
pyamg/amg_core/bindthem.py script. I'd suggest to grep 'DO NOT EDIT' on 
that directory to find the files, delete them in a snippet and rerun the 
bindthem.py script in a new phase after unpacking.

Thanks,

Vinicius





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#66930: [PATCH] gnu: Add python-pyamg.
  2023-11-04 15:05 [bug#66930] [PATCH] gnu: Add python-pyamg Felix Gruber
  2023-11-04 15:41 ` Vinicius Monego
@ 2024-01-21 17:44 ` Sharlatan Hellseher
  1 sibling, 0 replies; 3+ messages in thread
From: Sharlatan Hellseher @ 2024-01-21 17:44 UTC (permalink / raw)
  To: 66930-done

[-- Attachment #1: Type: text/plain, Size: 1802 bytes --]


I've apply changes to the patch:
- updated to the latest upstream version 5.0.1
- move propagated and native inputs after arguments
- move pybind11 to native-inputs


--8<---------------cut here---------------start------------->8---
@@ -460,21 +460,21 @@ (define-public python-meshzoo
 (define-public python-pyamg
   (package
     (name "python-pyamg")
-    (version "5.0.0")
+    (version "5.0.1")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "pyamg" version))
               (sha256
                (base32
-                "0bm0cbqcj5zgs4k7djs5ga98pb95raxxdd674g744hv1iwi6gfga"))))
+                "0l3dliwynxyjvbgpmi2k8jqvkkw6fc00c8w69h6swhrkfh0ql12z"))))
     (build-system pyproject-build-system)
-    (propagated-inputs (list pybind11 python-numpy python-scipy))
-    (native-inputs (list python-setuptools-scm python-pytest))
     (arguments
      (list
       #:test-flags
       ;; Test installed package in order to find C++ modules.
       #~(list "--pyargs" "pyamg.tests")))
+    (native-inputs (list pybind11 python-pytest python-setuptools-scm))
+    (propagated-inputs (list python-numpy python-scipy))
     (home-page "https://github.com/pyamg/pyamg")
     (synopsis "Algebraic Multigrid Solvers in Python")
     (description "PyAMG is a Python library of Algebraic Multigrid
@@ -489,8 +489,7 @@ (define-public python-pyamg
 @item Krylov methods such as CG, GMRES, FGMRES, BiCGStab, MINRES, etc.
 @end itemize
 PyAMG is primarily written in Python with supporting C++ code for
-performance critical operations.
-")
+performance critical operations.")
     (license license:expat)))

 (define-public python-tspex
--8<---------------cut here---------------end--------------->8---

Pushe as 5f93aa182a32e4baecc6238c21d2538af0b18ad3

Thanks,
Oleg

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-01-21 17:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-04 15:05 [bug#66930] [PATCH] gnu: Add python-pyamg Felix Gruber
2023-11-04 15:41 ` Vinicius Monego
2024-01-21 17:44 ` bug#66930: " Sharlatan Hellseher

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.