unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#47593] [PATCH 0/6] *** Add Python Abjad v3.3 ***
@ 2021-04-04 12:16 BonfaceKilz
  2021-04-04 12:19 ` BonfaceKilz
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
  0 siblings, 2 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:16 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

Hi all! This patch set adds Python Abjad and it's deps to guix. Reviews are
welcome!

BonfaceKilz (6):
  gnu: python-xyz: Add python-roman.
  gnu: python-check: Add python-pytest-helpers-namespace.
  gnu: python-xyz: Add python-uqbar.
  gnu: python-xyz: Add python-setuptools-declarative-requirements.
  gnu: python-xyz: Add python-quicktions.
  gnu: python-xyz: Add python-abjad.

 gnu/packages/check.scm      |  25 ++++++
 gnu/packages/python-xyz.scm | 171 +++++++++++++++++++++++++++++++++++-
 2 files changed, 195 insertions(+), 1 deletion(-)

-- 
2.31.0





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

* [bug#47593] [PATCH 0/6] *** Add Python Abjad v3.3 ***
  2021-04-04 12:16 [bug#47593] [PATCH 0/6] *** Add Python Abjad v3.3 *** BonfaceKilz
@ 2021-04-04 12:19 ` BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman BonfaceKilz
                     ` (5 more replies)
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
  1 sibling, 6 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:19 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

Hi all! This patch set adds Python Abjad and it's deps to guix. Reviews are
welcome!

BonfaceKilz (6):
  gnu: python-xyz: Add python-roman.
  gnu: python-check: Add python-pytest-helpers-namespace.
  gnu: python-xyz: Add python-uqbar.
  gnu: python-xyz: Add python-setuptools-declarative-requirements.
  gnu: python-xyz: Add python-quicktions.
  gnu: python-xyz: Add python-abjad.

 gnu/packages/check.scm      |  25 ++++++
 gnu/packages/python-xyz.scm | 171 +++++++++++++++++++++++++++++++++++-
 2 files changed, 195 insertions(+), 1 deletion(-)

-- 
2.31.0





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

* [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman.
  2021-04-04 12:19 ` BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-13 13:14     ` Efraim Flashner
  2021-04-04 12:20   ` [bug#47593] [PATCH 2/6] gnu: python-check: Add python-pytest-helpers-namespace BonfaceKilz
                     ` (4 subsequent siblings)
  5 siblings, 1 reply; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/python-xyz.scm (python-roman): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 74aee4a3c2..b69ea2e32a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24239,3 +24239,22 @@ number of words, syllables, and sentences.")
      "This package provides a Python library that can parse OPML, FOAF, and
 iGoogle subscription lists.")
     (license license:expat)))
+
+(define-public python-roman
+  (package
+    (name "python-roman")
+    (version "3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "roman" version))
+       (sha256
+        (base32
+         "0gyp2bmw47jgpm8j64gydzqq838bgxz5gh6cm57lxlr7p26sqiic"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/zopefoundation/roman")
+    (synopsis "Integer to Roman numerals converter")
+    (description
+     "Small helper library to convert arabic to roman numerals.")
+    (license license:psfl)))
-- 
2.31.0





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

* [bug#47593] [PATCH 2/6] gnu: python-check: Add python-pytest-helpers-namespace.
  2021-04-04 12:19 ` BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar BonfaceKilz
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/check.scm (python-pytest-helpers-namespace): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/check.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 7c95ea6950..13a57c5201 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -36,6 +36,7 @@
 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2878,3 +2879,27 @@ system.  The code under test requires no modification to work with pyfakefs.")
     (description "Aiounittest is a library that helps write tests using
 asynchronous code in Python (asyncio).")
     (license license:expat)))
+
+(define-public python-pytest-helpers-namespace
+  (package
+    (name "python-pytest-helpers-namespace")
+    (version "2021.3.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pytest-helpers-namespace" version))
+       (sha256
+        (base32
+         "0pyj2d45zagmzlajzqdnkw5yz8k49pkihbydsqkzm413qnkzb38q"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-setuptools-declarative-requirements"
+        ,python-setuptools-declarative-requirements)))
+    (home-page
+     "https://github.com/saltstack/pytest-helpers-namespace")
+    (synopsis "Pytest Helpers Namespace Plugin")
+    (description "Pytest Helpers Namespace Plugin provides a helpers pytest
+namespace which can be used to register helper functions without requiring
+someone to import them in their actual tests to use them.")
+    (license license:asl2.0)))
-- 
2.31.0





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

* [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar.
  2021-04-04 12:19 ` BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 2/6] gnu: python-check: Add python-pytest-helpers-namespace BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-13 13:14     ` Efraim Flashner
  2021-04-04 12:20   ` [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements BonfaceKilz
                     ` (2 subsequent siblings)
  5 siblings, 1 reply; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/python-xyz.scm (python-uqbar): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 52 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 51 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b69ea2e32a..63eecb591f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -88,7 +88,7 @@
 ;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
 ;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
 ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
-;;; Copyright © 2020 Bonface Munyoki Kilyungi <bonfacemunyoki@gmail.com>
+;;; Copyright © 2020, 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
 ;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
 ;;; Copyright © 2020 Diego N. Barbato <dnbarbato@posteo.de>
 ;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
@@ -24258,3 +24258,53 @@ iGoogle subscription lists.")
     (description
      "Small helper library to convert arabic to roman numerals.")
     (license license:psfl)))
+
+(define-public python-uqbar
+  (package
+    (name "python-uqbar")
+    (version "0.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append
+         "https://github.com/josiah-wolf-oberholtzer/"
+         "uqbar/archive/refs/tags/v" version ".tar.gz"))
+       (sha256
+        (base32
+         "02kfvwh94ca0y3hsfrc071ga3g3vqflhyv4w4hif34dyj2skvpa8"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda _
+             (substitute* "setup.py"
+               ;; Latest versions of sphink-rtd-theme require npm to build.
+               (("sphinx-rtd-theme >= 0.4.0") "sphinx-rtd-theme >= 0.2.4")
+               (("black == 19.10b0") "black >= 19.10b0"))
+             #t))
+         (replace 'check
+           (lambda _
+             (invoke "python" "-m" "pytest" "tests")
+             #t)))))
+    (propagated-inputs
+     `(("graphviz" ,graphviz)
+       ("python-black" ,python-black)
+       ("python-sphinx" ,python-sphinx)
+       ("python-sphinx-rtd-theme"
+        ,python-sphinx-rtd-theme)
+       ("python-unidecode" ,python-unidecode)))
+    (native-inputs
+     `(("python-flake8" ,python-flake8)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (home-page
+     "https://github.com/josiah-wolf-oberholtzer/uqbar")
+    (synopsis
+     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
+    (description
+     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
+    (license license:expat)))
-- 
2.31.0





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

* [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements.
  2021-04-04 12:19 ` BonfaceKilz
                     ` (2 preceding siblings ...)
  2021-04-04 12:20   ` [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-13 13:14     ` Efraim Flashner
  2021-04-04 12:20   ` [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions BonfaceKilz
  2021-04-04 12:20   ` [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad BonfaceKilz
  5 siblings, 1 reply; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/python-xyz.scm (python-setuptools-declarative-requirements):
New variable.
---
 gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 63eecb591f..8ecf5dadc2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24308,3 +24308,31 @@ iGoogle subscription lists.")
     (description
      "Tools for building documentation with Sphinx, Graphviz and LaTeX")
     (license license:expat)))
+
+(define-public python-setuptools-declarative-requirements
+  (package
+    (name "python-setuptools-declarative-requirements")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri
+             "setuptools-declarative-requirements"
+             version))
+       (sha256
+        (base32
+         "1l8zmcnp9h8sp8hsw7b81djaa1a9yig0y7i4phh5pihqz1gdn7yi"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-setuptools" ,python-setuptools)
+       ("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-toml" ,python-toml)
+       ("python-wheel" ,python-wheel)))
+    (home-page
+     "https://github.com/s0undt3ch/setuptools-declarative-requirements")
+    (synopsis
+     "File support for setuptools declarative setup.cfg")
+    (description
+     "File support for setuptools declarative setup.cfg")
+    (license license:asl2.0)))
-- 
2.31.0





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

* [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions.
  2021-04-04 12:19 ` BonfaceKilz
                     ` (3 preceding siblings ...)
  2021-04-04 12:20   ` [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-13 13:14     ` Efraim Flashner
  2021-04-04 12:20   ` [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad BonfaceKilz
  5 siblings, 1 reply; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/python-xyz.scm (python-quicktions): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8ecf5dadc2..e87ba6b6b6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24336,3 +24336,23 @@ iGoogle subscription lists.")
     (description
      "File support for setuptools declarative setup.cfg")
     (license license:asl2.0)))
+
+(define-public python-quicktions
+  (package
+    (name "python-quicktions")
+    (version "1.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "quicktions" version))
+       (sha256
+        (base32
+         "1px21a6x527i1bsr2p6bbf3jziqpvd1vjkvvzh13gsy4iip0yvzn"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/scoder/quicktions")
+    (synopsis
+     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
+    (description
+     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
+    (license license:psfl)))
-- 
2.31.0





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

* [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad.
  2021-04-04 12:19 ` BonfaceKilz
                     ` (4 preceding siblings ...)
  2021-04-04 12:20   ` [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions BonfaceKilz
@ 2021-04-04 12:20   ` BonfaceKilz
  2021-04-13 13:14     ` Efraim Flashner
  5 siblings, 1 reply; 30+ messages in thread
From: BonfaceKilz @ 2021-04-04 12:20 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart

* gnu/packages/python-xyz.scm (python-abjad): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e87ba6b6b6..baa8534d7a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -162,6 +162,7 @@
   #:use-module (gnu packages maths)
   #:use-module (gnu packages monitoring)
   #:use-module (gnu packages multiprecision)
+  #:use-module (gnu packages music)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages openstack)
@@ -24356,3 +24357,54 @@ iGoogle subscription lists.")
     (description
      "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
     (license license:psfl)))
+
+(define-public python-abjad
+  (package
+    (name "python-abjad")
+    (version "3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append
+         "https://github.com/Abjad/abjad/archive/refs/tags/v"
+         version ".tar.gz"))
+       (sha256
+        (base32
+         "0dvj40g8kq1jdp09gb2chxxb7959vxv5h4m8ywg4qigsw3f11xnx"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-source
+           (lambda _
+             (substitute* "setup.py"
+               (("uqbar>=0.4.4, <0.5.0") "uqbar>=0.4.4, <=0.5.1")
+               (("pytest>=5.4.3") "pytest>=5.3"))
+             #t))
+         (replace 'check
+           (lambda _
+             ;; See: https://stackoverflow.com/a/34140498
+             (invoke "python" "-m" "pytest" "tests")
+             #t)))))
+    (propagated-inputs
+     `(("lilypond" ,lilypond) ;; Required for tests to pass!
+       ("python-black" ,python-black)
+       ("python-flake8" ,python-flake8)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-ply" ,python-ply)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-quicktions" ,python-quicktions)
+       ("python-roman" ,python-roman)
+       ("python-six" ,python-six)
+       ("python-sphinx-autodoc-typehints"
+        ,python-sphinx-autodoc-typehints)
+       ("python-uqbar" ,python-uqbar)))
+    (home-page "https://abjad.github.io")
+    (synopsis
+     "Abjad is a Python API for building LilyPond files.")
+    (description
+     "Abjad is a Python API for building LilyPond files.")
+    (license license:expat)))
-- 
2.31.0





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

* [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman.
  2021-04-04 12:20   ` [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman BonfaceKilz
@ 2021-04-13 13:14     ` Efraim Flashner
  2021-04-13 20:12       ` Bonface Munyoki K.
  0 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-13 13:14 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: 47593, jgart

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

As noted elsewhere, it would be better if this weren't added to the
bottom of the module. It increases the chances of merge conflicts.

On Sun, Apr 04, 2021 at 03:20:00PM +0300, BonfaceKilz wrote:
> * gnu/packages/python-xyz.scm (python-roman): New variable.
> 
> Co-authored-by: jgart <jgart@dismail.de>
> ---
>  gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 74aee4a3c2..b69ea2e32a 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -24239,3 +24239,22 @@ number of words, syllables, and sentences.")
>       "This package provides a Python library that can parse OPML, FOAF, and
>  iGoogle subscription lists.")
>      (license license:expat)))
> +
> +(define-public python-roman
> +  (package
> +    (name "python-roman")
> +    (version "3.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri "roman" version))
> +       (sha256
> +        (base32
> +         "0gyp2bmw47jgpm8j64gydzqq838bgxz5gh6cm57lxlr7p26sqiic"))))
> +    (build-system python-build-system)
> +    (home-page
> +     "https://github.com/zopefoundation/roman")
> +    (synopsis "Integer to Roman numerals converter")
> +    (description
> +     "Small helper library to convert arabic to roman numerals.")

This package provides a small helper library to convert Arabic Numbers
to Roman Numerals.

> +    (license license:psfl)))
> -- 
> 2.31.0
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar.
  2021-04-04 12:20   ` [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar BonfaceKilz
@ 2021-04-13 13:14     ` Efraim Flashner
  2021-04-13 20:52       ` Bonface Munyoki K.
  0 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-13 13:14 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: 47593, jgart

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

I haven't tried building this package yet. The sphinx packages are in
sphinx.scm and the graphviz packages are in graphviz.scm. I think I
would put it in graphviz.

On Sun, Apr 04, 2021 at 03:20:02PM +0300, BonfaceKilz wrote:
> * gnu/packages/python-xyz.scm (python-uqbar): New variable.
> 
> Co-authored-by: jgart <jgart@dismail.de>
> ---
>  gnu/packages/python-xyz.scm | 52 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 51 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index b69ea2e32a..63eecb591f 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -88,7 +88,7 @@
>  ;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
>  ;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
>  ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
> -;;; Copyright © 2020 Bonface Munyoki Kilyungi <bonfacemunyoki@gmail.com>
> +;;; Copyright © 2020, 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
>  ;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
>  ;;; Copyright © 2020 Diego N. Barbato <dnbarbato@posteo.de>
>  ;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
> @@ -24258,3 +24258,53 @@ iGoogle subscription lists.")
>      (description
>       "Small helper library to convert arabic to roman numerals.")
>      (license license:psfl)))
> +
> +(define-public python-uqbar
> +  (package
> +    (name "python-uqbar")
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri
> +        (string-append
> +         "https://github.com/josiah-wolf-oberholtzer/"
> +         "uqbar/archive/refs/tags/v" version ".tar.gz"))

guix lint should've caught this. If the pypi version from 'guix import
ppyi uqbar' doesn't work for building then you should use git-fetch to
download the source. The github archive URLs tend to get regenerated
from time to time.

> +       (sha256
> +        (base32
> +         "02kfvwh94ca0y3hsfrc071ga3g3vqflhyv4w4hif34dyj2skvpa8"))))
> +    (build-system python-build-system)
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch
> +           (lambda _
> +             (substitute* "setup.py"
> +               ;; Latest versions of sphink-rtd-theme require npm to build.
> +               (("sphinx-rtd-theme >= 0.4.0") "sphinx-rtd-theme >= 0.2.4")
> +               (("black == 19.10b0") "black >= 19.10b0"))
> +             #t))
> +         (replace 'check
> +           (lambda _
> +             (invoke "python" "-m" "pytest" "tests")

We want the ability to skip the tests, so this should be
(lambda* (#:key tests? #:allow-other-keys)
  (when tests?
    (invoke ...

> +             #t)))))
> +    (propagated-inputs
> +     `(("graphviz" ,graphviz)

Is it possible to substitute the actual calls to the graphviz binaries
in the package? We don't want to have to propagate non-python packages.

> +       ("python-black" ,python-black)
> +       ("python-sphinx" ,python-sphinx)
> +       ("python-sphinx-rtd-theme"
> +        ,python-sphinx-rtd-theme)
> +       ("python-unidecode" ,python-unidecode)))
> +    (native-inputs
> +     `(("python-flake8" ,python-flake8)
> +       ("python-isort" ,python-isort)
> +       ("python-mypy" ,python-mypy)
> +       ("python-pytest" ,python-pytest)
> +       ("python-pytest-cov" ,python-pytest-cov)))
> +    (home-page
> +     "https://github.com/josiah-wolf-oberholtzer/uqbar")
> +    (synopsis
> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
> +    (description
> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")

This should be a full sentence.

> +    (license license:expat)))
> -- 
> 2.31.0
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements.
  2021-04-04 12:20   ` [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements BonfaceKilz
@ 2021-04-13 13:14     ` Efraim Flashner
  2021-04-13 20:53       ` Bonface Munyoki K.
  0 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-13 13:14 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: 47593, jgart

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

It would be best to put this package definition near the other
python-setuptools-* package definitions.

On Sun, Apr 04, 2021 at 03:20:03PM +0300, BonfaceKilz wrote:
> * gnu/packages/python-xyz.scm (python-setuptools-declarative-requirements):
> New variable.
> ---
>  gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 63eecb591f..8ecf5dadc2 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -24308,3 +24308,31 @@ iGoogle subscription lists.")
>      (description
>       "Tools for building documentation with Sphinx, Graphviz and LaTeX")
>      (license license:expat)))
> +
> +(define-public python-setuptools-declarative-requirements
> +  (package
> +    (name "python-setuptools-declarative-requirements")
> +    (version "1.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri
> +             "setuptools-declarative-requirements"
> +             version))
> +       (sha256
> +        (base32
> +         "1l8zmcnp9h8sp8hsw7b81djaa1a9yig0y7i4phh5pihqz1gdn7yi"))))
> +    (build-system python-build-system)
> +    (propagated-inputs
> +     `(("python-pytest" ,python-pytest)
> +       ("python-setuptools" ,python-setuptools)
> +       ("python-setuptools-scm" ,python-setuptools-scm)
> +       ("python-toml" ,python-toml)
> +       ("python-wheel" ,python-wheel)))
> +    (home-page
> +     "https://github.com/s0undt3ch/setuptools-declarative-requirements")
> +    (synopsis
> +     "File support for setuptools declarative setup.cfg")
> +    (description
> +     "File support for setuptools declarative setup.cfg")

This should be a full sentence.

> +    (license license:asl2.0)))
> -- 
> 2.31.0
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions.
  2021-04-04 12:20   ` [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions BonfaceKilz
@ 2021-04-13 13:14     ` Efraim Flashner
  2021-04-13 21:10       ` Bonface Munyoki K.
  0 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-13 13:14 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: 47593, jgart

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

On Sun, Apr 04, 2021 at 03:20:04PM +0300, BonfaceKilz wrote:
> * gnu/packages/python-xyz.scm (python-quicktions): New variable.
> 
> Co-authored-by: jgart <jgart@dismail.de>
> ---
>  gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 8ecf5dadc2..e87ba6b6b6 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -24336,3 +24336,23 @@ iGoogle subscription lists.")
>      (description
>       "File support for setuptools declarative setup.cfg")
>      (license license:asl2.0)))
> +
> +(define-public python-quicktions
> +  (package
> +    (name "python-quicktions")
> +    (version "1.11")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri "quicktions" version))
> +       (sha256
> +        (base32
> +         "1px21a6x527i1bsr2p6bbf3jziqpvd1vjkvvzh13gsy4iip0yvzn"))))
> +    (build-system python-build-system)
> +    (home-page
> +     "https://github.com/scoder/quicktions")
> +    (synopsis
> +     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")

I'd trim this to 'Fast fractions data type for rational numbers'

> +    (description
> +     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")

And this I'd change to 'This package provides fast fractions data type
for rational numbers.  It is the cythonized version of
@quote{fractions.Fraction}.'

> +    (license license:psfl)))
> -- 
> 2.31.0
> 

Speaking of cython, you should add a snippet to the source to remove any
cythionized source and make sure those files get rebuilt during the
build phase. Looking at setup.py it looks like you should remove
src/quictions.c and I think it tries to cythonize automatically.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad.
  2021-04-04 12:20   ` [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad BonfaceKilz
@ 2021-04-13 13:14     ` Efraim Flashner
  2021-04-13 21:00       ` Bonface Munyoki K.
  0 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-13 13:14 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: 47593, jgart

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

I would put this in music.scm near lilypond.

On Sun, Apr 04, 2021 at 03:20:05PM +0300, BonfaceKilz wrote:
> * gnu/packages/python-xyz.scm (python-abjad): New variable.
> 
> Co-authored-by: jgart <jgart@dismail.de>
> ---
>  gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 52 insertions(+)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index e87ba6b6b6..baa8534d7a 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -162,6 +162,7 @@
>    #:use-module (gnu packages maths)
>    #:use-module (gnu packages monitoring)
>    #:use-module (gnu packages multiprecision)
> +  #:use-module (gnu packages music)
>    #:use-module (gnu packages networking)
>    #:use-module (gnu packages ncurses)
>    #:use-module (gnu packages openstack)
> @@ -24356,3 +24357,54 @@ iGoogle subscription lists.")
>      (description
>       "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
>      (license license:psfl)))
> +

If this is a package that would be installed then you can change the
name to abjad, no need to keep the python prefix.

> +(define-public python-abjad
> +  (package
> +    (name "python-abjad")
> +    (version "3.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri
> +        (string-append
> +         "https://github.com/Abjad/abjad/archive/refs/tags/v"
> +         version ".tar.gz"))

This should be a pypi URI or be downloaded using git-fetch

> +       (sha256
> +        (base32
> +         "0dvj40g8kq1jdp09gb2chxxb7959vxv5h4m8ywg4qigsw3f11xnx"))))
> +    (build-system python-build-system)
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-source
> +           (lambda _
> +             (substitute* "setup.py"
> +               (("uqbar>=0.4.4, <0.5.0") "uqbar>=0.4.4, <=0.5.1")

I would just take off the <0.5.0 and not try to make it just high enough
to include the version packaged.

> +               (("pytest>=5.4.3") "pytest>=5.3"))

We also have pytest-6. Of course this is also fine.

> +             #t))
> +         (replace 'check
> +           (lambda _

(lambda* (#:key tests? #:allow-other-keys)
  (when tests?

> +             ;; See: https://stackoverflow.com/a/34140498
> +             (invoke "python" "-m" "pytest" "tests")
> +             #t)))))

I'm sure that not all of these need to be propagated. The source should
be patched to refer to lilypond and I'm guessing most of the rest can
either be inputs (they'll get wrapped with the python wrapper) or
native-inputs if they're only needed for tests.

> +    (propagated-inputs
> +     `(("lilypond" ,lilypond) ;; Required for tests to pass!
> +       ("python-black" ,python-black)
> +       ("python-flake8" ,python-flake8)
> +       ("python-isort" ,python-isort)
> +       ("python-mypy" ,python-mypy)
> +       ("python-ply" ,python-ply)
> +       ("python-pytest" ,python-pytest)
> +       ("python-pytest-cov" ,python-pytest-cov)
> +       ("python-quicktions" ,python-quicktions)
> +       ("python-roman" ,python-roman)
> +       ("python-six" ,python-six)
> +       ("python-sphinx-autodoc-typehints"
> +        ,python-sphinx-autodoc-typehints)
> +       ("python-uqbar" ,python-uqbar)))
> +    (home-page "https://abjad.github.io")
> +    (synopsis
> +     "Abjad is a Python API for building LilyPond files.")

I'd shorten this to "Python API for building LilyPind files"

> +    (description
> +     "Abjad is a Python API for building LilyPond files.")
> +    (license license:expat)))
> -- 
> 2.31.0
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman.
  2021-04-13 13:14     ` Efraim Flashner
@ 2021-04-13 20:12       ` Bonface Munyoki K.
  0 siblings, 0 replies; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-13 20:12 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47593, jgart

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

Efraim Flashner <efraim@flashner.co.il> writes:

> As noted elsewhere, it would be better if this weren't added to the
> bottom of the module. It increases the chances of merge conflicts.
>
Sure!
> On Sun, Apr 04, 2021 at 03:20:00PM +0300, BonfaceKilz wrote:
>> * gnu/packages/python-xyz.scm (python-roman): New variable.
>> 
>> Co-authored-by: jgart <jgart@dismail.de>
>> ---
>>  gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
>>  1 file changed, 19 insertions(+)
>> 
>> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
>> index 74aee4a3c2..b69ea2e32a 100644
>> --- a/gnu/packages/python-xyz.scm
>> +++ b/gnu/packages/python-xyz.scm
>> @@ -24239,3 +24239,22 @@ number of words, syllables, and sentences.")
>>       "This package provides a Python library that can parse OPML, FOAF, and
>>  iGoogle subscription lists.")
>>      (license license:expat)))
>> +
>> +(define-public python-roman
>> +  (package
>> +    (name "python-roman")
>> +    (version "3.3")
>> +    (source
>> +     (origin
>> +       (method url-fetch)
>> +       (uri (pypi-uri "roman" version))
>> +       (sha256
>> +        (base32
>> +         "0gyp2bmw47jgpm8j64gydzqq838bgxz5gh6cm57lxlr7p26sqiic"))))
>> +    (build-system python-build-system)
>> +    (home-page
>> +     "https://github.com/zopefoundation/roman")
>> +    (synopsis "Integer to Roman numerals converter")
>> +    (description
>> +     "Small helper library to convert arabic to roman numerals.")
>
> This package provides a small helper library to convert Arabic Numbers
> to Roman Numerals.
>
This makes sense...
>> +    (license license:psfl)))
>> -- 
>> 2.31.0
>> 
>> 
>> 
>> 

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

* [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar.
  2021-04-13 13:14     ` Efraim Flashner
@ 2021-04-13 20:52       ` Bonface Munyoki K.
  2021-04-14 15:14         ` Efraim Flashner
  0 siblings, 1 reply; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-13 20:52 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47593, jgart

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

Efraim Flashner <efraim@flashner.co.il> writes:

> I haven't tried building this package yet. The sphinx packages are in
> sphinx.scm and the graphviz packages are in graphviz.scm. I think I
> would put it in graphviz.
>

Now that you've pointed it out, I see it! That
makes sense.

[...]

> guix lint should've caught this.

I seem to have skipped doing this. I need to find
a way to integrating "guix lint" to my Emacs
workflow since I seem to always somehow forget to
do this.

> If the pypi version from 'guix import
> ppyi uqbar' doesn't work for building then you should use git-fetch to
> download the source. The github archive URLs tend to get regenerated
> from time to time.

I went with the GitHub version since the pypi version
doesn't have tests. So in such cases, is it still
preferable to use the pypi version?

>> +       (sha256
>> +        (base32
>> +         "02kfvwh94ca0y3hsfrc071ga3g3vqflhyv4w4hif34dyj2skvpa8"))))
>> +    (build-system python-build-system)
>> +    (arguments
>> +     `(#:phases
>> +       (modify-phases %standard-phases
>> +         (add-after 'unpack 'patch
>> +           (lambda _
>> +             (substitute* "setup.py"
>> +               ;; Latest versions of sphink-rtd-theme require npm to build.
>> +               (("sphinx-rtd-theme >= 0.4.0") "sphinx-rtd-theme >= 0.2.4")
>> +               (("black == 19.10b0") "black >= 19.10b0"))
>> +             #t))
>> +         (replace 'check
>> +           (lambda _
>> +             (invoke "python" "-m" "pytest" "tests")
>
> We want the ability to skip the tests, so this should be
> (lambda* (#:key tests? #:allow-other-keys)
>   (when tests?
>     (invoke ...
>

Never knew this! Learnt something new. Thanks!

>> +             #t)))))
>> +    (propagated-inputs
>> +     `(("graphviz" ,graphviz)
>
> Is it possible to substitute the actual calls to the graphviz binaries
> in the package?

Not really. However...

> We don't want to have to propagate non-python packages.
>

... We could add the graphviz to native
inputs since it's only required at build-time when
running one of the tests.

>> +       ("python-black" ,python-black)
>> +       ("python-sphinx" ,python-sphinx)
>> +       ("python-sphinx-rtd-theme"
>> +        ,python-sphinx-rtd-theme)
>> +       ("python-unidecode" ,python-unidecode)))
>> +    (native-inputs
>> +     `(("python-flake8" ,python-flake8)
>> +       ("python-isort" ,python-isort)
>> +       ("python-mypy" ,python-mypy)
>> +       ("python-pytest" ,python-pytest)
>> +       ("python-pytest-cov" ,python-pytest-cov)))
>> +    (home-page
>> +     "https://github.com/josiah-wolf-oberholtzer/uqbar")
>> +    (synopsis
>> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
>> +    (description
>> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
>
> This should be a full sentence.
>

Noted :)
>> +    (license license:expat)))
>> -- 
>> 2.31.0
>> 
>> 
>> 
>> 

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

* [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements.
  2021-04-13 13:14     ` Efraim Flashner
@ 2021-04-13 20:53       ` Bonface Munyoki K.
  0 siblings, 0 replies; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-13 20:53 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47593, jgart

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

Efraim Flashner <efraim@flashner.co.il> writes:

> It would be best to put this package definition near the other
> python-setuptools-* package definitions.
>
Noted!

[...]

>> +    (home-page
>> +     "https://github.com/s0undt3ch/setuptools-declarative-requirements")
>> +    (synopsis
>> +     "File support for setuptools declarative setup.cfg")
>> +    (description
>> +     "File support for setuptools declarative setup.cfg")
>
> This should be a full sentence.

Sure!

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

* [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad.
  2021-04-13 13:14     ` Efraim Flashner
@ 2021-04-13 21:00       ` Bonface Munyoki K.
  2021-04-14 15:19         ` Efraim Flashner
  0 siblings, 1 reply; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-13 21:00 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47593, jgart

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

Efraim Flashner <efraim@flashner.co.il> writes:

> I would put this in music.scm near lilypond.
>

Makes sense.

[...]
>
> If this is a package that would be installed then you can change the
> name to abjad, no need to keep the python prefix.
>

I don't quite get this. Do you mean a package that
would be installed and run as some executable as
opposed to a library?

>> +(define-public python-abjad
>> +  (package
>> +    (name "python-abjad")
>> +    (version "3.3")
>> +    (source
>> +     (origin
>> +       (method url-fetch)
>> +       (uri
>> +        (string-append
>> +         "https://github.com/Abjad/abjad/archive/refs/tags/v"
>> +         version ".tar.gz"))
>
> This should be a pypi URI or be downloaded using git-fetch
>
Noted.

>> +       (sha256
>> +        (base32
>> +         "0dvj40g8kq1jdp09gb2chxxb7959vxv5h4m8ywg4qigsw3f11xnx"))))
>> +    (build-system python-build-system)
>> +    (arguments
>> +     `(#:phases
>> +       (modify-phases %standard-phases
>> +         (add-after 'unpack 'patch-source
>> +           (lambda _
>> +             (substitute* "setup.py"
>> +               (("uqbar>=0.4.4, <0.5.0") "uqbar>=0.4.4, <=0.5.1")
>
> I would just take off the <0.5.0 and not try to make it just high enough
> to include the version packaged.
>
Makes sense!
>> +               (("pytest>=5.4.3") "pytest>=5.3"))
>
> We also have pytest-6. Of course this is also fine.
>
Sure!
>> +             #t))
>> +         (replace 'check
>> +           (lambda _
>
> (lambda* (#:key tests? #:allow-other-keys)
>   (when tests?
>
Noted.
>> +             ;; See: https://stackoverflow.com/a/34140498
>> +             (invoke "python" "-m" "pytest" "tests")
>> +             #t)))))
>
> I'm sure that not all of these need to be propagated. The source should
> be patched to refer to lilypond and I'm guessing most of the rest can
> either be inputs (they'll get wrapped with the python wrapper) or
> native-inputs if they're only needed for tests.
>

Makes a lot of sense!

>> +    (propagated-inputs
>> +     `(("lilypond" ,lilypond) ;; Required for tests to pass!
>> +       ("python-black" ,python-black)
>> +       ("python-flake8" ,python-flake8)
>> +       ("python-isort" ,python-isort)
>> +       ("python-mypy" ,python-mypy)
>> +       ("python-ply" ,python-ply)
>> +       ("python-pytest" ,python-pytest)
>> +       ("python-pytest-cov" ,python-pytest-cov)
>> +       ("python-quicktions" ,python-quicktions)
>> +       ("python-roman" ,python-roman)
>> +       ("python-six" ,python-six)
>> +       ("python-sphinx-autodoc-typehints"
>> +        ,python-sphinx-autodoc-typehints)
>> +       ("python-uqbar" ,python-uqbar)))
>> +    (home-page "https://abjad.github.io")
>> +    (synopsis
>> +     "Abjad is a Python API for building LilyPond files.")
>
> I'd shorten this to "Python API for building LilyPind files"
>

Thanks for the suggestions!

>> +    (description
>> +     "Abjad is a Python API for building LilyPond files.")
>> +    (license license:expat)))
>> -- 
>> 2.31.0
>> 
>> 
>> 
>> 

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

* [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions.
  2021-04-13 13:14     ` Efraim Flashner
@ 2021-04-13 21:10       ` Bonface Munyoki K.
  2021-04-14 15:17         ` Efraim Flashner
  0 siblings, 1 reply; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-13 21:10 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47593, jgart

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

Efraim Flashner <efraim@flashner.co.il> writes:

> On Sun, Apr 04, 2021 at 03:20:04PM +0300, BonfaceKilz wrote:
>> * gnu/packages/python-xyz.scm (python-quicktions): New variable.
>> 
>> Co-authored-by: jgart <jgart@dismail.de>
>> ---
[..]
>> +    (synopsis
>> +     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
>
> I'd trim this to 'Fast fractions data type for rational numbers'
>

Noted.

>> +    (description
>> + "Fast fractions data type for rational
>> numbers. Cythonized version of
>> 'fractions.Fraction'.")
>
> And this I'd change to 'This package provides fast fractions data type
> for rational numbers.  It is the cythonized version of
> @quote{fractions.Fraction}.'
>

Makes sense. What's the "@quote{}" syntax. Where
would I get more of the documentation of the
syntax to put in the description?

>> +    (license license:psfl)))
>> -- 
>> 2.31.0
>> 
>
> Speaking of cython, you should add a snippet to the source to remove any
> cythionized source and make sure those files get rebuilt during the
> build phase. Looking at setup.py it looks like you should remove
> src/quictions.c and I think it tries to cythonize automatically.

For anyone reading this(in future), the cythonized
.pyx files can stop matching CPython APIs across
Python versions. An example of that here:
https://github.com/slaypni/fastdtw/pull/40

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

* [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar.
  2021-04-13 20:52       ` Bonface Munyoki K.
@ 2021-04-14 15:14         ` Efraim Flashner
  0 siblings, 0 replies; 30+ messages in thread
From: Efraim Flashner @ 2021-04-14 15:14 UTC (permalink / raw)
  To: Bonface Munyoki K.; +Cc: 47593, jgart

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

On Tue, Apr 13, 2021 at 11:52:15PM +0300, Bonface Munyoki K. wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> > I haven't tried building this package yet. The sphinx packages are in
> > sphinx.scm and the graphviz packages are in graphviz.scm. I think I
> > would put it in graphviz.
> >
> 
> Now that you've pointed it out, I see it! That
> makes sense.
> 
> [...]
> 
> > guix lint should've caught this.
> 
> I seem to have skipped doing this. I need to find
> a way to integrating "guix lint" to my Emacs
> workflow since I seem to always somehow forget to
> do this.
> 
> > If the pypi version from 'guix import
> > ppyi uqbar' doesn't work for building then you should use git-fetch to
> > download the source. The github archive URLs tend to get regenerated
> > from time to time.
> 
> I went with the GitHub version since the pypi version
> doesn't have tests. So in such cases, is it still
> preferable to use the pypi version?

In that case the git version is normally preferable so we can actually
run the tests, but it should use git-fetch to download the sources.

> >> +       (sha256
> >> +        (base32
> >> +         "02kfvwh94ca0y3hsfrc071ga3g3vqflhyv4w4hif34dyj2skvpa8"))))
> >> +    (build-system python-build-system)
> >> +    (arguments
> >> +     `(#:phases
> >> +       (modify-phases %standard-phases
> >> +         (add-after 'unpack 'patch
> >> +           (lambda _
> >> +             (substitute* "setup.py"
> >> +               ;; Latest versions of sphink-rtd-theme require npm to build.
> >> +               (("sphinx-rtd-theme >= 0.4.0") "sphinx-rtd-theme >= 0.2.4")
> >> +               (("black == 19.10b0") "black >= 19.10b0"))
> >> +             #t))
> >> +         (replace 'check
> >> +           (lambda _
> >> +             (invoke "python" "-m" "pytest" "tests")
> >
> > We want the ability to skip the tests, so this should be
> > (lambda* (#:key tests? #:allow-other-keys)
> >   (when tests?
> >     (invoke ...
> >
> 
> Never knew this! Learnt something new. Thanks!
> 
> >> +             #t)))))
> >> +    (propagated-inputs
> >> +     `(("graphviz" ,graphviz)
> >
> > Is it possible to substitute the actual calls to the graphviz binaries
> > in the package?
> 
> Not really. However...
> 
> > We don't want to have to propagate non-python packages.
> >
> 
> ... We could add the graphviz to native
> inputs since it's only required at build-time when
> running one of the tests.
> 
> >> +       ("python-black" ,python-black)
> >> +       ("python-sphinx" ,python-sphinx)
> >> +       ("python-sphinx-rtd-theme"
> >> +        ,python-sphinx-rtd-theme)
> >> +       ("python-unidecode" ,python-unidecode)))
> >> +    (native-inputs
> >> +     `(("python-flake8" ,python-flake8)
> >> +       ("python-isort" ,python-isort)
> >> +       ("python-mypy" ,python-mypy)
> >> +       ("python-pytest" ,python-pytest)
> >> +       ("python-pytest-cov" ,python-pytest-cov)))
> >> +    (home-page
> >> +     "https://github.com/josiah-wolf-oberholtzer/uqbar")
> >> +    (synopsis
> >> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
> >> +    (description
> >> +     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
> >
> > This should be a full sentence.
> >
> 
> Noted :)
> >> +    (license license:expat)))
> >> -- 
> >> 2.31.0
> >> 
> >> 
> >> 
> >> 
> 
> -- 
> Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
> Humble GNU Emacs User / Bearer of scheme-y parens
> Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz



-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions.
  2021-04-13 21:10       ` Bonface Munyoki K.
@ 2021-04-14 15:17         ` Efraim Flashner
  0 siblings, 0 replies; 30+ messages in thread
From: Efraim Flashner @ 2021-04-14 15:17 UTC (permalink / raw)
  To: Bonface Munyoki K.; +Cc: 47593, jgart

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

On Wed, Apr 14, 2021 at 12:10:31AM +0300, Bonface Munyoki K. wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> > On Sun, Apr 04, 2021 at 03:20:04PM +0300, BonfaceKilz wrote:
> >> * gnu/packages/python-xyz.scm (python-quicktions): New variable.
> >> 
> >> Co-authored-by: jgart <jgart@dismail.de>
> >> ---
> [..]
> >> +    (synopsis
> >> +     "Fast fractions data type for rational numbers. Cythonized version of 'fractions.Fraction'.")
> >
> > I'd trim this to 'Fast fractions data type for rational numbers'
> >
> 
> Noted.
> 
> >> +    (description
> >> + "Fast fractions data type for rational
> >> numbers. Cythonized version of
> >> 'fractions.Fraction'.")
> >
> > And this I'd change to 'This package provides fast fractions data type
> > for rational numbers.  It is the cythonized version of
> > @quote{fractions.Fraction}.'
> >
> 
> Makes sense. What's the "@quote{}" syntax. Where
> would I get more of the documentation of the
> syntax to put in the description?
> 

Looks like @quote isn't actually one that we're using. I must've been
thinking of @code.

I know it's from texinfo but beyond that I'm not really sure. I normally
just copy what's available from other packages.

> >> +    (license license:psfl)))
> >> -- 
> >> 2.31.0
> >> 
> >
> > Speaking of cython, you should add a snippet to the source to remove any
> > cythionized source and make sure those files get rebuilt during the
> > build phase. Looking at setup.py it looks like you should remove
> > src/quictions.c and I think it tries to cythonize automatically.
> 
> For anyone reading this(in future), the cythonized
> .pyx files can stop matching CPython APIs across
> Python versions. An example of that here:
> https://github.com/slaypni/fastdtw/pull/40
> 
> -- 
> Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
> Humble GNU Emacs User / Bearer of scheme-y parens
> Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz



-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad.
  2021-04-13 21:00       ` Bonface Munyoki K.
@ 2021-04-14 15:19         ` Efraim Flashner
  0 siblings, 0 replies; 30+ messages in thread
From: Efraim Flashner @ 2021-04-14 15:19 UTC (permalink / raw)
  To: Bonface Munyoki K.; +Cc: 47593, jgart

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

On Wed, Apr 14, 2021 at 12:00:47AM +0300, Bonface Munyoki K. wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> > I would put this in music.scm near lilypond.
> >
> 
> Makes sense.
> 
> [...]
> >
> > If this is a package that would be installed then you can change the
> > name to abjad, no need to keep the python prefix.
> >
> 
> I don't quite get this. Do you mean a package that
> would be installed and run as some executable as
> opposed to a library?

The first package I can think of is offlineimap. 'guix import pypi
offlineimap' tries to name it python-offlineimap, but it's more likely
to be used as an actual executable rather than as a library for another
package, so we rename it back to offlineimap and put the python packages
which would have normally been in propagated-inputs in inputs instead.

> >> +(define-public python-abjad
> >> +  (package
> >> +    (name "python-abjad")
> >> +    (version "3.3")
> >> +    (source
> >> +     (origin
> >> +       (method url-fetch)
> >> +       (uri
> >> +        (string-append
> >> +         "https://github.com/Abjad/abjad/archive/refs/tags/v"
> >> +         version ".tar.gz"))
> >
> > This should be a pypi URI or be downloaded using git-fetch
> >
> Noted.
> 
> >> +       (sha256
> >> +        (base32
> >> +         "0dvj40g8kq1jdp09gb2chxxb7959vxv5h4m8ywg4qigsw3f11xnx"))))
> >> +    (build-system python-build-system)
> >> +    (arguments
> >> +     `(#:phases
> >> +       (modify-phases %standard-phases
> >> +         (add-after 'unpack 'patch-source
> >> +           (lambda _
> >> +             (substitute* "setup.py"
> >> +               (("uqbar>=0.4.4, <0.5.0") "uqbar>=0.4.4, <=0.5.1")
> >
> > I would just take off the <0.5.0 and not try to make it just high enough
> > to include the version packaged.
> >
> Makes sense!
> >> +               (("pytest>=5.4.3") "pytest>=5.3"))
> >
> > We also have pytest-6. Of course this is also fine.
> >
> Sure!
> >> +             #t))
> >> +         (replace 'check
> >> +           (lambda _
> >
> > (lambda* (#:key tests? #:allow-other-keys)
> >   (when tests?
> >
> Noted.
> >> +             ;; See: https://stackoverflow.com/a/34140498
> >> +             (invoke "python" "-m" "pytest" "tests")
> >> +             #t)))))
> >
> > I'm sure that not all of these need to be propagated. The source should
> > be patched to refer to lilypond and I'm guessing most of the rest can
> > either be inputs (they'll get wrapped with the python wrapper) or
> > native-inputs if they're only needed for tests.
> >
> 
> Makes a lot of sense!
> 
> >> +    (propagated-inputs
> >> +     `(("lilypond" ,lilypond) ;; Required for tests to pass!
> >> +       ("python-black" ,python-black)
> >> +       ("python-flake8" ,python-flake8)
> >> +       ("python-isort" ,python-isort)
> >> +       ("python-mypy" ,python-mypy)
> >> +       ("python-ply" ,python-ply)
> >> +       ("python-pytest" ,python-pytest)
> >> +       ("python-pytest-cov" ,python-pytest-cov)
> >> +       ("python-quicktions" ,python-quicktions)
> >> +       ("python-roman" ,python-roman)
> >> +       ("python-six" ,python-six)
> >> +       ("python-sphinx-autodoc-typehints"
> >> +        ,python-sphinx-autodoc-typehints)
> >> +       ("python-uqbar" ,python-uqbar)))
> >> +    (home-page "https://abjad.github.io")
> >> +    (synopsis
> >> +     "Abjad is a Python API for building LilyPond files.")
> >
> > I'd shorten this to "Python API for building LilyPind files"
> >
> 
> Thanks for the suggestions!
> 
> >> +    (description
> >> +     "Abjad is a Python API for building LilyPond files.")
> >> +    (license license:expat)))
> >> -- 
> >> 2.31.0
> >> 
> >> 
> >> 
> >> 
> 
> -- 
> Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
> Humble GNU Emacs User / Bearer of scheme-y parens
> Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz



-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH v2 0/6] gnu: python-xyz: Add python-abjad.
  2021-04-04 12:16 [bug#47593] [PATCH 0/6] *** Add Python Abjad v3.3 *** BonfaceKilz
  2021-04-04 12:19 ` BonfaceKilz
@ 2021-04-14 20:54 ` BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 1/6] gnu: Add python-roman BonfaceKilz
                     ` (6 more replies)
  1 sibling, 7 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:54 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

Find the revised patchset for the python-abjad package.

BonfaceKilz (6):
  gnu: Add python-roman.
  gnu: Add python-setuptools-declarative-requirements.
  gnu: Add python-pytest-helpers-namespace.
  gnu: Add python-uqbar.
  gnu: Add python-quicktions.
  gnu: Add abjad.

 gnu/packages/graphviz.scm     | 55 +++++++++++++++++++++++
 gnu/packages/music.scm        | 56 +++++++++++++++++++++++
 gnu/packages/python-check.scm | 35 +++++++++++++++
 gnu/packages/python-xyz.scm   | 83 +++++++++++++++++++++++++++++++++++
 4 files changed, 229 insertions(+)

-- 
2.31.1





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

* [bug#47593] [PATCH v2 1/6] gnu: Add python-roman.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
@ 2021-04-14 20:54   ` BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 2/6] gnu: Add python-setuptools-declarative-requirements BonfaceKilz
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:54 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/python-xyz.scm (python-roman): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c01993ecd7..63d4bd77e1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3029,6 +3029,26 @@ cutting and pasting that code over and over.")
 (define-public python2-kitchen
   (package-with-python2 python-kitchen))
 
+(define-public python-roman
+  (package
+    (name "python-roman")
+    (version "3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "roman" version))
+       (sha256
+        (base32
+         "0gyp2bmw47jgpm8j64gydzqq838bgxz5gh6cm57lxlr7p26sqiic"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/zopefoundation/roman")
+    (synopsis "Integer to Roman numerals converter")
+    (description
+     "This package provides a small helper library to convert Arabic Numbers
+to Roman Numerals.")
+    (license license:psfl)))
+
 (define-public python-unidecode
   (package
     (name "python-unidecode")
-- 
2.31.1





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

* [bug#47593] [PATCH v2 2/6] gnu: Add python-setuptools-declarative-requirements.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 1/6] gnu: Add python-roman BonfaceKilz
@ 2021-04-14 20:54   ` BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 3/6] gnu: Add python-pytest-helpers-namespace BonfaceKilz
                     ` (4 subsequent siblings)
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:54 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/python-xyz.scm (python-setuptools-declarative-requirements):
New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 63d4bd77e1..1f89d92ebe 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1275,6 +1275,34 @@ Python 3 support.")
                    license:asl2.0       ; packaging is dual ASL2/BSD-2
                    license:bsd-2))))
 
+(define-public python-setuptools-declarative-requirements
+  (package
+    (name "python-setuptools-declarative-requirements")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri
+             "setuptools-declarative-requirements"
+             version))
+       (sha256
+        (base32
+         "1l8zmcnp9h8sp8hsw7b81djaa1a9yig0y7i4phh5pihqz1gdn7yi"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-setuptools-scm" ,python-setuptools-scm)))
+    (propagated-inputs
+     `(("python-toml" ,python-toml)
+       ("python-wheel" ,python-wheel)))
+    (home-page
+     "https://github.com/s0undt3ch/setuptools-declarative-requirements")
+    (synopsis
+     "File support for setuptools declarative setup.cfg")
+    (description
+     "This package provides file support for setuptools declarative setup.cfg")
+    (license license:asl2.0)))
+
 ;; The setuptools provided by Python 3.7.4 is too new for Tensorflow.
 (define-public python-setuptools-for-tensorflow
   (hidden-package
-- 
2.31.1





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

* [bug#47593] [PATCH v2 3/6] gnu: Add python-pytest-helpers-namespace.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 1/6] gnu: Add python-roman BonfaceKilz
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 2/6] gnu: Add python-setuptools-declarative-requirements BonfaceKilz
@ 2021-04-14 20:54   ` BonfaceKilz
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 4/6] gnu: Add python-uqbar BonfaceKilz
                     ` (3 subsequent siblings)
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:54 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/python-check.scm (python-pytest-helpers-namespace): New
variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-check.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index bde836a931..92887ef625 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
 ;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -374,6 +375,40 @@ provides a shortcut to testing all code and documentation for a given
 sub-package.")
     (license license:bsd-3)))
 
+(define-public python-pytest-helpers-namespace
+  (package
+    (name "python-pytest-helpers-namespace")
+    (version "2021.3.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pytest-helpers-namespace" version))
+       (sha256
+        (base32
+         "0pyj2d45zagmzlajzqdnkw5yz8k49pkihbydsqkzm413qnkzb38q"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             ;; Make the installed plugin discoverable by Pytest.
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest-6)
+       ("python-setuptools" ,python-setuptools)
+       ("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-setuptools-declarative-requirements"
+        ,python-setuptools-declarative-requirements)))
+    (home-page
+     "https://github.com/saltstack/pytest-helpers-namespace")
+    (synopsis "Pytest Helpers Namespace Plugin")
+    (description "Pytest Helpers Namespace Plugin provides a helpers pytest
+namespace which can be used to register helper functions without requiring
+someone to import them in their actual tests to use them.")
+    (license license:asl2.0)))
+
 (define-public python-pytest-openfiles
   (package
     (name "python-pytest-openfiles")
-- 
2.31.1





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

* [bug#47593] [PATCH v2 4/6] gnu: Add python-uqbar.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
                     ` (2 preceding siblings ...)
  2021-04-14 20:54   ` [bug#47593] [PATCH v2 3/6] gnu: Add python-pytest-helpers-namespace BonfaceKilz
@ 2021-04-14 20:55   ` BonfaceKilz
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 5/6] gnu: Add python-quicktions BonfaceKilz
                     ` (2 subsequent siblings)
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:55 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/graphviz.scm (python-uqbar): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/graphviz.scm | 55 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm
index b5c4774d5c..29e151590e 100644
--- a/gnu/packages/graphviz.scm
+++ b/gnu/packages/graphviz.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 ;;; Copyright © 2020 Pjotr Prins <pjotr.guix@thebird.nl>
+;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -48,7 +49,9 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages tex)
@@ -242,6 +245,58 @@ structure and layout algorithms.")
 (define-public python2-pygraphviz
   (package-with-python2 python-pygraphviz))
 
+(define-public python-uqbar
+  (package
+    (name "python-uqbar")
+    (version "0.5.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/josiah-wolf-oberholtzer/uqbar")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0413nyhd8z8v3lvsgaghhafnyxg90fi1q80j1kbl21gpmpnc9a7n"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda _
+             (substitute* "setup.py"
+               ;; Latest versions of sphink-rtd-theme require npm to build.
+               (("sphinx-rtd-theme >= 0.4.0") "sphinx-rtd-theme >= 0.2.4")
+               (("black == 19.10b0") "black >= 19.10b0"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (invoke "python" "-m" "pytest" "tests"))
+             #t)))))
+    (native-inputs
+     `(("graphviz" ,graphviz)
+       ("python-black" ,python-black)
+       ("python-flake8" ,python-flake8)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-sphinx" ,python-sphinx)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (propagated-inputs
+     `(("python-sphinx-rtd-theme"
+        ,python-sphinx-rtd-theme)
+       ("python-unidecode" ,python-unidecode)))
+    (home-page
+     "https://github.com/josiah-wolf-oberholtzer/uqbar")
+    (synopsis
+     "Tools for building documentation with Sphinx, Graphviz and LaTeX")
+    (description
+     "This package contains tools for building documentation with Sphinx,
+Graphviz and LaTeX")
+    (license license:expat)))
+
 (define-public gts
   (package
     (name "gts")
-- 
2.31.1





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

* [bug#47593] [PATCH v2 5/6] gnu: Add python-quicktions.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
                     ` (3 preceding siblings ...)
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 4/6] gnu: Add python-uqbar BonfaceKilz
@ 2021-04-14 20:55   ` BonfaceKilz
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 6/6] gnu: Add abjad BonfaceKilz
  2021-04-15 11:35   ` bug#47593: [PATCH v2 0/6] gnu: python-xyz: Add python-abjad Efraim Flashner
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:55 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/python-xyz.scm (python-quicktions): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/python-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1f89d92ebe..1e7b9caa47 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24687,6 +24687,41 @@ Django template systems, the filters can be used in any environment.")
 runs on, such as a reliable machine-readable ID, or version information.")
     (license license:asl2.0)))
 
+(define-public python-quicktions
+  (package
+    (name "python-quicktions")
+    (version "1.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "quicktions" version))
+       (sha256
+        (base32
+         "1px21a6x527i1bsr2p6bbf3jziqpvd1vjkvvzh13gsy4iip0yvzn"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; This file is generated by Cython.
+           (delete-file "src/quicktions.c") #t))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'cythonize-sources
+           (lambda _
+             (with-directory-excursion "src"
+               (invoke "cython" "quicktions.pyx")))))))
+    (native-inputs
+     `(("python-cython" ,python-cython)))
+    (home-page
+     "https://github.com/scoder/quicktions")
+    (synopsis
+     "Fast fractions data type for rational numbers")
+    (description
+     "This package provides fast fractions data type for rational numbers.  It
+is the cythonized version of @code{fractions.Fraction}.")
+    (license license:psfl)))
+
 (define-public python-pathvalidate
   (package
     (name "python-pathvalidate")
-- 
2.31.1





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

* [bug#47593] [PATCH v2 6/6] gnu: Add abjad.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
                     ` (4 preceding siblings ...)
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 5/6] gnu: Add python-quicktions BonfaceKilz
@ 2021-04-14 20:55   ` BonfaceKilz
  2021-04-15 11:35   ` bug#47593: [PATCH v2 0/6] gnu: python-xyz: Add python-abjad Efraim Flashner
  6 siblings, 0 replies; 30+ messages in thread
From: BonfaceKilz @ 2021-04-14 20:55 UTC (permalink / raw)
  To: 47593; +Cc: BonfaceKilz, jgart, efraim

* gnu/packages/music.scm (abjad): New variable.

Co-authored-by: jgart <jgart@dismail.de>
---
 gnu/packages/music.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2b5f43cb14..b79c6d6a44 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -36,6 +36,7 @@
 ;;; Copyright © 2021 Leo Prikler <leo.prikler@student.tugraz.at>
 ;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -136,6 +137,7 @@
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages pulseaudio) ;libsndfile
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
@@ -143,6 +145,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages sdl)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages stb)
   #:use-module (gnu packages tcl)
@@ -1499,6 +1502,59 @@ Guile.")
     ;; more than an hour of silence, so double the max silent time.
     (properties `((max-silent-time . 7200)))))
 
+(define-public abjad
+  (package
+    (name "abjad")
+    (version "3.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+         (url "https://github.com/Abjad/abjad")
+         (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1dzf5v7pawbzkb4qxp4s5z4r3gibkk705pag83yvgzkx6fd6jf2g"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-source
+           (lambda _
+             (substitute* "setup.py"
+               (("uqbar>=0.5.1, <0.5.0") "uqbar>=0.5.0"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               ;; See: https://stackoverflow.com/a/34140498
+               (invoke "python" "-m" "pytest" "tests")
+               #t))))))
+    (native-inputs
+     `(("lilypond" ,lilypond)
+       ("python-black" ,python-black)
+       ("python-flake8" ,python-flake8)
+       ("python-iniconfig" ,python-iniconfig)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-ply" ,python-ply)
+       ("python-pytest" ,python-pytest-6)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-sphinx-autodoc-typehints"
+        ,python-sphinx-autodoc-typehints)))
+    (propagated-inputs
+     `(("python-quicktions" ,python-quicktions)
+       ("python-roman" ,python-roman)
+       ("python-six" ,python-six)
+       ("python-uqbar" ,python-uqbar)))
+    (home-page "https://abjad.github.io")
+    (synopsis
+     "Python API for building LilyPond files")
+    (description
+     "This package provides a Python API for building LilyPond files.")
+    (license license:expat)))
+
 (define-public non-sequencer
   ;; The latest tagged release is three years old and uses a custom build
   ;; system, so we take the last commit.
-- 
2.31.1





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

* bug#47593: [PATCH v2 0/6] gnu: python-xyz: Add python-abjad.
  2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
                     ` (5 preceding siblings ...)
  2021-04-14 20:55   ` [bug#47593] [PATCH v2 6/6] gnu: Add abjad BonfaceKilz
@ 2021-04-15 11:35   ` Efraim Flashner
  2021-04-15 13:32     ` [bug#47593] " Bonface Munyoki K.
  6 siblings, 1 reply; 30+ messages in thread
From: Efraim Flashner @ 2021-04-15 11:35 UTC (permalink / raw)
  To: BonfaceKilz; +Cc: jgart, 47593-done

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

Looks good! Patches pushed.


On Wed, Apr 14, 2021 at 11:54:56PM +0300, BonfaceKilz wrote:
> Find the revised patchset for the python-abjad package.
> 
> BonfaceKilz (6):
>   gnu: Add python-roman.
>   gnu: Add python-setuptools-declarative-requirements.
>   gnu: Add python-pytest-helpers-namespace.
>   gnu: Add python-uqbar.
>   gnu: Add python-quicktions.
>   gnu: Add abjad.
> 
>  gnu/packages/graphviz.scm     | 55 +++++++++++++++++++++++
>  gnu/packages/music.scm        | 56 +++++++++++++++++++++++
>  gnu/packages/python-check.scm | 35 +++++++++++++++
>  gnu/packages/python-xyz.scm   | 83 +++++++++++++++++++++++++++++++++++
>  4 files changed, 229 insertions(+)
> 
> -- 
> 2.31.1
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

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

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

* [bug#47593] [PATCH v2 0/6] gnu: python-xyz: Add python-abjad.
  2021-04-15 11:35   ` bug#47593: [PATCH v2 0/6] gnu: python-xyz: Add python-abjad Efraim Flashner
@ 2021-04-15 13:32     ` Bonface Munyoki K.
  0 siblings, 0 replies; 30+ messages in thread
From: Bonface Munyoki K. @ 2021-04-15 13:32 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: jgart, 47593-done

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

Efraim Flashner <efraim@flashner.co.il> writes:

> Looks good! Patches pushed.
>
Thanks!
>
> On Wed, Apr 14, 2021 at 11:54:56PM +0300, BonfaceKilz wrote:
>> Find the revised patchset for the python-abjad package.
>> 
>> BonfaceKilz (6):
>>   gnu: Add python-roman.
>>   gnu: Add python-setuptools-declarative-requirements.
>>   gnu: Add python-pytest-helpers-namespace.
>>   gnu: Add python-uqbar.
>>   gnu: Add python-quicktions.
>>   gnu: Add abjad.
>> 
>>  gnu/packages/graphviz.scm     | 55 +++++++++++++++++++++++
>>  gnu/packages/music.scm        | 56 +++++++++++++++++++++++
>>  gnu/packages/python-check.scm | 35 +++++++++++++++
>>  gnu/packages/python-xyz.scm   | 83 +++++++++++++++++++++++++++++++++++
>>  4 files changed, 229 insertions(+)
>> 
>> -- 
>> 2.31.1
>> 

-- 
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz

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

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

end of thread, other threads:[~2021-04-15 13:33 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-04 12:16 [bug#47593] [PATCH 0/6] *** Add Python Abjad v3.3 *** BonfaceKilz
2021-04-04 12:19 ` BonfaceKilz
2021-04-04 12:20   ` [bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman BonfaceKilz
2021-04-13 13:14     ` Efraim Flashner
2021-04-13 20:12       ` Bonface Munyoki K.
2021-04-04 12:20   ` [bug#47593] [PATCH 2/6] gnu: python-check: Add python-pytest-helpers-namespace BonfaceKilz
2021-04-04 12:20   ` [bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar BonfaceKilz
2021-04-13 13:14     ` Efraim Flashner
2021-04-13 20:52       ` Bonface Munyoki K.
2021-04-14 15:14         ` Efraim Flashner
2021-04-04 12:20   ` [bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements BonfaceKilz
2021-04-13 13:14     ` Efraim Flashner
2021-04-13 20:53       ` Bonface Munyoki K.
2021-04-04 12:20   ` [bug#47593] [PATCH 5/6] gnu: python-xyz: Add python-quicktions BonfaceKilz
2021-04-13 13:14     ` Efraim Flashner
2021-04-13 21:10       ` Bonface Munyoki K.
2021-04-14 15:17         ` Efraim Flashner
2021-04-04 12:20   ` [bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad BonfaceKilz
2021-04-13 13:14     ` Efraim Flashner
2021-04-13 21:00       ` Bonface Munyoki K.
2021-04-14 15:19         ` Efraim Flashner
2021-04-14 20:54 ` [bug#47593] [PATCH v2 0/6] " BonfaceKilz
2021-04-14 20:54   ` [bug#47593] [PATCH v2 1/6] gnu: Add python-roman BonfaceKilz
2021-04-14 20:54   ` [bug#47593] [PATCH v2 2/6] gnu: Add python-setuptools-declarative-requirements BonfaceKilz
2021-04-14 20:54   ` [bug#47593] [PATCH v2 3/6] gnu: Add python-pytest-helpers-namespace BonfaceKilz
2021-04-14 20:55   ` [bug#47593] [PATCH v2 4/6] gnu: Add python-uqbar BonfaceKilz
2021-04-14 20:55   ` [bug#47593] [PATCH v2 5/6] gnu: Add python-quicktions BonfaceKilz
2021-04-14 20:55   ` [bug#47593] [PATCH v2 6/6] gnu: Add abjad BonfaceKilz
2021-04-15 11:35   ` bug#47593: [PATCH v2 0/6] gnu: python-xyz: Add python-abjad Efraim Flashner
2021-04-15 13:32     ` [bug#47593] " Bonface Munyoki K.

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).