[PATCH 0/25] Package python-pantalaimon

  • Done
  • quality assurance status badge
Details
3 participants
  • Foo Chuan Wei
  • Lars-Dominik Braun
  • Sébastien Lerique
Owner
unassigned
Submitted by
Sébastien Lerique
Severity
normal
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:38
(address . guix-patches@gnu.org)
871r4nypsc.fsf@eauchat.org
Dear Guix,

This patchset packages the pantalaimon E2EE proxy for Matrix clients.
It's the first time I'm sending a full-fledged patchset, and all
comments are super welcome!

(One question is how to generate the git summary I see in other 0/n
patchset messages, which would have avoided me cancelling bugs #51220
and #51221!)

Best,
Sébastien
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 01/25] gnu: Add python-hypothesis-6.23.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-1-sl@eauchat.org
* gnu/packages/check.scm (python-hypothesis-6.23): New variable.
---
gnu/packages/check.scm | 11 +++++++++++
1 file changed, 11 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 4701d61a9e..1f9cc26913 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2154,6 +2154,17 @@ seamlessly into your existing Python unit testing work flow.")
"0sy1v6nyxg4rjcf3rlr8nalb7wqd9nccpb2lzkchbj5an13ysf1h"))))
(home-page "https://github.com/HypothesisWorks/hypothesis")))
+(define-public python-hypothesis-6.23
+ (package
+ (inherit python-hypothesis)
+ (version "6.23.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hypothesis" version))
+ (sha256
+ (base32
+ "0lqhfrqsd81apchz93pdqfn85kx0p790w8hhd9qq85692rwja6xp"))))))
+
;; This is the last version of Hypothesis that supports Python 2.
(define-public python2-hypothesis
(let ((hypothesis (package-with-python2
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 02/25] gnu: python-peewee: Update to 3.14.4.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-2-sl@eauchat.org
* gnu/packages/databases.scm (python-peewee): Update to 3.14.4.
---
gnu/packages/databases.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index b1dd44da1c..4a8b267fa3 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -2586,13 +2586,13 @@ on another machine, accessed via TCP/IP.")
(define-public python-peewee
(package
(name "python-peewee")
- (version "3.14.0")
+ (version "3.14.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
- (base32 "1yl49gxrg0c2x3n3r60z3lixw9am8b61s0477l9vjabhhx1yziar"))))
+ (base32 "18jidir2wid0cp8a61m9vf9mf0pdvm6nzspc8bfwdbifghr6ndcy"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; fails to import test data
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 03/25] gnu: python-pycryptodome: Update to 3.11.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-3-sl@eauchat.org
* gnu/packages/python-crypto.scm (python-pycryptodome): Update to 3.11.0.
---
gnu/packages/python-crypto.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 1cddc56f1b..2359ea34f5 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -924,14 +924,14 @@ protocol (Javascript Object Signing and Encryption).")
(define-public python-pycryptodome
(package
(name "python-pycryptodome")
- (version "3.9.9")
+ (version "3.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pycryptodome" version))
(sha256
(base32
- "1i4m74f88qj9ci8rpyzrbk2slmsdj5ipmwdkq6qk24byalm203li"))
+ "1l3a80z3lxcj1q0hzj1d3plavy2d51y4vzcd85zj0zm7yyxrd022"))
(modules '((guix build utils)))
(snippet pycryptodome-unbundle-tomcrypt-snippet)))
(build-system python-build-system)
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 04/25] gnu: python-aiohttp-socks: Update to 0.6.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-4-sl@eauchat.org
* gnu/packages/python-web.scm (python-aiohttp-socks): Update to 0.6.0.
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b99e358e26..b1fd5f7379 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -240,14 +240,14 @@ Callback Hell.
(define-public python-aiohttp-socks
(package
(name "python-aiohttp-socks")
- (version "0.5.5")
+ (version "0.6.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "aiohttp_socks" version))
(sha256
(base32
- "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
+ "04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr"))))
(build-system python-build-system)
(propagated-inputs
`(("python-aiohttp" ,python-aiohttp)
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 05/25] gnu: python-hyperframe: Update to 6.0.1.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-5-sl@eauchat.org
* gnu/packages/python-web.scm (python-hyperframe): Update to 6.0.1.
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b1fd5f7379..f58b03d8f9 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -845,13 +845,13 @@ follow links and submit forms. It doesn’t do JavaScript.")
(define-public python-hyperframe
(package
(name "python-hyperframe")
- (version "5.2.0")
+ (version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "hyperframe" version))
(sha256
- (base32 "07xlf44l1cw0ghxx46sbmkgzil8vqv8kxwy42ywikiy35izw3xd9"))))
+ (base32 "055951gyhnjqpa2al52rj34g8yrls9inyn56n7nfkj0x4d300ldf"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 06/25] gnu: python-h11: Update to 0.12.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-6-sl@eauchat.org
* gnu/packages/python-web.scm (python-h11): Update to 0.12.0.
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f58b03d8f9..ea03eb64ee 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -909,13 +909,13 @@ for use in Python programs that implement HTTP/2.")
(define-public python-h11
(package
(name "python-h11")
- (version "0.9.0")
+ (version "0.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "h11" version))
(sha256
- (base32 "1qfad70h59hya21vrzz8dqyyaiqhac0anl2dx3s3k80gpskvrm1k"))))
+ (base32 "0hk0nll6qazsambp3kl8cxxsbl4gv5y9252qadyk0jky0sv2q8j7"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 07/25] gnu: python-socks: Update to 1.2.4.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-7-sl@eauchat.org
* gnu/packages/python-web.scm (python-socks): Update to 1.2.4.
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index ea03eb64ee..c1fe1f1a63 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6140,14 +6140,14 @@ your code non-blocking and speedy.")
(define-public python-socks
(package
(name "python-socks")
- (version "1.1.2")
+ (version "1.2.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-socks" version))
(sha256
(base32
- "06mgv3icsyglv50w3sb71x6cpbskza20pqd93l5xk59x574i6xgs"))))
+ "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; tests not included
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 08/25] gnu: python-hpack: Update to 4.0.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-8-sl@eauchat.org
* gnu/packages/python-web.scm (python-hpack): Update to 4.0.0
[arguments]: Reactivate skipped test in 'check phase.
---
gnu/packages/python-web.scm | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

Toggle diff (36 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c1fe1f1a63..bd5fca2013 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -874,7 +874,7 @@ into HTTP/2 frames.")
(define-public python-hpack
(package
(name "python-hpack")
- (version "3.0.0")
+ (version "4.0.0")
(source
(origin
;; PyPI tarball is missing some files necessary for the tests.
@@ -884,7 +884,7 @@ into HTTP/2 frames.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0w8hkz50a6lzkmgi41ryicm0mh9ca9cx29pm3s0xlpn0vs29xrmd"))))
+ (base32 "11qdayvz5a8zlzdcdm37f2z1fgnl67pz6j8xj2dz5rfa5lds29yq"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -893,10 +893,7 @@ into HTTP/2 frames.")
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
- (invoke "pytest" "-vv" "test" "-k"
- ;; This test will be fixed in the next version. See:
- ;; https://github.com/python-hyper/hpack/issues/168.
- "not test_get_by_index_out_of_range")))))))
+ (invoke "pytest" "-vv" "test")))))))
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://hyper.rtfd.org")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 09/25] gnu: python-h2: Update to 4.1.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-9-sl@eauchat.org
* gnu/packages/python-web.scm (python-h2): Update to 4.1.0.
[native-inputs]: Add python-hypothesis-6.23.
[arguments]: Invoke pytest through `python -m` so it finds the newer
python-hypothesis-6.23.
[home-page]: Update to current url.
---
gnu/packages/python-web.scm | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

Toggle diff (40 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index bd5fca2013..37cde8336a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -935,13 +935,13 @@ and that could be anything you want.")
(define-public python-h2
(package
(name "python-h2")
- (version "3.2.0")
+ (version "4.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "h2" version))
(sha256
- (base32 "051gg30aca26rdxsmr9svwqm06pdz9bv21ch4n0lgi7jsvml2pw7"))))
+ (base32 "1fraip114fm1ha5w37pdc0sk8dn9pb0ck267zrwwpap7zc4clfm8"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -950,13 +950,14 @@ and that could be anything you want.")
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
- (invoke "pytest" "-vv" "test")))))))
+ (invoke "python" "-m" "pytest" "-vv" "test")))))))
(native-inputs
- `(("python-pytest" ,python-pytest)))
+ `(("python-hypothesis" ,python-hypothesis-6.23)
+ ("python-pytest" ,python-pytest)))
(propagated-inputs
`(("python-hpack" ,python-hpack)
("python-hyperframe" ,python-hyperframe)))
- (home-page "https://github.com/python-hyper/hyper-h2")
+ (home-page "https://github.com/python-hyper/h2")
(synopsis "HTTP/2 State-Machine based protocol implementation")
(description
"This module contains a pure-Python implementation of a HTTP/2 protocol
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 10/25] gnu: python-future: Update to 0.18.2.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-10-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-future): Update to 0.18.2.
---
gnu/packages/python-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 634cd5efec..f62b75faf5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14470,14 +14470,14 @@ development version of CPython that are not available in older releases.")
(define-public python-future
(package
(name "python-future")
- (version "0.17.1")
+ (version "0.18.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "future" version))
(sha256
(base32
- "1f2rlqn9rh7adgir52dlbqz69gsab44x0mlm8gf1cs7xvhv54137"))))
+ "0zakvfj87gy6mn1nba06sdha63rn4njm7bhh0wzyrxhcny8avgmi"))))
(build-system python-build-system)
;; Many tests connect to the network or are otherwise flawed.
;; https://github.com/PythonCharmers/python-future/issues/210
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 11/25] gnu: python-curio: Update to 1.5.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-11-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-curio): Update to 1.5.
---
gnu/packages/python-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f62b75faf5..d43656820c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10698,13 +10698,13 @@ printing of sub-tables by specifying a row range.")
(define-public python-curio
(package
(name "python-curio")
- (version "1.2")
+ (version "1.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "curio" version))
(sha256
- (base32 "16wkww6kh511b9bzsfhpvrv0766cc6ssgbzz4lgpjnrzzgx21wwh"))))
+ (base32 "045wwg16qadsalhicbv21p14sj8i4w0l57639j7dmdqbb4p2225g"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 12/25] gnu: python-faker: Update to 9.3.1.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-12-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-faker): Update to 9.3.1.
[native-inputs]: Use python-pytest-6.
---
gnu/packages/python-xyz.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d43656820c..2000c00bcd 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15671,13 +15671,13 @@ parsing UK postcodes.")
(define-public python-faker
(package
(name "python-faker")
- (version "4.0.2")
+ (version "9.3.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "Faker" version))
(sha256
(base32
- "13qq485ydxmdnqn3xbfv1xfyqbf9qfnfw33v1vw5l6jyy9p8cgrd"))))
+ "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -15687,7 +15687,7 @@ parsing UK postcodes.")
(native-inputs
`(;; For testing
("python-freezegun" ,python-freezegun)
- ("python-pytest" ,python-pytest)
+ ("python-pytest" ,python-pytest-6)
("python-random2" ,python-random2)
("python-ukpostcodeparser" ,python-ukpostcodeparser)
("python-validators" ,python-validators)))
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 13/25] gnu: python-ukpostcodeparser: Update to 1.1.2.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-13-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-ukpostcodeparser): Update to
1.1.2.
[arguments]: Replace 'check phase to run tests with pytest, ignoring
failing lowercase tests.
[native-inputs]: Add python-pytest.
---
gnu/packages/python-xyz.scm | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2000c00bcd..6b0aa5052b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15650,14 +15650,29 @@ simple, lightweight implementation.")
(define-public python-ukpostcodeparser
(package
(name "python-ukpostcodeparser")
- (version "1.0.3")
+ (version "1.1.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "UkPostcodeParser" version))
(sha256
(base32
- "1jwg9z4rz51mcka1821rwgycsd0mcicyp1kiwjfa2kvg8bm9p2qd"))))
+ "03jkf1ygbwq3akzbcjyjk1akc1hv2sfgx90306pq1nwklbpn80lk"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; Tests for lowercase postcodes fail.
+ (invoke "pytest" "-vv" "ukpostcodeparser/test/parser.py" "-k"
+ (string-append "not test_091 "
+ "and not test_097 "
+ "and not test_098 "
+ "and not test_125 "
+ "and not test_131"))))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
(home-page "https://github.com/hamstah/ukpostcodeparser")
(synopsis "UK Postcode parser for Python")
(description
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 14/25] gnu: python-unpaddedbase64: Update to 2.1.0.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-14-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-unpaddedbase64): Update to 2.1.0.
[source]: Fetch from PyPi.
[arguments]: Replace 'check phase to run tests fetched upstream from
GitHub.
[native-inputs]: Add `python-pytest` and `tests` for fetching upstream
tests.
[home-page]: Update to GitHub project home.
---
gnu/packages/python-xyz.scm | 39 ++++++++++++++++++++++++++++---------
1 file changed, 30 insertions(+), 9 deletions(-)

Toggle diff (56 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6b0aa5052b..27a8054557 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24576,19 +24576,40 @@ replacement for dictionaries where immutability is desired.")
(define-public python-unpaddedbase64
(package
(name "python-unpaddedbase64")
- (version "1.1.0")
+ (version "2.1.0")
(source
(origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/matrix-org/python-unpaddedbase64")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
+ (method url-fetch)
+ (uri (pypi-uri "unpaddedbase64" version))
(sha256
- (base32
- "0if3fjfxga0bwdq47v77fs9hrcqpmwdxry2i2a7pdqsp95258nxd"))))
+ (base32 "01ghlmw63fgslwj8j74vkpf1kqvr7a4agm6nyn89vqwx106ccwvj"))))
(build-system python-build-system)
- (home-page "https://pypi.org/project/unpaddedbase64/")
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs tests? #:allow-other-keys)
+ (when tests?
+ (copy-recursively (string-append
+ (assoc-ref inputs "tests") "/tests")
+ "tests")
+ (invoke "python" "-m" "pytest" "-vv")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("tests"
+ ;; The release on pypi comes without tests. We can't build from this
+ ;; checkout, though, because installation requires an invocation of
+ ;; poetry.
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/python-unpaddedbase64")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n6har8pxv0mqb96lanzihp1xf76aa17jw3977drb1fgz947pnmz"))))))
+ (home-page "https://github.com/matrix-org/python-unpaddedbase64")
(synopsis "Encode and decode Base64 without “=” padding")
(description
"RFC 4648 specifies that Base64 should be padded to a multiple of 4 bytes
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 15/25] gnu: Add python-atomicwrites-1.4.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-15-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-atomicwrites-1.4): New variable.
---
gnu/packages/python-xyz.scm | 11 +++++++++++
1 file changed, 11 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 27a8054557..d64385972f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12346,6 +12346,17 @@ for atomic file system operations.")
(define-public python2-atomicwrites
(package-with-python2 python-atomicwrites))
+(define-public python-atomicwrites-1.4
+ (package
+ (inherit python-atomicwrites)
+ (version "1.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "atomicwrites" version))
+ (sha256
+ (base32
+ "0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f"))))))
+
(define-public python-qstylizer
(package
(name "python-qstylizer")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 16/25] gnu: Add python2-atomicwrites-1.4.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-16-sl@eauchat.org
* gnu/packages/python-xyz.scm (python2-atomicwrites-1.4): New variable.
---
gnu/packages/python-xyz.scm | 3 +++
1 file changed, 3 insertions(+)

Toggle diff (16 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d64385972f..0aaac07d32 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12357,6 +12357,9 @@ for atomic file system operations.")
(base32
"0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f"))))))
+(define-public python2-atomicwrites-1.4
+ (package-with-python2 python-atomicwrites-1.4))
+
(define-public python-qstylizer
(package
(name "python-qstylizer")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 17/25] gnu: Add python-aioresponses.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-17-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-aioresponses): New variable.
---
gnu/packages/python-xyz.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0aaac07d32..02e605b16d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -229,6 +229,46 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
+(define-public python-aioresponses
+ (package
+ (name "python-aioresponses")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "aioresponses" version))
+ (sha256
+ (base32 "16p8mdyfirddrsay62ji7rwcrqmmzxzf2isdbfm9cj5p338rbr42"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke
+ "pytest" "-vv" "tests" "-k"
+ (string-append
+ ;; These tests require network access.
+ "not test_address_as_instance_of_url_combined_with_pass_through "
+ "and not test_pass_through_with_origin_params"))))))))
+ (native-inputs
+ `(("python-pbr" ,python-pbr)
+ ("python-ddt" ,python-ddt)
+ ("python-pytest" ,python-pytest)))
+ (propagated-inputs
+ `(("python-aiohttp" ,python-aiohttp)))
+ (home-page "https://github.com/pnuckowski/aioresponses")
+ (synopsis "Mock out requests made by ClientSession from aiohttp package")
+ (description
+ "Aioresponses is a helper to mock/fake web requests in python aiohttp
+package. For requests module there are a lot of packages that help us with
+testing (eg. httpretty, responses, requests-mock). When it comes to testing
+asynchronous HTTP requests it is a bit harder (at least at the beginning).
+The purpose of this package is to provide an easy way to test asynchronous
+HTTP requests.")
+ (license license:expat)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 18/25] gnu: Add python-janus.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-18-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-janus): New variable.
---
gnu/packages/python-xyz.scm | 39 +++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 02e605b16d..5f80a39fc0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -269,6 +269,45 @@ The purpose of this package is to provide an easy way to test asynchronous
HTTP requests.")
(license license:expat)))
+(define-public python-janus
+ (package
+ (name "python-janus")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "janus" version))
+ (sha256
+ (base32 "030xvl2vghi5ispfalhvch1rl6i2jsy5bf1dgjafa7vifppy04j7"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest" "--cov=janus" "--cov=tests")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)))
+ (home-page "https://github.com/aio-libs/janus/")
+ (synopsis
+ "Sync-async queue to interoperate between asyncio tasks and classic threads")
+ (description
+ "Mixed sync-async queue, supposed to be used for communicating between
+classic synchronous (threaded) code and asynchronous (in terms of
+@url{https://docs.python.org/3/library/asyncio.html,asyncio}) one. Like
+@url{https://en.wikipedia.org/wiki/Janus,Janus god} the queue object from the
+library has two faces: synchronous and asynchronous interface. Synchronous is
+fully compatible with
+@url{https://docs.python.org/3/library/queue.html,standard queue},
+asynchronous one follows
+@url{https://docs.python.org/3/library/asyncio-queue.html,asyncio queue
+design}.")
+ (license license:asl2.0)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 19/25] gnu: Add python-logbook.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-19-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-logbook): New variable.
---
gnu/packages/python-xyz.scm | 38 +++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (51 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5f80a39fc0..b5c40692db 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -308,6 +308,44 @@ asynchronous one follows
design}.")
(license license:asl2.0)))
+(define-public python-logbook
+ (package
+ (name "python-logbook")
+ (version "1.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "Logbook" version))
+ (sha256
+ (base32 "1s1gyfw621vid7qqvhddq6c3z2895ci4lq3g0r1swvpml2nm9x36"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'cythonize-sources
+ (lambda _
+ (with-directory-excursion "logbook"
+ (invoke "cython" "_speedups.pyx"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; Check cython build also
+ (setenv "CYBUILD" "True")
+ (invoke "pytest" "--cov=logbook" "-r" "s" "tests")))))))
+ (native-inputs
+ `(("python-cython" ,python-cython)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-google-brotli" ,python-google-brotli)))
+ (home-page "https://github.com/getlogbook/logbook")
+ (synopsis "Logbook is a logging replacement for Python")
+ (description
+ "Logbook is a logging system for Python that replaces the standard
+library’s logging module. It was designed with both complex and simple
+applications in mind and the idea to make logging fun.")
+ (license license:bsd-3)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 20/25] gnu: Add python-olm.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-20-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-olm): New variable.
---
gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b5c40692db..f090eb2b5a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -229,6 +229,31 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
+(define-public python-olm
+ (package
+ (name "python-olm")
+ (version "3.1.3")
+ (source
+ ;; Note: at the time of writing, the upstream version is 3.2.6, so it
+ ;; may be worth using the subfolder of the upstream git repository
+ ;; instead of PyPi.
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "python-olm" version))
+ (sha256
+ (base32 "0wg8zr1gbba8396pf3hsxmv2ysmkql9qpwg3i267hxrprqrn2v4s"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-cffi" ,python-cffi)
+ ("python-future" ,python-future)))
+ (inputs
+ `(("libolm" ,libolm)))
+ (home-page "https://gitlab.matrix.org/matrix-org/olm")
+ (synopsis "Python CFFI bindings for the olm cryptographic ratchet library")
+ (description
+ "Python CFFI bindings for the olm cryptographic ratchet library.")
+ (license license:asl2.0)))
+
(define-public python-aioresponses
(package
(name "python-aioresponses")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 21/25] gnu: Add python-matrix-nio.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-21-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-matrix-nio): New variable.
---
gnu/packages/python-xyz.scm | 76 +++++++++++++++++++++++++++++++++++++
1 file changed, 76 insertions(+)

Toggle diff (89 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f090eb2b5a..453d54a085 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -294,6 +294,82 @@ The purpose of this package is to provide an easy way to test asynchronous
HTTP requests.")
(license license:expat)))
+(define-public python-matrix-nio
+ (package
+ (name "python-matrix-nio")
+ (version "0.18.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "matrix-nio" version))
+ (sha256
+ (base32 "0cw4y6dx8n8hynxqlzzkj8p34nfbc2xryvmkr5yhmja31y4rks4k"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'install-tests
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (copy-recursively (string-append
+ (assoc-ref inputs "tests") "/tests")
+ "tests")
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ ;; FIXME: two tests fail, for unknown reasons
+ (invoke "python" "-m" "pytest" "-vv" "tests" "-k"
+ (string-append
+ "not test_upload_binary_file_object "
+ "and not test_connect_wrapper"))))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest-6)
+ ("python-hyperframe" ,python-hyperframe)
+ ("python-hypothesis" ,python-hypothesis-6.23)
+ ("python-hpack" ,python-hpack)
+ ("python-faker" ,python-faker)
+ ("python-pytest-aiohttp" ,python-pytest-aiohttp)
+ ("python-aioresponses" ,python-aioresponses)
+ ("python-pytest-benchmark" ,python-pytest-benchmark)
+ ("python-toml" ,python-toml)
+ ("tests"
+ ;; The release on pypi comes without tests. We can't build from this
+ ;; checkout, though, because installation requires an invocation of
+ ;; poetry.
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/poljar/matrix-nio.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "152prkndk53pfxm4in4xak4hwzyaxlbp6wv2zbk2xpzgyy9bvn3s"))))))
+ (propagated-inputs
+ `(("python-aiofiles" ,python-aiofiles)
+ ("python-aiohttp" ,python-aiohttp)
+ ("python-aiohttp-socks" ,python-aiohttp-socks)
+ ("python-atomicwrites" ,python-atomicwrites-1.4)
+ ("python-cachetools" ,python-cachetools)
+ ("python-future" ,python-future)
+ ("python-h11" ,python-h11)
+ ("python-h2" ,python-h2)
+ ("python-jsonschema" ,python-jsonschema)
+ ("python-logbook" ,python-logbook)
+ ("python-olm" ,python-olm)
+ ("python-peewee" ,python-peewee)
+ ("python-pycryptodome" ,python-pycryptodome)
+ ("python-unpaddedbase64" ,python-unpaddedbase64)))
+ (home-page "https://github.com/poljar/matrix-nio")
+ (synopsis
+ "Python Matrix client library, designed according to sans I/O principles")
+ (description
+ "Matrix nio is a multilayered Matrix client library. The underlying base
+layer doesn't do any network IO on its own, but on top of that is a full
+fledged batteries-included asyncio layer using aiohttp.")
+ (license license:isc)))
+
(define-public python-janus
(package
(name "python-janus")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 22/25] gnu: Add python-pantalaimon.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-22-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-pantalaimon): New variable.
---
gnu/packages/python-xyz.scm | 56 +++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 453d54a085..256aed9068 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -447,6 +447,62 @@ library’s logging module. It was designed with both complex and simple
applications in mind and the idea to make logging fun.")
(license license:bsd-3)))
+(define-public python-pantalaimon
+ (package
+ (name "python-pantalaimon")
+ (version "0.10.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/pantalaimon")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "153d8083lj3qqirbv5q1d3igzd61a5kyzfk7xmv29sd3jbs8ysm9"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'downgrade-appdirs-requirement
+ (lambda _
+ (substitute* "setup.py"
+ ;; FIXME: Remove this once appdirs is updated.
+ ;; Upgrading python-appdirs requires rebuilting 3000+ packages,
+ ;; when 1.4.4 is a simple maintenance fix from 1.4.3.
+ (("appdirs >= 1.4.4") "appdirs >= 1.4.3"))))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest" "-vv" "tests")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-faker" ,python-faker)
+ ("python-pytest-aiohttp" ,python-pytest-aiohttp)
+ ("python-aioresponses" ,python-aioresponses)))
+ (propagated-inputs
+ `(("python-aiohttp" ,python-aiohttp)
+ ("python-appdirs" ,python-appdirs)
+ ("python-attrs" ,python-attrs)
+ ("python-cachetools" ,python-cachetools)
+ ("python-click" ,python-click)
+ ("python-janus" ,python-janus)
+ ("python-keyring" ,python-keyring)
+ ("python-logbook" ,python-logbook)
+ ("python-matrix-nio" ,python-matrix-nio)
+ ("python-peewee" ,python-peewee)
+ ("python-prompt-toolkit" ,python-prompt-toolkit)))
+ (home-page "https://github.com/matrix-org/pantalaimon")
+ (synopsis "Matrix proxy daemon that adds E2E encryption capabilities")
+ (description
+ "Pantalaimon is an end-to-end encryption aware Matrix reverse proxy
+daemon. Pantalaimon acts as a good man in the middle that handles the
+encryption for you. Messages are transparently encrypted and decrypted for
+clients inside of pantalaimon.")
+ (license license:asl2.0)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 23/25] gnu: python-socks: Fix indentation.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-23-sl@eauchat.org
* gnu/packages/python-web.scm (python-socks): Fix indentation.
---
gnu/packages/python-web.scm | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 37cde8336a..38dd8e2bad 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6140,15 +6140,15 @@ your code non-blocking and speedy.")
(name "python-socks")
(version "1.2.4")
(source
- (origin
- (method url-fetch)
- (uri (pypi-uri "python-socks" version))
- (sha256
- (base32
- "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "python-socks" version))
+ (sha256
+ (base32
+ "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f ; tests not included
+ `(#:tests? #f ; tests not included
#:phases
(modify-phases %standard-phases
(replace 'check
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 24/25] gnu: python-faker: Fix indentation.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-24-sl@eauchat.org
* gnu/packages/python-xyz.scm (python-faker): Fix indentation.
---
gnu/packages/python-xyz.scm | 60 ++++++++++++++++++-------------------
1 file changed, 30 insertions(+), 30 deletions(-)

Toggle diff (74 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 256aed9068..2ddd599aba 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15973,37 +15973,37 @@ parsing UK postcodes.")
(define-public python-faker
(package
- (name "python-faker")
- (version "9.3.1")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "Faker" version))
- (sha256
- (base32
- "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
- (build-system python-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _ (invoke "python" "-m" "pytest" "-v"))))))
- (native-inputs
- `(;; For testing
- ("python-freezegun" ,python-freezegun)
- ("python-pytest" ,python-pytest-6)
- ("python-random2" ,python-random2)
- ("python-ukpostcodeparser" ,python-ukpostcodeparser)
- ("python-validators" ,python-validators)))
- (propagated-inputs
- `(("python-dateutil" ,python-dateutil)
- ("python-text-unidecode" ,python-text-unidecode)))
- (home-page "https://github.com/joke2k/faker")
- (synopsis "Python package that generates fake data")
- (description
- "Faker is a Python package that generates fake data such as names,
+ (name "python-faker")
+ (version "9.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "Faker" version))
+ (sha256
+ (base32
+ "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _ (invoke "python" "-m" "pytest" "-v"))))))
+ (native-inputs
+ `( ;; For testing
+ ("python-freezegun" ,python-freezegun)
+ ("python-pytest" ,python-pytest-6)
+ ("python-random2" ,python-random2)
+ ("python-ukpostcodeparser" ,python-ukpostcodeparser)
+ ("python-validators" ,python-validators)))
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)
+ ("python-text-unidecode" ,python-text-unidecode)))
+ (home-page "https://github.com/joke2k/faker")
+ (synopsis "Python package that generates fake data")
+ (description
+ "Faker is a Python package that generates fake data such as names,
addresses, and phone numbers.")
- (license license:expat)
- (properties `((python2-variant . ,(delay python2-faker))))))
+ (license license:expat)
+ (properties `((python2-variant . ,(delay python2-faker))))))
;; Faker 4.0 dropped Python 2 support, so we stick with this older version here.
(define-public python2-faker
--
2.33.0
S
S
Sébastien Lerique wrote on 15 Oct 2021 04:40
[PATCH 25/25] gnu: python-xyz.scm: Add copyright line.
(address . 51222@debbugs.gnu.org)(name . Sébastien Lerique)(address . sl@eauchat.org)
20211015024036.53831-25-sl@eauchat.org
* gnu/packages/python-xyz.scm: Add copyright line for Sébastien
Lerique.
---
gnu/packages/python-xyz.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2ddd599aba..6697361796 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -108,6 +108,7 @@
;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
;;; Copyright © 2021 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
+;;; Copyright © 2021 Sébastien Lerique <sl@eauchat.org>
;;;
;;; This file is part of GNU Guix.
;;;
--
2.33.0
F
F
Foo Chuan Wei wrote on 15 Oct 2021 15:09
[bug#51222] [PATCH 0/25] Package python-pantalaimon
(address . sl@eauchat.org)(address . 51222@debbugs.gnu.org)
PU1PR01MB2155EA6531C0A247451F38658DB99@PU1PR01MB2155.apcprd01.prod.exchangelabs.com
Toggle quote (4 lines)
> (One question is how to generate the git summary I see in other 0/n
> patchset messages, which would have avoided me cancelling bugs #51220
> and #51221!)

Use the --cover-letter option when running git format-patch.
L
L
Lars-Dominik Braun wrote on 16 Oct 2021 17:42
(name . Sébastien Lerique)(address . sl@eauchat.org)(address . 51222@debbugs.gnu.org)
YWry5JUGSO6mxgqT@noor.fritz.box
Hi Sébastien,

thanks for your contribution!

Toggle quote (3 lines)
> This patchset packages the pantalaimon E2EE proxy for Matrix clients.
> It's the first time I'm sending a full-fledged patchset, and all
> comments are super welcome!
I was going to package python-matrix-nio anyway, so I picked up this
patchset and made some modifications:

- Removed python2-atomicwrites-1.4 (we’re trying to get rid of Python 2).
- Moved some matrix-related packages to gnu/packages/matrix.scm, which seems more appropriate. YMMV.
- Renamed python-pantalaimon to pantalaimon, because it’s an application, not a library.
- Upgraded python-olm to inherit from libolm.
- Updated the hash for python-pycryptodomex, because it inherits from python-pycryptodome and fails to build otherwise.

See attachments for a v2. Does this look good to you?

Cheers,
Lars

PS: Could you please add new packages at the bottom of a file? I feel
adding them at the top makes rebasing very difficult.
From 873a54cd6239f1ca2227c0edd3888baae241e755 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:12 +0900
Subject: [PATCH v2 01/26] gnu: Add python-hypothesis-6.23.

* gnu/packages/check.scm (python-hypothesis-6.23): New variable.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/check.scm | 11 +++++++++++
1 file changed, 11 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 4701d61a9e..1f9cc26913 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2154,6 +2154,17 @@ (define-public python-hypothesis-5.23
"0sy1v6nyxg4rjcf3rlr8nalb7wqd9nccpb2lzkchbj5an13ysf1h"))))
(home-page "https://github.com/HypothesisWorks/hypothesis")))
+(define-public python-hypothesis-6.23
+ (package
+ (inherit python-hypothesis)
+ (version "6.23.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hypothesis" version))
+ (sha256
+ (base32
+ "0lqhfrqsd81apchz93pdqfn85kx0p790w8hhd9qq85692rwja6xp"))))))
+
;; This is the last version of Hypothesis that supports Python 2.
(define-public python2-hypothesis
(let ((hypothesis (package-with-python2
--
2.32.0
From aa0c48ec37eb1fd09d0a5f4506e51ba45972ded5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:13 +0900
Subject: [PATCH v2 02/26] gnu: python-peewee: Update to 3.14.4.

* gnu/packages/databases.scm (python-peewee): Update to 3.14.4.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/databases.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 4869e1ced3..0da6c2d1be 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -2586,13 +2586,13 @@ (define-public libpqxx
(define-public python-peewee
(package
(name "python-peewee")
- (version "3.14.0")
+ (version "3.14.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
- (base32 "1yl49gxrg0c2x3n3r60z3lixw9am8b61s0477l9vjabhhx1yziar"))))
+ (base32 "18jidir2wid0cp8a61m9vf9mf0pdvm6nzspc8bfwdbifghr6ndcy"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; fails to import test data
--
2.32.0
From 7f37a52092915060d840cf37777d1707634635ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:14 +0900
Subject: [PATCH v2 03/26] gnu: python-pycryptodome: Update to 3.11.0.

* gnu/packages/python-crypto.scm (python-pycryptodome): Update to 3.11.0.
(python-pycryptodomex)[source]: Update hash since it inherits from
python-pycryptodome.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-crypto.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 1cddc56f1b..e62fc04c0f 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -924,14 +924,14 @@ (define pycryptodome-unbundle-tomcrypt-snippet
(define-public python-pycryptodome
(package
(name "python-pycryptodome")
- (version "3.9.9")
+ (version "3.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pycryptodome" version))
(sha256
(base32
- "1i4m74f88qj9ci8rpyzrbk2slmsdj5ipmwdkq6qk24byalm203li"))
+ "1l3a80z3lxcj1q0hzj1d3plavy2d51y4vzcd85zj0zm7yyxrd022"))
(modules '((guix build utils)))
(snippet pycryptodome-unbundle-tomcrypt-snippet)))
(build-system python-build-system)
@@ -990,7 +990,7 @@ (define-public python-pycryptodomex
(method url-fetch)
(uri (pypi-uri "pycryptodomex" version))
(sha256
- (base32 "0lbx4qk3xmwqiidhmkj8qa7bh2lf8bwzg0xjpsh2w5zqjrc7qnvv"))
+ (base32 "0vcd65ylri2a4pdqcc1897jasj7wfmqklj8x3pdynmdvark3d603"))
(modules '((guix build utils)))
(snippet pycryptodome-unbundle-tomcrypt-snippet)))
(description
--
2.32.0
From f92dd6601b12dd0909cdefd7728ea6a4cd2de0d5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:15 +0900
Subject: [PATCH v2 04/26] gnu: python-aiohttp-socks: Update to 0.6.0.

* gnu/packages/python-web.scm (python-aiohttp-socks): Update to 0.6.0.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index dcb84d0b67..8e723b02fd 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -239,14 +239,14 @@ (define-public python-aiohttp
(define-public python-aiohttp-socks
(package
(name "python-aiohttp-socks")
- (version "0.5.5")
+ (version "0.6.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "aiohttp_socks" version))
(sha256
(base32
- "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
+ "04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr"))))
(build-system python-build-system)
(propagated-inputs
`(("python-aiohttp" ,python-aiohttp)
--
2.32.0
From 818d354be7b9fb87955f1aff8995bf6c46df8ef4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:16 +0900
Subject: [PATCH v2 05/26] gnu: python-hyperframe: Update to 6.0.1.

* gnu/packages/python-web.scm (python-hyperframe): Update to 6.0.1.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8e723b02fd..f61509986c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -844,13 +844,13 @@ (define-public python-mechanicalsoup
(define-public python-hyperframe
(package
(name "python-hyperframe")
- (version "5.2.0")
+ (version "6.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "hyperframe" version))
(sha256
- (base32 "07xlf44l1cw0ghxx46sbmkgzil8vqv8kxwy42ywikiy35izw3xd9"))))
+ (base32 "055951gyhnjqpa2al52rj34g8yrls9inyn56n7nfkj0x4d300ldf"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.32.0
From d83d79f8b61bcef1d0fecaba870aa6e202aa9ccf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:17 +0900
Subject: [PATCH v2 06/26] gnu: python-h11: Update to 0.12.0.

* gnu/packages/python-web.scm (python-h11): Update to 0.12.0.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f61509986c..3439b9339f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -908,13 +908,13 @@ (define-public python-hpack
(define-public python-h11
(package
(name "python-h11")
- (version "0.9.0")
+ (version "0.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "h11" version))
(sha256
- (base32 "1qfad70h59hya21vrzz8dqyyaiqhac0anl2dx3s3k80gpskvrm1k"))))
+ (base32 "0hk0nll6qazsambp3kl8cxxsbl4gv5y9252qadyk0jky0sv2q8j7"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.32.0
From 97dc500ab921fcb590044562149c8e2f9ca564d4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:18 +0900
Subject: [PATCH v2 07/26] gnu: python-socks: Update to 1.2.4.

* gnu/packages/python-web.scm (python-socks): Update to 1.2.4.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3439b9339f..eec554a182 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6139,14 +6139,14 @@ (define-public python-socketio
(define-public python-socks
(package
(name "python-socks")
- (version "1.1.2")
+ (version "1.2.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-socks" version))
(sha256
(base32
- "06mgv3icsyglv50w3sb71x6cpbskza20pqd93l5xk59x574i6xgs"))))
+ "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; tests not included
--
2.32.0
From 14df51e1c1d169cdb4f4dd8da3a616fe8cb1f239 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:19 +0900
Subject: [PATCH v2 08/26] gnu: python-hpack: Update to 4.0.0.

* gnu/packages/python-web.scm (python-hpack): Update to 4.0.0
[arguments]: Reactivate skipped test in 'check phase.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

Toggle diff (36 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index eec554a182..11bb834ef9 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -873,7 +873,7 @@ (define-public python-hyperframe
(define-public python-hpack
(package
(name "python-hpack")
- (version "3.0.0")
+ (version "4.0.0")
(source
(origin
;; PyPI tarball is missing some files necessary for the tests.
@@ -883,7 +883,7 @@ (define-public python-hpack
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0w8hkz50a6lzkmgi41ryicm0mh9ca9cx29pm3s0xlpn0vs29xrmd"))))
+ (base32 "11qdayvz5a8zlzdcdm37f2z1fgnl67pz6j8xj2dz5rfa5lds29yq"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -892,10 +892,7 @@ (define-public python-hpack
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
- (invoke "pytest" "-vv" "test" "-k"
- ;; This test will be fixed in the next version. See:
- ;; https://github.com/python-hyper/hpack/issues/168.
- "not test_get_by_index_out_of_range")))))))
+ (invoke "pytest" "-vv" "test")))))))
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://hyper.rtfd.org")
--
2.32.0
From 5b6d8c1e35160d1635f8984b8c50e84e60bd6c0a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:20 +0900
Subject: [PATCH v2 09/26] gnu: python-h2: Update to 4.1.0.

* gnu/packages/python-web.scm (python-h2): Update to 4.1.0.
[native-inputs]: Add python-hypothesis-6.23.
[arguments]: Invoke pytest through `python -m` so it finds the newer
python-hypothesis-6.23.
[home-page]: Update to current url.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

Toggle diff (40 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 11bb834ef9..f3f7afd80c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -934,13 +934,13 @@ (define-public python-h11
(define-public python-h2
(package
(name "python-h2")
- (version "3.2.0")
+ (version "4.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "h2" version))
(sha256
- (base32 "051gg30aca26rdxsmr9svwqm06pdz9bv21ch4n0lgi7jsvml2pw7"))))
+ (base32 "1fraip114fm1ha5w37pdc0sk8dn9pb0ck267zrwwpap7zc4clfm8"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -949,13 +949,14 @@ (define-public python-h2
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
- (invoke "pytest" "-vv" "test")))))))
+ (invoke "python" "-m" "pytest" "-vv" "test")))))))
(native-inputs
- `(("python-pytest" ,python-pytest)))
+ `(("python-hypothesis" ,python-hypothesis-6.23)
+ ("python-pytest" ,python-pytest)))
(propagated-inputs
`(("python-hpack" ,python-hpack)
("python-hyperframe" ,python-hyperframe)))
- (home-page "https://github.com/python-hyper/hyper-h2")
+ (home-page "https://github.com/python-hyper/h2")
(synopsis "HTTP/2 State-Machine based protocol implementation")
(description
"This module contains a pure-Python implementation of a HTTP/2 protocol
--
2.32.0
From 982238c26fbcbdf13cbb5ded7d821a8ea2350182 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:21 +0900
Subject: [PATCH v2 10/26] gnu: python-future: Update to 0.18.2.

* gnu/packages/python-xyz.scm (python-future): Update to 0.18.2.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3abedc6ead..6e8a0c2b36 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14495,14 +14495,14 @@ (define-public python2-bz2file
(define-public python-future
(package
(name "python-future")
- (version "0.17.1")
+ (version "0.18.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "future" version))
(sha256
(base32
- "1f2rlqn9rh7adgir52dlbqz69gsab44x0mlm8gf1cs7xvhv54137"))))
+ "0zakvfj87gy6mn1nba06sdha63rn4njm7bhh0wzyrxhcny8avgmi"))))
(build-system python-build-system)
;; Many tests connect to the network or are otherwise flawed.
;; https://github.com/PythonCharmers/python-future/issues/210
--
2.32.0
From 1f8b375750d223a74325f57796b06ee94d9d2a34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:22 +0900
Subject: [PATCH v2 11/26] gnu: python-curio: Update to 1.5.

* gnu/packages/python-xyz.scm (python-curio): Update to 1.5.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6e8a0c2b36..5128fca007 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10723,13 +10723,13 @@ (define-public python2-prettytable
(define-public python-curio
(package
(name "python-curio")
- (version "1.2")
+ (version "1.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "curio" version))
(sha256
- (base32 "16wkww6kh511b9bzsfhpvrv0766cc6ssgbzz4lgpjnrzzgx21wwh"))))
+ (base32 "045wwg16qadsalhicbv21p14sj8i4w0l57639j7dmdqbb4p2225g"))))
(build-system python-build-system)
(arguments
`(#:phases
--
2.32.0
From 966f9b863530db4c8cee0741e54bbbdfa657d0da Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:23 +0900
Subject: [PATCH v2 12/26] gnu: python-faker: Update to 9.3.1.

* gnu/packages/python-xyz.scm (python-faker): Update to 9.3.1.
[native-inputs]: Use python-pytest-6.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5128fca007..60e0556438 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15696,13 +15696,13 @@ (define-public python2-ukpostcodeparser
(define-public python-faker
(package
(name "python-faker")
- (version "4.0.2")
+ (version "9.3.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "Faker" version))
(sha256
(base32
- "13qq485ydxmdnqn3xbfv1xfyqbf9qfnfw33v1vw5l6jyy9p8cgrd"))))
+ "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -15712,7 +15712,7 @@ (define-public python-faker
(native-inputs
`(;; For testing
("python-freezegun" ,python-freezegun)
- ("python-pytest" ,python-pytest)
+ ("python-pytest" ,python-pytest-6)
("python-random2" ,python-random2)
("python-ukpostcodeparser" ,python-ukpostcodeparser)
("python-validators" ,python-validators)))
--
2.32.0
From e7d627458c593da68fa1a0e5e1f366c5b617029d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:24 +0900
Subject: [PATCH v2 13/26] gnu: python-ukpostcodeparser: Update to 1.1.2.

* gnu/packages/python-xyz.scm (python-ukpostcodeparser): Update to
1.1.2.
[arguments]: Replace 'check phase to run tests with pytest, ignoring
failing lowercase tests.
[native-inputs]: Add python-pytest.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 60e0556438..7191d9e220 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15675,14 +15675,29 @@ (define-public python2-email-validator
(define-public python-ukpostcodeparser
(package
(name "python-ukpostcodeparser")
- (version "1.0.3")
+ (version "1.1.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "UkPostcodeParser" version))
(sha256
(base32
- "1jwg9z4rz51mcka1821rwgycsd0mcicyp1kiwjfa2kvg8bm9p2qd"))))
+ "03jkf1ygbwq3akzbcjyjk1akc1hv2sfgx90306pq1nwklbpn80lk"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; Tests for lowercase postcodes fail.
+ (invoke "pytest" "-vv" "ukpostcodeparser/test/parser.py" "-k"
+ (string-append "not test_091 "
+ "and not test_097 "
+ "and not test_098 "
+ "and not test_125 "
+ "and not test_131"))))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
(home-page "https://github.com/hamstah/ukpostcodeparser")
(synopsis "UK Postcode parser for Python")
(description
--
2.32.0
From f93992ffcaec5ed607008dddb77ee0b5fb0b5375 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:25 +0900
Subject: [PATCH v2 14/26] gnu: python-unpaddedbase64: Update to 2.1.0.

* gnu/packages/python-xyz.scm (python-unpaddedbase64): Update to 2.1.0.
[source]: Fetch from PyPi.
[arguments]: Replace 'check phase to run tests fetched upstream from
GitHub.
[native-inputs]: Add `python-pytest` and `tests` for fetching upstream
tests.
[home-page]: Update to GitHub project home.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 39 ++++++++++++++++++++++++++++---------
1 file changed, 30 insertions(+), 9 deletions(-)

Toggle diff (56 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7191d9e220..3633a4fa66 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -24601,19 +24601,40 @@ (define-public python-frozendict
(define-public python-unpaddedbase64
(package
(name "python-unpaddedbase64")
- (version "1.1.0")
+ (version "2.1.0")
(source
(origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/matrix-org/python-unpaddedbase64")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
+ (method url-fetch)
+ (uri (pypi-uri "unpaddedbase64" version))
(sha256
- (base32
- "0if3fjfxga0bwdq47v77fs9hrcqpmwdxry2i2a7pdqsp95258nxd"))))
+ (base32 "01ghlmw63fgslwj8j74vkpf1kqvr7a4agm6nyn89vqwx106ccwvj"))))
(build-system python-build-system)
- (home-page "https://pypi.org/project/unpaddedbase64/")
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs tests? #:allow-other-keys)
+ (when tests?
+ (copy-recursively (string-append
+ (assoc-ref inputs "tests") "/tests")
+ "tests")
+ (invoke "python" "-m" "pytest" "-vv")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("tests"
+ ;; The release on pypi comes without tests. We can't build from this
+ ;; checkout, though, because installation requires an invocation of
+ ;; poetry.
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/python-unpaddedbase64")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n6har8pxv0mqb96lanzihp1xf76aa17jw3977drb1fgz947pnmz"))))))
+ (home-page "https://github.com/matrix-org/python-unpaddedbase64")
(synopsis "Encode and decode Base64 without “=” padding")
(description
"RFC 4648 specifies that Base64 should be padded to a multiple of 4 bytes
--
2.32.0
From 947b0b1e4257a59f63766ff83ea886c924e218f2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:26 +0900
Subject: [PATCH v2 15/26] gnu: Add python-atomicwrites-1.4.

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

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 11 +++++++++++
1 file changed, 11 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3633a4fa66..4c638e35bc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12371,6 +12371,17 @@ (define-public python-atomicwrites
(define-public python2-atomicwrites
(package-with-python2 python-atomicwrites))
+(define-public python-atomicwrites-1.4
+ (package
+ (inherit python-atomicwrites)
+ (version "1.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "atomicwrites" version))
+ (sha256
+ (base32
+ "0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f"))))))
+
(define-public python-qstylizer
(package
(name "python-qstylizer")
--
2.32.0
From 18d2993c4d0f2e7fe0c078dc1b22f1a6da17341a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:28 +0900
Subject: [PATCH v2 16/26] gnu: Add python-aioresponses.

* gnu/packages/python-check.scm (python-aioresponses): New variable.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-check.scm | 40 +++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 8252f02182..7a61a73dd6 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1680,3 +1680,43 @@ (define-public python-pytest-mp
tedious system under test configuration that can benefit from running several
tests at one time.")
(license license:expat)))
+
+(define-public python-aioresponses
+ (package
+ (name "python-aioresponses")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "aioresponses" version))
+ (sha256
+ (base32 "16p8mdyfirddrsay62ji7rwcrqmmzxzf2isdbfm9cj5p338rbr42"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke
+ "pytest" "-vv" "tests" "-k"
+ (string-append
+ ;; These tests require network access.
+ "not test_address_as_instance_of_url_combined_with_pass_through "
+ "and not test_pass_through_with_origin_params"))))))))
+ (native-inputs
+ `(("python-pbr" ,python-pbr)
+ ("python-ddt" ,python-ddt)
+ ("python-pytest" ,python-pytest)))
+ (propagated-inputs
+ `(("python-aiohttp" ,python-aiohttp)))
+ (home-page "https://github.com/pnuckowski/aioresponses")
+ (synopsis "Mock out requests made by ClientSession from aiohttp package")
+ (description
+ "Aioresponses is a helper to mock/fake web requests in python aiohttp
+package. For requests module there are a lot of packages that help us with
+testing (eg. httpretty, responses, requests-mock). When it comes to testing
+asynchronous HTTP requests it is a bit harder (at least at the beginning).
+The purpose of this package is to provide an easy way to test asynchronous
+HTTP requests.")
+ (license license:expat)))
--
2.32.0
From e636953b69baf669c596f723ba2e89669cc0d649 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:29 +0900
Subject: [PATCH v2 17/26] gnu: Add python-janus.

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

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 39 +++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4c638e35bc..309924ac7b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -230,6 +230,45 @@ (define-module (gnu packages python-xyz)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
+(define-public python-janus
+ (package
+ (name "python-janus")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "janus" version))
+ (sha256
+ (base32 "030xvl2vghi5ispfalhvch1rl6i2jsy5bf1dgjafa7vifppy04j7"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest" "--cov=janus" "--cov=tests")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)))
+ (home-page "https://github.com/aio-libs/janus/")
+ (synopsis
+ "Sync-async queue to interoperate between asyncio tasks and classic threads")
+ (description
+ "Mixed sync-async queue, supposed to be used for communicating between
+classic synchronous (threaded) code and asynchronous (in terms of
+@url{https://docs.python.org/3/library/asyncio.html,asyncio}) one. Like
+@url{https://en.wikipedia.org/wiki/Janus,Janus god} the queue object from the
+library has two faces: synchronous and asynchronous interface. Synchronous is
+fully compatible with
+@url{https://docs.python.org/3/library/queue.html,standard queue},
+asynchronous one follows
+@url{https://docs.python.org/3/library/asyncio-queue.html,asyncio queue
+design}.")
+ (license license:asl2.0)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.32.0
From 279089894261a84e88208fb1b9ffbf036fc0b1f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:30 +0900
Subject: [PATCH v2 18/26] gnu: Add python-logbook.

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

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 38 +++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (51 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 309924ac7b..70636b62db 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -269,6 +269,44 @@ (define-public python-janus
design}.")
(license license:asl2.0)))
+(define-public python-logbook
+ (package
+ (name "python-logbook")
+ (version "1.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "Logbook" version))
+ (sha256
+ (base32 "1s1gyfw621vid7qqvhddq6c3z2895ci4lq3g0r1swvpml2nm9x36"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'cythonize-sources
+ (lambda _
+ (with-directory-excursion "logbook"
+ (invoke "cython" "_speedups.pyx"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; Check cython build also
+ (setenv "CYBUILD" "True")
+ (invoke "pytest" "--cov=logbook" "-r" "s" "tests")))))))
+ (native-inputs
+ `(("python-cython" ,python-cython)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-google-brotli" ,python-google-brotli)))
+ (home-page "https://github.com/getlogbook/logbook")
+ (synopsis "Logbook is a logging replacement for Python")
+ (description
+ "Logbook is a logging system for Python that replaces the standard
+library’s logging module. It was designed with both complex and simple
+applications in mind and the idea to make logging fun.")
+ (license license:bsd-3)))
+
(define-public python-ueberzug
(package
(name "python-ueberzug")
--
2.32.0
From c8ccc86374d54a29a38d8453c176de28f9a901e2 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sat, 16 Oct 2021 11:01:38 +0200
Subject: [PATCH v2 19/26] gnu: Add python-fields.

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

Toggle diff (26 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 70636b62db..268c35eb58 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -27447,3 +27447,19 @@ (define-public python-box
"This package provides the @code{python-box} Python module.
It implements advanced Python dictionaries with dot notation access.")
(license license:expat)))
+
+(define-public python-fields
+ (package
+ (name "python-fields")
+ (version "5.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fields" version))
+ (sha256
+ (base32 "09sppvhhkhkv9zc9g994m53z15v92csxwcf42ggkaknlv01smm1i"))))
+ (build-system python-build-system)
+ (home-page "https://python-fields.readthedocs.io/")
+ (synopsis "Python container class boilerplate killer")
+ (description "Avoid repetetive boilerplate code in Python classes.")
+ (license license:bsd-3)))
--
2.32.0
From 832b6e7da353c53fd0a6ae6ebf8329123b8ca993 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sat, 16 Oct 2021 11:02:14 +0200
Subject: [PATCH v2 20/26] gnu: Add python-aspectlib.

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

Toggle diff (32 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 268c35eb58..1f04519f35 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -27463,3 +27463,25 @@ (define-public python-fields
(synopsis "Python container class boilerplate killer")
(description "Avoid repetetive boilerplate code in Python classes.")
(license license:bsd-3)))
+
+(define-public python-aspectlib
+ (package
+ (name "python-aspectlib")
+ (version "1.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "aspectlib" version))
+ (sha256
+ (base32 "1am4ycf292zbmgz791z393v63w7qrynf8q5p9db2wwf2qj1fqxfj"))))
+ (build-system python-build-system)
+ (propagated-inputs `(("python-fields" ,python-fields)))
+ (home-page "https://github.com/ionelmc/python-aspectlib")
+ (synopsis
+ "Python monkey-patching and decorators")
+ (description
+ "This package provides an aspect-oriented programming, monkey-patch
+and decorators library. It is useful when changing behavior in existing
+code is desired. It includes tools for debugging and testing:
+simple mock/record and a complete capture/replay framework.")
+ (license license:bsd-2)))
--
2.32.0
From b7935c9d32d652144b48dafb1445782696f870fc Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sat, 16 Oct 2021 10:56:48 +0200
Subject: [PATCH v2 21/26] gnu: Add python-olm.

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

Toggle diff (62 lines)
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 64cdf48d5d..823b888b82 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -72,6 +72,7 @@ (define-module (gnu packages crypto)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages readline)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
@@ -91,6 +92,7 @@ (define-module (gnu packages crypto)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system perl)
+ #:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
@@ -1280,6 +1282,39 @@ (define-public libolm
(home-page "https://matrix.org/docs/projects/other/olm/")
(license license:asl2.0)))
+(define-public python-olm
+ (package
+ ;; python-olm is part of libolm and must be updated at the same time.
+ (inherit libolm)
+ (name "python-olm")
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "python")))
+ (add-before 'build 'set-preprocessor
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CPP" "gcc -E")))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest")))))))
+ (inputs `(("libolm" ,libolm)))
+ (propagated-inputs
+ `(("python-cffi" ,python-cffi)
+ ("python-future" ,python-future)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-benchmark" ,python-pytest-benchmark)
+ ("python-aspectlib" ,python-aspectlib)))
+ (synopsis "Python bindings for libolm")
+ (description "The libolm library implements the Double Ratchet
+cryptographic ratchet. It is written in C and C++11, and exposed as a C
+API. This package contains its Python bindings.")))
+
(define-public hash-extender
(let ((commit "cb8aaee49f93e9c0d2f03eb3cafb429c9eed723d")
(revision "2"))
--
2.32.0
From c700d802504ac1ac9268388661129d2559188ccd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:32 +0900
Subject: [PATCH v2 22/26] gnu: Add python-matrix-nio.

* gnu/packages/matrix.scm (python-matrix-nio): New variable.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/matrix.scm | 80 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 80 insertions(+)

Toggle diff (105 lines)
diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm
index 5c2b194d07..4fa276930f 100644
--- a/gnu/packages/matrix.scm
+++ b/gnu/packages/matrix.scm
@@ -22,14 +22,18 @@
(define-module (gnu packages matrix)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages check)
+ #:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages monitoring)
+ #:use-module (gnu packages python-build)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages xml)
#:use-module (guix build-system python)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix packages))
(define-public python-matrix-client
@@ -149,3 +153,79 @@ (define-public synapse
folks see the spec in the context of a codebase and let you run your own
homeserver and generally help bootstrap the ecosystem.")
(license license:asl2.0)))
+
+(define-public python-matrix-nio
+ (package
+ (name "python-matrix-nio")
+ (version "0.18.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "matrix-nio" version))
+ (sha256
+ (base32 "0cw4y6dx8n8hynxqlzzkj8p34nfbc2xryvmkr5yhmja31y4rks4k"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'install-tests
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (copy-recursively (string-append
+ (assoc-ref inputs "tests") "/tests")
+ "tests")
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ ;; FIXME: two tests fail, for unknown reasons
+ (invoke "python" "-m" "pytest" "-vv" "tests" "-k"
+ (string-append
+ "not test_upload_binary_file_object "
+ "and not test_connect_wrapper"))))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest-6)
+ ("python-hyperframe" ,python-hyperframe)
+ ("python-hypothesis" ,python-hypothesis-6.23)
+ ("python-hpack" ,python-hpack)
+ ("python-faker" ,python-faker)
+ ("python-pytest-aiohttp" ,python-pytest-aiohttp)
+ ("python-aioresponses" ,python-aioresponses)
+ ("python-pytest-benchmark" ,python-pytest-benchmark)
+ ("python-toml" ,python-toml)
+ ("tests"
+ ;; The release on pypi comes without tests. We can't build from this
+ ;; checkout, though, because installation requires an invocation of
+ ;; poetry.
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/poljar/matrix-nio.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "152prkndk53pfxm4in4xak4hwzyaxlbp6wv2zbk2xpzgyy9bvn3s"))))))
+ (propagated-inputs
+ `(("python-aiofiles" ,python-aiofiles)
+ ("python-aiohttp" ,python-aiohttp)
+ ("python-aiohttp-socks" ,python-aiohttp-socks)
+ ("python-atomicwrites" ,python-atomicwrites-1.4)
+ ("python-cachetools" ,python-cachetools)
+ ("python-future" ,python-future)
+ ("python-h11" ,python-h11)
+ ("python-h2" ,python-h2)
+ ("python-jsonschema" ,python-jsonschema)
+ ("python-logbook" ,python-logbook)
+ ("python-olm" ,python-olm)
+ ("python-peewee" ,python-peewee)
+ ("python-pycryptodome" ,python-pycryptodome)
+ ("python-unpaddedbase64" ,python-unpaddedbase64)))
+ (home-page "https://github.com/poljar/matrix-nio")
+ (synopsis
+ "Python Matrix client library, designed according to sans I/O principles")
+ (description
+ "Matrix nio is a multilayered Matrix client library. The underlying base
+layer doesn't do any network IO on its own, but on top of that is a full
+fledged batteries-included asyncio layer using aiohttp.")
+ (license license:isc)))
--
2.32.0
From fd58b7942a7e1bdf0247efac930e3a3be8567fd2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:33 +0900
Subject: [PATCH v2 23/26] gnu: Add pantalaimon.

* gnu/packages/matrix.scm (pantalaimon): New variable.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/matrix.scm | 56 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (66 lines)
diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm
index 4fa276930f..5300185b67 100644
--- a/gnu/packages/matrix.scm
+++ b/gnu/packages/matrix.scm
@@ -229,3 +229,59 @@ (define-public python-matrix-nio
layer doesn't do any network IO on its own, but on top of that is a full
fledged batteries-included asyncio layer using aiohttp.")
(license license:isc)))
+
+(define-public pantalaimon
+ (package
+ (name "pantalaimon")
+ (version "0.10.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/pantalaimon")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "153d8083lj3qqirbv5q1d3igzd61a5kyzfk7xmv29sd3jbs8ysm9"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'downgrade-appdirs-requirement
+ (lambda _
+ (substitute* "setup.py"
+ ;; FIXME: Remove this once appdirs is updated.
+ ;; Upgrading python-appdirs requires rebuilting 3000+ packages,
+ ;; when 1.4.4 is a simple maintenance fix from 1.4.3.
+ (("appdirs >= 1.4.4") "appdirs >= 1.4.3"))))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest" "-vv" "tests")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-faker" ,python-faker)
+ ("python-pytest-aiohttp" ,python-pytest-aiohttp)
+ ("python-aioresponses" ,python-aioresponses)))
+ (propagated-inputs
+ `(("python-aiohttp" ,python-aiohttp)
+ ("python-appdirs" ,python-appdirs)
+ ("python-attrs" ,python-attrs)
+ ("python-cachetools" ,python-cachetools)
+ ("python-click" ,python-click)
+ ("python-janus" ,python-janus)
+ ("python-keyring" ,python-keyring)
+ ("python-logbook" ,python-logbook)
+ ("python-matrix-nio" ,python-matrix-nio)
+ ("python-peewee" ,python-peewee)
+ ("python-prompt-toolkit" ,python-prompt-toolkit)))
+ (home-page "https://github.com/matrix-org/pantalaimon")
+ (synopsis "Matrix proxy daemon that adds E2E encryption capabilities")
+ (description
+ "Pantalaimon is an end-to-end encryption aware Matrix reverse proxy
+daemon. Pantalaimon acts as a good man in the middle that handles the
+encryption for you. Messages are transparently encrypted and decrypted for
+clients inside of pantalaimon.")
+ (license license:asl2.0)))
--
2.32.0
From c650fc0df39b926ec561c73a7d6cecafd33bbaa9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:34 +0900
Subject: [PATCH v2 24/26] gnu: python-socks: Fix indentation.

* gnu/packages/python-web.scm (python-socks): Fix indentation.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-web.scm | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f3f7afd80c..2b5379950d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6139,15 +6139,15 @@ (define-public python-socks
(name "python-socks")
(version "1.2.4")
(source
- (origin
- (method url-fetch)
- (uri (pypi-uri "python-socks" version))
- (sha256
- (base32
- "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "python-socks" version))
+ (sha256
+ (base32
+ "1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f ; tests not included
+ `(#:tests? #f ; tests not included
#:phases
(modify-phases %standard-phases
(replace 'check
--
2.32.0
From 96826ba8f3af7c3e5554f7ae217c60d1b7e331d6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:35 +0900
Subject: [PATCH v2 25/26] gnu: python-faker: Fix indentation.

* gnu/packages/python-xyz.scm (python-faker): Fix indentation.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 60 ++++++++++++++++++-------------------
1 file changed, 30 insertions(+), 30 deletions(-)

Toggle diff (74 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1f04519f35..55c9218c5a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15798,37 +15798,37 @@ (define-public python2-ukpostcodeparser
(define-public python-faker
(package
- (name "python-faker")
- (version "9.3.1")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "Faker" version))
- (sha256
- (base32
- "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
- (build-system python-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _ (invoke "python" "-m" "pytest" "-v"))))))
- (native-inputs
- `(;; For testing
- ("python-freezegun" ,python-freezegun)
- ("python-pytest" ,python-pytest-6)
- ("python-random2" ,python-random2)
- ("python-ukpostcodeparser" ,python-ukpostcodeparser)
- ("python-validators" ,python-validators)))
- (propagated-inputs
- `(("python-dateutil" ,python-dateutil)
- ("python-text-unidecode" ,python-text-unidecode)))
- (home-page "https://github.com/joke2k/faker")
- (synopsis "Python package that generates fake data")
- (description
- "Faker is a Python package that generates fake data such as names,
+ (name "python-faker")
+ (version "9.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "Faker" version))
+ (sha256
+ (base32
+ "0lpfdc4ndvk7chgqrfd2b1my4n54pccq9b645vp9cp5s5ypyknfd"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _ (invoke "python" "-m" "pytest" "-v"))))))
+ (native-inputs
+ `( ;; For testing
+ ("python-freezegun" ,python-freezegun)
+ ("python-pytest" ,python-pytest-6)
+ ("python-random2" ,python-random2)
+ ("python-ukpostcodeparser" ,python-ukpostcodeparser)
+ ("python-validators" ,python-validators)))
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)
+ ("python-text-unidecode" ,python-text-unidecode)))
+ (home-page "https://github.com/joke2k/faker")
+ (synopsis "Python package that generates fake data")
+ (description
+ "Faker is a Python package that generates fake data such as names,
addresses, and phone numbers.")
- (license license:expat)
- (properties `((python2-variant . ,(delay python2-faker))))))
+ (license license:expat)
+ (properties `((python2-variant . ,(delay python2-faker))))))
;; Faker 4.0 dropped Python 2 support, so we stick with this older version here.
(define-public python2-faker
--
2.32.0
From 3ad946ceb8fb2fb9eb39b98eb49c912ed5475768 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Lerique?= <sl@eauchat.org>
Date: Fri, 15 Oct 2021 11:40:36 +0900
Subject: [PATCH v2 26/26] gnu: python-xyz.scm: Add copyright line.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* gnu/packages/python-xyz.scm: Add copyright line for S�bastien
Lerique.

Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
---
gnu/packages/python-xyz.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 55c9218c5a..1a2a6932ec 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -109,6 +109,7 @@
;;; Copyright � 2021 Daniel Mei�ner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright � 2021 Pradana Aumars <paumars@courrier.dev>
;;; Copyright � 2021 Felix Gruber <felgru@posteo.net>
+;;; Copyright � 2021 S�bastien Lerique <sl@eauchat.org>
;;;
;;; This file is part of GNU Guix.
;;;
--
2.32.0
S
S
Sébastien Lerique wrote on 18 Oct 2021 02:53
(name . Lars-Dominik Braun)(address . lars@6xq.net)(address . 51222@debbugs.gnu.org)
87zgr7b191.fsf@eauchat.org
Hi Lars-Dominik,

Toggle quote (12 lines)
> I was going to package python-matrix-nio anyway, so I picked up this
> patchset and made some modifications:
>
> - Removed python2-atomicwrites-1.4 (we’re trying to get rid of Python 2).
> - Moved some matrix-related packages to gnu/packages/matrix.scm, which seems more appropriate. YMMV.
> - Renamed python-pantalaimon to pantalaimon, because it’s an application, not a library.
> - Upgraded python-olm to inherit from libolm.
> - Updated the hash for python-pycryptodomex, because it inherits from python-pycryptodome and fails to build otherwise.
>
> See attachments for a v2. Does this look good to you?
>

Thanks for the changes, this all looks wonderful!

Best,
Sébastien
L
L
Lars-Dominik Braun wrote on 18 Oct 2021 09:28
(name . Sébastien Lerique)(address . sl@eauchat.org)(address . 51222-done@debbugs.gnu.org)
YW0iJZlgOaT5PbIQ@noor.fritz.box
Hi,

Toggle quote (1 lines)
> Thanks for the changes, this all looks wonderful!
pushed as 23c9d22e118db2362c8f0132a49c3004fa668b12 and following.

Thanks,
Lars
Closed
?