unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#60238] [PATCH 0/7] gnu: Add fava.
@ 2022-12-21 13:07 dan
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
                   ` (7 more replies)
  0 siblings, 8 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:07 UTC (permalink / raw)
  To: 60238

This patch series adds fava, a web interface for the double-entry bookkeeping
software Beancount.  Note that the latest version of python-cheroot is 9.0.0,
but the latest release of fava depends on python-cheroot lower than 9.  Thus,
we have to pack 8.6.0 at the moment.

dan (7):
  gnu: Add python-markdown2.
  gnu: Add python-portend.
  gnu: Add python-inflect.
  gnu: Add python-jaraco-text.
  gnu: Add python-pypytools.
  gnu: Add python-cheroot.
  gnu: Add fava.

 gnu/packages/finance.scm    |  35 ++++++++++++
 gnu/packages/python-web.scm |  29 ++++++++++
 gnu/packages/python-xyz.scm | 106 ++++++++++++++++++++++++++++++++++++
 3 files changed, 170 insertions(+)


base-commit: 7833acab0da02335941974608510c02e2d1d8069
-- 
2.38.1





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

* [bug#60238] [PATCH 1/7] gnu: Add python-markdown2.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
@ 2022-12-21 13:13 ` dan
  2022-12-21 13:13   ` [bug#60238] [PATCH 2/7] gnu: Add python-portend dan
                     ` (5 more replies)
  2023-01-15 14:37 ` [bug#60238] [PATCH 0/7] " dan
                   ` (6 subsequent siblings)
  7 siblings, 6 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:13 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-markdown2): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ee25a2d655..731fc9bbfb 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -132,6 +132,7 @@
 ;;; Copyright © 2022 Garek Dyszel <garekdyszel@disroot.org>
 ;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
 ;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
+;;; Copyright © 2022 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -11540,6 +11541,23 @@ (define-public python-markdown
 markdown_py is also provided to convert Markdown files to HTML.")
     (license license:bsd-3)))
 
+(define-public python-markdown2
+  (package
+    (name "python-markdown2")
+    (version "2.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "markdown2" version))
+              (sha256
+               (base32
+                "1c1bqkggr50274gs478cnzm8bljqifdnbg20zla1nn8n3sz4snzn"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/trentm/python-markdown2")
+    (synopsis "A fast and complete Python implementation of Markdown")
+    (description
+     "This package provides a fast and complete Python implementation of Markdown")
+    (license license:expat)))
+
 (define-public python-mdx-include
   (package
     (name "python-mdx-include")
-- 
2.38.1





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

* [bug#60238] [PATCH 2/7] gnu: Add python-portend.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
@ 2022-12-21 13:13   ` dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 3/7] gnu: Add python-inflect dan
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:13 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-portend): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 731fc9bbfb..6cdf9026b0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8907,6 +8907,24 @@ (define-public python-jaraco-packaging
 releases.")
     (license license:expat)))
 
+(define-public python-portend
+  (package
+    (name "python-portend")
+    (version "3.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "portend" version))
+              (sha256
+               (base32
+                "1r14sb2rh7ncy0m28dqfb70cqxdd0y0idml7vzv27a2y0hb337i3"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-tempora))
+    (native-inputs (list python-pytest))
+    (home-page "https://github.com/jaraco/portend")
+    (synopsis "TCP port monitoring and discovery")
+    (description "TCP port monitoring and discovery")
+    (license license:expat)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.38.1





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

* [bug#60238] [PATCH 3/7] gnu: Add python-inflect.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
  2022-12-21 13:13   ` [bug#60238] [PATCH 2/7] gnu: Add python-portend dan
@ 2022-12-21 13:14   ` dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 4/7] gnu: Add python-jaraco-text dan
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:14 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-inflect): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6cdf9026b0..f0e2ad4fc4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8925,6 +8925,27 @@ (define-public python-portend
     (description "TCP port monitoring and discovery")
     (license license:expat)))
 
+(define-public python-inflect
+  (package
+    (name "python-inflect")
+    (version "6.0.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "inflect" version))
+              (sha256
+               (base32
+                "16ihdnwck79db21g2pnqq8acc4n68k8agqgx36bghijh22qbr9pi"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-pydantic))
+    (native-inputs (list python-pytest))
+    (home-page "https://github.com/jaraco/inflect")
+    (synopsis
+     "Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words")
+    (description
+     "Correctly generate plurals, singular nouns, ordinals, indefinite articles;
+convert numbers to words")
+    (license license:expat)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.38.1





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

* [bug#60238] [PATCH 4/7] gnu: Add python-jaraco-text.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
  2022-12-21 13:13   ` [bug#60238] [PATCH 2/7] gnu: Add python-portend dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 3/7] gnu: Add python-inflect dan
@ 2022-12-21 13:14   ` dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 5/7] gnu: Add python-pypytools dan
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:14 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-jaraco-text): 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 f0e2ad4fc4..3a10d0a892 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8946,6 +8946,34 @@ (define-public python-inflect
 convert numbers to words")
     (license license:expat)))
 
+(define-public python-jaraco-text
+  (package
+    (name "python-jaraco-text")
+    (version "3.11.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "jaraco.text" version))
+              (sha256
+               (base32
+                "0lc3ji0xgd35rbrr2yrp3ykhmgp2xjj1r04w2yl6w5zyjnaminqd"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-autocommand
+                             python-importlib-resources
+                             python-inflect
+                             python-jaraco-context
+                             python-jaraco-functools
+                             python-more-itertools))
+    (native-inputs (list python-pathlib2
+                         python-pytest))
+    (home-page "https://github.com/jaraco/jaraco.text")
+    (synopsis "Module for text manipulation")
+    (description
+     "This package provides handy routines for dealing with text,
+such as wrapping, substitution, trimming, stripping, prefix and suffix
+removal, line continuation, indentation, comment processing, identifier
+processing, values parsing, case insensitive comparison, and more.")
+    (license license:expat)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.38.1





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

* [bug#60238] [PATCH 5/7] gnu: Add python-pypytools.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
                     ` (2 preceding siblings ...)
  2022-12-21 13:14   ` [bug#60238] [PATCH 4/7] gnu: Add python-jaraco-text dan
@ 2022-12-21 13:14   ` dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 6/7] gnu: Add python-cheroot dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 7/7] gnu: Add fava dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:14 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-pypytools): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3a10d0a892..13627419be 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8974,6 +8974,27 @@ (define-public python-jaraco-text
 processing, values parsing, case insensitive comparison, and more.")
     (license license:expat)))
 
+(define-public python-pypytools
+  (package
+    (name "python-pypytools")
+    (version "0.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pypytools" version))
+              (sha256
+               (base32
+                "0ag5xyzagprji0m2pkqsfy8539s003mn41pl6plbmh6iwi9w0h51"))))
+    (build-system python-build-system)
+    (arguments (list #:tests? #f)) ; no tests
+    (propagated-inputs (list python-py))
+    (home-page "https://github.com/antocuni/pypytools/")
+    (synopsis
+     "A collection of useful tools to use PyPy-specific features, with CPython fallbacks")
+    (description
+     "This package provides a collection of useful tools to use PyPy-specific
+features, with CPython fallbacks")
+    (license license:x11)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.38.1





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

* [bug#60238] [PATCH 6/7] gnu: Add python-cheroot.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
                     ` (3 preceding siblings ...)
  2022-12-21 13:14   ` [bug#60238] [PATCH 5/7] gnu: Add python-pypytools dan
@ 2022-12-21 13:14   ` dan
  2022-12-21 13:14   ` [bug#60238] [PATCH 7/7] gnu: Add fava dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:14 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-web.scm (python-cheroot): New variable.
---
 gnu/packages/python-web.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 18c0b47b67..65b445688c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -58,6 +58,7 @@
 ;;; Copyright © 2022 msimonin <matthieu.simonin@inria.fr>
 ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
+;;; Copyright © 2022 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -979,6 +980,34 @@ (define-public python-httplib2
 other HTTP libraries.")
     (license license:expat)))
 
+(define-public python-cheroot
+  (package
+    (name "python-cheroot")
+    (version "8.6.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "cheroot" version))
+              (sha256
+               (base32
+                "09cfy2iwqs1j8k0mailcdzzjw0lkg4lyc6rddi45b5dcgipdysin"))))
+    (build-system python-build-system)
+    (propagated-inputs (list python-importlib-metadata python-jaraco-functools
+                             python-more-itertools))
+    (native-inputs (list python-pytest
+                         python-requests
+                         python-requests-unixsocket
+                         python-requests-toolbelt
+                         python-pypytools
+                         python-trustme
+                         python-pyopenssl
+                         python-jaraco-text
+                         python-portend
+                         python-setuptools-scm-git-archive))
+    (home-page "https://cheroot.cherrypy.dev")
+    (synopsis "Highly-optimized, pure-python HTTP server")
+    (description "Highly-optimized, pure-python HTTP server")
+    (license license:bsd-3)))
+
 (define-public httpie
   (package
     (name "httpie")
-- 
2.38.1





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

* [bug#60238] [PATCH 7/7] gnu: Add fava.
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
                     ` (4 preceding siblings ...)
  2022-12-21 13:14   ` [bug#60238] [PATCH 6/7] gnu: Add python-cheroot dan
@ 2022-12-21 13:14   ` dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2022-12-21 13:14 UTC (permalink / raw)
  To: 60238

* gnu/packages/finance.scm (fava): New variable.
---
 gnu/packages/finance.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index f9ee7acaa1..fea1bbcb28 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -32,6 +32,7 @@
 ;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
 ;;; Copyright © 2022 Collin J. Doering <collin@rekahsoft.ca>
 ;;; Copyright © 2022 Justin Veilleux <terramorpha@cock.li>
+;;; Copyright © 2022 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1903,6 +1904,40 @@ (define-public beancount
 generate a variety of reports from them, and provides a web interface.")
     (license license:gpl2)))
 
+(define-public fava
+  (package
+    (name "fava")
+    (version "1.23.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "fava" version))
+              (sha256
+               (base32
+                "0dbg29i3pdbv8m2n7qspafn5ja1glxf27xcdz8rdn3myjqh183sk"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list beancount
+                             python-babel
+                             python-beautifulsoup4
+                             python-bottle
+                             python-cheroot
+                             python-click
+                             python-flask
+                             python-flask-babel
+                             python-jinja2
+                             python-magic
+                             python-markdown2
+                             python-ply
+                             python-simplejson
+                             python-werkzeug))
+    (native-inputs (list python-pytest
+                         python-chardet
+                         python-dateutil
+                         python-setuptools-scm))
+    (home-page "https://beancount.github.io/fava/")
+    (synopsis "Web interface for the accounting tool Beancount.")
+    (description "Web interface for the accounting tool Beancount.")
+    (license license:expat)))
+
 (define-public emacs-beancount
   ;; Note that upstream has not made any release since this project moved
   ;; into its own repository (it was originally part of beancount itself)
-- 
2.38.1





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

* [bug#60238] [PATCH 0/7] gnu: Add fava.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
@ 2023-01-15 14:37 ` dan
  2023-01-26 10:02 ` Ludovic Courtès
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-01-15 14:37 UTC (permalink / raw)
  To: 60238

ping
-- 
dan




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

* [bug#60238] [PATCH 0/7] gnu: Add fava.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
  2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
  2023-01-15 14:37 ` [bug#60238] [PATCH 0/7] " dan
@ 2023-01-26 10:02 ` Ludovic Courtès
  2023-02-02 16:54 ` [bug#60238] [PATCH v2 " dan
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 27+ messages in thread
From: Ludovic Courtès @ 2023-01-26 10:02 UTC (permalink / raw)
  To: dan; +Cc: 60238

Hi dan,

dan <i@dan.games> skribis:

> This patch series adds fava, a web interface for the double-entry bookkeeping
> software Beancount.  Note that the latest version of python-cheroot is 9.0.0,
> but the latest release of fava depends on python-cheroot lower than 9.  Thus,
> we have to pack 8.6.0 at the moment.
>
> dan (7):
>   gnu: Add python-markdown2.
>   gnu: Add python-portend.
>   gnu: Add python-inflect.
>   gnu: Add python-jaraco-text.
>   gnu: Add python-pypytools.
>   gnu: Add python-cheroot.
>   gnu: Add fava.

Overall this looks good to me and to
<https://qa.guix.gnu.org/issue/60238>.

However, most synopses and descriptions would need to be improved a bit,
as per
<https://guix.gnu.org/manual/en/html_node/Synopses-and-Descriptions.html>.
(I know, it’s not fun, but it’s helpful for users.)

Could you give it a stab and send a v2?

Thanks in advance and sorry for the delay!

Ludo’.




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

* [bug#60238] [PATCH v2 0/7] gnu: Add fava.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
                   ` (2 preceding siblings ...)
  2023-01-26 10:02 ` Ludovic Courtès
@ 2023-02-02 16:54 ` dan
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:54 UTC (permalink / raw)
  To: 60238; +Cc: ludo

The updated patch series is rebased on the master branch, and reworked many of
the package synopsis and description.

dan (7):
  gnu: Add python-markdown2.
  gnu: Add python-portend.
  gnu: Add python-inflect.
  gnu: Add python-jaraco-text.
  gnu: Add python-pypytools.
  gnu: Add python-cheroot.
  gnu: Add fava.

 gnu/packages/finance.scm    |  36 ++++++++++++
 gnu/packages/python-web.scm |  29 ++++++++++
 gnu/packages/python-xyz.scm | 108 ++++++++++++++++++++++++++++++++++++
 3 files changed, 173 insertions(+)


base-commit: f5446f721121c50a6e8fdf1e7285d861dfd180b8
-- 
2.39.1





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

* [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
                   ` (3 preceding siblings ...)
  2023-02-02 16:54 ` [bug#60238] [PATCH v2 " dan
@ 2023-02-02 16:58 ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 2/7] gnu: Add python-portend dan
                     ` (5 more replies)
  2024-03-17 17:07 ` [bug#60238] [PATCH 0/7] " Sharlatan Hellseher
                   ` (2 subsequent siblings)
  7 siblings, 6 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-markdown2): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b14c4ff0f3..bcf1d29727 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -132,6 +132,7 @@
 ;;; Copyright © 2022 Garek Dyszel <garekdyszel@disroot.org>
 ;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
 ;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -11562,6 +11563,23 @@ (define-public python-markdown
 markdown_py is also provided to convert Markdown files to HTML.")
     (license license:bsd-3)))
 
+(define-public python-markdown2
+  (package
+    (name "python-markdown2")
+    (version "2.4.6")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "markdown2" version))
+              (sha256
+               (base32
+                "1c1bqkggr50274gs478cnzm8bljqifdnbg20zla1nn8n3sz4snzn"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/trentm/python-markdown2")
+    (synopsis "Fast and complete Python implementation of Markdown")
+    (description
+     "This package provides a fast and complete Python implementation of Markdown.")
+    (license license:expat)))
+
 (define-public python-mdx-include
   (package
     (name "python-mdx-include")
-- 
2.39.1





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

* [bug#60238] [PATCH v2 2/7] gnu: Add python-portend.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
@ 2023-02-02 16:58   ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 3/7] gnu: Add python-inflect dan
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-portend): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index bcf1d29727..8e291a1996 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8929,6 +8929,24 @@ (define-public python-jaraco-packaging
 releases.")
     (license license:expat)))
 
+(define-public python-portend
+  (package
+    (name "python-portend")
+    (version "3.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "portend" version))
+              (sha256
+               (base32
+                "1r14sb2rh7ncy0m28dqfb70cqxdd0y0idml7vzv27a2y0hb337i3"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-tempora))
+    (native-inputs (list python-pytest))
+    (home-page "https://github.com/jaraco/portend")
+    (synopsis "TCP port monitoring and discovery utilities")
+    (description "Use portend to monitor TCP ports for bound or unbound states.")
+    (license license:expat)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.39.1





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

* [bug#60238] [PATCH v2 3/7] gnu: Add python-inflect.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 2/7] gnu: Add python-portend dan
@ 2023-02-02 16:58   ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 4/7] gnu: Add python-jaraco-text dan
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-inflect): New variable.
---
 gnu/packages/python-xyz.scm | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8e291a1996..c89fa1c412 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8944,7 +8944,30 @@ (define-public python-portend
     (native-inputs (list python-pytest))
     (home-page "https://github.com/jaraco/portend")
     (synopsis "TCP port monitoring and discovery utilities")
-    (description "Use portend to monitor TCP ports for bound or unbound states.")
+    (description
+     "Use portend to monitor TCP ports for bound or unbound states.")
+    (license license:expat)))
+
+(define-public python-inflect
+  (package
+    (name "python-inflect")
+    (version "6.0.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "inflect" version))
+              (sha256
+               (base32
+                "16ihdnwck79db21g2pnqq8acc4n68k8agqgx36bghijh22qbr9pi"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-pydantic))
+    (native-inputs (list python-pytest))
+    (home-page "https://github.com/jaraco/inflect")
+    (synopsis
+     "Correctly generate plurals, singular nouns, ordinals, indefinite articles")
+    (description
+     "inflect.py provide plural inflections, singular noun inflections,
+\"a\"/\"an\" selection for English words, and manipulation of numbers as
+words.")
     (license license:expat)))
 
 (define-public python-simplegeneric
-- 
2.39.1





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

* [bug#60238] [PATCH v2 4/7] gnu: Add python-jaraco-text.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 2/7] gnu: Add python-portend dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 3/7] gnu: Add python-inflect dan
@ 2023-02-02 16:58   ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 5/7] gnu: Add python-pypytools dan
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-jaraco-text): 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 c89fa1c412..2b12b3392d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8970,6 +8970,34 @@ (define-public python-inflect
 words.")
     (license license:expat)))
 
+(define-public python-jaraco-text
+  (package
+    (name "python-jaraco-text")
+    (version "3.11.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "jaraco.text" version))
+              (sha256
+               (base32
+                "0lc3ji0xgd35rbrr2yrp3ykhmgp2xjj1r04w2yl6w5zyjnaminqd"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-autocommand
+                             python-importlib-resources
+                             python-inflect
+                             python-jaraco-context
+                             python-jaraco-functools
+                             python-more-itertools))
+    (native-inputs (list python-pathlib2
+                         python-pytest))
+    (home-page "https://github.com/jaraco/jaraco.text")
+    (synopsis "Module for text manipulation")
+    (description
+     "This package provides handy routines for dealing with text,
+such as wrapping, substitution, trimming, stripping, prefix and suffix
+removal, line continuation, indentation, comment processing, identifier
+processing, values parsing, case insensitive comparison, and more.")
+    (license license:expat)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.39.1





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

* [bug#60238] [PATCH v2 5/7] gnu: Add python-pypytools.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
                     ` (2 preceding siblings ...)
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 4/7] gnu: Add python-jaraco-text dan
@ 2023-02-02 16:58   ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 6/7] gnu: Add python-cheroot dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 7/7] gnu: Add fava dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-xyz.scm (python-pypytools): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2b12b3392d..c5a96a0226 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -8998,6 +8998,27 @@ (define-public python-jaraco-text
 processing, values parsing, case insensitive comparison, and more.")
     (license license:expat)))
 
+(define-public python-pypytools
+  (package
+    (name "python-pypytools")
+    (version "0.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pypytools" version))
+              (sha256
+               (base32
+                "0ag5xyzagprji0m2pkqsfy8539s003mn41pl6plbmh6iwi9w0h51"))))
+    (build-system python-build-system)
+    (arguments (list #:tests? #f)) ; no tests
+    (propagated-inputs (list python-py))
+    (home-page "https://github.com/antocuni/pypytools/")
+    (synopsis
+     "Tools to use PyPy-specific features, with CPython fallbacks")
+    (description
+     "This package provides a collection of useful tools to use PyPy-specific
+features, with CPython fallbacks.")
+    (license license:x11)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.39.1





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

* [bug#60238] [PATCH v2 6/7] gnu: Add python-cheroot.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
                     ` (3 preceding siblings ...)
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 5/7] gnu: Add python-pypytools dan
@ 2023-02-02 16:58   ` dan
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 7/7] gnu: Add fava dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/python-web.scm (python-cheroot): New variable.
---
 gnu/packages/python-web.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e7134677a9..bcdf3658ee 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -58,6 +58,7 @@
 ;;; Copyright © 2022 msimonin <matthieu.simonin@inria.fr>
 ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -980,6 +981,34 @@ (define-public python-httplib2
 other HTTP libraries.")
     (license license:expat)))
 
+(define-public python-cheroot
+  (package
+    (name "python-cheroot")
+    (version "8.6.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "cheroot" version))
+              (sha256
+               (base32
+                "09cfy2iwqs1j8k0mailcdzzjw0lkg4lyc6rddi45b5dcgipdysin"))))
+    (build-system python-build-system)
+    (propagated-inputs (list python-importlib-metadata python-jaraco-functools
+                             python-more-itertools))
+    (native-inputs (list python-pytest
+                         python-requests
+                         python-requests-unixsocket
+                         python-requests-toolbelt
+                         python-pypytools
+                         python-trustme
+                         python-pyopenssl
+                         python-jaraco-text
+                         python-portend
+                         python-setuptools-scm-git-archive))
+    (home-page "https://cheroot.cherrypy.dev")
+    (synopsis "Highly-optimized, pure-python HTTP server")
+    (description "Cheroot is a high-performance, pure-Python HTTP server.")
+    (license license:bsd-3)))
+
 (define-public httpie
   (package
     (name "httpie")
-- 
2.39.1





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

* [bug#60238] [PATCH v2 7/7] gnu: Add fava.
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
                     ` (4 preceding siblings ...)
  2023-02-02 16:58   ` [bug#60238] [PATCH v2 6/7] gnu: Add python-cheroot dan
@ 2023-02-02 16:58   ` dan
  5 siblings, 0 replies; 27+ messages in thread
From: dan @ 2023-02-02 16:58 UTC (permalink / raw)
  To: 60238

* gnu/packages/finance.scm (fava): New variable.
---
 gnu/packages/finance.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index c9c8e9b823..c5055f28c4 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -33,6 +33,7 @@
 ;;; Copyright © 2022 Collin J. Doering <collin@rekahsoft.ca>
 ;;; Copyright © 2022 Justin Veilleux <terramorpha@cock.li>
 ;;; Copyright © 2023 Frank Pursel <frank.pursel@gmail.com>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1942,6 +1943,41 @@ (define-public beancount
 generate a variety of reports from them, and provides a web interface.")
     (license license:gpl2)))
 
+(define-public fava
+  (package
+    (name "fava")
+    (version "1.23.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "fava" version))
+              (sha256
+               (base32
+                "0dbg29i3pdbv8m2n7qspafn5ja1glxf27xcdz8rdn3myjqh183sk"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list beancount
+                             python-babel
+                             python-beautifulsoup4
+                             python-bottle
+                             python-cheroot
+                             python-click
+                             python-flask
+                             python-flask-babel
+                             python-jinja2
+                             python-magic
+                             python-markdown2
+                             python-ply
+                             python-simplejson
+                             python-werkzeug))
+    (native-inputs (list python-pytest
+                         python-chardet
+                         python-dateutil
+                         python-setuptools-scm))
+    (home-page "https://beancount.github.io/fava/")
+    (synopsis "Web interface for the accounting tool Beancount")
+    (description "Fava is a web interface for the double-entry bookkeeping
+software Beancount with a focus on features and usability.")
+    (license license:expat)))
+
 (define-public emacs-beancount
   ;; Note that upstream has not made any release since this project moved
   ;; into its own repository (it was originally part of beancount itself)
-- 
2.39.1





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

* [bug#60238] [PATCH 0/7] gnu: Add fava.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
                   ` (4 preceding siblings ...)
  2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
@ 2024-03-17 17:07 ` Sharlatan Hellseher
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
  2024-03-19  9:50 ` bug#60238: [PATCH 0/7] " Sharlatan Hellseher
  7 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:07 UTC (permalink / raw)
  To: 60238

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


Hi dan,

I've completed the other round of review and applied some modification
to the patches. Some of them were already applied or available on the
time I check the series.

- New packages [4/4]
  - [X] fava
    - Update to 1.24.4, the highest compatible with available Flask in Guix.
    - Fix tests
    - Relax requirements
  - [X] python-cheroot
    - Update to 10.0.1
    - Enable tests
  - [X] python-markdown2
    - Update to 2.4.13
    - Enable tests
    - Improve description
  - [X] python-pypytools
- Related fixes to make series buildable [1/1]
  - [X] beancount
    - Adjust package style
    - Enable tests
    - Enable sanity check

Build and Lint are passed locally for V3, let's check what's QA would
tell us now ;-).

--
Oleg

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

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

* [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
                   ` (5 preceding siblings ...)
  2024-03-17 17:07 ` [bug#60238] [PATCH 0/7] " Sharlatan Hellseher
@ 2024-03-17 17:08 ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 2/7] gnu: beancount: Enable sanity check Sharlatan Hellseher
                     ` (5 more replies)
  2024-03-19  9:50 ` bug#60238: [PATCH 0/7] " Sharlatan Hellseher
  7 siblings, 6 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238; +Cc: Sharlatan Hellseher

* gnu/packages/finance.scm (beancount) [arguments]: Use G-expressions.
<#:phases>: Remove trailing #f from lambda.

Change-Id: I3a248c0b233b0f4d73dcc01f269cfb0a12fe06ff
---
 gnu/packages/finance.scm | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 8c30bd1a30..01412b2f0a 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -1976,17 +1976,17 @@ (define-public beancount
        (patches (search-patches "beancount-disable-googleapis-fonts.patch"))))
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f  ; Says test is missing, not sure why
-       #:phases
-       (modify-phases %standard-phases
-         ;; Not importing the googleapis package for now
-         (add-after 'unpack 'ignore-googleapis
-           (lambda _
-             (substitute* "setup.py"
-               (("'google-api-python-client',") ""))
-             #t))
-         ;; No module named 'google_auth_oauthlib'
-         (delete 'sanity-check))))
+     (list
+      #:tests? #f  ; Says test is missing, not sure why
+      #:phases
+      #~(modify-phases %standard-phases
+          ;; Not importing the googleapis package for now
+          (add-after 'unpack 'ignore-googleapis
+            (lambda _
+              (substitute* "setup.py"
+                (("'google-api-python-client',") ""))))
+          ;; No module named 'google_auth_oauthlib'
+          (delete 'sanity-check))))
     (inputs
      (list python-beautifulsoup4
            python-bottle

base-commit: d1b6d77aaef3c2a7ecc930de1cce2b9ac20203bf
-- 
2.41.0





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

* [bug#60238] [PATCH v3 2/7] gnu: beancount: Enable sanity check.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 3/7] gnu: beancount: Enable tests Sharlatan Hellseher
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238; +Cc: Sharlatan Hellseher

Inputs was swapped to propagated-inputs to allow other packages
depending on `beancount` to pass sanity check.

* gnu/packages/finance.scm (beancount) [arguments] <#:phases>: Remove
'ignore-googleapis phase. Add 'relax-requirements phase, disabling check
for "pdfminer2".
[propagated-inputs]: Add python-google-api-client and
python-google-auth-oauthlib.

Change-Id: I15af4cd9cdbf5d522b9c5570e3ba60ad4d29e231
---
 gnu/packages/finance.scm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 01412b2f0a..b9be19df74 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -1980,18 +1980,18 @@ (define-public beancount
       #:tests? #f  ; Says test is missing, not sure why
       #:phases
       #~(modify-phases %standard-phases
-          ;; Not importing the googleapis package for now
-          (add-after 'unpack 'ignore-googleapis
+          (add-after 'unpack 'relax-requirements
             (lambda _
               (substitute* "setup.py"
-                (("'google-api-python-client',") ""))))
-          ;; No module named 'google_auth_oauthlib'
-          (delete 'sanity-check))))
-    (inputs
+                ;; Use compatible fork, and do not fail during sanity check.
+                (("\"pdfminer2\",") "")))))))
+    (propagated-inputs
      (list python-beautifulsoup4
            python-bottle
            python-chardet
            python-dateutil
+           python-google-api-client
+           python-google-auth-oauthlib
            python-lxml
            python-magic
            python-ply
-- 
2.41.0





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

* [bug#60238] [PATCH v3 3/7] gnu: beancount: Enable tests.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 2/7] gnu: beancount: Enable sanity check Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 4/7] gnu: Add python-markdown2 Sharlatan Hellseher
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238; +Cc: Sharlatan Hellseher

* gnu/packages/finance.scm (beancount) [source]: Swap to git checkout,
containing all required test data files.
[build-system]: Swap to pyproject-build-system.
[arguments] <#:phases>: Add 'build-extensions phase.
[propagated-inputs]: python-auth2client.
[native-inputs]: Add gnupg and python-pdfminer-six.

Change-Id: Id0c725cae8cdc677ad0c3a0a75be6eea682eee05
---
 gnu/packages/finance.scm | 36 ++++++++++++++++++++++++++++--------
 1 file changed, 28 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index b9be19df74..c248f614ab 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -37,6 +37,7 @@
 ;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
 ;;; Copyright © 2023 Attila Lendvai <attila@lendvai.name>
 ;;; Copyright © 2024 Saku Laesvuori <saku@laesvuori.fi>
+;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1969,22 +1970,40 @@ (define-public beancount
     (version "2.3.6")
     (source
      (origin
-       (method url-fetch)
-       (uri (pypi-uri "beancount" version))
+       (method git-fetch) ; no test data files in PyPI archive
+       (uri (git-reference
+             (url "https://github.com/beancount/beancount")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
-        (base32 "0nj7sdh7wxc0hv8wxwqhw9v1zgx1sn4w92368ci2wzdmssz967w0"))
-       (patches (search-patches "beancount-disable-googleapis-fonts.patch"))))
-    (build-system python-build-system)
+        (base32 "1slxsjw29cyr2kbirdpijhpqspk55k38rpmk3zc02pr1wll62qsv"))
+       (patches (search-patches "beancount-disable-googleapis-fonts.patch"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            ;; Remove broken experiments.
+            (delete-file-recursively "experiments")
+            ;; Remove bundled packages.
+            (delete-file-recursively "third_party")))))
+    (build-system pyproject-build-system)
     (arguments
      (list
-      #:tests? #f  ; Says test is missing, not sure why
+      #:test-flags
+      #~(list "-k" (string-append
+                    ;; ModuleNotFoundError: No module named 'pytest'
+                    "not test_parse_stdin"
+                    ;; AssertionError: 5 not greater than 20
+                    " and not test_setup"))
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'relax-requirements
             (lambda _
               (substitute* "setup.py"
                 ;; Use compatible fork, and do not fail during sanity check.
-                (("\"pdfminer2\",") "")))))))
+                (("\"pdfminer2\",") ""))))
+          (add-before 'check 'build-extensions
+            (lambda _
+              (invoke "python" "setup.py" "build_ext" "--inplace"))))))
     (propagated-inputs
      (list python-beautifulsoup4
            python-bottle
@@ -1994,10 +2013,11 @@ (define-public beancount
            python-google-auth-oauthlib
            python-lxml
            python-magic
+           python-oauth2client
            python-ply
            python-requests))
     (native-inputs
-     (list python-pytest))
+     (list gnupg python-pdfminer-six python-pytest))
     (home-page "https://beancount.github.io/")
     (synopsis "Command-line double-entry accounting tool")
     (description
-- 
2.41.0





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

* [bug#60238] [PATCH v3 4/7] gnu: Add python-markdown2.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 2/7] gnu: beancount: Enable sanity check Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 3/7] gnu: beancount: Enable tests Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 5/7] gnu: Add python-pypytools Sharlatan Hellseher
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238
  Cc: Sharlatan Hellseher, dan, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, Sharlatan Hellseher, Tanguy Le Carrour, jgart

From: dan <i@dan.games>

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

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
---
 gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7ed8c945be..0e458fdadc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -136,6 +136,7 @@
 ;;; Copyright © 2023 Amade Nemes <nemesamade@gmail.com>
 ;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
 ;;; Copyright © 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;; Copyright © 2023 Dominik Delgado Steuter <d@delgado.nrw>
 ;;; Copyright © 2023 Ivan Vilata-i-Balaguer <ivan@selidor.net>
 ;;; Copyright © 2023 Ontje Lünsdorf <ontje.luensdorf@dlr.de>
@@ -14245,6 +14246,41 @@ (define-public python-markdown
 markdown_py is also provided to convert Markdown files to HTML.")
     (license license:bsd-3)))
 
+(define-public python-markdown2
+  (package
+    (name "python-markdown2")
+    (version "2.4.13")
+    (source
+     (origin
+       (method git-fetch) ; no tests data in PyPi package
+       (uri (git-reference
+             (url "https://github.com/trentm/python-markdown2")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0m1wy8i4xmna5b97dvks8cfjmc1wid8pxmd2h82869d0ajva3r6a"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'check
+            (lambda* (#:key tests? test-flags #:allow-other-keys)
+              (when tests?
+                (with-directory-excursion "test"
+                  (invoke "python" "testall.py"))))))))
+    (native-inputs
+     (list python-pygments))
+    (home-page "https://github.com/trentm/python-markdown2")
+    (synopsis "Fast and complete Python implementation of Markdown")
+    (description
+     "This package provides a fast and complete Python implementation of
+Markdown.  It was written to closely match the behaviour of the original
+Perl-implemented Markdown.pl.  It also comes with a number of
+extensions (called @code{extras}) for things like syntax coloring, tables,
+header-ids.")
+    (license license:expat)))
+
 (define-public python-mdx-include
   (package
     (name "python-mdx-include")
-- 
2.41.0





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

* [bug#60238] [PATCH v3 5/7] gnu: Add python-pypytools.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
                     ` (2 preceding siblings ...)
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 4/7] gnu: Add python-markdown2 Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 6/7] gnu: Add python-cheroot Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 7/7] gnu: Add fava Sharlatan Hellseher
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238
  Cc: Sharlatan Hellseher, dan, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, Sharlatan Hellseher, Tanguy Le Carrour, jgart

From: dan <i@dan.games>

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

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0e458fdadc..c4a5375839 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -11433,6 +11433,27 @@ (define-public python-jaraco-text
 processing, values parsing, case insensitive comparison, and more.")
     (license license:expat)))
 
+(define-public python-pypytools
+  (package
+    (name "python-pypytools")
+    (version "0.6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pypytools" version))
+       (sha256
+        (base32 "0ag5xyzagprji0m2pkqsfy8539s003mn41pl6plbmh6iwi9w0h51"))))
+    (build-system python-build-system)
+    (arguments (list #:tests? #f)) ; no tests
+    (propagated-inputs (list python-py))
+    (home-page "https://github.com/antocuni/pypytools/")
+    (synopsis
+     "Tools to use PyPy-specific features, with CPython fallbacks")
+    (description
+     "This package provides a collection of useful tools to use PyPy-specific
+features, with CPython fallbacks.")
+    (license license:x11)))
+
 (define-public python-simplegeneric
   (package
     (name "python-simplegeneric")
-- 
2.41.0





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

* [bug#60238] [PATCH v3 6/7] gnu: Add python-cheroot.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
                     ` (3 preceding siblings ...)
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 5/7] gnu: Add python-pypytools Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 7/7] gnu: Add fava Sharlatan Hellseher
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238
  Cc: Sharlatan Hellseher, dan, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, Sharlatan Hellseher, Tanguy Le Carrour, jgart

From: dan <i@dan.games>

* gnu/packages/python-web.scm (python-cheroot): New variable.

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
---
 gnu/packages/python-web.scm | 57 +++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c2bdfc8da8..f14c0a7bde 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -58,6 +58,7 @@
 ;;; Copyright © 2022 msimonin <matthieu.simonin@inria.fr>
 ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2023 Ivan Vilata-i-Balaguer <ivan@selidor.net>
 ;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
@@ -1279,6 +1280,62 @@ (define-public python-httplib2
 other HTTP libraries.")
     (license license:expat)))
 
+(define-public python-cheroot
+  (package
+    (name "python-cheroot")
+    (version "10.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "cheroot" version))
+       (sha256
+        (base32
+         "1w0ind0dza9j1py56y23344piqkpyfmcm060qfrnk6gggy3s3i2r"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:test-flags
+      #~(list "--cov=cheroot"
+              ;; Tests a flaky in parallel invocation.
+              ;; "--numprocesses=auto"
+              "--doctest-modules"
+              "--showlocals"
+              ;; Disable test requiring networking.
+              "-k" "not test_tls_client_auth")
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'check
+            (lambda* (#:key tests? test-flags #:allow-other-keys)
+              (when tests?
+                (with-directory-excursion "/tmp"
+                  (apply invoke "pytest" "-v"
+                         (append test-flags (list #$output))))))))))
+    (propagated-inputs
+     (list python-jaraco-functools
+           python-more-itertools
+           python-six))
+    (native-inputs
+     (list python-cryptography
+           python-jaraco-text
+           python-portend
+           python-pyopenssl
+           python-pypytools
+           python-pytest
+           python-pytest-cov
+           python-pytest-mock
+           python-pytest-xdist
+           python-requests
+           python-requests-toolbelt
+           python-requests-unixsocket
+           python-setuptools-scm
+           python-setuptools-scm-git-archive
+           python-trustme))
+    (home-page "https://cheroot.cherrypy.dev")
+    (synopsis "Highly-optimized, pure-python HTTP server")
+    (description
+     "Cheroot is a high-performance, pure-Python HTTP server.")
+    (license license:bsd-3)))
+
 (define-public httpie
   (package
     (name "httpie")
-- 
2.41.0





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

* [bug#60238] [PATCH v3 7/7] gnu: Add fava.
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
                     ` (4 preceding siblings ...)
  2024-03-17 17:08   ` [bug#60238] [PATCH v3 6/7] gnu: Add python-cheroot Sharlatan Hellseher
@ 2024-03-17 17:08   ` Sharlatan Hellseher
  5 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-17 17:08 UTC (permalink / raw)
  To: 60238; +Cc: Sharlatan Hellseher, dan

From: dan <i@dan.games>

* gnu/packages/finance.scm (fava): New variable.

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
---
 gnu/packages/finance.scm | 50 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index c248f614ab..e2d4b95a5e 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
 ;;; Copyright © 2022 Collin J. Doering <collin@rekahsoft.ca>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;; Copyright © 2022 Justin Veilleux <terramorpha@cock.li>
 ;;; Copyright © 2023 Frank Pursel <frank.pursel@gmail.com>
 ;;; Copyright © 2023 Skylar Hill <stellarskylark@posteo.net>
@@ -2026,6 +2027,55 @@ (define-public beancount
 generate a variety of reports from them, and provides a web interface.")
     (license license:gpl2)))
 
+(define-public fava
+  (package
+    (name "fava")
+    ;; XXX: Newer version requires Flask > 2.2, which is not available in Guix
+    ;; yet.
+    (version "1.24.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "fava" version))
+       (sha256
+        (base32 "1iwha9vx223iiyjqbixpz1lp8q766ikhi7xcap3pscjhldxlym4j"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+         (add-after 'unpack 'relax-requirements
+           (lambda _
+             (substitute* "setup.cfg"
+               ((">=8,<10") ">8"))))
+          ;; Tests write to $HOME.
+          ;; FileNotFoundError: [Errno 2] No such file or directory
+          (add-before 'check 'set-home
+            (lambda _
+              (setenv "HOME" "/tmp"))))))
+    (propagated-inputs
+     (list beancount
+           python-babel
+           python-cheroot
+           python-click
+           python-flask
+           python-flask-babel
+           python-jinja2
+           python-markdown2
+           python-ply
+           python-simplejson
+           python-werkzeug))
+    (native-inputs
+     (list python-pytest
+           python-chardet
+           python-dateutil
+           python-setuptools-scm))
+    (home-page "https://beancount.github.io/fava/")
+    (synopsis "Web interface for the accounting tool Beancount")
+    (description "Fava is a web interface for the double-entry bookkeeping
+software Beancount with a focus on features and usability.")
+    (license license:expat)))
+
 (define-public emacs-beancount
   ;; Note that upstream has not made any release since this project moved
   ;; into its own repository (it was originally part of beancount itself)
-- 
2.41.0





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

* bug#60238: [PATCH 0/7] gnu: Add fava.
  2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
                   ` (6 preceding siblings ...)
  2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
@ 2024-03-19  9:50 ` Sharlatan Hellseher
  7 siblings, 0 replies; 27+ messages in thread
From: Sharlatan Hellseher @ 2024-03-19  9:50 UTC (permalink / raw)
  To: 60238-done

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


Hi,

- Already avialalbe packages [3/3]
  - [X] python-jaraco-text :: Added from
    <https://issues.guix.gnu.org/68192>
  - [X] python-inflect :: Added in
    6cac909c95b77b58f48b920e49f8802526a3e290 by Ricardo Wurmus
    <rekado@elephly.net>
  - [X] python-portend :: Added from <https://issues.guix.gnu.org/68191>

Patches adding fava, python-cheroot, python-pypytools and
python-markdown2 are pushed as 228c55cbf0..044d3f4bef to master.

Thanks,
Oleg

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

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

end of thread, other threads:[~2024-03-19  9:51 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-21 13:07 [bug#60238] [PATCH 0/7] gnu: Add fava dan
2022-12-21 13:13 ` [bug#60238] [PATCH 1/7] gnu: Add python-markdown2 dan
2022-12-21 13:13   ` [bug#60238] [PATCH 2/7] gnu: Add python-portend dan
2022-12-21 13:14   ` [bug#60238] [PATCH 3/7] gnu: Add python-inflect dan
2022-12-21 13:14   ` [bug#60238] [PATCH 4/7] gnu: Add python-jaraco-text dan
2022-12-21 13:14   ` [bug#60238] [PATCH 5/7] gnu: Add python-pypytools dan
2022-12-21 13:14   ` [bug#60238] [PATCH 6/7] gnu: Add python-cheroot dan
2022-12-21 13:14   ` [bug#60238] [PATCH 7/7] gnu: Add fava dan
2023-01-15 14:37 ` [bug#60238] [PATCH 0/7] " dan
2023-01-26 10:02 ` Ludovic Courtès
2023-02-02 16:54 ` [bug#60238] [PATCH v2 " dan
2023-02-02 16:58 ` [bug#60238] [PATCH v2 1/7] gnu: Add python-markdown2 dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 2/7] gnu: Add python-portend dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 3/7] gnu: Add python-inflect dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 4/7] gnu: Add python-jaraco-text dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 5/7] gnu: Add python-pypytools dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 6/7] gnu: Add python-cheroot dan
2023-02-02 16:58   ` [bug#60238] [PATCH v2 7/7] gnu: Add fava dan
2024-03-17 17:07 ` [bug#60238] [PATCH 0/7] " Sharlatan Hellseher
2024-03-17 17:08 ` [bug#60238] [PATCH v3 1/7] gnu: beancount: Adjust packages style Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 2/7] gnu: beancount: Enable sanity check Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 3/7] gnu: beancount: Enable tests Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 4/7] gnu: Add python-markdown2 Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 5/7] gnu: Add python-pypytools Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 6/7] gnu: Add python-cheroot Sharlatan Hellseher
2024-03-17 17:08   ` [bug#60238] [PATCH v3 7/7] gnu: Add fava Sharlatan Hellseher
2024-03-19  9:50 ` bug#60238: [PATCH 0/7] " Sharlatan Hellseher

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).