unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [bug#29733] Add virtaal (translation app)
@ 2017-12-16 10:09 54% Mark Meyer
  0 siblings, 0 replies; 200+ results
From: Mark Meyer @ 2017-12-16 10:09 UTC (permalink / raw)
  To: 29733

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

Hi,
I just wanted to quickly have someone look over the following changes:

  - Add python2-pycurl adds pycurl (it's Py2 only)
  - Update python2-gobject-2 to 2.28.7 (the most recent, patch still
  seems to apply

    This update pulls in a lot of changes that were present in
    distrubutions for a long time

  - Add virtaal

    This just adds virtaal with proper dependencies.

Cheers, Mark

-- 
  Mark Meyer
  mark@ofosos.org

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-python2-pycurl.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-python2-pycurl.patch", Size: 2521 bytes --]

From 6b2b028d4500a535faa3442daa0c228f9c98b93f Mon Sep 17 00:00:00 2001
From: Mark Meyer <mark@ofosos.org>
Date: Fri, 15 Dec 2017 10:09:28 +0100
Subject: [PATCH] gnu: Add python2-pycurl.

* gnu/packages/python-web.scm (python2-pycurl): New public variable.
---
 gnu/packages/python-web.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 12e45b2ef..502834bdc 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -22,6 +22,7 @@
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
+;;; Copyright © 2017 Mark Meyer <mark@ofosos.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -45,11 +46,13 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages django)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages time)
   #:use-module (gnu packages xml)
   #:use-module ((guix licenses) #:prefix license:)
@@ -238,6 +241,30 @@ C, yielding parse times that can be a thirtieth of the html5lib parse times.")
 (define-public python2-html5-parser
   (package-with-python2 python-html5-parser))
 
+(define-public python2-pycurl
+  (package
+    (name "python2-pycurl")
+    (version "7.43.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://dl.bintray.com/pycurl/pycurl/pycurl-" version ".tar.gz"))
+       (sha256
+        (base32 "1ali1gjs9iliwjra7w0y5hwg79a2fd0f4ydvv6k27sgxpbr1n8s3"))))
+    (build-system python-build-system)
+    (arguments `(#:python ,python-2)) ; no Python 3 support
+    (native-inputs
+     `(("python-nose" ,python-nose)
+       ("python-bottle" ,python-bottle)))
+    (inputs
+     `(("curl" ,curl)
+       ("gnutls" ,gnutls)))
+    (home-page "http://pycurl.io/")
+    (synopsis "Lightweight Python wrapper around libcurl")
+    (description "Pycurl is a lightweight wrapper around libcurl. It provides
+high speed transfers via libcurl and frequently outperforms alternatives.")
+    (license license:lgpl2.0)))
+
 (define-public python-webencodings
   (package
     (name "python-webencodings")
-- 
2.15.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0001-gnu-python2-gobject-2-Update-to-2.28.7.patch --]
[-- Type: text/x-patch; name="0001-gnu-python2-gobject-2-Update-to-2.28.7.patch", Size: 1230 bytes --]

From 8a71cee704727f80e4146ee87a06c462bf59a9c5 Mon Sep 17 00:00:00 2001
From: Mark Meyer <mark@ofosos.org>
Date: Sat, 16 Dec 2017 10:57:21 +0100
Subject: [PATCH] gnu: python2-gobject-2: Update to 2.28.7

* gnu/packages/glib.scm (python2-gobject-2): Update to 2.28.7.
---
 gnu/packages/glib.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index de7427859..40d23e104 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -543,7 +543,7 @@ useful for C++.")
     (name "python2-pygobject")
     ;; This was the last version to declare the 2.0 platform number, i.e. its
     ;; pkg-config files were named pygobject-2.0.pc
-    (version "2.28.6")
+    (version "2.28.7")
     (source
      (origin
        (method url-fetch)
@@ -552,7 +552,7 @@ useful for C++.")
                            "/pygobject-" version ".tar.xz"))
        (sha256
         (base32
-         "1f5dfxjnil2glfwxnqr14d2cjfbkghsbsn8n04js2c2icr7iv2pv"))
+         "0nkam61rsn7y3wik3vw46wk5q2cjfh2iph57hl9m39rc8jijb7dv"))
        (patches (search-patches
                  "python2-pygobject-2-gi-info-type-error-domain.patch"))))
     (build-system gnu-build-system)
-- 
2.15.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0001-gnu-Add-virtaal.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-virtaal.patch", Size: 2663 bytes --]

From c36fde0cfda0d5f9830876abbff804504004451d Mon Sep 17 00:00:00 2001
From: Mark Meyer <mark@ofosos.org>
Date: Fri, 15 Dec 2017 12:35:38 +0100
Subject: [PATCH] gnu: Add virtaal.

* gnu/packages/text-editors.scm (virtaal): New public variable.
---
 gnu/packages/text-editors.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 44b42ce9b..773000ff4 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2017 ng0 <ng0@infotropique.org>
 ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017 Mark Meyer <mark@ofosos.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -29,6 +30,7 @@
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
+  #:use-module (guix build-system python)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
   #:use-module (gnu packages assembly)
@@ -41,11 +43,42 @@
   #:use-module (gnu packages lua)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
   #:use-module (gnu packages regex)
   #:use-module (gnu packages ruby)
   #:use-module (gnu packages terminals)
   #:use-module (gnu packages xml))
 
+(define-public virtaal
+  (package
+    (name "virtaal")
+    (version "0.7.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/translate/Virtaal/"
+                                  version "/virtaal-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0cyimjp3191qlmw6n0ipqdr9xr0cq4f6dqvz4rl9q31h6l3kywf9"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2
+       #:use-setuptools? #f
+       #:tests? #f))
+    (propagated-inputs
+     `(("python2-pycurl" ,python2-pycurl)
+       ("python2-pygtk" ,python2-pygtk)
+       ("python2-lxml" ,python2-lxml)
+       ("python2-translate-toolkit" ,python2-translate-toolkit)
+       ("python2-simplejson" ,python2-simplejson)))
+    (synopsis "An editor for translation files")
+    (description
+     "Virtaal, a feature rich translation tool that allows you to focus on
+translation, without the tool getting in the way.")
+    (home-page "http://virtaal.translatehouse.org/")
+    (license license:gpl2)))
+
 (define-public vis
   (package
     (name "vis")
-- 
2.15.1


^ permalink raw reply related	[relevance 54%]

* [bug#30468] [PATCH]     gnu: python-elasticsearch: Update to 6.1.1.
@ 2018-02-15 15:21 70% Pjotr Prins
  0 siblings, 0 replies; 200+ results
From: Pjotr Prins @ 2018-02-15 15:21 UTC (permalink / raw)
  To: 30468; +Cc: Pjotr Prins

From: Pjotr Prins <pjotr.public01@thebird.nl>

    * gnu/packages/python-web.scm (python-elasticsearch, python2-elasticsearch): Update to 6.1.1.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 12e45b2ef..26d533f66 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2050,14 +2050,14 @@ CSS tidy.  Also supports URL rewriting in CSS files.")
 (define-public python-elasticsearch
   (package
     (name "python-elasticsearch")
-    (version "1.0.0")
+    (version "6.1.1")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "elasticsearch" version))
         (sha256
          (base32
-          "1sdw1r05cw7ihnmng8ra9v968fj7bq6sji8i1dikymsnkcpgc69g"))))
+          "1kjxl45yvvgfb5fmamx0kfsfg9pzphiqrwbkns3s28r1w7ya74cd"))))
     (build-system python-build-system)
     (native-inputs
      `(("python-mock" ,python-mock)
-- 
2.15.1

^ permalink raw reply related	[relevance 70%]

* [bug#30486] [PATCH] gnu: Add python-boto3 and python2-boto3.
@ 2018-02-16 15:37 68% Thompson, David
  0 siblings, 0 replies; 200+ results
From: Thompson, David @ 2018-02-16 15:37 UTC (permalink / raw)
  To: 30486

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

Small patch that adds the AWS SDK for Python which came in handy for
me while testing a Lambda function (in the AWS sense) on my local
machine yesterday.

- Dave

[-- Attachment #2: 0001-gnu-Add-python-boto3-and-python2-boto3.patch --]
[-- Type: text/x-patch, Size: 1639 bytes --]

From a328be2daccc7778f05c86a06b3b7db237473a44 Mon Sep 17 00:00:00 2001
From: David Thompson <dthompson2@worcester.edu>
Date: Fri, 16 Feb 2018 10:35:04 -0500
Subject: [PATCH] gnu: Add python-boto3 and python2-boto3.

* gnu/packages/python-web.scm (python-boto3, python2-boto3): New variables.
---
 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 3cad440b9..d295cbf1d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2442,3 +2442,32 @@ layouts.")
 
 (define-public python2-pastescript
   (package-with-python2 python-pastescript))
+
+(define-public python-boto3
+  (package
+    (name "python-boto3")
+    (version "1.5.29")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "boto3" version))
+       (sha256
+        (base32
+         "1f2sy0qjgs0sh0sxqfpf2ykr0y43cgrilp8y6zmzy9wbnkfp6cx8"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-botocore" ,python-botocore)
+       ("python-jmespath" ,python-jmespath)
+       ("python-s3transfer" ,python-s3transfer)))
+    (home-page "https://github.com/boto/boto3")
+    (synopsis "The AWS SDK for Python")
+    (description "Boto3 is the official Amazon Web Services SDK for Python.")
+    (license license:asl2.0)))
+
+(define-public python2-boto3
+  (let ((base (package-with-python2 python-boto3)))
+    (package
+      (inherit base)
+      (propagated-inputs
+       `(("python2-futures" ,python2-futures)
+         ,@(package-propagated-inputs base))))))
-- 
2.16.1


^ permalink raw reply related	[relevance 68%]

* [bug#30880] Change my copyright name
@ 2018-03-20 15:51 57% ng0
  0 siblings, 0 replies; 200+ results
From: ng0 @ 2018-03-20 15:51 UTC (permalink / raw)
  To: 30880

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

So I had this legal itch to scratch...

Ideally I could just use a business name, but that is still pending.
Unless anything legally changes afterwards, you won't see a patch this
trivial, this annoying and this long again.
Just don't start using the name or assume pronouns on that ;)
It's simply so that interviewers are not confused when I point them here as part
of what I do.


Patch content: replace (update) my Name + Email in headers of all files I
contributed to. Same for .mailmap file and Manual.
-- 
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is

[-- Attachment #2: 0001-Correct-name-and-Email-for-ng0.patch --]
[-- Type: text/plain, Size: 62999 bytes --]

From b1c642d4df9b39a1f973e37612717578d23b99e4 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Tue, 20 Mar 2018 15:39:45 +0000
Subject: [PATCH] Correct name and Email for ng0.

* .mailmap: Correct name and Email for ng0.
* Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm,
gnu/packages/cdrom.scm, gnu/packages/check.scm,
gnu/packages/cinnamon.scm, gnu/packages/compression.scm,
gnu/packages/crypto.scm, gnu/packages/databases.scm,
gnu/packages/django.scm, gnu/packages/dns.scm,
gnu/packages/emacs.scm, gnu/packages/enlightenment.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm,
gnu/packages/forth.scm, gnu/packages/fvwm.scm,
gnu/packages/games.scm, gnu/packages/gl.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm,
gnu/packages/guile.scm, gnu/packages/haskell-check.scm,
gnu/packages/haskell-crypto.scm, gnu/packages/haskell.scm,
gnu/packages/image-viewers.scm, gnu/packages/image.scm,
gnu/packages/irc.scm, gnu/packages/language.scm,
gnu/packages/libcanberra.scm, gnu/packages/linux.scm,
gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm,
gnu/packages/mail.scm, gnu/packages/markup.scm,
gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm,
gnu/packages/music.scm, gnu/packages/ncurses.scm,
gnu/packages/networking.scm, gnu/packages/nickle.scm,
gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-crypto.scm, gnu/packages/python-web.scm,
gnu/packages/python.scm, gnu/packages/qt.scm,
gnu/packages/ruby.scm, gnu/packages/rust.scm,
gnu/packages/scheme.scm, gnu/packages/serialization.scm,
gnu/packages/shells.scm, gnu/packages/ssh.scm,
gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm,
gnu/packages/tls.scm, gnu/packages/tor.scm,
gnu/packages/version-control.scm, gnu/packages/video.scm,
gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm,
gnu/packages/xfce.scm, gnu/packages/xml.scm,
gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm,
guix/licenses.scm: Likewise.
---
 .mailmap                         | 25 +++++++++++++------------
 Makefile.am                      |  2 +-
 doc/guix.texi                    |  2 +-
 etc/completion/fish/guix.fish    |  2 +-
 gnu/packages/accessibility.scm   |  2 +-
 gnu/packages/admin.scm           |  2 +-
 gnu/packages/audio.scm           |  2 +-
 gnu/packages/autotools.scm       |  2 +-
 gnu/packages/cdrom.scm           |  2 +-
 gnu/packages/check.scm           |  2 +-
 gnu/packages/cinnamon.scm        |  2 +-
 gnu/packages/compression.scm     |  2 +-
 gnu/packages/crypto.scm          |  2 +-
 gnu/packages/databases.scm       |  2 +-
 gnu/packages/django.scm          |  2 +-
 gnu/packages/dns.scm             |  2 +-
 gnu/packages/emacs.scm           |  2 +-
 gnu/packages/enlightenment.scm   |  2 +-
 gnu/packages/fonts.scm           |  2 +-
 gnu/packages/fontutils.scm       |  2 +-
 gnu/packages/forth.scm           |  2 +-
 gnu/packages/fvwm.scm            |  2 +-
 gnu/packages/games.scm           |  2 +-
 gnu/packages/gl.scm              |  2 +-
 gnu/packages/gnome.scm           |  2 +-
 gnu/packages/gnunet.scm          |  2 +-
 gnu/packages/gnupg.scm           |  2 +-
 gnu/packages/gnuzilla.scm        |  2 +-
 gnu/packages/gtk.scm             |  2 +-
 gnu/packages/guile-wm.scm        |  2 +-
 gnu/packages/guile.scm           |  2 +-
 gnu/packages/haskell-check.scm   |  2 +-
 gnu/packages/haskell-crypto.scm  |  2 +-
 gnu/packages/haskell.scm         |  2 +-
 gnu/packages/image-viewers.scm   |  2 +-
 gnu/packages/image.scm           |  2 +-
 gnu/packages/irc.scm             |  2 +-
 gnu/packages/language.scm        |  2 +-
 gnu/packages/libcanberra.scm     |  2 +-
 gnu/packages/linux.scm           |  2 +-
 gnu/packages/lisp.scm            |  2 +-
 gnu/packages/lolcode.scm         |  2 +-
 gnu/packages/lxde.scm            |  2 +-
 gnu/packages/lxqt.scm            |  2 +-
 gnu/packages/mail.scm            |  2 +-
 gnu/packages/markup.scm          |  2 +-
 gnu/packages/mate.scm            |  2 +-
 gnu/packages/maths.scm           |  2 +-
 gnu/packages/mc.scm              |  2 +-
 gnu/packages/messaging.scm       |  2 +-
 gnu/packages/music.scm           |  2 +-
 gnu/packages/ncurses.scm         |  2 +-
 gnu/packages/networking.scm      |  2 +-
 gnu/packages/nickle.scm          |  2 +-
 gnu/packages/openbox.scm         |  2 +-
 gnu/packages/pdf.scm             |  2 +-
 gnu/packages/perl-check.scm      |  2 +-
 gnu/packages/perl.scm            |  2 +-
 gnu/packages/python-crypto.scm   |  2 +-
 gnu/packages/python-web.scm      |  2 +-
 gnu/packages/python.scm          |  2 +-
 gnu/packages/qt.scm              |  2 +-
 gnu/packages/ruby.scm            |  2 +-
 gnu/packages/rust.scm            |  2 +-
 gnu/packages/scheme.scm          |  2 +-
 gnu/packages/serialization.scm   |  2 +-
 gnu/packages/shells.scm          |  2 +-
 gnu/packages/ssh.scm             |  2 +-
 gnu/packages/suckless.scm        |  2 +-
 gnu/packages/tbb.scm             |  2 +-
 gnu/packages/telephony.scm       |  2 +-
 gnu/packages/text-editors.scm    |  2 +-
 gnu/packages/textutils.scm       |  2 +-
 gnu/packages/time.scm            |  2 +-
 gnu/packages/tls.scm             |  2 +-
 gnu/packages/tor.scm             |  2 +-
 gnu/packages/version-control.scm |  2 +-
 gnu/packages/video.scm           |  2 +-
 gnu/packages/vim.scm             |  2 +-
 gnu/packages/web.scm             |  2 +-
 gnu/packages/wm.scm              |  2 +-
 gnu/packages/xdisorg.scm         |  2 +-
 gnu/packages/xfce.scm            |  2 +-
 gnu/packages/xml.scm             |  2 +-
 gnu/packages/xorg.scm            |  2 +-
 gnu/services/certbot.scm         |  2 +-
 gnu/services/desktop.scm         |  2 +-
 gnu/services/version-control.scm |  2 +-
 gnu/services/web.scm             |  2 +-
 guix/import/hackage.scm          |  2 +-
 guix/licenses.scm                |  2 +-
 91 files changed, 103 insertions(+), 102 deletions(-)

diff --git a/.mailmap b/.mailmap
index 84a1c469c..4f672f327 100644
--- a/.mailmap
+++ b/.mailmap
@@ -42,18 +42,19 @@ Mathieu Lirzin <mthl@gnu.org> <mthl@openmailbox.org>
 Mathieu Lirzin <mthl@gnu.org> <mathieu.lirzin@openmailbox.org>
 Mathieu Othacehe <m.othacehe@gmail.com>
 Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
-ng0 <ng0@crash.cx>
-ng0 <ng0@crash.cx> ng0 <ng0@n0.is>
-ng0 <ng0@crash.cx> <ng0@infotropique.org>
-ng0 <ng0@crash.cx> <ng0@no-reply.infotropique.org>
-ng0 <ng0@crash.cx> <ng0@no-reply.pragmatique.xyz>
-ng0 <ng0@crash.cx> <ng0@pragmatique.xyz>
-ng0 <ng0@crash.cx> <contact.ng0@cryptolab.net>
-ng0 <ng0@crash.cx> <ng0@we.make.ritual.n0.is>
-ng0 <ng0@crash.cx> <ngillmann@runbox.com>
-ng0 <ng0@crash.cx> <niasterisk@grrlz.net>
-ng0 <ng0@crash.cx> <ng@niasterisk.space>
-ng0 <ng0@crash.cx> <ng0@libertad.pw>
+Nils Gillmann <ng0@n0.is> ng0 <ng0@n0.is>
+Nils Gillmann <ng0@n0.is> ng0 <ng0@crash.cx>
+Nils Gillmann <ng0@n0.is> ng0 <ng0@crash.cx>
+Nils Gillmann <ng0@n0.is> <ng0@infotropique.org>
+Nils Gillmann <ng0@n0.is> <ng0@no-reply.infotropique.org>
+Nils Gillmann <ng0@n0.is> <ng0@no-reply.pragmatique.xyz>
+Nils Gillmann <ng0@n0.is> <ng0@pragmatique.xyz>
+Nils Gillmann <ng0@n0.is> <contact.ng0@cryptolab.net>
+Nils Gillmann <ng0@n0.is> <ng0@we.make.ritual.n0.is>
+Nils Gillmann <ng0@n0.is> <ngillmann@runbox.com>
+Nils Gillmann <ng0@n0.is> <niasterisk@grrlz.net>
+Nils Gillmann <ng0@n0.is> <ng@niasterisk.space>
+Nils Gillmann <ng0@n0.is> <ng0@libertad.pw>
 Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public01@thebird.nl>
 Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@thebird.nl>
 Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@email>
diff --git a/Makefile.am b/Makefile.am
index 6556799e6..0c653b54e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,7 +9,7 @@
 # Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 # Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
 # Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
-# Copyright © 2018 ng0 <ng0@n0.is>
+# Copyright © 2018 Nils Gillmann <ng0@n0.is>
 #
 # This file is part of GNU Guix.
 #
diff --git a/doc/guix.texi b/doc/guix.texi
index 4de8e9cb5..7219ef4d0 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -26,7 +26,7 @@ Copyright @copyright{} 2016 Ben Woodcroft@*
 Copyright @copyright{} 2016, 2017 Chris Marusich@*
 Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@*
 Copyright @copyright{} 2016 John Darrington@*
-Copyright @copyright{} 2016, 2017 ng0@*
+Copyright @copyright{} 2016, 2017 Nils Gillmann@*
 Copyright @copyright{} 2016, 2017 Jan Nieuwenhuizen@*
 Copyright @copyright{} 2016 Julien Lepiller@*
 Copyright @copyright{} 2016 Alex ter Weele@*
diff --git a/etc/completion/fish/guix.fish b/etc/completion/fish/guix.fish
index e9fc9f3d1..d5b28cdc2 100644
--- a/etc/completion/fish/guix.fish
+++ b/etc/completion/fish/guix.fish
@@ -1,6 +1,6 @@
 #
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2017, 2018 <ng0@n0.is>
+# Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
 #
 # This file is part of GNU Guix.
 #
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index f2cbfc480..c9d9b099c 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 8f48e42fe..7a9f79ede 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index d8569096a..d35c90537 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index 0f4ecc4ab..fd307a181 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index 2e51544b0..4d570264e 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 73d3efd9e..b27964640 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/cinnamon.scm b/gnu/packages/cinnamon.scm
index 4a6e96291..65aea47d5 100644
--- a/gnu/packages/cinnamon.scm
+++ b/gnu/packages/cinnamon.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 26decfaf8..b158feac4 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 84a3b7876..fd7a48c2f 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index bcf186477..0622b5f37 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index 4501b5c74..bb8aa3862 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;;
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index bd61784eb..5e4309ca1 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index da366441b..895b87ebc 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index c04493a19..0138b7287 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
 ;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index aa9e466eb..4b9c3e9ba 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Jookia <166291@gmail.com>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index a5e8c7937..061e1bc0a 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 6d66faf5d..5efc668b7 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/fvwm.scm b/gnu/packages/fvwm.scm
index a4c31aefc..63b1052e0 100644
--- a/gnu/packages/fvwm.scm
+++ b/gnu/packages/fvwm.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index be66d9696..a9d7aab89 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016, 2017 Rodger Fox <thylakoid@openmailbox.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Albin Söderqvist <albin@fripost.org>
 ;;; Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index bee61cec2..79cbf7116 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
 ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 6623a59bf..0bb1f8c6b 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index f4eacd302..7f442910e 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 2696e332d..33e933d13 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org>
 ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 0836b89a8..7d2ecd27d 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index d7061adcc..f279c5c24 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm
index 06c839910..364477be7 100644
--- a/gnu/packages/guile-wm.scm
+++ b/gnu/packages/guile-wm.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Alex ter Weele <alex.ter.weele@gmail.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 33ef822b1..03603122a 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2017 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm
index 8a3b8ad86..9593e4c10 100644
--- a/gnu/packages/haskell-check.scm
+++ b/gnu/packages/haskell-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index d930536e3..ae69cfe3a 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d00bbea7b..4fc2b4050 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index cf612666f..7e7e7e381 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index f398e09a2..044321d40 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 22ac3c662..38a1fb3a2 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net>
 ;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index cf85c510f..519a98ec7 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2018 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm
index e9d6ce594..e1812c578 100644
--- a/gnu/packages/libcanberra.scm
+++ b/gnu/packages/libcanberra.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
-;;; Copyright © 2017, 2018 ng0 <ng0@crash.cx>
+;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 2e0912a8b..6dc45bfce 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
 ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 1cda606c2..e4a4e5609 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/lolcode.scm b/gnu/packages/lolcode.scm
index 4c7d18217..f7e2da380 100644
--- a/gnu/packages/lolcode.scm
+++ b/gnu/packages/lolcode.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm
index 02dacd3e8..58961d245 100644
--- a/gnu/packages/lxde.scm
+++ b/gnu/packages/lxde.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index a4108f55b..4ead02559 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 1d460b08c..17ff79333 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@crash.cx>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm
index 9db548fdd..fc8e2ceaa 100644
--- a/gnu/packages/markup.scm
+++ b/gnu/packages/markup.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm
index 0281b02da..0f7d492e3 100644
--- a/gnu/packages/mate.scm
+++ b/gnu/packages/mate.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 859e98bda..361cbdd35 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -16,7 +16,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017 Paul Garlick <pgarlick@tourbillion-technology.com>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
diff --git a/gnu/packages/mc.scm b/gnu/packages/mc.scm
index 6c71f5608..260ac9334 100644
--- a/gnu/packages/mc.scm
+++ b/gnu/packages/mc.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 6ce8b258b..45020f31b 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2016, 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 7818cfcc0..b7cb4ac99 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
 ;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm
index 548261289..1f1b97f5f 100644
--- a/gnu/packages/ncurses.scm
+++ b/gnu/packages/ncurses.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 999f0578d..038488542 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 Benz Schenk <benz.schenk@uzh.ch>
 ;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
diff --git a/gnu/packages/nickle.scm b/gnu/packages/nickle.scm
index 1312aecbb..4c2269635 100644
--- a/gnu/packages/nickle.scm
+++ b/gnu/packages/nickle.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ngillmann@runbox.com>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/openbox.scm b/gnu/packages/openbox.scm
index 2200c837b..1643b7502 100644
--- a/gnu/packages/openbox.scm
+++ b/gnu/packages/openbox.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 95f42c675..a5d57cd5e 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2014, 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 646438532..1fd725f65 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 0bc469722..39449d932 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 3fbaf1c3c..a6869c969 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7974c005c..58c5566f4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 76b5460f6..47006240b 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel <d4n1@d4n1.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index d6082bd7a..0584a5dde 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Quiliro <quiliro@fsfla.org>
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 010dedde2..ecb2d46aa 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 1ba857d36..7d0eb7087 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Eric Le Bihan <eric.le.bihan.dev@free.fr>
-;;; Copyright © 2016 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017 Nikolai Merinov <nikolai.merinov@member.fsf.org>
 ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 657ca875d..e5db5264e 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index f72116575..f63ab8bd5 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2017 Corentin Bocquillon <corentin@nybble.fr>
 ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
 ;;;
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 685f6d2df..69bc09a3a 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;;
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index d7b189705..9ad5da009 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index eadc8409c..4cd077306 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2015 Dmitry Bogatov <KAction@gnu.org>
 ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index 6a668801f..9a5d5dedd 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 018de0c6c..5210e73ed 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index cbf077cea..f375234b8 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 2d8a104d5..2a463d8ba 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm
index c7a285079..075ec8bbb 100644
--- a/gnu/packages/time.scm
+++ b/gnu/packages/time.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;;
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 299ac85dc..e349cff23 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index 2d685fc7d..795c105f6 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index a3f4a4dd4..5047d8d4d 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2015 Kyle Meyer <kyle@kyleam.com>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 0dc0ef655..f7f82df07 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 79bd92043..e85d3ebd5 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 51640ea09..8f9d5f8b5 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 9bd349241..608e59407 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@crash.cx>
+;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
 ;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 2db5b3d89..9b4d5fe24 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -17,7 +17,7 @@
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com>
 ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org>
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index ba749c998..8721fd91a 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index ab7b9bf98..47d212461 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 871fae29d..9652e1572 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
 ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
diff --git a/gnu/services/certbot.scm b/gnu/services/certbot.scm
index 066b8241b..a2a200f03 100644
--- a/gnu/services/certbot.scm
+++ b/gnu/services/certbot.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;;
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 64b999cab..897252917 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@infotropique.org>
+;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/services/version-control.scm b/gnu/services/version-control.scm
index afead87ec..58274c8be 100644
--- a/gnu/services/version-control.scm
+++ b/gnu/services/version-control.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index beda481b0..b336a8dd3 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm
index 4fb00af40..eb9e1d7d8 100644
--- a/guix/import/hackage.scm
+++ b/guix/import/hackage.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 700fa7f03..4ef18fb32 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@libertad.pw>
+;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-- 
2.16.2


^ permalink raw reply related	[relevance 57%]

* [bug#31121] [PATCH 1/3] gnu: Add python2-urlgrabber.
  @ 2018-04-17 21:38 70% ` Tomáš Čech
  0 siblings, 0 replies; 200+ results
From: Tomáš Čech @ 2018-04-17 21:38 UTC (permalink / raw)
  To: 31121

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 58c5566f4..5d9caf110 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -23,6 +23,7 @@
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017 Mark Meyer <mark@ofosos.org>
+;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2486,3 +2487,24 @@ layouts.")
 
 (define-public python2-pastescript
   (package-with-python2 python-pastescript))
+
+(define-public python2-urlgrabber
+  (package
+    (name "python2-urlgrabber")
+    (version "3.10.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "urlgrabber" version))
+       (sha256
+        (base32 "0w1h7hlsq406bxfy2pn4i9bd003bwl0q9b7p03z3g6yl0d21ddq5"))))
+    (build-system python-build-system)
+    (arguments `(#:python ,python-2)) ;; urlgrabber supports python2 only
+    (home-page "http://urlgrabber.baseurl.org")
+    (synopsis "High-level cross protocol url-grabber")
+    (description "@code{urlgrabber} is Python2 library that unifies access to
+files available on web, FTP or locally.  It supports HTTP, FTP and file://
+protocols, it supports features like HTTP keep-alive, reget, throttling and
+more.")
+    (license license:lgpl2.1+)))
+
-- 
2.16.3

^ permalink raw reply related	[relevance 70%]

* [bug#31241] [PATCH 03/13] gnu: Add python-pycares.
    2018-04-22 23:04 70% ` [bug#31241] [PATCH 02/13] gnu: Add python-async-generator Nicolas Goaziou
@ 2018-04-22 23:04 70% ` Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 04/13] gnu: Add python-async-timeout Nicolas Goaziou
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 200+ results
From: Nicolas Goaziou @ 2018-04-22 23:04 UTC (permalink / raw)
  To: 31241

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7ec9bbb31..94c470985 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2528,3 +2528,23 @@ protocols, it supports features like HTTP keep-alive, reget, throttling and
 more.")
     (license license:lgpl2.1+)))
 
+(define-public python-pycares
+  (package
+    (name "python-pycares")
+    (version "2.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pycares" version))
+       (sha256
+        (base32
+         "0h4fxw5drrhfyslzmfpljk0qnnpbhhb20hnnndzahhbwylyw1x1n"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))                    ;tests require internet access
+    (home-page "http://github.com/saghul/pycares")
+    (synopsis "Python interface for @code{c-ares}")
+    (description "@code{pycares} is a Python module which provides an
+interface to @code{c-ares}, a C library that performs DNS requests and
+name resolutions asynchronously.")
+    (license license:expat)))
-- 
2.17.0

^ permalink raw reply related	[relevance 70%]

* [bug#31241] [PATCH 02/13] gnu: Add python-async-generator.
  @ 2018-04-22 23:04 70% ` Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 03/13] gnu: Add python-pycares Nicolas Goaziou
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 200+ results
From: Nicolas Goaziou @ 2018-04-22 23:04 UTC (permalink / raw)
  To: 31241

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d15ad92a5..7ec9bbb31 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -24,6 +24,7 @@
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017 Mark Meyer <mark@ofosos.org>
 ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
+;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -59,6 +60,25 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
 
+(define-public python-async-generator
+  (package
+    (name "python-async-generator")
+    (version "1.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "async_generator" version))
+       (sha256
+        (base32
+         "0wc3hidz1q85cja93k5pzybn0fprfnqyrv4qlkdqdzklc5f4dmdp"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/python-trio/async_generator")
+    (synopsis "Async generators and context managers for Python 3.5+")
+    (description "Async generators and context managers for Python 3.5+")
+    (license license:expat)))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.17.0

^ permalink raw reply related	[relevance 70%]

* [bug#31241] [PATCH 04/13] gnu: Add python-async-timeout.
    2018-04-22 23:04 70% ` [bug#31241] [PATCH 02/13] gnu: Add python-async-generator Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 03/13] gnu: Add python-pycares Nicolas Goaziou
@ 2018-04-22 23:04 70% ` Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 09/13] gnu: Add python-aiodns Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 12/13] gnu: Add python-aiohttp Nicolas Goaziou
  4 siblings, 0 replies; 200+ results
From: Nicolas Goaziou @ 2018-04-22 23:04 UTC (permalink / raw)
  To: 31241

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 94c470985..b0a98173d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -79,6 +79,23 @@
     (description "Async generators and context managers for Python 3.5+")
     (license license:expat)))
 
+(define-public python-async-timeout
+  (package
+    (name "python-async-timeout")
+    (version "2.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "async-timeout" version))
+       (sha256
+        (base32
+         "1l3kg062m02mph6rf9rdv8r5c5n356clxa6b6mrn0i77vk9g9kq0"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/aio-libs/async_timeout/")
+    (synopsis "Timeout context manager for asyncio programs")
+    (description "Timeout context manager for asyncio programs")
+    (license license:asl2.0)))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.17.0

^ permalink raw reply related	[relevance 70%]

* [bug#31241] [PATCH 09/13] gnu: Add python-aiodns.
                     ` (2 preceding siblings ...)
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 04/13] gnu: Add python-async-timeout Nicolas Goaziou
@ 2018-04-22 23:04 70% ` Nicolas Goaziou
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 12/13] gnu: Add python-aiohttp Nicolas Goaziou
  4 siblings, 0 replies; 200+ results
From: Nicolas Goaziou @ 2018-04-22 23:04 UTC (permalink / raw)
  To: 31241

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b0a98173d..c366e4f99 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -60,6 +60,29 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
 
+(define-public python-aiodns
+  (package
+    (name "python-aiodns")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "aiodns" version))
+       (sha256
+        (base32
+         "1snr5paql8dgvc676n8xq460wypjsb1xj53cf3px1s4wczf7lryq"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-pycares" ,python-pycares)))
+    (arguments
+     `(#:tests? #f))                    ;tests require internet access
+    (home-page "http://github.com/saghul/aiodns")
+    (synopsis "Simple DNS resolver for asyncio")
+    (description "@code{aiodns} provides a simple way for doing
+asynchronous DNS resolutions with a synchronous looking interface by
+using @url{https://github.com/saghul/pycares,pycares}.")
+    (license license:expat)))
+
 (define-public python-async-generator
   (package
     (name "python-async-generator")
-- 
2.17.0

^ permalink raw reply related	[relevance 70%]

* [bug#31241] [PATCH 12/13] gnu: Add python-aiohttp.
                     ` (3 preceding siblings ...)
  2018-04-22 23:04 70% ` [bug#31241] [PATCH 09/13] gnu: Add python-aiodns Nicolas Goaziou
@ 2018-04-22 23:04 70% ` Nicolas Goaziou
  4 siblings, 0 replies; 200+ results
From: Nicolas Goaziou @ 2018-04-22 23:04 UTC (permalink / raw)
  To: 31241

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c366e4f99..b1ab3467b 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -60,6 +60,36 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
 
+(define-public python-aiohttp
+  (package
+    (name "python-aiohttp")
+    (version "3.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "aiohttp" version))
+       (sha256
+        (base32
+         "1b888lggmyf2d08rfayq9khszzc0pav1z70ssc0b4d9kkr4g1klz"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))                    ;FIXME: OSError
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-async-generator" ,python-async-generator)))
+    (propagated-inputs
+     `(("python-aiodns" ,python-aiodns)
+       ("python-async-timeout" ,python-async-timeout)
+       ("python-attrs" ,python-attrs)
+       ("python-chardet" ,python-chardet)
+       ("python-idna-ssl" ,python-idna-ssl)
+       ("python-multidict" ,python-multidict)
+       ("python-yarl" ,python-yarl)))
+    (home-page "https://github.com/aio-libs/aiohttp/")
+    (synopsis "Async HTTP client/server framework (asyncio)")
+    (description "Async HTTP client/server framework (asyncio).")
+    (license license:asl2.0)))
+
 (define-public python-aiodns
   (package
     (name "python-aiodns")
-- 
2.17.0

^ permalink raw reply related	[relevance 70%]

* [bug#31562] [PATCH 1/5] gnu: Add python2-oauth2client.
@ 2018-05-23  8:35 70% Mathieu Othacehe
  2018-05-23  8:35 70% ` [bug#31563] [PATCH 2/5] gnu: Add python-google-api-client Mathieu Othacehe
  0 siblings, 1 reply; 200+ results
From: Mathieu Othacehe @ 2018-05-23  8:35 UTC (permalink / raw)
  To: 31562

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8ebae2e..dc1f9a1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -25,6 +25,7 @@
 ;;; Copyright © 2017 Mark Meyer <mark@ofosos.org>
 ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2090,6 +2091,9 @@ users' sessions over extended periods of time.")
 library for Python")
     (license license:asl2.0)))
 
+(define-public python2-oauth2client
+  (package-with-python2 python-oauth2client))
+
 (define-public python-flask-oidc
   (package
     (name "python-flask-oidc")
-- 
2.7.4

^ permalink raw reply related	[relevance 70%]

* [bug#31563] [PATCH 2/5] gnu: Add python-google-api-client.
  2018-05-23  8:35 70% [bug#31562] [PATCH 1/5] gnu: Add python2-oauth2client Mathieu Othacehe
@ 2018-05-23  8:35 70% ` Mathieu Othacehe
  0 siblings, 0 replies; 200+ results
From: Mathieu Othacehe @ 2018-05-23  8:35 UTC (permalink / raw)
  To: 31563

* gnu/packages/python-web.scm (python-google-api-client): New variable,
(python2-google-api-client): new variable.
---
 gnu/packages/python-web.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index dc1f9a1..4868baa 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2624,3 +2624,30 @@ name resolutions asynchronously.")
     (description "@code{yarl} module provides handy @code{URL} class
 for URL parsing and changing.")
     (license license:asl2.0)))
+
+(define-public python-google-api-client
+  (package
+    (name "python-google-api-client")
+    (version "1.6.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "google-api-python-client" version))
+       (sha256
+        (base32
+         "1wpbbbxfpy9mwxdy3kn352cb590ladv574j1aa2l4grjdqw3ln05"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:tests? #f)) ; tests require internet access
+    (native-inputs
+     `(("python-httplib2" ,python-httplib2)
+       ("python-six" ,python-six)
+       ("python-oauth2client" ,python-oauth2client)
+       ("python-uritemplate" ,python-uritemplate)))
+    (home-page "https://github.com/google/google-api-python-client")
+    (synopsis "Core Python library for accessing Google APIs")
+    (description "Python client library for Google's discovery based APIs")
+    (license license:asl2.0)))
+
+(define-public python2-google-api-client
+  (package-with-python2 python-google-api-client))
-- 
2.7.4

^ permalink raw reply related	[relevance 70%]

* [bug#32565] [PATCHv2] Add python-falcon and python-falcon-cors.
  @ 2018-08-30 13:29 89%     ` Maxim Cournoyer
  2018-09-02 19:55 89%     ` [bug#32565] [PATCHv3] Add python-falcon, python-falcon-cors Maxim Cournoyer
  1 sibling, 0 replies; 200+ results
From: Maxim Cournoyer @ 2018-08-30 13:29 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: 32565

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

Hello,

I've noticed we had a python-web.scm module, so I've moved python-falcon
and python-falcon-cors there instead of in python.scm.

The mimeparse patch can be kept as-is.

Thank you!


[-- Attachment #2: 0001-gnu-Add-python-falcon.patch --]
[-- Type: text/x-patch, Size: 2540 bytes --]

From 88e94dc1e4dec3c1fb9bbf351377c498a351d9ce Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Wed, 29 Aug 2018 00:06:28 -0400
Subject: [PATCH 1/2] gnu: Add python-falcon.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index fd76c0c60..bb3eccfc0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -26,6 +26,7 @@
 ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -126,6 +127,46 @@ asynchronous DNS resolutions with a synchronous looking interface by
 using @url{https://github.com/saghul/pycares,pycares}.")
     (license license:expat)))
 
+(define-public python-falcon
+  (package
+    (name "python-falcon")
+    (version "1.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "falcon" version))
+       (sha256
+        (base32
+         "1i0vmqsk24z4biirqhpvas9h28wy7nmpy3jvnb6rz2imq04zd09r"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest"))))))
+    (propagated-inputs
+     `(("python-mimeparse" ,python-mimeparse)
+       ("python-six" ,python-six)))
+    (native-inputs
+     `(("python-cython" ,python-cython) ;for faster binaries
+       ("python-pytest" ,python-pytest)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-requests" ,python-requests)
+       ("python-testtools" ,python-testtools)
+       ("python-jsonschema" ,python-jsonschema)
+       ("python-msgpack" ,python-msgpack)))
+    (home-page "https://falconframework.org")
+    (synopsis
+     "Unladen web framework for building APIs and app backends")
+    (description
+     "Falcon is a bare-metal Python web API framework for building
+high-performance microservices, app backends, and higher-level frameworks.")
+    (license l:asl2.0)))
+
+(define-public python2-falcon
+  (package-with-python2 python-falcon))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.18.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-Add-python-falcon-cors.patch --]
[-- Type: text/x-patch, Size: 1493 bytes --]

From 83b94826205a8a7577d2ed1d606367c94d6500d2 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Wed, 29 Aug 2018 00:33:17 -0400
Subject: [PATCH 2/2] gnu: Add python-falcon-cors.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index bb3eccfc0..0f2054f1a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -167,6 +167,29 @@ high-performance microservices, app backends, and higher-level frameworks.")
 (define-public python2-falcon
   (package-with-python2 python-falcon))
 
+(define-public python-falcon-cors
+  (package
+    (name "python-falcon-cors")
+    (version "1.1.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "falcon-cors" version))
+       (sha256
+        (base32
+         "12pym7hwsbd8b0c1azn95nas8gm3f1qpr6lpyx0958xm65ffr20p"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-falcon" ,python-falcon)))
+    (home-page
+     "https://github.com/lwcolton/falcon-cors")
+    (synopsis "Falcon CORS middlware")
+    (description "This middleware provides CORS support for Falcon.")
+    (license l:asl2.0)))
+
+(define-public python2-falcon-cors
+  (package-with-python2 python-falcon-cors))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.18.0


^ permalink raw reply related	[relevance 89%]

* [bug#32565] [PATCHv3] Add python-falcon, python-falcon-cors.
    2018-08-30 13:29 89%     ` [bug#32565] [PATCHv2] Add python-falcon and python-falcon-cors Maxim Cournoyer
@ 2018-09-02 19:55 89%     ` Maxim Cournoyer
  1 sibling, 0 replies; 200+ results
From: Maxim Cournoyer @ 2018-09-02 19:55 UTC (permalink / raw)
  To: 32565

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

Hello again,

Hopefully the last update to the python-falcon, python-falcon-cors
packages. I had moved the packages to python-web.scm, but failed to
notice the license field should be adapted to use license:asl2.0 rather
than l:asl2.0.

Don't forget to merge the patch "gnu: python-mimeparse: Update to
1.6.0." in my original mail as well, as it is required for Falcon to
work properly.

Thank you,

Maxim


[-- Attachment #2: v3 --]
[-- Type: text/x-patch, Size: 2546 bytes --]

From c3a1955a2198310b3c096e539eaaaf57a79aa970 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Wed, 29 Aug 2018 00:06:28 -0400
Subject: [PATCH 1/2] gnu: Add python-falcon.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index fd76c0c60..8cbb355ff 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -26,6 +26,7 @@
 ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -126,6 +127,46 @@ asynchronous DNS resolutions with a synchronous looking interface by
 using @url{https://github.com/saghul/pycares,pycares}.")
     (license license:expat)))
 
+(define-public python-falcon
+  (package
+    (name "python-falcon")
+    (version "1.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "falcon" version))
+       (sha256
+        (base32
+         "1i0vmqsk24z4biirqhpvas9h28wy7nmpy3jvnb6rz2imq04zd09r"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest"))))))
+    (propagated-inputs
+     `(("python-mimeparse" ,python-mimeparse)
+       ("python-six" ,python-six)))
+    (native-inputs
+     `(("python-cython" ,python-cython) ;for faster binaries
+       ("python-pytest" ,python-pytest)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-requests" ,python-requests)
+       ("python-testtools" ,python-testtools)
+       ("python-jsonschema" ,python-jsonschema)
+       ("python-msgpack" ,python-msgpack)))
+    (home-page "https://falconframework.org")
+    (synopsis
+     "Unladen web framework for building APIs and app backends")
+    (description
+     "Falcon is a bare-metal Python web API framework for building
+high-performance microservices, app backends, and higher-level frameworks.")
+    (license license:asl2.0)))
+
+(define-public python2-falcon
+  (package-with-python2 python-falcon))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.18.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: v3 --]
[-- Type: text/x-patch, Size: 1499 bytes --]

From 3ecfbe57465aed1062c56ae2b42165a5a07605b5 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Wed, 29 Aug 2018 00:33:17 -0400
Subject: [PATCH 2/2] gnu: Add python-falcon-cors.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8cbb355ff..ef2cc3176 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -167,6 +167,29 @@ high-performance microservices, app backends, and higher-level frameworks.")
 (define-public python2-falcon
   (package-with-python2 python-falcon))
 
+(define-public python-falcon-cors
+  (package
+    (name "python-falcon-cors")
+    (version "1.1.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "falcon-cors" version))
+       (sha256
+        (base32
+         "12pym7hwsbd8b0c1azn95nas8gm3f1qpr6lpyx0958xm65ffr20p"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-falcon" ,python-falcon)))
+    (home-page
+     "https://github.com/lwcolton/falcon-cors")
+    (synopsis "Falcon CORS middlware")
+    (description "This middleware provides CORS support for Falcon.")
+    (license license:asl2.0)))
+
+(define-public python2-falcon-cors
+  (package-with-python2 python-falcon-cors))
+
 (define-public python-furl
   (package
     (name "python-furl")
-- 
2.18.0


^ permalink raw reply related	[relevance 89%]

* [bug#33131] [PATCH 3/4] gnu: Add python-mechanicalsoup.
  @ 2018-10-23 19:10 67% ` Tobias Geerinckx-Rice
  0 siblings, 0 replies; 200+ results
From: Tobias Geerinckx-Rice @ 2018-10-23 19:10 UTC (permalink / raw)
  To: 33131

* gnu/packages/python-web.scm (python-mechanicalsoup)
(python2-mechanicalsoup): New public variable.
---
 gnu/packages/python-web.scm | 38 +++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f8052458a..eda796e01 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -60,6 +60,7 @@
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages time)
+  #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
@@ -255,6 +256,43 @@ other HTTP libraries.")
 (define-public python2-httplib2
   (package-with-python2 python-httplib2))
 
+(define-public python-mechanicalsoup
+  (package
+    (name "python-mechanicalsoup")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "MechanicalSoup" version))
+       (sha256
+        (base32 "0k59wwk75q7nz6i6gynvzhagy02ql0bv7py3qqcwgjw7607yq4i7"))))
+    (build-system python-build-system)
+    (arguments
+     ;; TODO: Enable tests when python-flake8@3.5 hits master.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-beautifulsoup4" ,python-beautifulsoup4)
+       ("python-lxml" ,python-lxml)
+       ("python-requests" ,python-requests)
+       ("python-six" ,python-six)))
+    ;; (native-inputs
+    ;;  ;; For tests.
+    ;;  `(("python-pytest-flake8" ,python-pytest-flake8)
+    ;;    ("python-pytest-httpbin" ,python-pytest-httpbin)
+    ;;    ("python-pytest-mock" ,python-pytest-mock)
+    ;;    ("python-pytest-runner" ,python-pytest-runner)
+    ;;    ("python-requests-mock" ,python-requests-mock)))
+    (home-page "https://mechanicalsoup.readthedocs.io/")
+    (synopsis "Python library for automating website interaction")
+    (description
+     "MechanicalSoup is a Python library for automating interaction with
+websites.  It automatically stores and sends cookies, follows redirects, and can
+follow links and submit forms.  It doesn’t do JavaScript.")
+    (license license:expat)))
+
+(define-public python2-mechanicalsoup
+  (package-with-python2 python-mechanicalsoup))
+
 (define-public python-sockjs-tornado
   (package
     (name "python-sockjs-tornado")
-- 
2.18.0

^ permalink raw reply related	[relevance 67%]

* [bug#33185] [PATCH 1/7] gnu: Add python-jsmin.
  @ 2018-10-28  9:26 70% ` Christopher Baines
  2018-10-28  9:26 70%   ` [bug#33185] [PATCH 2/7] gnu: Add python-slimit Christopher Baines
  2018-11-04 10:44 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
  1 sibling, 1 reply; 200+ results
From: Christopher Baines @ 2018-10-28  9:26 UTC (permalink / raw)
  To: 33185

* gnu/packages/python-web.scm (python-jsmin, python2-jsmin): New variables.
---
 gnu/packages/python-web.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f8052458a..c00992c71 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2130,6 +2130,28 @@ It comes with safe defaults and easily configurable options.")
 (define-public python2-flask-htmlmin
   (package-with-python2 python-flask-htmlmin))
 
+(define-public python-jsmin
+  (package
+    (name "python-jsmin")
+    (version "2.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "jsmin" version))
+       (sha256
+        (base32
+         "0fsmqbjvpxvff0984x7c0y8xmf49ax9mncz48b9xjx8wrnr9kpxn"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/tikitu/jsmin/")
+    (synopsis "Python JavaScript minifier")
+    (description
+     "@code{jsmin} is a JavaScript minifier, usable from both Python code and
+on the command line.")
+    (license license:expat)))
+
+(define-public python2-jsmin
+  (package-with-python2 python-jsmin))
+
 (define-public python-flask-login
   (package
     (name "python-flask-login")
-- 
2.18.0

^ permalink raw reply related	[relevance 70%]

* [bug#33185] [PATCH 2/7] gnu: Add python-slimit.
  2018-10-28  9:26 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
@ 2018-10-28  9:26 70%   ` Christopher Baines
  0 siblings, 0 replies; 200+ results
From: Christopher Baines @ 2018-10-28  9:26 UTC (permalink / raw)
  To: 33185

* gnu/packages/python-web.scm (python-slimit, python2-slimit): New variables.
---
 gnu/packages/python-web.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c00992c71..a7af71bd5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1945,6 +1945,34 @@ transfers.")
        `(("python2-futures" ,python2-futures)
          ,@(package-native-inputs base))))))
 
+(define-public python-slimit
+  (package
+    (name "python-slimit")
+    (version "0.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "slimit" version ".zip"))
+       (sha256
+        (base32
+         "02vj2x728rs1127q2nc27frrqra4fczivnb7gch6n5lzi7pxqczl"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("unzip" ,unzip)))
+    (propagated-inputs
+     `(("python-ply" ,python-ply)))
+    (home-page "https://slimit.readthedocs.io/")
+    (synopsis "JavaScript minifier, parser and lexer written in Python")
+    (description
+     "@code{SlimIt} is a JavaScript minifier written in Python.  It compiles
+JavaScript into more compact code so that it downloads and runs faster.
+SlimIt also provides a library that includes a JavaScript parser, lexer,
+pretty printer and a tree visitor.")
+    (license license:expat)))
+
+(define-public python2-slimit
+  (package-with-python2 python-slimit))
+
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-- 
2.18.0

^ permalink raw reply related	[relevance 70%]

* [bug#33185] [PATCH 1/7] gnu: Add python-jsmin.
    2018-10-28  9:26 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
@ 2018-11-04 10:44 70% ` Christopher Baines
  2018-11-04 10:44 70%   ` [bug#33185] [PATCH 2/7] gnu: Add python-slimit Christopher Baines
  1 sibling, 1 reply; 200+ results
From: Christopher Baines @ 2018-11-04 10:44 UTC (permalink / raw)
  To: 33185

* gnu/packages/python-web.scm (python-jsmin, python2-jsmin): New variables.
---
 gnu/packages/python-web.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index eda796e01..3671454c2 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2168,6 +2168,28 @@ It comes with safe defaults and easily configurable options.")
 (define-public python2-flask-htmlmin
   (package-with-python2 python-flask-htmlmin))
 
+(define-public python-jsmin
+  (package
+    (name "python-jsmin")
+    (version "2.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "jsmin" version))
+       (sha256
+        (base32
+         "0fsmqbjvpxvff0984x7c0y8xmf49ax9mncz48b9xjx8wrnr9kpxn"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/tikitu/jsmin/")
+    (synopsis "Python JavaScript minifier")
+    (description
+     "@code{jsmin} is a JavaScript minifier, usable from both Python code and
+on the command line.")
+    (license license:expat)))
+
+(define-public python2-jsmin
+  (package-with-python2 python-jsmin))
+
 (define-public python-flask-login
   (package
     (name "python-flask-login")
-- 
2.18.0

^ permalink raw reply related	[relevance 70%]

* [bug#33185] [PATCH 2/7] gnu: Add python-slimit.
  2018-11-04 10:44 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
@ 2018-11-04 10:44 70%   ` Christopher Baines
  0 siblings, 0 replies; 200+ results
From: Christopher Baines @ 2018-11-04 10:44 UTC (permalink / raw)
  To: 33185

* gnu/packages/python-web.scm (python-slimit, python2-slimit): New variables.
---
 gnu/packages/python-web.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3671454c2..26134e808 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1983,6 +1983,34 @@ transfers.")
        `(("python2-futures" ,python2-futures)
          ,@(package-native-inputs base))))))
 
+(define-public python-slimit
+  (package
+    (name "python-slimit")
+    (version "0.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "slimit" version ".zip"))
+       (sha256
+        (base32
+         "02vj2x728rs1127q2nc27frrqra4fczivnb7gch6n5lzi7pxqczl"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("unzip" ,unzip)))
+    (propagated-inputs
+     `(("python-ply" ,python-ply)))
+    (home-page "https://slimit.readthedocs.io/")
+    (synopsis "JavaScript minifier, parser and lexer written in Python")
+    (description
+     "@code{SlimIt} is a JavaScript minifier written in Python.  It compiles
+JavaScript into more compact code so that it downloads and runs faster.
+SlimIt also provides a library that includes a JavaScript parser, lexer,
+pretty printer and a tree visitor.")
+    (license license:expat)))
+
+(define-public python2-slimit
+  (package-with-python2 python-slimit))
+
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-- 
2.18.0

^ permalink raw reply related	[relevance 70%]

* [bug#34139] Update electrum, add python-aiohttp-socks and python-aiorpcx
@ 2019-01-19 23:49 96% Vagrant Cascadian
    0 siblings, 1 reply; 200+ results
From: Vagrant Cascadian @ 2019-01-19 23:49 UTC (permalink / raw)
  To: 34139


[-- Attachment #1.1: Type: text/plain, Size: 338 bytes --]

The following patches update electrum, requring updated inputs, and two
new packages, python-aiohttp-socks and python-aiorpcx.

 finance.scm    |    8 ++++++--
 python-web.scm |   45 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+), 2 deletions(-)

Thanks in advance for the review!

live well,
  vagrant


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-Add-python-aiohttp-socks.patch --]
[-- Type: text/x-diff, Size: 1390 bytes --]

From 3564dce5223f99397864c90a6080ad82fa4441ce Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 17 Jan 2019 00:17:11 +0000
Subject: [PATCH 1/3] gnu: Add python-aiohttp-socks.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index af0595b36..3141600c6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -102,6 +102,27 @@ Callback Hell.
 @end itemize")
     (license license:asl2.0)))
 
+(define-public python-aiohttp-socks
+(package
+  (name "python-aiohttp-socks")
+  (version "0.2.2")
+  (source
+   (origin
+     (method url-fetch)
+     (uri (pypi-uri "aiohttp_socks" version))
+     (sha256
+      (base32
+       "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+  (build-system python-build-system)
+  (propagated-inputs
+   `(("python-aiohttp" ,python-aiohttp)))
+  (home-page
+   "https://github.com/romis2012/aiohttp-socks")
+  (synopsis "SOCKS proxy connector for aiohttp")
+  (description "SOCKS proxy connector for aiohttp. SOCKS4(a) and SOCKS5 are
+supported.")
+    (license license:asl2.0)))
+
 (define-public python-aiodns
   (package
     (name "python-aiodns")
-- 
2.20.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-Add-python-aiorpcx.patch --]
[-- Type: text/x-diff, Size: 1730 bytes --]

From 415058c95d1568c2677a424084d78d0f12e0eca8 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 17 Jan 2019 00:18:41 +0000
Subject: [PATCH 2/3] gnu: Add python-aiorpcx.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3141600c6..3caba6637 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -146,6 +146,30 @@ asynchronous DNS resolutions with a synchronous looking interface by
 using @url{https://github.com/saghul/pycares,pycares}.")
     (license license:expat)))
 
+(define-public python-aiorpcx
+(package
+  (name "python-aiorpcx")
+  (version "0.10.2")
+  (source
+   (origin
+     (method url-fetch)
+     (uri (pypi-uri "aiorpcX" version))
+     (sha256
+      (base32
+       "1p88k15jh0d2a18pnnbfcamsqi2bxvmmhpizmdlxfdxf8vy5ggyj"))))
+  (build-system python-build-system)
+  (propagated-inputs
+   `(("python-attrs" ,python-attrs)))
+  (home-page
+   "https://github.com/kyuupichan/aiorpcX")
+  (synopsis
+   "Generic async RPC implementation, including JSON-RPC")
+  (description
+   "A generic asyncio library implementation of RPC suitable for an application that is a client, server or both.
+
+The package includes a module with full coverage of JSON RPC versions 1.0 and 2.0, JSON RPC protocol auto-detection, and arbitrary message framing. It also comes with a SOCKS proxy client.")
+    (license (list license:expat license:bsd-2))))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.20.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.4: 0003-gnu-electrum-Update-to-3.3.2.patch --]
[-- Type: text/x-diff, Size: 1649 bytes --]

From 9256c2bbea5d79b2ad827f9a570932be2b38acdb Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Tue, 15 Jan 2019 04:51:34 +0000
Subject: [PATCH 3/3] gnu: electrum: Update to 3.3.2.

* gnu/packages/finance.scm (electrum): Update to 3.2.2.
  [inputs]: Add python-aiohttp, python-aiohttp-socks, python-aiorpcx and
    python-certifi.
---
 gnu/packages/finance.scm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 468388797..293aa1f7d 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -293,7 +293,7 @@ do so.")
 (define-public electrum
   (package
     (name "electrum")
-    (version "3.2.2")
+    (version "3.3.2")
     (source
      (origin
        (method url-fetch)
@@ -302,7 +302,7 @@ do so.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "1fxaxlf5vm2zydj678ls3pazyriym188iwzk60kyk26cz2p3xk39"))
+         "0vgfdhwvrrl6dr4rd4hhxr8304bxm00sh7fw4nalm4hf7gfsbcji"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -320,6 +320,10 @@ do so.")
        ("python-requests" ,python-requests)
        ("python-qrcode" ,python-qrcode)
        ("python-protobuf" ,python-protobuf)
+       ("python-aiohttp" ,python-aiohttp)
+       ("python-aiohttp-socks" ,python-aiohttp-socks)
+       ("python-aiorpcx" ,python-aiorpcx)
+       ("python-certifi" ,python-certifi)
        ("python-dnspython" ,python-dnspython)
        ("python-jsonrpclib-pelix" ,python-jsonrpclib-pelix)))
     (arguments
-- 
2.20.1


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

^ permalink raw reply related	[relevance 96%]

* [bug#34204] [PATCH 2/3] gnu: Add Python LiveReload.
  2019-01-26  0:28 70% ` [bug#34204] [PATCH 1/3] gnu: python-tornado: Update to 5.1.1 Mathieu Lirzin
@ 2019-01-26  0:28 70%   ` Mathieu Lirzin
  0 siblings, 0 replies; 200+ results
From: Mathieu Lirzin @ 2019-01-26  0:28 UTC (permalink / raw)
  To: 34204; +Cc: Mathieu Lirzin

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 19ff7d2dc4..24fa4ec60a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2923,3 +2923,25 @@ underlies Mozilla Persona.")
      "This is a Python library for interacting with the Firefox Accounts
 ecosystem.")
     (license license:mpl2.0)))
+
+(define-public python-livereload
+  (package
+    (name "python-livereload")
+    (version "2.6.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "livereload" version))
+              (sha256
+               (base32
+                "19s9lrzq33ds3d580q99y0zg8f1vhyz6afpisz0mb49l3p6sccp6"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-six" ,python-six)
+       ("python-tornado" ,python-tornado)))
+    (home-page "https://github.com/lepture/python-livereload")
+    (synopsis "Live reload server in Python")
+    (description
+     "This provides the @code{livereload} command line utility for starting a
+server in a directory.  By default, it listens to port 35729 which is the
+common port for LiveReload browser extensions.")
+    (license license:bsd-3)))
-- 
2.20.1

^ permalink raw reply related	[relevance 70%]

* [bug#34204] [PATCH 1/3] gnu: python-tornado: Update to 5.1.1.
  @ 2019-01-26  0:28 70% ` Mathieu Lirzin
  2019-01-26  0:28 70%   ` [bug#34204] [PATCH 2/3] gnu: Add Python LiveReload Mathieu Lirzin
  0 siblings, 1 reply; 200+ results
From: Mathieu Lirzin @ 2019-01-26  0:28 UTC (permalink / raw)
  To: 34204; +Cc: Mathieu Lirzin

* gnu/packages/python-web.scm (python-tornado): Update to 5.1.1.
---
 gnu/packages/python-web.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index cee4973086..19ff7d2dc4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -27,6 +27,7 @@
 ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2019 Mathieu Lirzin <mthl@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -665,13 +666,13 @@ teams extension for python-openid.")
 (define-public python-tornado
   (package
     (name "python-tornado")
-    (version "4.5.1")
+    (version "5.1.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "tornado" version))
        (sha256
-        (base32 "1zbkgcdfq81k298awrm8p0xwbwwn2p3nbizdglzfbkskhai082fv"))))
+        (base32 "02clqk2116jbnq8lnaqmdw3p52nqrd9ib59r4xz2ll43fpcmhlaf"))))
     (build-system python-build-system)
     (arguments
      '(;; FIXME: Two tests error out with:
-- 
2.20.1

^ permalink raw reply related	[relevance 70%]

* [bug#34139] Update electrum, add python-aiohttp-socks and python-aiorpcx
  @ 2019-01-31 22:35 95%   ` Vagrant Cascadian
  0 siblings, 0 replies; 200+ results
From: Vagrant Cascadian @ 2019-01-31 22:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34139


[-- Attachment #1.1: Type: text/plain, Size: 696 bytes --]

On 2019-01-25, Ludovic Courtès wrote:
> Vagrant Cascadian <vagrant@debian.org> skribis:
>
>> The following patches update electrum, requring updated inputs, and two
>> new packages, python-aiohttp-socks and python-aiorpcx.

New patch series...

Updated to electrum 3.3.3.

> Nipick: could you adjust the indentation of the new packages (you can
> pass them through ./etc/indent-code.el if you want¹),

Done.

> and make sure descriptions contain full sentences²?

Struggled with this a bit. Thankfully, mbakke made some minimal
suggestions in irc about fixing up the description for
python-aiohttp-socks. Hopefully that's good enough.

Thanks!

live well,
  vagrant


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-Add-python-aiohttp-socks.patch --]
[-- Type: text/x-diff, Size: 1446 bytes --]

From 65b287d82f90b821e0ef6ce21d8563e7df4607f3 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 17 Jan 2019 00:17:11 +0000
Subject: [PATCH 1/3] gnu: Add python-aiohttp-socks.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 97b1f0661..739f5fd8a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -102,6 +102,27 @@ Callback Hell.
 @end itemize")
     (license license:asl2.0)))
 
+(define-public python-aiohttp-socks
+  (package
+    (name "python-aiohttp-socks")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "aiohttp_socks" version))
+       (sha256
+        (base32
+         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-aiohttp" ,python-aiohttp)))
+    (home-page
+     "https://github.com/romis2012/aiohttp-socks")
+    (synopsis "SOCKS proxy connector for aiohttp")
+    (description "This package provides a SOCKS proxy connector for
+aiohttp. It supports SOCKS4(a) and SOCKS5.")
+    (license license:asl2.0)))
+
 (define-public python-aiodns
   (package
     (name "python-aiodns")
-- 
2.20.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-Add-python-aiorpcx.patch --]
[-- Type: text/x-diff, Size: 1768 bytes --]

From 8e1f70364b46dc416116147342a4236a4232f196 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 17 Jan 2019 00:18:41 +0000
Subject: [PATCH 2/3] gnu: Add python-aiorpcx.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 739f5fd8a..823a007ce 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -146,6 +146,30 @@ asynchronous DNS resolutions with a synchronous looking interface by
 using @url{https://github.com/saghul/pycares,pycares}.")
     (license license:expat)))
 
+(define-public python-aiorpcx
+  (package
+    (name "python-aiorpcx")
+    (version "0.10.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "aiorpcX" version))
+       (sha256
+        (base32
+         "1p88k15jh0d2a18pnnbfcamsqi2bxvmmhpizmdlxfdxf8vy5ggyj"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-attrs" ,python-attrs)))
+    (home-page
+     "https://github.com/kyuupichan/aiorpcX")
+    (synopsis
+     "Generic async RPC implementation, including JSON-RPC")
+    (description
+     "A generic asyncio library implementation of RPC suitable for an application that is a client, server or both.
+
+The package includes a module with full coverage of JSON RPC versions 1.0 and 2.0, JSON RPC protocol auto-detection, and arbitrary message framing. It also comes with a SOCKS proxy client.")
+    (license (list license:expat license:bsd-2))))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.20.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.4: 0003-gnu-electrum-Update-to-3.3.3.patch --]
[-- Type: text/x-diff, Size: 1649 bytes --]

From 54d18a3a69ebbe6430d13bbb15f603cdc31a4129 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Tue, 15 Jan 2019 04:51:34 +0000
Subject: [PATCH 3/3] gnu: electrum: Update to 3.3.3.

* gnu/packages/finance.scm (electrum): Update to 3.3.3.
  [inputs]: Add python-aiohttp, python-aiohttp-socks, python-aiorpcx and
    python-certifi.
---
 gnu/packages/finance.scm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 250b1db14..b48aaa9c5 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -299,7 +299,7 @@ do so.")
 (define-public electrum
   (package
     (name "electrum")
-    (version "3.2.2")
+    (version "3.3.3")
     (source
      (origin
        (method url-fetch)
@@ -308,7 +308,7 @@ do so.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "1fxaxlf5vm2zydj678ls3pazyriym188iwzk60kyk26cz2p3xk39"))
+         "0z2zfhyawrbzs0w1426a2w0d4wsajl34ymj77qmpm41138g2ysf2"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -326,6 +326,10 @@ do so.")
        ("python-requests" ,python-requests)
        ("python-qrcode" ,python-qrcode)
        ("python-protobuf" ,python-protobuf)
+       ("python-aiohttp" ,python-aiohttp)
+       ("python-aiohttp-socks" ,python-aiohttp-socks)
+       ("python-aiorpcx" ,python-aiorpcx)
+       ("python-certifi" ,python-certifi)
        ("python-dnspython" ,python-dnspython)
        ("python-jsonrpclib-pelix" ,python-jsonrpclib-pelix)))
     (arguments
-- 
2.20.1


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

^ permalink raw reply related	[relevance 95%]

* [bug#34515] [PATCH 03/13] gnu: Add python-hyperlink.
  @ 2019-02-17 20:57 69% ` Leo Famulari
  2019-02-17 20:57 70% ` [bug#34515] [PATCH 06/13] gnu: Add python-treq Leo Famulari
  2019-02-17 20:57 68% ` [bug#34515] [PATCH 10/13] gnu: Add python-autobahn Leo Famulari
  2 siblings, 0 replies; 200+ results
From: Leo Famulari @ 2019-02-17 20:57 UTC (permalink / raw)
  To: 34515

* gnu/packages/python-web.scm (python-hyperlink): New variable.
---
 gnu/packages/python-web.scm | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index dce8dd2ae9..052331cc44 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
-;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2015, 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2015, 2017 Ben Woodcroft <donttrustben@gmail.com>
@@ -2953,3 +2953,23 @@ underlies Mozilla Persona.")
      "This is a Python library for interacting with the Firefox Accounts
 ecosystem.")
     (license license:mpl2.0)))
+
+(define-public python-hyperlink
+  (package
+    (name "python-hyperlink")
+    (version "18.0.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "hyperlink" version))
+        (sha256
+         (base32
+          "01m3y19arfqljksngy8grc966zdb4larysralb8cajzi8kvly6zh"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-idna" ,python-idna)))
+    (home-page "https://github.com/python-hyper/hyperlink")
+    (synopsis "Python module to create immutable URLs according to spec")
+    (description "This package provides a Python module to create immutable, and
+correct URLs for Python according to RFCs 3986 and 3987.")
+    (license license:expat)))
-- 
2.20.1

^ permalink raw reply related	[relevance 69%]

* [bug#34515] [PATCH 06/13] gnu: Add python-treq.
    2019-02-17 20:57 69% ` [bug#34515] [PATCH 03/13] gnu: Add python-hyperlink Leo Famulari
@ 2019-02-17 20:57 70% ` Leo Famulari
  2019-02-17 20:57 68% ` [bug#34515] [PATCH 10/13] gnu: Add python-autobahn Leo Famulari
  2 siblings, 0 replies; 200+ results
From: Leo Famulari @ 2019-02-17 20:57 UTC (permalink / raw)
  To: 34515

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 052331cc44..e54f09ddb4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2973,3 +2973,30 @@ ecosystem.")
     (description "This package provides a Python module to create immutable, and
 correct URLs for Python according to RFCs 3986 and 3987.")
     (license license:expat)))
+
+(define-public python-treq
+  (package
+    (name "python-treq")
+    (version "18.6.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "treq" version))
+        (sha256
+         (base32
+          "0j4zwq9p1c9piv1vc66nxcv9s6hdinf90jwkbsm91k14npv9zq4i"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-attrs" ,python-attrs)
+       ("python-hyperlink" ,python-hyperlink)
+       ("python-idna" ,python-idna)
+       ("python-incremental" ,python-incremental)
+       ("python-requests" ,python-requests)
+       ("python-service-identity" ,python-service-identity)
+       ("python-twisted" ,python-twisted)))
+    (home-page "https://github.com/twisted/treq")
+    (synopsis "Requests-like API built on top of twisted.web's Agent")
+    (description "This package provides an HTTP library inspired by
+@code{requests}} but written on top of @code{Twisted's} Agents.  It offers a
+high level API for making HTTP requests when using Twisted.")
+    (license license:expat)))
-- 
2.20.1

^ permalink raw reply related	[relevance 70%]

* [bug#34515] [PATCH 10/13] gnu: Add python-autobahn.
    2019-02-17 20:57 69% ` [bug#34515] [PATCH 03/13] gnu: Add python-hyperlink Leo Famulari
  2019-02-17 20:57 70% ` [bug#34515] [PATCH 06/13] gnu: Add python-treq Leo Famulari
@ 2019-02-17 20:57 68% ` Leo Famulari
    2 siblings, 1 reply; 200+ results
From: Leo Famulari @ 2019-02-17 20:57 UTC (permalink / raw)
  To: 34515

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e54f09ddb4..b2b6daee51 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -56,6 +56,7 @@
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages django)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
@@ -3000,3 +3001,30 @@ correct URLs for Python according to RFCs 3986 and 3987.")
 @code{requests}} but written on top of @code{Twisted's} Agents.  It offers a
 high level API for making HTTP requests when using Twisted.")
     (license license:expat)))
+
+(define-public python-autobahn
+  (package
+    (name "python-autobahn")
+    (version "19.2.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "autobahn" version))
+        (sha256
+         (base32
+          "1mm7j24ls01c7jb1ad5p5cpyxvzgydiyf8b04ihykh2v8g98j0x7"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ; fail mysteriously
+    (propagated-inputs
+     `(("python-cffi" ,python-cffi)
+       ("python-twisted" ,python-twisted)
+       ("python-txaio" ,python-txaio)))
+    (home-page "https://crossbar.io/autobahn/")
+    (synopsis "Web Application Messaging Protocol implementation")
+    (description "This package provides an implementation of the @dfn{Web Application
+Messaging Protocol} (WAMP).  WAMP connects components in distributed
+applications using Publish and Subscribe (PubSub) and routed Remote Procedure
+Calls (rRPC).  It is ideal for distributed, multi-client and server applications
+such as IoT applications or multi-user database-driven business applications.")
+    (license license:expat)))
-- 
2.20.1

^ permalink raw reply related	[relevance 68%]

* [bug#34515] [PATCH 10/13] gnu: Add python-autobahn.
  @ 2019-02-19  4:23 86%     ` Leo Famulari
  0 siblings, 0 replies; 200+ results
From: Leo Famulari @ 2019-02-19  4:23 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 34515

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

On Mon, Feb 18, 2019 at 09:27:50AM +0100, Ricardo Wurmus wrote:
> Leo Famulari <leo@famulari.name> writes:
> > * gnu/packages/python-web.scm (python-autobahn): New variable.
> […]
> > +    (arguments
> > +     `(#:tests? #f)) ; fail mysteriously
> 
> Mysteriously, eh?  Do you have any more information about this that
> might help us debug this?

Basically, the tests quit early after several errors like this:

------
______ ERROR collecting build/lib/autobahn/nvx/test/test_utf8validator.py ______
import file mismatch:
imported module 'test_utf8validator' has this __file__ attribute:
  /tmp/guix-build-python-autobahn-19.2.1.drv-0/autobahn-19.2.1/autobahn/nvx/test/test_utf8validator.py
which is not the same as the test file we want to collect:
  /tmp/guix-build-python-autobahn-19.2.1.drv-0/autobahn-19.2.1/build/lib/autobahn/nvx/test/test_utf8validator.py
HINT: remove __pycache__ / .pyc files and/or use a unique basename for your test file modules
------

I don't fully understand the issue but it's discussed in the pytest bug
tracker as a general issue:

https://github.com/pytest-dev/pytest/issues/529

What do you think? My opinion is that the test suite is broken.

The failure can be reproduced by adding this patch:

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c58f358c63..e4ca630498 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3014,7 +3014,23 @@ high level API for making HTTP requests when using Twisted.")
           "1mm7j24ls01c7jb1ad5p5cpyxvzgydiyf8b04ihykh2v8g98j0x7"))))
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f)) ; fail mysteriously
+     `(#:tests? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'adjust-tests
+           (lambda _
+             ;; This variable chooses whether to use Twisted or
+             ;; asyncio for the tests.
+             (setenv "USE_TWISTED" "true")
+             ;; The require an old pytest because they aim to support
+             ;; Python 3.3.
+             (substitute* "setup.py"
+               (("pytest>=2.8.6,<3.3.0")
+                 "pytest"))
+             #t)))))
+    (native-inputs
+     `(("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)))
     (propagated-inputs
      `(("python-cffi" ,python-cffi)
        ("python-twisted" ,python-twisted)

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

^ permalink raw reply related	[relevance 86%]

* [bug#34857] gnunet updates (gnunet,gnunet-gtk,gnurl,libextractor)
@ 2019-03-14 14:19 57% ng0
  0 siblings, 0 replies; 200+ results
From: ng0 @ 2019-03-14 14:19 UTC (permalink / raw)
  To: 34857

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

Hi,

here are 5 patches.

1 + 2: in retrospective and experience this makes sense.
3: libextractor
4: gnurl
5: gnunet + gnunet-gtk

Caveat at 5: This is the absolute base of an update.
             I can't invest more time for Guix at the
             the moment but I can help with answering
             questions of the person who'll finish this
             patch:
             gnunet-gtk doesn't find gnunet, can't link
             against it.
             gnunet does not pick up on the @PYTHON@
             for python3.7 which should be replaced
             at build time, which happens in every
             other system I tested.
             gnunet doesn't run its tests but they
             should work now. Note that if tests
             fail on guix or guixsd, you should report
             them to us, we've started to fix what we
             can fix for certain systems.

Cheers!
ng0

[-- Attachment #2: 0001-mailmap-Adjustment-my-nick.patch --]
[-- Type: text/plain, Size: 2162 bytes --]

From 5424bb3428a9b38ee335fdca0bc6728332f22b50 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Thu, 14 Mar 2019 09:33:38 +0000
Subject: [PATCH 1/5] mailmap: Adjustment my nick.

---
 .mailmap | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git a/.mailmap b/.mailmap
index 981decdeef..7de5313923 100644
--- a/.mailmap
+++ b/.mailmap
@@ -43,20 +43,20 @@ Mathieu Lirzin <mthl@gnu.org> <mathieu.lirzin@openmailbox.org>
 Mathieu Othacehe <m.othacehe@gmail.com>
 Mathieu Othacehe <mathieu.othacehe@parrot.com>
 Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
-Nils Gillmann <ng0@n0.is> ng0 <ng0@n0.is>
-Nils Gillmann <ng0@n0.is> Nils Gillmann <gillmann@infotropique.org>
-Nils Gillmann <ng0@n0.is> ng0 <ng0@crash.cx>
-Nils Gillmann <ng0@n0.is> ng0 <ng0@crash.cx>
-Nils Gillmann <ng0@n0.is> <ng0@infotropique.org>
-Nils Gillmann <ng0@n0.is> <ng0@no-reply.infotropique.org>
-Nils Gillmann <ng0@n0.is> <ng0@no-reply.pragmatique.xyz>
-Nils Gillmann <ng0@n0.is> <ng0@pragmatique.xyz>
-Nils Gillmann <ng0@n0.is> <contact.ng0@cryptolab.net>
-Nils Gillmann <ng0@n0.is> <ng0@we.make.ritual.n0.is>
-Nils Gillmann <ng0@n0.is> <ngillmann@runbox.com>
-Nils Gillmann <ng0@n0.is> <niasterisk@grrlz.net>
-Nils Gillmann <ng0@n0.is> <ng@niasterisk.space>
-Nils Gillmann <ng0@n0.is> <ng0@libertad.pw>
+ng0 <ng0@n0.is> Nils Gillmann <ng0@n0.is>
+ng0 <ng0@n0.is> Nils Gillmann <gillmann@infotropique.org>
+ng0 <ng0@n0.is> ng0 <ng0@crash.cx>
+ng0 <ng0@n0.is> ng0 <ng0@crash.cx>
+ng0 <ng0@n0.is> <ng0@infotropique.org>
+ng0 <ng0@n0.is> <ng0@no-reply.infotropique.org>
+ng0 <ng0@n0.is> <ng0@no-reply.pragmatique.xyz>
+ng0 <ng0@n0.is> <ng0@pragmatique.xyz>
+ng0 <ng0@n0.is> <contact.ng0@cryptolab.net>
+ng0 <ng0@n0.is> <ng0@we.make.ritual.n0.is>
+ng0 <ng0@n0.is> <ngillmann@runbox.com>
+ng0 <ng0@n0.is> <niasterisk@grrlz.net>
+ng0 <ng0@n0.is> <ng@niasterisk.space>
+ng0 <ng0@n0.is> <ng0@libertad.pw>
 Pierre Neidhardt <mail@ambrevar.xyz>
 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public01@thebird.nl>
-- 
2.21.0


[-- Attachment #3: 0002-Revert-name-changes-for-ng0.patch --]
[-- Type: text/plain, Size: 67925 bytes --]

From e7f558a21a393576b2a6b03f611b502a9fa5f808 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Thu, 14 Mar 2019 10:13:44 +0000
Subject: [PATCH 2/5] Revert name changes for ng0.

* Makefile.am: Correct name for ng0.
* doc/guix.de.texi,
doc/guix.fr.texi,
doc/guix.texi,
etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm,
gnu/packages/admin.scm,
gnu/packages/audio.scm,
gnu/packages/autotools.scm,
gnu/packages/cdrom.scm,
gnu/packages/check.scm,
gnu/packages/cinnamon.scm,
gnu/packages/compression.scm,
gnu/packages/crypto.scm,
gnu/packages/databases.scm,
gnu/packages/django.scm,
gnu/packages/dns.scm,
gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm,
gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm,
gnu/packages/erlang.scm,
gnu/packages/fonts.scm,
gnu/packages/fontutils.scm,
gnu/packages/forth.scm,
gnu/packages/fvwm.scm,
gnu/packages/games.scm,
gnu/packages/gl.scm,
gnu/packages/gnome.scm,
gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/gtk.scm,
gnu/packages/guile-wm.scm,
gnu/packages/guile-xyz.scm,
gnu/packages/haskell-check.scm,
gnu/packages/haskell-crypto.scm,
gnu/packages/haskell.scm,
gnu/packages/image-viewers.scm,
gnu/packages/image.scm,
gnu/packages/irc.scm,
gnu/packages/language.scm,
gnu/packages/libcanberra.scm,
gnu/packages/linux.scm,
gnu/packages/lisp.scm,
gnu/packages/lolcode.scm,
gnu/packages/lxde.scm,
gnu/packages/lxqt.scm,
gnu/packages/mail.scm,
gnu/packages/markup.scm,
gnu/packages/mate.scm,
gnu/packages/maths.scm,
gnu/packages/mc.scm,
gnu/packages/messaging.scm,
gnu/packages/music.scm,
gnu/packages/ncurses.scm,
gnu/packages/networking.scm,
gnu/packages/nickle.scm,
gnu/packages/openbox.scm,
gnu/packages/pdf.scm,
gnu/packages/perl-check.scm,
gnu/packages/perl.scm,
gnu/packages/python-compression.scm,
gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm,
gnu/packages/python-xyz.scm,
gnu/packages/python.scm,
gnu/packages/qt.scm,
gnu/packages/ruby.scm,
gnu/packages/rust.scm,
gnu/packages/scheme.scm,
gnu/packages/serialization.scm,
gnu/packages/shells.scm,
gnu/packages/ssh.scm,
gnu/packages/suckless.scm,
gnu/packages/tbb.scm,
gnu/packages/telephony.scm,
gnu/packages/text-editors.scm,
gnu/packages/textutils.scm,
gnu/packages/time.scm,
gnu/packages/tls.scm,
gnu/packages/tor.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/vim.scm,
gnu/packages/web.scm,
gnu/packages/wm.scm,
gnu/packages/xdisorg.scm,
gnu/packages/xfce.scm,
gnu/packages/xml.scm,
gnu/packages/xorg.scm,
gnu/services/certbot.scm,
gnu/services/desktop.scm,
gnu/services/version-control.scm,
gnu/services/web.scm,
guix/import/hackage.scm,
guix/licenses.scm: Likewise.
---
 Makefile.am                         | 2 +-
 doc/guix.de.texi                    | 2 +-
 doc/guix.fr.texi                    | 2 +-
 doc/guix.texi                       | 2 +-
 etc/completion/fish/guix.fish       | 2 +-
 gnu/packages/accessibility.scm      | 2 +-
 gnu/packages/admin.scm              | 2 +-
 gnu/packages/audio.scm              | 2 +-
 gnu/packages/autotools.scm          | 2 +-
 gnu/packages/cdrom.scm              | 2 +-
 gnu/packages/check.scm              | 2 +-
 gnu/packages/cinnamon.scm           | 2 +-
 gnu/packages/compression.scm        | 2 +-
 gnu/packages/crypto.scm             | 2 +-
 gnu/packages/databases.scm          | 2 +-
 gnu/packages/django.scm             | 2 +-
 gnu/packages/dns.scm                | 2 +-
 gnu/packages/elixir.scm             | 2 +-
 gnu/packages/emacs-xyz.scm          | 2 +-
 gnu/packages/emacs.scm              | 2 +-
 gnu/packages/enlightenment.scm      | 2 +-
 gnu/packages/erlang.scm             | 2 +-
 gnu/packages/fonts.scm              | 2 +-
 gnu/packages/fontutils.scm          | 2 +-
 gnu/packages/forth.scm              | 2 +-
 gnu/packages/fvwm.scm               | 2 +-
 gnu/packages/games.scm              | 2 +-
 gnu/packages/gl.scm                 | 2 +-
 gnu/packages/gnome.scm              | 2 +-
 gnu/packages/gnunet.scm             | 2 +-
 gnu/packages/gnupg.scm              | 2 +-
 gnu/packages/gnuzilla.scm           | 2 +-
 gnu/packages/gtk.scm                | 2 +-
 gnu/packages/guile-wm.scm           | 2 +-
 gnu/packages/guile-xyz.scm          | 2 +-
 gnu/packages/haskell-check.scm      | 2 +-
 gnu/packages/haskell-crypto.scm     | 2 +-
 gnu/packages/haskell.scm            | 2 +-
 gnu/packages/image-viewers.scm      | 2 +-
 gnu/packages/image.scm              | 2 +-
 gnu/packages/irc.scm                | 2 +-
 gnu/packages/language.scm           | 2 +-
 gnu/packages/libcanberra.scm        | 2 +-
 gnu/packages/linux.scm              | 2 +-
 gnu/packages/lisp.scm               | 2 +-
 gnu/packages/lolcode.scm            | 2 +-
 gnu/packages/lxde.scm               | 2 +-
 gnu/packages/lxqt.scm               | 2 +-
 gnu/packages/mail.scm               | 2 +-
 gnu/packages/markup.scm             | 2 +-
 gnu/packages/mate.scm               | 2 +-
 gnu/packages/maths.scm              | 2 +-
 gnu/packages/mc.scm                 | 2 +-
 gnu/packages/messaging.scm          | 2 +-
 gnu/packages/music.scm              | 2 +-
 gnu/packages/ncurses.scm            | 2 +-
 gnu/packages/networking.scm         | 2 +-
 gnu/packages/nickle.scm             | 2 +-
 gnu/packages/openbox.scm            | 2 +-
 gnu/packages/pdf.scm                | 2 +-
 gnu/packages/perl-check.scm         | 2 +-
 gnu/packages/perl.scm               | 2 +-
 gnu/packages/python-compression.scm | 2 +-
 gnu/packages/python-crypto.scm      | 2 +-
 gnu/packages/python-web.scm         | 2 +-
 gnu/packages/python-xyz.scm         | 2 +-
 gnu/packages/python.scm             | 2 +-
 gnu/packages/qt.scm                 | 2 +-
 gnu/packages/ruby.scm               | 2 +-
 gnu/packages/rust.scm               | 2 +-
 gnu/packages/scheme.scm             | 2 +-
 gnu/packages/serialization.scm      | 2 +-
 gnu/packages/shells.scm             | 2 +-
 gnu/packages/ssh.scm                | 2 +-
 gnu/packages/suckless.scm           | 2 +-
 gnu/packages/tbb.scm                | 2 +-
 gnu/packages/telephony.scm          | 2 +-
 gnu/packages/text-editors.scm       | 2 +-
 gnu/packages/textutils.scm          | 2 +-
 gnu/packages/time.scm               | 2 +-
 gnu/packages/tls.scm                | 2 +-
 gnu/packages/tor.scm                | 2 +-
 gnu/packages/version-control.scm    | 2 +-
 gnu/packages/video.scm              | 2 +-
 gnu/packages/vim.scm                | 2 +-
 gnu/packages/web.scm                | 2 +-
 gnu/packages/wm.scm                 | 2 +-
 gnu/packages/xdisorg.scm            | 2 +-
 gnu/packages/xfce.scm               | 2 +-
 gnu/packages/xml.scm                | 2 +-
 gnu/packages/xorg.scm               | 2 +-
 gnu/services/certbot.scm            | 2 +-
 gnu/services/desktop.scm            | 2 +-
 gnu/services/version-control.scm    | 2 +-
 gnu/services/web.scm                | 2 +-
 guix/import/hackage.scm             | 2 +-
 guix/licenses.scm                   | 2 +-
 97 files changed, 97 insertions(+), 97 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index e7109ec69c..50839fcb27 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,7 +9,7 @@
 # Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 # Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
 # Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
-# Copyright © 2018 Nils Gillmann <ng0@n0.is>
+# Copyright © 2018 ng0 <ng0@n0.is>
 # Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
 # Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 # Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
diff --git a/doc/guix.de.texi b/doc/guix.de.texi
index 3f02c850e7..83dae0d3ec 100644
--- a/doc/guix.de.texi
+++ b/doc/guix.de.texi
@@ -34,7 +34,7 @@ Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019 Ricardo
 Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{}
 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018
 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright
-@copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017,
+@copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017,
 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@*
 Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016,
 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018
diff --git a/doc/guix.fr.texi b/doc/guix.fr.texi
index 4ef3c1a0ff..541fd6f0d0 100644
--- a/doc/guix.fr.texi
+++ b/doc/guix.fr.texi
@@ -34,7 +34,7 @@ Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019 Ricardo
 Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{}
 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018
 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright
-@copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017,
+@copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017,
 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@*
 Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016,
 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018
diff --git a/doc/guix.texi b/doc/guix.texi
index 043aad1b65..eec383e528 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -30,7 +30,7 @@ Copyright @copyright{} 2016 Ben Woodcroft@*
 Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@*
 Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@*
 Copyright @copyright{} 2016 John Darrington@*
-Copyright @copyright{} 2016, 2017 Nils Gillmann@*
+Copyright @copyright{} 2016, 2017 ng0@*
 Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@*
 Copyright @copyright{} 2016 Julien Lepiller@*
 Copyright @copyright{} 2016 Alex ter Weele@*
diff --git a/etc/completion/fish/guix.fish b/etc/completion/fish/guix.fish
index d5b28cdc2b..525d39679d 100644
--- a/etc/completion/fish/guix.fish
+++ b/etc/completion/fish/guix.fish
@@ -1,6 +1,6 @@
 #
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
+# Copyright © 2017, 2018 ng0 <ng0@n0.is>
 #
 # This file is part of GNU Guix.
 #
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index 35c8c8f19b..431e5924c9 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Andrew Miloradovsky <andrew@interpretmath.pw>
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f3052953cf..ed20a50de2 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 8bcd3c4b85..aabbd5d0cd 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index 4edfb5725e..ceb70dfee7 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index cdbe25fe44..50bf3abcb9 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 43f3892cde..41e5a4b0b6 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/cinnamon.scm b/gnu/packages/cinnamon.scm
index 7cac863f92..72403e1b11 100644
--- a/gnu/packages/cinnamon.scm
+++ b/gnu/packages/cinnamon.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 090c164e18..5ce9064dca 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index e0d4f27874..d6f8e22eab 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index be02b79efa..a11cb58f3e 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index 9bb81621d9..e6307545d1 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com>
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 656c1f9d70..310a5526fe 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
index e154a2b2c1..29c7ee966f 100644
--- a/gnu/packages/elixir.scm
+++ b/gnu/packages/elixir.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 nee <nee.git@cock.li>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2018 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 5896060a76..eb0fc0b9b4 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 74005972db..e00931c504 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2016 David Thompson <dthompson2@worcester.edu>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index c3aa469776..d2853e62d6 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
 ;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
 ;;;
diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
index 45206f71a0..9c38b53581 100644
--- a/gnu/packages/erlang.scm
+++ b/gnu/packages/erlang.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2018 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index bb8548c1eb..f6760c8a2e 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Jookia <166291@gmail.com>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 274efe5fd8..8f8a300644 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 5efc668b78..6902a4a4a3 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/fvwm.scm b/gnu/packages/fvwm.scm
index 386edba591..ad0720a60c 100644
--- a/gnu/packages/fvwm.scm
+++ b/gnu/packages/fvwm.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 46b58e352c..27ba383f5a 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016, 2017 Rodger Fox <thylakoid@openmailbox.org>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Albin Söderqvist <albin@fripost.org>
 ;;; Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 08ba3c8b8c..743932fd07 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
 ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 3d67b7b9c1..a17849be9d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 461180161e..93c905406f 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;;
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index c5c99bfeb6..fcec2f065d 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org>
 ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index e11c0eb576..785d5c1342 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com>
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index fb5c178d53..1ac90216ef 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm
index 3755282403..7b1731171a 100644
--- a/gnu/packages/guile-wm.scm
+++ b/gnu/packages/guile-wm.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Alex ter Weele <alex.ter.weele@gmail.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index a64a54323a..d4f019c814 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2017 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm
index 0d4501df86..19eb40eaa4 100644
--- a/gnu/packages/haskell-check.scm
+++ b/gnu/packages/haskell-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 88a3ea467b..0c294849be 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cd0fdd22fc..4d88056a31 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index 7da0b0dab9..59a0501230 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 9f25578050..413bda3c97 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index e6f23d14d7..d3b3a51294 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net>
 ;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index 110f07a476..46b60b7055 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2018 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm
index 0032d9a85f..121ba11f89 100644
--- a/gnu/packages/libcanberra.scm
+++ b/gnu/packages/libcanberra.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2014, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
-;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017, 2018 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 1cdffb8c79..5214d4d9bd 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2018 Rene Saavedra <pacoon@protonmail.com>
 ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
 ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 3d43b7c509..87dcf36372 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/lolcode.scm b/gnu/packages/lolcode.scm
index f7e2da380c..e55a36c509 100644
--- a/gnu/packages/lolcode.scm
+++ b/gnu/packages/lolcode.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm
index a5720ce979..fc464b4a25 100644
--- a/gnu/packages/lxde.scm
+++ b/gnu/packages/lxde.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index 9813005a34..ddfeaf5cde 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 29ba1a92ef..ea8896230d 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm
index 67f2bf2881..2b1e2ef63c 100644
--- a/gnu/packages/markup.scm
+++ b/gnu/packages/markup.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm
index ef94491622..16e9148506 100644
--- a/gnu/packages/mate.scm
+++ b/gnu/packages/mate.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 33c1416c75..af2c141ee5 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -16,7 +16,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018 Paul Garlick <pgarlick@tourbillion-technology.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017, 2019 Arun Isaac <arunisaac@systemreboot.net>
diff --git a/gnu/packages/mc.scm b/gnu/packages/mc.scm
index ecac5412e4..3d6185ca78 100644
--- a/gnu/packages/mc.scm
+++ b/gnu/packages/mc.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index ae22218675..5fa4aaa956 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2016, 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 05fdc1428f..88ec8b5064 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
 ;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2017, 2018 Pierre Langlois <pierre.langlois@gmx.com>
diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm
index ae3fb887e8..9b5498688b 100644
--- a/gnu/packages/ncurses.scm
+++ b/gnu/packages/ncurses.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index ce775a3a0f..be29878bbf 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 Benz Schenk <benz.schenk@uzh.ch>
 ;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
diff --git a/gnu/packages/nickle.scm b/gnu/packages/nickle.scm
index c8179419bb..9cc38867b6 100644
--- a/gnu/packages/nickle.scm
+++ b/gnu/packages/nickle.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/openbox.scm b/gnu/packages/openbox.scm
index 1643b7502b..ceca6e53e0 100644
--- a/gnu/packages/openbox.scm
+++ b/gnu/packages/openbox.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 29f2381e6d..ff26bed64f 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2014, 2015, 2016, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index c1edf48f06..f9238ad771 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 978062d262..7a963c2659 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2018 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
diff --git a/gnu/packages/python-compression.scm b/gnu/packages/python-compression.scm
index e13227b616..88f62d1934 100644
--- a/gnu/packages/python-compression.scm
+++ b/gnu/packages/python-compression.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;;
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 688c8c4378..08f1e4d399 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e25b68153d..238f4d2431 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ab8e543295..1ddb0084ff 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel <d4n1@d4n1.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 25f2ffa73c..57ced499cb 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel <d4n1@d4n1.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 8179911539..6e567792f8 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Quiliro <quiliro@fsfla.org>
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 818553848d..7a2b191063 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index be916743fb..96a68f4347 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Eric Le Bihan <eric.le.bihan.dev@free.fr>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017, 2018 Nikolai Merinov <nikolai.merinov@member.fsf.org>
 ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 93a1a3e152..9dbb3713ee 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 876318869c..05e0d1d833 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2017 Corentin Bocquillon <corentin@nybble.fr>
 ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
 ;;;
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index d0561559e9..8179ba041b 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index fc7a711395..030d5697f2 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Manuel Graf <graf@init.at>
 ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
 ;;;
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index d15fdbaddd..c1357bd282 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2015 Dmitry Bogatov <KAction@gnu.org>
 ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index ee21a61895..788eabfdfa 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 63709935c3..559fb3d63f 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 0c60d202a3..c739aca0bd 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2017, 2018 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index d55f27fd6b..8cdbca754a 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm
index 948d2b995c..747e4cf080 100644
--- a/gnu/packages/time.scm
+++ b/gnu/packages/time.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index bdfbc003d3..6ecb5673e6 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index a0b16db3a7..a24923c045 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2018 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 674850e0ac..d750863f30 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2015, 2018 Kyle Meyer <kyle@kyleam.com>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index c97dbbe204..56e283d3e9 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 6a98f0a5a4..4e161f4543 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 463f18b7f0..6d0b9d7846 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 4a6fc62069..491e290b5f 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
 ;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index e18d7e9719..ca9e6f6747 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -17,7 +17,7 @@
 ;;; Copyright © 2016, 2017, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com>
 ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org>
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index b47fe5d301..f5618932ca 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index 0ba23bcba4..d84b8d3374 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index a029d23953..59fb9ca570 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
 ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
diff --git a/gnu/services/certbot.scm b/gnu/services/certbot.scm
index 7548145c98..7565bc97ca 100644
--- a/gnu/services/certbot.scm
+++ b/gnu/services/certbot.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;;
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 0dee57e3bc..d2a462a2b2 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
diff --git a/gnu/services/version-control.scm b/gnu/services/version-control.scm
index 13669925ab..e332b93096 100644
--- a/gnu/services/version-control.scm
+++ b/gnu/services/version-control.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index d71fed20ed..b6ebe90774 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm
index 48db764b3c..2a51420d14 100644
--- a/guix/import/hackage.scm
+++ b/guix/import/hackage.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016 ng0 <ng0@n0.is>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/guix/licenses.scm b/guix/licenses.scm
index d22c3fa36e..676e71acdb 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-- 
2.21.0


[-- Attachment #4: 0003-gnu-libextractor-Update-to-1.9.patch --]
[-- Type: text/plain, Size: 6901 bytes --]

From 7c14c8163ad3bc09fd29d35750eee3857eed728f Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Thu, 14 Mar 2019 10:43:47 +0000
Subject: [PATCH 3/5] gnu: libextractor: Update to 1.9.

* gnu/packages/gnunet (libextractor): Update to 1.9.
[source]: Remove patches.
* gnu/packages/patches/libextractor-CVE-2018-2043{1,0}.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
---
 gnu/local.mk                                  |  2 -
 gnu/packages/gnunet.scm                       |  8 +--
 .../patches/libextractor-CVE-2018-20430.patch | 60 -------------------
 .../patches/libextractor-CVE-2018-20431.patch | 53 ----------------
 4 files changed, 3 insertions(+), 120 deletions(-)
 delete mode 100644 gnu/packages/patches/libextractor-CVE-2018-20430.patch
 delete mode 100644 gnu/packages/patches/libextractor-CVE-2018-20431.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index af2bf87273..49537e19f8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -968,8 +968,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/libevent-2.1-skip-failing-test.patch	\
   %D%/packages/patches/libexif-CVE-2016-6328.patch		\
   %D%/packages/patches/libexif-CVE-2017-7544.patch		\
-  %D%/packages/patches/libextractor-CVE-2018-20430.patch	\
-  %D%/packages/patches/libextractor-CVE-2018-20431.patch	\
   %D%/packages/patches/libgcrypt-make-yat2m-reproducible.patch	\
   %D%/packages/patches/libgit2-mtime-0.patch			\
   %D%/packages/patches/libgit2-oom-test.patch			\
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 93c905406f..19e99644dd 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018, 2019 ng0 <ng0@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;;
@@ -68,16 +68,14 @@
 (define-public libextractor
   (package
    (name "libextractor")
-   (version "1.8")
+   (version "1.9")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/libextractor/libextractor-"
                                 version ".tar.gz"))
-            (patches (search-patches "libextractor-CVE-2018-20430.patch"
-                                     "libextractor-CVE-2018-20431.patch"))
             (sha256
              (base32
-              "1z1cb35griqzvshqdv5ck98dy0sgpsswn7fgiy7lbzi34sma8dg2"))))
+              "1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh"))))
    (build-system gnu-build-system)
    ;; WARNING: Checks require /dev/shm to be in the build chroot, especially
    ;; not to be a symbolic link to /run/shm.
diff --git a/gnu/packages/patches/libextractor-CVE-2018-20430.patch b/gnu/packages/patches/libextractor-CVE-2018-20430.patch
deleted file mode 100644
index 570cd7c006..0000000000
--- a/gnu/packages/patches/libextractor-CVE-2018-20430.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Fix CVE-2018-20430:
-
-https://gnunet.org/bugs/view.php?id=5493
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20430
-https://security-tracker.debian.org/tracker/CVE-2018-20430
-
-Patch copied from upstream source repository:
-
-https://gnunet.org/git/libextractor.git/commit/?id=b405d707b36e0654900cba78e89f49779efea110
-
-From b405d707b36e0654900cba78e89f49779efea110 Mon Sep 17 00:00:00 2001
-From: Christian Grothoff <christian@grothoff.org>
-Date: Thu, 20 Dec 2018 22:47:53 +0100
-Subject: [PATCH] fix #5493 (out of bounds read)
-
----
- src/common/convert.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/common/convert.c b/src/common/convert.c
-index c0edf21..2be2108 100644
---- a/src/common/convert.c
-+++ b/src/common/convert.c
-@@ -36,8 +36,8 @@
-  *  string is returned.
-  */
- char *
--EXTRACTOR_common_convert_to_utf8 (const char *input, 
--				  size_t len, 
-+EXTRACTOR_common_convert_to_utf8 (const char *input,
-+				  size_t len,
- 				  const char *charset)
- {
- #if HAVE_ICONV
-@@ -52,7 +52,7 @@ EXTRACTOR_common_convert_to_utf8 (const char *input,
-   i = input;
-   cd = iconv_open ("UTF-8", charset);
-   if (cd == (iconv_t) - 1)
--    return strdup (i);
-+    return strndup (i, len);
-   if (len > 1024 * 1024)
-     {
-       iconv_close (cd);
-@@ -67,11 +67,11 @@ EXTRACTOR_common_convert_to_utf8 (const char *input,
-     }
-   itmp = tmp;
-   finSize = tmpSize;
--  if (iconv (cd, (char **) &input, &len, &itmp, &finSize) == SIZE_MAX)
-+  if (iconv (cd, (char **) &input, &len, &itmp, &finSize) == ((size_t) -1))
-     {
-       iconv_close (cd);
-       free (tmp);
--      return strdup (i);
-+      return strndup (i, len);
-     }
-   ret = malloc (tmpSize - finSize + 1);
-   if (ret == NULL)
--- 
-2.20.1
-
diff --git a/gnu/packages/patches/libextractor-CVE-2018-20431.patch b/gnu/packages/patches/libextractor-CVE-2018-20431.patch
deleted file mode 100644
index 855c5ba64b..0000000000
--- a/gnu/packages/patches/libextractor-CVE-2018-20431.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Fix CVE-2018-20431:
-
-https://gnunet.org/bugs/view.php?id=5494
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20431
-https://security-tracker.debian.org/tracker/CVE-2018-20431
-
-Patch copied from upstream source repository:
-
-https://gnunet.org/git/libextractor.git/commit/?id=489c4a540bb2c4744471441425b8932b97a153e7
-
-To apply the patch to libextractor 1.8 release tarball,
-hunk #1 which patches ChangeLog is removed. 
-
-From 489c4a540bb2c4744471441425b8932b97a153e7 Mon Sep 17 00:00:00 2001
-From: Christian Grothoff <christian@grothoff.org>
-Date: Thu, 20 Dec 2018 23:02:28 +0100
-Subject: [PATCH] fix #5494
-
----
- ChangeLog                    | 3 ++-
- src/plugins/ole2_extractor.c | 9 +++++++--
- 2 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/src/plugins/ole2_extractor.c b/src/plugins/ole2_extractor.c
-index 53fa1b9..a48b726 100644
---- a/src/plugins/ole2_extractor.c
-+++ b/src/plugins/ole2_extractor.c
-@@ -173,7 +173,7 @@ struct ProcContext
-   EXTRACTOR_MetaDataProcessor proc;
- 
-   /**
--   * Closure for 'proc'.
-+   * Closure for @e proc.
-    */
-   void *proc_cls;
- 
-@@ -213,7 +213,12 @@ process_metadata (gpointer key,
- 
-   if (G_VALUE_TYPE(gval) == G_TYPE_STRING)
-     {
--      contents = strdup (g_value_get_string (gval));
-+      const char *gvals;
-+
-+      gvals = g_value_get_string (gval);
-+      if (NULL == gvals)
-+        return;
-+      contents = strdup (gvals);
-     }
-   else
-     {
--- 
-2.20.1
-
-- 
2.21.0


[-- Attachment #5: 0004-gnu-gnurl-Update-to-7.64.0.patch --]
[-- Type: text/plain, Size: 1155 bytes --]

From 11fa7272b33f65be915214c28d48fddf7bfbd4ff Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Thu, 14 Mar 2019 10:48:08 +0000
Subject: [PATCH 4/5] gnu: gnurl: Update to 7.64.0.

* gnu/packages/gnunet.scm (gnurl): Update to 7.64.0.
---
 gnu/packages/gnunet.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 19e99644dd..029e174a79 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -175,13 +175,13 @@ authentication and support for SSL3 and TLS.")
 (define-public gnurl
   (package
    (name "gnurl")
-   (version "7.63.0")
+   (version "7.64.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/gnunet/" name "-" version ".tar.Z"))
             (sha256
              (base32
-              "021b3pdfnqywk5q07y48kxyz7g4jjg35dk3cv0ps0x50qjr4ix33"))))
+              "095y0ic34ahrlsdylzvn29yg3zglz3jz9mmhymav2svc6knilwgf"))))
    (build-system gnu-build-system)
    (outputs '("out"
               "doc"))                             ; 1.7 MiB of man3 pages
-- 
2.21.0


[-- Attachment #6: 0005-gnu-gnunet-Update-to-0.11.0.patch --]
[-- Type: text/plain, Size: 4722 bytes --]

From d051cd918f92039122bbe89414801c5e669ed149 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@n0.is>
Date: Thu, 14 Mar 2019 11:19:47 +0000
Subject: [PATCH 5/5] gnu: gnunet: Update to 0.11.0.

* gnu/packages/gnunet.scm (gnunet): Update to 0.11.0.
[inputs]: Replace libidn with libidn2, remove perl,
remove python-2, remove glpk (only used when compiled
--with-experimental), add which.
[native-inputs]: remove pkg-config (pc files provided
but pkg-config is not used), add python.
[arguments]: Remove configure flags, --with-nssdir no
longer exists.
[license]: switch to agpl3+.

(gnunet-gtk)[source]: Update checksum.
---
 gnu/packages/gnunet.scm | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 029e174a79..94c8016175 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -29,6 +29,7 @@
   #:use-module (gnu packages file)
   #:use-module (gnu packages aidc)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages gettext)
@@ -53,6 +54,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
@@ -231,7 +233,7 @@ supports HTTP, HTTPS and GnuTLS.")
 (define-public gnunet
   (package
    (name "gnunet")
-   (version "0.10.1")
+   (version "0.11.0")
    (source
     (origin
       (method url-fetch)
@@ -239,39 +241,40 @@ supports HTTP, HTTPS and GnuTLS.")
                           ".tar.gz"))
       (sha256
        (base32
-        "04wxzm3wkgqbn42b8ksr4cx6m5cckyig5cls1adh0nwdczwvnp7n"))))
+        "16kydkrjlf2vxflgls46bwaf9kjczf621p456q0qlphd7cy7lixp"))))
    (build-system gnu-build-system)
+   ;; python2.7 is optionally detected at runtime in $PATH of user,
+   ;; no longer required in 0.11.1 released (gnunet-qr C rewrite).
    (inputs
-    `(("glpk" ,glpk)
-      ("gnurl" ,gnurl)
+    `(("gnurl" ,gnurl)
       ("gstreamer" ,gstreamer)
       ("gst-plugins-base" ,gst-plugins-base)
       ("gnutls" ,gnutls/dane)
       ("libextractor" ,libextractor)
       ("libgcrypt" ,libgcrypt)
-      ("libidn" ,libidn)
+      ("libidn2" ,libidn2)
       ("libmicrohttpd" ,libmicrohttpd) ; hostlist, pt, contrib, and more
       ("libltdl" ,libltdl)
       ("libunistring" ,libunistring) ; fs and more
       ("openssl" ,openssl) ; transport, certificate creation, contribs
-      ("opus" ,opus) ; gnunet-conversation
-      ("pulseaudio" ,pulseaudio) ; conversation
+      ("opus" ,opus) ;conversation
+      ("pulseaudio" ,pulseaudio) ;conversation
       ("sqlite" ,sqlite) ; sqlite bindings, *store
       ("zlib" ,zlib)
-      ("perl" ,perl) ; doxygen and more
       ("jansson" ,jansson) ; identity, taler (external), gnunet-json, gns
       ("nss" ,nss) ; gns
       ("gmp" ,gmp) ; util
       ("bluez" ,bluez) ; gnunet-transport
       ("glib" ,glib)
-      ("libogg" ,libogg) ; gnunet-conversation
-      ("python-2" ,python-2))) ; tests, gnunet-qr
+      ("libogg" ,libogg)
+      ;; https://bugs.gnunet.org/view.php?id=5614
+      ("which" ,which)))
    (native-inputs
-    `(("pkg-config" ,pkg-config)))
+    `(("python" ,python)
+      ;; Will be removed in 0.11.1:
+      ("python-future" ,python-future)))
    (arguments
-    '(#:configure-flags
-      (list (string-append "--with-nssdir=" %output "/lib"))
-      #:parallel-tests? #f
+    '(#:parallel-tests? #f
       ;; test_gnunet_service_arm fails; reported upstream
       #:tests? #f
       #:phases
@@ -294,7 +297,7 @@ global, distributed network that provides security and privacy.  GNUnet in
 that sense aims to replace the current internet protocol stack.  Along with
 an application for secure publication of files, it has grown to include all
 kinds of basic applications for the foundation of a GNU internet.")
-   (license license:gpl3+)
+   (license license:agpl3+)
    (home-page "https://gnunet.org/")))
 
 (define-public guile-gnunet                       ;GSoC 2015!
@@ -339,7 +342,7 @@ services.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1p38k1s6a2fmcfc9a7cf1zrdycm9h06kqdyand4s3k500nj6mb4g"))))
+                "1vr9iyji25r87ym1jw033l9xyqfj4971anamfvz810rl65jjhb6z"))))
     (arguments
      `(#:configure-flags
        (list "--with-libunique"
-- 
2.21.0


^ permalink raw reply related	[relevance 57%]

* [bug#35446] [PATCH 02/26] gnu: Add python-css-parser, python2-css-parser.
  @ 2019-04-27  9:36 70% ` Brendan Tildesley
  2019-04-27  9:36 70% ` [bug#35446] [PATCH 14/26] gnu: Add python-html2text, python2-html2text Brendan Tildesley
  1 sibling, 0 replies; 200+ results
From: Brendan Tildesley @ 2019-04-27  9:36 UTC (permalink / raw)
  To: 35446

* gnu/packages/python-web.scm (python-css-parser, python2-css-parser): New
  variables.
---
 gnu/packages/python-web.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b7d03acb4b..91c5e3892a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -637,6 +637,28 @@ options.")
 (define-public python2-cssutils
   (package-with-python2 python-cssutils))
 
+(define-public python-css-parser
+  (package
+    (inherit python-cssutils)
+    (name "python-css-parser")
+    (version "1.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "css-parser" version ".tar.gz"))
+       (sha256
+        (base32
+         "0i4xfykiffxzr4f6y0m2ggqvx1rzam6pw6krlr5k6ldf29akbay7"))))
+    (home-page "https://github.com/ebook-utils/css-parser")
+    (synopsis "Fork of cssutils modified for parsing ebooks")
+    (description
+     "Css-parser is a fork of cssutils 1.0.2, updated and modified for parsing
+ebooks, due to cssutils not receiving updates as of 1.0.2.")
+    (license license:lgpl3+)))
+
+(define-public python2-css-parser
+  (package-with-python2 python-css-parser))
+
 (define-public python-cssselect
   (package
     (name "python-cssselect")
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35446] [PATCH 14/26] gnu: Add python-html2text, python2-html2text.
    2019-04-27  9:36 70% ` [bug#35446] [PATCH 02/26] gnu: Add python-css-parser, python2-css-parser Brendan Tildesley
@ 2019-04-27  9:36 70% ` Brendan Tildesley
  1 sibling, 0 replies; 200+ results
From: Brendan Tildesley @ 2019-04-27  9:36 UTC (permalink / raw)
  To: 35446

* gnu/packages/python-web.scm (python-html2text, python2-html2text.): New
  variables.
---
 gnu/packages/python-web.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 91c5e3892a..de19ab72e4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -28,6 +28,7 @@
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
+;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -299,6 +300,28 @@ other HTTP libraries.")
 (define-public python2-httplib2
   (package-with-python2 python-httplib2))
 
+(define-public python-html2text
+  (package
+    (name "python-html2text")
+    (version "2018.1.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "html2text" version))
+       (sha256
+        (base32
+         "1m6d7ciq30adc3d1n8g6r46072n7q8kdy039pqvnnmp763xi8xb2"))))
+    (build-system python-build-system)
+    (home-page "https://pypi.org/project/html2text/")
+    (synopsis "Convert HTML into plain text")
+    (description "html2text takes HTML and converts it into plain ASCII text
+which is also valid markdown.  html2text was originally written by Aaron
+Swartz.")
+    (license license:gpl3+)))
+
+(define-public python2-html2text
+  (package-with-python2 python-html2text))
+
 (define-public python-mechanicalsoup
   (package
     (name "python-mechanicalsoup")
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35446] [PATCH v2 07/24] gnu: Add python-html2text, python2-html2text.
  @ 2019-05-03 16:42 70% ` Brendan Tildesley
  2019-05-03 16:42 78% ` [bug#35446] [PATCH v2 24/24] Correct email and license info for Brendan Tildesley Brendan Tildesley
  1 sibling, 0 replies; 200+ results
From: Brendan Tildesley @ 2019-05-03 16:42 UTC (permalink / raw)
  To: 35446

* gnu/packages/python-web.scm (python-html2text, python2-html2text.): New
  variables.
---
 gnu/packages/python-web.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 37da0fd669..839d444f7c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -299,6 +299,28 @@ other HTTP libraries.")
 (define-public python2-httplib2
   (package-with-python2 python-httplib2))
 
+(define-public python-html2text
+  (package
+    (name "python-html2text")
+    (version "2018.1.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "html2text" version))
+       (sha256
+        (base32
+         "1m6d7ciq30adc3d1n8g6r46072n7q8kdy039pqvnnmp763xi8xb2"))))
+    (build-system python-build-system)
+    (home-page "https://pypi.org/project/html2text/")
+    (synopsis "Convert HTML into plain text")
+    (description "html2text takes HTML and converts it into plain ASCII text
+which is also valid markdown.  html2text was originally written by Aaron
+Swartz.")
+    (license license:gpl3+)))
+
+(define-public python2-html2text
+  (package-with-python2 python-html2text))
+
 (define-public python-mechanicalsoup
   (package
     (name "python-mechanicalsoup")
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35446] [PATCH v2 24/24] Correct email and license info for Brendan Tildesley.
    2019-05-03 16:42 70% ` [bug#35446] [PATCH v2 07/24] gnu: Add python-html2text, python2-html2text Brendan Tildesley
@ 2019-05-03 16:42 78% ` Brendan Tildesley
  1 sibling, 0 replies; 200+ results
From: Brendan Tildesley @ 2019-05-03 16:42 UTC (permalink / raw)
  To: 35446

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 8292 bytes --]

---
 gnu/packages/audio.scm       | 2 +-
 gnu/packages/ebook.scm       | 2 +-
 gnu/packages/fonts.scm       | 2 +-
 gnu/packages/freedesktop.scm | 2 +-
 gnu/packages/gnome.scm       | 2 +-
 gnu/packages/linux.scm       | 2 +-
 gnu/packages/lxde.scm        | 2 +-
 gnu/packages/python-web.scm  | 1 +
 gnu/packages/python-xyz.scm  | 2 +-
 gnu/packages/python.scm      | 2 +-
 gnu/packages/video.scm       | 2 +-
 gnu/packages/web.scm         | 1 +
 12 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 2ec873dab5..c897e30458 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -17,7 +17,7 @@
 ;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
 ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2018 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm
index 76c8a57d9c..841355ef5b 100644
--- a/gnu/packages/ebook.scm
+++ b/gnu/packages/ebook.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017, 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 6405ce42bb..dc73c49018 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
 ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
 ;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index fa8bb3cad1..4c47e0c3cb 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 8e3b7a406a..692a215e0d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -27,7 +27,7 @@
 ;;; Copyright © 2017, 2018 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
 ;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
 ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 0dfa2f173a..4ecb6bd490 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -28,7 +28,7 @@
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
 ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
-;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2018 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018 Manuel Graf <graf@init.at>
 ;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm
index 8c0ac3a5f4..cc5e090f58 100644
--- a/gnu/packages/lxde.scm
+++ b/gnu/packages/lxde.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 ison <ison@airmail.cc>
 ;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 839d444f7c..757f1058ab 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -28,6 +28,7 @@
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
+;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 42e8a60b3a..b0d2b105ca 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -44,7 +44,7 @@
 ;;; Copyright © 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017, 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018 Ethan R. Jones <ethanrjones97@gmail.com
 ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com>
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 57ced499cb..11f3aacf00 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -44,7 +44,7 @@
 ;;; Copyright © 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018 Ethan R. Jones <ethanrjones97@gmail.com
 ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com>
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 86c5870f8f..9d9804fa91 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -26,7 +26,7 @@
 ;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018, 2019 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2018 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 ;;; Copyright © 2018 Mark Meyer <mark@ofosos.org>
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 7242ede3be..52cc91a168 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2018 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
-- 
2.21.0

^ permalink raw reply related	[relevance 78%]

* [bug#35705] [PATCH 1/9] gnu: Move Sphinx and friends to (gnu packages sphinx).
  @ 2019-05-12 22:12 39% ` Marius Bakke
  0 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-05-12 22:12 UTC (permalink / raw)
  To: 35705

* gnu/packages/python-xyz.scm (python-sphinxcontrib-websupport,
python2-sphinxcontrib-websupport, python-sphinx, python2-sphinx,
python-sphinx-gallery, python2-sphinx-gallery, python-sphinx-rtd-theme,
python2-sphinx-rtd-theme, python-guzzle-sphinx-theme,
python2-guzzle-sphinx-theme, python-sphinxcontrib-newsfeed,
python-sphinxcontrib-programoutput, python2-sphinxcontrib-programoutput,
python-sphinx-repoze-interface, python2-sphinx-repoze-interface,
python-sphinx-cloud-sptheme, python2-sphinx-cloud-sptheme,
python-sphinx-alabaster-theme, python2-sphinx-alabaster-theme,
python-sphinx-me, python-sphinxcontrib-svg2pdfconverter): Move to ...
(gnu):
* gnu/packages/sphinx.scm: ... here.  New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/admin.scm, gnu/packages/bioinformatics.scm,
gnu/packages/calendar.scm, gnu/packages/cluster.scm,
gnu/packages/databases.scm, gnu/packages/dav.scm, gnu/packages/disk.scm,
gnu/packages/django.scm, gnu/packages/elf.scm, gnu/packages/emacs-xyz.scm,
gnu/packages/emulators.scm, gnu/packages/finance.scm, gnu/packages/image.scm,
gnu/packages/libffi.scm, gnu/packages/mail.scm, gnu/packages/mpd.scm,
gnu/packages/openstack.scm, gnu/packages/pdf.scm, gnu/packages/python-web.scm,
gnu/packages/search.scm, gnu/packages/statistics.scm,
gnu/packages/storage.scm, gnu/packages/sync.scm, gnu/packages/terminals.scm,
gnu/packages/tls.scm, gnu/packages/web.scm: Adjust module imports.
---
 gnu/local.mk                    |   1 +
 gnu/packages/admin.scm          |   1 +
 gnu/packages/bioinformatics.scm |   1 +
 gnu/packages/calendar.scm       |   1 +
 gnu/packages/cluster.scm        |   2 +-
 gnu/packages/databases.scm      |   1 +
 gnu/packages/dav.scm            |   3 +-
 gnu/packages/disk.scm           |   1 +
 gnu/packages/django.scm         |   1 +
 gnu/packages/elf.scm            |   2 +-
 gnu/packages/emacs-xyz.scm      |   1 +
 gnu/packages/emulators.scm      |   2 +-
 gnu/packages/finance.scm        |   1 +
 gnu/packages/image.scm          |   1 +
 gnu/packages/libffi.scm         |   1 +
 gnu/packages/mail.scm           |   1 +
 gnu/packages/mpd.scm            |   2 +-
 gnu/packages/openstack.scm      |   1 +
 gnu/packages/pdf.scm            |   1 +
 gnu/packages/python-web.scm     |   1 +
 gnu/packages/python-xyz.scm     | 328 +---------------------------
 gnu/packages/search.scm         |   1 +
 gnu/packages/sphinx.scm         | 369 ++++++++++++++++++++++++++++++++
 gnu/packages/statistics.scm     |   1 +
 gnu/packages/storage.scm        |   1 +
 gnu/packages/sync.scm           |   2 +-
 gnu/packages/terminals.scm      |   1 +
 gnu/packages/tls.scm            |   1 +
 gnu/packages/web.scm            |   3 +-
 29 files changed, 399 insertions(+), 334 deletions(-)
 create mode 100644 gnu/packages/sphinx.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 133293aad3..0eada4a839 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -434,6 +434,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/smalltalk.scm			\
   %D%/packages/sml.scm				\
   %D%/packages/speech.scm			\
+  %D%/packages/sphinx.scm			\
   %D%/packages/spice.scm			\
   %D%/packages/sqlite.scm			\
   %D%/packages/ssh.scm				\
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index b6aba4c38b..42dff02b08 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -89,6 +89,7 @@
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages terminals)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages groff)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index ce720f46ed..0685ca966b 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -109,6 +109,7 @@
   #:use-module (gnu packages ruby)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages shells)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages statistics)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages tbb)
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 2969228ee9..af692e59f2 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -40,6 +40,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages time)
   #:use-module (gnu packages xml)
diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm
index 8d6669cd22..3608d67bed 100644
--- a/gnu/packages/cluster.scm
+++ b/gnu/packages/cluster.scm
@@ -24,7 +24,7 @@
   #:use-module (guix packages)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls))
 
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 403c3b1fb5..de9d3921ab 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -94,6 +94,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages ruby)
   #:use-module (gnu packages serialization)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages terminals)
diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm
index 0bb446bc3c..3b040028a1 100644
--- a/gnu/packages/dav.scm
+++ b/gnu/packages/dav.scm
@@ -26,7 +26,8 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
-  #:use-module (gnu packages python-xyz))
+  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx))
 
 (define-public radicale
   (package
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index c8d2af88ca..c470b1faa6 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -57,6 +57,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages vim)
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index b9554a388e..e9593c85a2 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -35,6 +35,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages time))
 
 (define-public python-django
diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm
index 99f49eb7a7..09be3a75a3 100644
--- a/gnu/packages/elf.scm
+++ b/gnu/packages/elf.scm
@@ -34,7 +34,7 @@
   #:use-module (gnu packages m4)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages xml))
 
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 069bf3e1f6..dd49e2f828 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -123,6 +123,7 @@
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages password-utils)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages shells)
   #:use-module (gnu packages sqlite)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index a237b0ee1a..23e5a976ce 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -65,9 +65,9 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages sdl)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages textutils)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index ff7fbe0403..d7536a3518 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -63,6 +63,7 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index d46354b14e..528f1dcdcb 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -68,6 +68,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages qt)
diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm
index f47f7623b4..c1d50ec314 100644
--- a/gnu/packages/libffi.scm
+++ b/gnu/packages/libffi.scm
@@ -32,6 +32,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages ruby)
+  #:use-module (gnu packages sphinx)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
   #:use-module (guix build-system ruby))
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 2f56b7bcba..aeac81d072 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -106,6 +106,7 @@
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages samba)
   #:use-module (gnu packages screen)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages texinfo)
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index a6f6819d3e..f631dbd7c6 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -50,8 +50,8 @@
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph))
diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 2906a574cf..289b845ebc 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -28,6 +28,7 @@
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 75bdf87bf3..cb9d4f653c 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -74,6 +74,7 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages sdl)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages xdisorg)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2db94f0430..46a6e0d75e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -62,6 +62,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages time)
   #:use-module (gnu packages web)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5ed1ebdd3c..22f514daa6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -124,6 +124,7 @@
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages search)
   #:use-module (gnu packages shells)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages terminals)
   #:use-module (gnu packages tex)
@@ -2503,174 +2504,6 @@ reStructuredText.")
 (define-public python2-pygments
   (package-with-python2 python-pygments))
 
-(define-public python-sphinxcontrib-websupport
-  (package
-    (name "python-sphinxcontrib-websupport")
-    (version "1.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "sphinxcontrib-websupport" version))
-              (sha256
-               (base32
-                "1ff3ix76xi1y6m99qxhaq5161ix9swwzydilvdya07mgbcvpzr4x"))))
-    (build-system python-build-system)
-    (arguments
-     ;; FIXME: Tests depend on Sphinx, which depends on this.
-     `(#:tests? #f))
-    (home-page "http://sphinx-doc.org/")
-    (synopsis "Sphinx API for web applications")
-    (description "This package provides a Python API to easily integrate
-Sphinx documentation into your web application.  It provides tools to
-integrate Sphinx documents in web templates and to handle searches.")
-    (license license:bsd-3)))
-
-(define-public python2-sphinxcontrib-websupport
-  (package-with-python2 python-sphinxcontrib-websupport))
-
-(define-public python-sphinx
-  (package
-    (name "python-sphinx")
-    (version "1.7.7")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (pypi-uri "Sphinx" version))
-       (sha256
-        (base32
-         "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi"))))
-    (build-system python-build-system)
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             ;; Requires Internet access.
-             (delete-file "tests/test_build_linkcheck.py")
-             (substitute* "tests/test_build_latex.py"
-               (("@pytest.mark.sphinx\\('latex', testroot='images'\\)")
-                "@pytest.mark.skip()"))
-             (when (which "python")
-               ;; XXX: These tests are broken when using Python2:
-               ;; <https://github.com/sphinx-doc/sphinx/issues/4710>.
-               (delete-file "tests/test_api_translator.py")
-               (delete-file "tests/test_setup_command.py"))
-             (invoke "make" "test"))))))
-    (propagated-inputs
-     `(("python-imagesize" ,python-imagesize)
-       ("python-sphinx-alabaster-theme"
-        ,python-sphinx-alabaster-theme)
-       ("python-babel" ,python-babel)
-       ("python-snowballstemmer" ,python-snowballstemmer)
-       ("python-docutils" ,python-docutils)
-       ("python-jinja2" ,python-jinja2)
-       ("python-packaging" ,python-packaging)
-       ("python-pygments" ,python-pygments)
-       ("python-requests" ,python-requests)
-       ("python-six" ,python-six)
-       ("python-sphinxcontrib-websupport" ,python-sphinxcontrib-websupport)))
-    (native-inputs
-     `(("graphviz" ,graphviz)
-       ("imagemagick" ,imagemagick)                    ;for "convert"
-       ("python-html5lib" ,python-html5lib)
-       ("python-mock" ,python-mock)
-       ("python-nose" ,python-nose)
-       ("python-pytest" ,python-pytest)))
-    (home-page "http://sphinx-doc.org/")
-    (synopsis "Python documentation generator")
-    (description "Sphinx is a tool that makes it easy to create documentation
-for Python projects or other documents consisting of multiple reStructuredText
-sources.")
-    (license license:bsd-3)
-    (properties `((python2-variant . ,(delay python2-sphinx))))))
-
-(define-public python2-sphinx
-  (let ((base (package-with-python2 (strip-python2-variant python-sphinx))))
-    (package
-      (inherit base)
-      (native-inputs `(("python2-mock" ,python2-mock)
-                       ("python2-enum34" ,python2-enum34)
-                       ,@(package-native-inputs base)))
-      (propagated-inputs `(("python2-pytz" ,python2-pytz)
-                           ("python2-typing" ,python2-typing)
-                       ,@(package-propagated-inputs base))))))
-
-(define-public python-sphinx-gallery
-  (package
-    (name "python-sphinx-gallery")
-    (version "0.1.13")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery"
-                                  "/archive/v" version ".tar.gz"))
-              (file-name (string-append name "-" version ".tar.gz"))
-              (sha256
-               (base32
-                "03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd"))))
-    (build-system python-build-system)
-    (arguments
-     ;; FIXME: Tests attempt to download <https://docs.python.org/3/objects.inv>,
-     ;; <https://docs.scipy.org/doc/numpy/objects.inv>, and
-     ;; <https://matplotlib.org/objects.inv>.
-     `(#:tests? #f))
-    (native-inputs
-     `(("python-pytest-runner" ,python-pytest-runner)))
-    (home-page "https://sphinx-gallery.github.io/")
-    (synopsis "Generate an examples gallery automatically")
-    (description
-     "@code{sphinx_gallery} is a Sphinx extension that builds an HTML version
-from any set of Python scripts and puts it into an examples gallery.")
-    (license license:bsd-3)))
-
-(define-public python2-sphinx-gallery
-  (package-with-python2 python-sphinx-gallery))
-
-(define-public python-sphinx-rtd-theme
-  (package
-    (name "python-sphinx-rtd-theme")
-    (version "0.2.4")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (pypi-uri "sphinx_rtd_theme" version))
-       (sha256
-        (base32
-         "05rlhjzdyapr2w74jjs7mrm8hi69qskcr5vya9f9drpsys7lpxrd"))))
-    (build-system python-build-system)
-    (arguments '(#:tests? #f)) ; No tests.
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (home-page "https://github.com/snide/sphinx_rtd_theme/")
-    (synopsis "ReadTheDocs.org theme for Sphinx")
-    (description "A theme for Sphinx used by ReadTheDocs.org.")
-    (license license:expat)))
-
-(define-public python2-sphinx-rtd-theme
-  (package-with-python2 python-sphinx-rtd-theme))
-
-(define-public python-guzzle-sphinx-theme
-  (package
-    (name "python-guzzle-sphinx-theme")
-    (version "0.7.11")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "guzzle_sphinx_theme" version))
-        (sha256
-         (base32
-          "1rnkzrrsbnifn3vsb4pfaia3nlvgvw6ndpxp7lzjrh23qcwid34v"))))
-    (build-system python-build-system)
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (home-page "https://github.com/guzzle/guzzle_sphinx_theme")
-    (synopsis "Sphinx theme used by Guzzle")
-    (description "This package provides guzzle_sphinx_theme, a theme for the
-Sphinx documentation system, used by @uref{http://docs.guzzlephp.org, Guzzle}
-and several other projects.")
-    (license license:expat)))
-
-(define-public python2-guzzle-sphinx-theme
-  (package-with-python2 python-guzzle-sphinx-theme))
-
 (define-public python-bumpversion
   (package
     (name "python-bumpversion")
@@ -8041,26 +7874,6 @@ files for use with Python.")
     (home-page "https://github.com/collective/icalendar")
     (license license:bsd-2)))
 
-(define-public python-sphinxcontrib-newsfeed
-  (package
-    (name "python-sphinxcontrib-newsfeed")
-    (version "0.1.4")
-    (source (origin
-             (method url-fetch)
-             (uri (pypi-uri "sphinxcontrib-newsfeed" version))
-             (sha256
-              (base32
-               "1d7gam3mn8v4in4p16yn3v10vps7nnaz6ilw99j4klij39dqd37p"))))
-    (arguments '(#:tests? #f)) ; No tests.
-    (build-system python-build-system)
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (synopsis "News Feed extension for Sphinx")
-    (description "Sphinxcontrib-newsfeed is an extension for adding a simple
-Blog, News or Announcements section to a Sphinx website.")
-    (home-page "https://bitbucket.org/prometheus/sphinxcontrib-newsfeed")
-    (license license:bsd-2)))
-
 (define-public python-args
   (package
     (name "python-args")
@@ -8860,56 +8673,6 @@ programmatically interfacing with your system's $EDITOR.")
 (define-public python2-editor
   (package-with-python2 python-editor))
 
-(define-public python-sphinxcontrib-programoutput
-  (package
-    (name "python-sphinxcontrib-programoutput")
-    (version "0.10")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "sphinxcontrib-programoutput" version))
-              (sha256
-               (base32
-                "153hhnlbx4688zj9wd64819ps5znc2jlyp5crkgzvn5hxgy99vpx"))))
-    (build-system python-build-system)
-    (arguments
-     ;; FIXME: Many tests are failing and the upstream is gone.
-     '(#:tests? #f))
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (synopsis "Sphinx extension to include program output")
-    (description "A Sphinx extension to literally insert the output of arbitrary
-commands into documents, helping you to keep your command examples up to date.")
-    (home-page "https://github.com/lunaryorn/sphinxcontrib-programoutput")
-    (license license:bsd-2)))
-
-(define-public python2-sphinxcontrib-programoutput
-  (package-with-python2 python-sphinxcontrib-programoutput))
-
-(define-public python-sphinx-repoze-autointerface
-  (package
-    (name "python-sphinx-repoze-autointerface")
-    (version "0.8")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "repoze.sphinx.autointerface" version))
-              (sha256
-               (base32
-                "08ycivzf7bh4a1zcyp31hbyqs1b2c9r26raa3vxjwwmbfqr3iw4f"))))
-    (build-system python-build-system)
-    (arguments '(#:tests? #f)) ; No tests.
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)
-       ("python-zope-interface" ,python-zope-interface)))
-    (synopsis "Auto-generate Sphinx API docs from Zope interfaces")
-    (description "This package defines an extension for the Sphinx documentation
-system.  The extension allows generation of API documentation by
-introspection of @code{zope.interface} instances in code.")
-    (home-page "https://github.com/repoze/repoze.sphinx.autointerface")
-    (license license:repoze)))
-
-(define-public python2-sphinx-repoze-autointerface
-  (package-with-python2 python-sphinx-repoze-autointerface))
-
 (define-public python-vobject
   (package
     (name "python-vobject")
@@ -10895,52 +10658,6 @@ English stemmer.")
 (define-public python2-snowballstemmer
   (package-with-python2 python-snowballstemmer))
 
-(define-public python-sphinx-cloud-sptheme
-  (package
-    (name "python-sphinx-cloud-sptheme")
-    (version "1.8.0")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "cloud_sptheme" version))
-              (sha256
-               (base32
-                "1dniqb6a39yh786f86c4jn666rwnyi1jvzn4616zhcchb7sfdshd"))))
-    (build-system python-build-system)
-    ;; FIXME: The 'pypi' release archive does not contain tests.
-    (arguments '(#:tests? #f))
-    (native-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (home-page "https://bitbucket.org/ecollins/cloud_sptheme")
-    (synopsis "'Cloud' theme for Sphinx documenter")
-    (description "This package contains the \"Cloud\" theme for Sphinx and some
-related extensions.")
-    (license license:bsd-3)))
-
-(define-public python2-sphinx-cloud-sptheme
-  (package-with-python2 python-sphinx-cloud-sptheme))
-
-(define-public python-sphinx-alabaster-theme
-  (package
-    (name "python-sphinx-alabaster-theme")
-    (version "0.7.12")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "alabaster" version))
-              (sha256
-               (base32
-                "00nwwjj2d2ym4s2kk217x7jkx1hnczc3fvm8yxbqmsp6b0nxfqd6"))))
-    (build-system python-build-system)
-    (propagated-inputs
-     `(("python-pygments" ,python-pygments)))
-    (home-page "https://alabaster.readthedocs.io/")
-    (synopsis "Configurable sidebar-enabled Sphinx theme")
-    (description "Alabaster is a visually (c)lean, responsive, configurable
-theme for the Sphinx documentation system.  It's the default theme of Sphinx.")
-    (license license:bsd-3)))
-
-(define-public python2-sphinx-alabaster-theme
-  (package-with-python2 python-sphinx-alabaster-theme))
-
 (define-public python-setproctitle
 (package
   (name "python-setproctitle")
@@ -12245,30 +11962,6 @@ make common patterns shorter and easier.")
 (define-public python2-utils
   (package-with-python2 python-utils))
 
-(define-public python-sphinx-me
-  (package
-    (name "python-sphinx-me")
-    (version "0.3")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (pypi-uri "sphinx-me" version))
-       (sha256
-        (base32
-         "06jzgp213zihnvpcy2y5jy3ykid3apc2ncp2pg6a2g05lhiziglq"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/stephenmcd/sphinx-me")
-    (synopsis "Create a Sphinx documentation shell")
-    (description
-      "Create a Sphinx documentation shell for your project and include the
-README file as the documentation index.  It handles extracting the required
-meta data such as the project name, author and version from your project for
-use in your Sphinx docs.")
-    (license license:bsd-2)))
-
-(define-public python2-sphinx-me
-  (package-with-python2 python-sphinx-me))
-
 (define-public python-diff-match-patch
   (package
     (name "python-diff-match-patch")
@@ -15646,22 +15339,3 @@ space that are close to a given query point.  It also creates large read-only
 file-based data structures that are @code{mmap}ped into memory so that many
 processes may share the same data.")
     (license license:asl2.0)))
-
-(define-public python-sphinxcontrib-svg2pdfconverter
-  (package
-    (name "python-sphinxcontrib-svg2pdfconverter")
-    (version "0.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (pypi-uri "sphinxcontrib-svg2pdfconverter" version))
-              (sha256
-               (base32
-                "1abvbgkkii13q8nsb10r0gc5lm0p9iq1iwhfhakn5ifn6asa0183"))))
-    (build-system python-build-system)
-    (propagated-inputs
-     `(("python-sphinx" ,python-sphinx)))
-    (home-page "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter/releases")
-    (synopsis "Sphinx SVG to PDF converter extension")
-    (description "A Sphinx extension to convert SVG images to PDF in case the builder does not support
-SVG images natively (e.g. LaTeX).")
-    (license license:bsd-3)))
diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index fe51900179..9b2876c359 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -41,6 +41,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xml))
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
new file mode 100644
index 0000000000..088f0d3b38
--- /dev/null
+++ b/gnu/packages/sphinx.scm
@@ -0,0 +1,369 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 David Thompson <davet@gnu.org>
+;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017 Danny Milosavljevic <dannym+a@scratchpost.org>
+;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
+;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
+;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages sphinx)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system python)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages graphviz)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages time))
+
+(define-public python-sphinx
+  (package
+    (name "python-sphinx")
+    (version "1.7.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Sphinx" version))
+       (sha256
+        (base32
+         "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             ;; Requires Internet access.
+             (delete-file "tests/test_build_linkcheck.py")
+             (substitute* "tests/test_build_latex.py"
+               (("@pytest.mark.sphinx\\('latex', testroot='images'\\)")
+                "@pytest.mark.skip()"))
+             (when (which "python")
+               ;; XXX: These tests are broken when using Python2:
+               ;; <https://github.com/sphinx-doc/sphinx/issues/4710>.
+               (delete-file "tests/test_api_translator.py")
+               (delete-file "tests/test_setup_command.py"))
+             (invoke "make" "test"))))))
+    (propagated-inputs
+     `(("python-imagesize" ,python-imagesize)
+       ("python-sphinx-alabaster-theme"
+        ,python-sphinx-alabaster-theme)
+       ("python-babel" ,python-babel)
+       ("python-snowballstemmer" ,python-snowballstemmer)
+       ("python-docutils" ,python-docutils)
+       ("python-jinja2" ,python-jinja2)
+       ("python-packaging" ,python-packaging)
+       ("python-pygments" ,python-pygments)
+       ("python-requests" ,python-requests)
+       ("python-six" ,python-six)
+       ("python-sphinxcontrib-websupport" ,python-sphinxcontrib-websupport)))
+    (native-inputs
+     `(("graphviz" ,graphviz)
+       ("imagemagick" ,imagemagick)                    ;for "convert"
+       ("python-html5lib" ,python-html5lib)
+       ("python-mock" ,python-mock)
+       ("python-nose" ,python-nose)
+       ("python-pytest" ,python-pytest)))
+    (home-page "http://sphinx-doc.org/")
+    (synopsis "Python documentation generator")
+    (description "Sphinx is a tool that makes it easy to create documentation
+for Python projects or other documents consisting of multiple reStructuredText
+sources.")
+    (license license:bsd-3)
+    (properties `((python2-variant . ,(delay python2-sphinx))))))
+
+(define-public python2-sphinx
+  (let ((base (package-with-python2 (strip-python2-variant python-sphinx))))
+    (package
+      (inherit base)
+      (native-inputs `(("python2-mock" ,python2-mock)
+                       ("python2-enum34" ,python2-enum34)
+                       ,@(package-native-inputs base)))
+      (propagated-inputs `(("python2-pytz" ,python2-pytz)
+                           ("python2-typing" ,python2-typing)
+                       ,@(package-propagated-inputs base))))))
+
+(define-public python-sphinxcontrib-newsfeed
+  (package
+    (name "python-sphinxcontrib-newsfeed")
+    (version "0.1.4")
+    (source (origin
+             (method url-fetch)
+             (uri (pypi-uri "sphinxcontrib-newsfeed" version))
+             (sha256
+              (base32
+               "1d7gam3mn8v4in4p16yn3v10vps7nnaz6ilw99j4klij39dqd37p"))))
+    (arguments '(#:tests? #f)) ; No tests.
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (synopsis "News Feed extension for Sphinx")
+    (description "Sphinxcontrib-newsfeed is an extension for adding a simple
+Blog, News or Announcements section to a Sphinx website.")
+    (home-page "https://bitbucket.org/prometheus/sphinxcontrib-newsfeed")
+    (license license:bsd-2)))
+
+(define-public python-sphinxcontrib-programoutput
+  (package
+    (name "python-sphinxcontrib-programoutput")
+    (version "0.10")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "sphinxcontrib-programoutput" version))
+              (sha256
+               (base32
+                "153hhnlbx4688zj9wd64819ps5znc2jlyp5crkgzvn5hxgy99vpx"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Many tests are failing and the upstream is gone.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (synopsis "Sphinx extension to include program output")
+    (description "A Sphinx extension to literally insert the output of arbitrary
+commands into documents, helping you to keep your command examples up to date.")
+    (home-page "https://github.com/lunaryorn/sphinxcontrib-programoutput")
+    (license license:bsd-2)))
+
+(define-public python2-sphinxcontrib-programoutput
+  (package-with-python2 python-sphinxcontrib-programoutput))
+
+(define-public python-sphinxcontrib-svg2pdfconverter
+  (package
+    (name "python-sphinxcontrib-svg2pdfconverter")
+    (version "0.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "sphinxcontrib-svg2pdfconverter" version))
+              (sha256
+               (base32
+                "1abvbgkkii13q8nsb10r0gc5lm0p9iq1iwhfhakn5ifn6asa0183"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (home-page "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter/releases")
+    (synopsis "Sphinx SVG to PDF converter extension")
+    (description "A Sphinx extension to convert SVG images to PDF in case the builder does not support
+SVG images natively (e.g. LaTeX).")
+    (license license:bsd-3)))
+
+(define-public python-sphinxcontrib-websupport
+  (package
+    (name "python-sphinxcontrib-websupport")
+    (version "1.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "sphinxcontrib-websupport" version))
+              (sha256
+               (base32
+                "1ff3ix76xi1y6m99qxhaq5161ix9swwzydilvdya07mgbcvpzr4x"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests depend on Sphinx, which depends on this.
+     `(#:tests? #f))
+    (home-page "http://sphinx-doc.org/")
+    (synopsis "Sphinx API for web applications")
+    (description "This package provides a Python API to easily integrate
+Sphinx documentation into your web application.  It provides tools to
+integrate Sphinx documents in web templates and to handle searches.")
+    (license license:bsd-3)))
+
+(define-public python2-sphinxcontrib-websupport
+  (package-with-python2 python-sphinxcontrib-websupport))
+
+(define-public python-sphinx-gallery
+  (package
+    (name "python-sphinx-gallery")
+    (version "0.1.13")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery"
+                                  "/archive/v" version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests attempt to download <https://docs.python.org/3/objects.inv>,
+     ;; <https://docs.scipy.org/doc/numpy/objects.inv>, and
+     ;; <https://matplotlib.org/objects.inv>.
+     `(#:tests? #f))
+    (native-inputs
+     `(("python-pytest-runner" ,python-pytest-runner)))
+    (home-page "https://sphinx-gallery.github.io/")
+    (synopsis "Generate an examples gallery automatically")
+    (description
+     "@code{sphinx_gallery} is a Sphinx extension that builds an HTML version
+from any set of Python scripts and puts it into an examples gallery.")
+    (license license:bsd-3)))
+
+(define-public python2-sphinx-gallery
+  (package-with-python2 python-sphinx-gallery))
+
+(define-public python-sphinx-me
+  (package
+    (name "python-sphinx-me")
+    (version "0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sphinx-me" version))
+       (sha256
+        (base32
+         "06jzgp213zihnvpcy2y5jy3ykid3apc2ncp2pg6a2g05lhiziglq"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/stephenmcd/sphinx-me")
+    (synopsis "Create a Sphinx documentation shell")
+    (description
+      "Create a Sphinx documentation shell for your project and include the
+README file as the documentation index.  It handles extracting the required
+meta data such as the project name, author and version from your project for
+use in your Sphinx docs.")
+    (license license:bsd-2)))
+
+(define-public python-sphinx-repoze-autointerface
+  (package
+    (name "python-sphinx-repoze-autointerface")
+    (version "0.8")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "repoze.sphinx.autointerface" version))
+              (sha256
+               (base32
+                "08ycivzf7bh4a1zcyp31hbyqs1b2c9r26raa3vxjwwmbfqr3iw4f"))))
+    (build-system python-build-system)
+    (arguments '(#:tests? #f)) ; No tests.
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)
+       ("python-zope-interface" ,python-zope-interface)))
+    (synopsis "Auto-generate Sphinx API docs from Zope interfaces")
+    (description "This package defines an extension for the Sphinx documentation
+system.  The extension allows generation of API documentation by
+introspection of @code{zope.interface} instances in code.")
+    (home-page "https://github.com/repoze/repoze.sphinx.autointerface")
+    (license license:repoze)))
+
+(define-public python2-sphinx-repoze-autointerface
+  (package-with-python2 python-sphinx-repoze-autointerface))
+
+(define-public python-sphinx-alabaster-theme
+  (package
+    (name "python-sphinx-alabaster-theme")
+    (version "0.7.12")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "alabaster" version))
+              (sha256
+               (base32
+                "00nwwjj2d2ym4s2kk217x7jkx1hnczc3fvm8yxbqmsp6b0nxfqd6"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-pygments" ,python-pygments)))
+    (home-page "https://alabaster.readthedocs.io/")
+    (synopsis "Configurable sidebar-enabled Sphinx theme")
+    (description "Alabaster is a visually (c)lean, responsive, configurable
+theme for the Sphinx documentation system.  It's the default theme of Sphinx.")
+    (license license:bsd-3)))
+
+(define-public python2-sphinx-alabaster-theme
+  (package-with-python2 python-sphinx-alabaster-theme))
+
+(define-public python-sphinx-cloud-sptheme
+  (package
+    (name "python-sphinx-cloud-sptheme")
+    (version "1.8.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "cloud_sptheme" version))
+              (sha256
+               (base32
+                "1dniqb6a39yh786f86c4jn666rwnyi1jvzn4616zhcchb7sfdshd"))))
+    (build-system python-build-system)
+    ;; FIXME: The 'pypi' release archive does not contain tests.
+    (arguments '(#:tests? #f))
+    (native-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (home-page "https://bitbucket.org/ecollins/cloud_sptheme")
+    (synopsis "'Cloud' theme for Sphinx documenter")
+    (description "This package contains the \"Cloud\" theme for Sphinx and some
+related extensions.")
+    (license license:bsd-3)))
+
+(define-public python2-sphinx-cloud-sptheme
+  (package-with-python2 python-sphinx-cloud-sptheme))
+
+(define-public python-guzzle-sphinx-theme
+  (package
+    (name "python-guzzle-sphinx-theme")
+    (version "0.7.11")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "guzzle_sphinx_theme" version))
+        (sha256
+         (base32
+          "1rnkzrrsbnifn3vsb4pfaia3nlvgvw6ndpxp7lzjrh23qcwid34v"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (home-page "https://github.com/guzzle/guzzle_sphinx_theme")
+    (synopsis "Sphinx theme used by Guzzle")
+    (description "This package provides guzzle_sphinx_theme, a theme for the
+Sphinx documentation system, used by @uref{http://docs.guzzlephp.org, Guzzle}
+and several other projects.")
+    (license license:expat)))
+
+(define-public python2-guzzle-sphinx-theme
+  (package-with-python2 python-guzzle-sphinx-theme))
+
+(define-public python-sphinx-rtd-theme
+  (package
+    (name "python-sphinx-rtd-theme")
+    (version "0.2.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sphinx_rtd_theme" version))
+       (sha256
+        (base32
+         "05rlhjzdyapr2w74jjs7mrm8hi69qskcr5vya9f9drpsys7lpxrd"))))
+    (build-system python-build-system)
+    (arguments '(#:tests? #f)) ; No tests.
+    (propagated-inputs
+     `(("python-sphinx" ,python-sphinx)))
+    (home-page "https://github.com/snide/sphinx_rtd_theme/")
+    (synopsis "ReadTheDocs.org theme for Sphinx")
+    (description "A theme for Sphinx used by ReadTheDocs.org.")
+    (license license:expat)))
+
+(define-public python2-sphinx-rtd-theme
+  (package-with-python2 python-sphinx-rtd-theme))
+
+(define-public python2-sphinx-me
+  (package-with-python2 python-sphinx-me))
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 8bcc90f126..699f1d63a3 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -66,6 +66,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages tex)
diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm
index 9e7cd10918..503433be10 100644
--- a/gnu/packages/storage.scm
+++ b/gnu/packages/storage.scm
@@ -47,6 +47,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml))
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index 136ffec9e7..51ed0317bc 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -37,11 +37,11 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages perl)
-  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages selinux)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tls))
 
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index a3ea05538b..512e98ec7b 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -68,6 +68,7 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages serialization)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages xdisorg)
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 11bb64ce8b..f7ac867e5d 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -59,6 +59,7 @@
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages time)
   #:use-module (gnu packages base)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 52cc91a168..fd38a6bf00 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -74,6 +74,7 @@
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages bison)
@@ -118,7 +119,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages xml)
-  #:use-module (gnu packages curl)
+  #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
-- 
2.21.0

^ permalink raw reply related	[relevance 39%]

* [bug#35948] [PATCH 1/3] gnu: python-flask: Update to 1.0.3.
@ 2019-05-28 10:56 70% h.nasajpour
  0 siblings, 0 replies; 200+ results
From: h.nasajpour @ 2019-05-28 10:56 UTC (permalink / raw)
  To: 35948; +Cc: h.nasajpour

* gnu/packages/python-web.scm (python-flask): Update to 1.0.3.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 5d37e171e4..f962ae381f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1647,13 +1647,13 @@ minimum of WSGI.")
 (define-public python-flask
   (package
     (name "python-flask")
-    (version "1.0.2")
+    (version "1.0.3")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "flask" version))
               (sha256
                (base32
-                "0j6f4a9rpfh25k1gp7azqhnni4mb4fgy50jammgjgddw1l3w0w92"))))
+                "1wxnhjlxwwjhjxmghykjhllpahv5pkdc5hln4ab6nab43s26sz5d"))))
     (build-system python-build-system)
     (arguments
      '(#:phases
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35950] [PATCH 2/3] gnu: python-flask-restful: Update to 0.12.1.
@ 2019-05-28 10:57 70% h.nasajpour
  2019-05-28 19:32 89% ` Danny Milosavljevic
  0 siblings, 1 reply; 200+ results
From: h.nasajpour @ 2019-05-28 10:57 UTC (permalink / raw)
  To: 35950; +Cc: h.nasajpour

* gnu/packages/python-web.scm (python-flask-restful): Update to 0.12.1.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f962ae381f..79f4ec3565 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2098,14 +2098,14 @@ pretty printer and a tree visitor.")
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-    (version "0.3.7")
+    (version "0.12.1")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "Flask-RESTful" version))
         (sha256
          (base32
-          "1a9cbwkr6krryyzq4sd3f415nkkc6dyfls5i3pgyibs94g0hw97q"))))
+          "0qmb5sfijl4h9jw43zx4qm8sff7l0dhbig4a0wyc3pwi3mz6kb9z"))))
     (build-system python-build-system)
     (propagated-inputs
       `(("python-aniso8601" ,python-aniso8601)
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35949] [PATCH 3/3] gnu: Add python-flask-cors.
@ 2019-05-28 10:57 70% h.nasajpour
  0 siblings, 0 replies; 200+ results
From: h.nasajpour @ 2019-05-28 10:57 UTC (permalink / raw)
  To: 35949; +Cc: h.nasajpour

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 79f4ec3565..ab11119f07 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2095,6 +2095,26 @@ SlimIt also provides a library that includes a JavaScript parser, lexer,
 pretty printer and a tree visitor.")
     (license license:expat)))
 
+(define-public python-flask-cors
+  (package
+  (name "python-flask-cors")
+    (version "3.0.7")
+    (source (origin
+      (method url-fetch)
+      (uri (pypi-uri "Flask-Cors" version))
+      (sha256 (base32 "1v6gq4vjgyxi8q8lxawpdfhq01adb4bznnabp08ks5nzbwibz43y"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))
+    (propagated-inputs
+      `(("python-six" ,python-six)
+        ("python-flask" ,python-flask)))
+    (home-page "https://github.com/corydolphin/flask-cors")
+    (synopsis "A Flask extension adding a decorator for CORS support")
+    (description
+     "A Flask extension adding a decorator for CORS support")
+    (license license:expat)))
+
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-- 
2.21.0

^ permalink raw reply related	[relevance 70%]

* [bug#35957] [PATCH] gnu: python-werkzeug: Update to 0.15.4
@ 2019-05-28 12:56 70% h.nasajpour
  2019-05-28 19:37 89% ` Danny Milosavljevic
  0 siblings, 1 reply; 200+ results
From: h.nasajpour @ 2019-05-28 12:56 UTC (permalink / raw)
  To: 35957; +Cc: h.nasajpour

* gnu/packages/python-web.scm (python-werkzeug): Update to 0.15.4
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 5d37e171e4..65bc5e768c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2676,14 +2676,14 @@ List.  Forked from and using the same API as the publicsuffix package.")
 (define-public python-werkzeug
   (package
     (name "python-werkzeug")
-    (version "0.14.1")
+    (version "0.15.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "werkzeug" version))
        (sha256
         (base32
-         "0z2m4snn1vc9518r2vzgdj1nc90kcgi60wijvd29yvcp85ypmzf3"))))
+         "19kwa1va46jyrhy47fn3a44js1882zrvh70n14mgp0jrh7q1bfd0"))))
     (build-system python-build-system)
     (arguments
      '(#:phases
-- 
2.17.1

^ permalink raw reply related	[relevance 70%]

* [bug#35950] [PATCH 2/3] gnu: python-flask-restful: Update to 0.12.1.
  2019-05-28 10:57 70% [bug#35950] [PATCH 2/3] gnu: python-flask-restful: Update to 0.12.1 h.nasajpour
@ 2019-05-28 19:32 89% ` Danny Milosavljevic
  0 siblings, 0 replies; 200+ results
From: Danny Milosavljevic @ 2019-05-28 19:32 UTC (permalink / raw)
  To: h.nasajpour; +Cc: 35950

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

It doesn't actually build for me.

I made the following changes, but it still doesn't build.  Did it build for you?

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6518d841c8..adb18cc7d0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2110,6 +2110,7 @@ pretty printer and a tree visitor.")
     (propagated-inputs
       `(("python-aniso8601" ,python-aniso8601)
         ("python-flask" ,python-flask)
+        ("python-jsonschema" ,python-jsonschema)
         ("python-pycrypto" ,python-pycrypto)
         ("python-pytz" ,python-pytz)))
     (native-inputs
@@ -2117,7 +2118,9 @@ pretty printer and a tree visitor.")
         ("python-blinker" ,python-blinker)
         ("python-mock" ,python-mock) ; For tests
         ("python-nose" ,python-nose) ; For tests
-        ("python-sphinx" ,python-sphinx)))
+        ("python-pytest-sugar" ,python-pytest-sugar) ; For tests
+        ("python-sphinx" ,python-sphinx)
+        ("python-tzlocal" ,python-tzlocal))) ; For tests
     (home-page
       "https://www.github.com/flask-restful/flask-restful/")
     (synopsis

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[relevance 89%]

* [bug#35957] [PATCH] gnu: python-werkzeug: Update to 0.15.4
  2019-05-28 12:56 70% [bug#35957] [PATCH] gnu: python-werkzeug: Update to 0.15.4 h.nasajpour
@ 2019-05-28 19:37 89% ` Danny Milosavljevic
  0 siblings, 0 replies; 200+ results
From: Danny Milosavljevic @ 2019-05-28 19:37 UTC (permalink / raw)
  To: h.nasajpour; +Cc: 35957

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

This doesn't build for me.

Even with the following patch, it doesn't:

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3d6fd61f10..56496e859f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2680,7 +2680,7 @@ List.  Forked from and using the same API as the publicsuffix package.")
     (source
      (origin
        (method url-fetch)
-       (uri (pypi-uri "werkzeug" version))
+       (uri (pypi-uri "Werkzeug" version))
        (sha256
         (base32
          "19kwa1va46jyrhy47fn3a44js1882zrvh70n14mgp0jrh7q1bfd0"))))

Test failure test_windows_get_args_for_reloading

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[relevance 89%]

* [bug#36194] [PATCH 01/10] gnu: Add python-slugify.
  @ 2019-06-13 15:06 89% ` Pierre Langlois
  2019-06-21 10:42 87%   ` [bug#36194] [PATCH 01/10 v2] " Pierre Langlois
  0 siblings, 1 reply; 200+ results
From: Pierre Langlois @ 2019-06-13 15:06 UTC (permalink / raw)
  To: 36194

* gnu/packages/python-web.scm (python-slugify): New variable.
* gnu/packages/patches/python-slugify-depend-on-unidecode.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |  1 +
 .../python-slugify-depend-on-unidecode.patch  | 22 +++++++++++++
 gnu/packages/python-web.scm                   | 31 +++++++++++++++++++
 3 files changed, 54 insertions(+)
 create mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index c7b557ca61..f8c33dd8c2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1214,6 +1214,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
   %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch	\
   %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
+  %D%/packages/patches/python-slugify-depend-on-unidecode.patch	\
   %D%/packages/patches/python2-subprocess32-disable-input-test.patch	\
   %D%/packages/patches/python-unittest2-python3-compat.patch	\
   %D%/packages/patches/python-unittest2-remove-argparse.patch	\
diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
new file mode 100644
index 0000000000..93a3aaebe9
--- /dev/null
+++ b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
@@ -0,0 +1,22 @@
+diff --git a/setup.py b/setup.py
+index 4800173..6bdd77f 100755
+--- a/setup.py
++++ b/setup.py
+@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
+ author = 'Val Neekman'
+ author_email = 'info@neekware.com'
+ license = 'MIT'
+-install_requires = ['text-unidecode==1.2']
+-extras_require = {'unidecode': ['Unidecode==1.0.23']}
++install_requires = ['Unidecode==1.0.23']
+
+ classifiers = [
+     'Development Status :: 5 - Production/Stable',
+@@ -67,7 +66,6 @@ setup(
+     author_email=author_email,
+     packages=find_packages(exclude=EXCLUDE_FROM_PACKAGES),
+     install_requires=install_requires,
+-    extras_require=extras_require,
+     classifiers=classifiers,
+     entry_points={'console_scripts': ['slugify=slugify.slugify:main']},
+ )
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 042484c6a1..a5cc2cc326 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -29,6 +29,7 @@
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3156,3 +3157,33 @@ Python.")
     (propagated-inputs
      `(("python-gevent" ,python2-gevent)
        ("python-tornado" ,python2-tornado)))))
+
+(define-public python-slugify
+  (package
+    (name "python-slugify")
+    (version "3.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "python-slugify" version))
+       (sha256
+        (base32
+         "0n6pfmsq899c54plpvzi46l7zrpa3zfpm8im6h32czjw6kxky5jp"))
+       (patches
+        (search-patches "python-slugify-depend-on-unidecode.patch"))))
+    (native-inputs
+     `(("python-wheel" ,python-wheel)))
+    (propagated-inputs
+     `(("python-unidecode" ,python-unidecode)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "python" "test.py"))))))
+    (build-system python-build-system)
+    (home-page "https://github.com/un33k/python-slugify")
+    (synopsis "Python Slugify application that handles Unicode")
+    (description "This package provides a @command{slufigy} command and
+library to create slugs from unicode strings while keeping it DRY.")
+    (license license:expat)))
--
2.22.0

^ permalink raw reply related	[relevance 89%]

* [bug#36194] [PATCH 01/10 v2] gnu: Add python-slugify.
  2019-06-13 15:06 89% ` [bug#36194] [PATCH 01/10] gnu: Add python-slugify Pierre Langlois
@ 2019-06-21 10:42 87%   ` Pierre Langlois
  0 siblings, 0 replies; 200+ results
From: Pierre Langlois @ 2019-06-21 10:42 UTC (permalink / raw)
  To: 36194

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


Pierre Langlois writes:

> * gnu/packages/python-web.scm (python-slugify): New variable.
> * gnu/packages/patches/python-slugify-depend-on-unidecode.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
> ---
>  gnu/local.mk                                  |  1 +
>  .../python-slugify-depend-on-unidecode.patch  | 22 +++++++++++++
>  gnu/packages/python-web.scm                   | 31 +++++++++++++++++++
>  3 files changed, 54 insertions(+)
>  create mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index c7b557ca61..f8c33dd8c2 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1214,6 +1214,7 @@ dist_patch_DATA =						\
>    %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
>    %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch	\
>    %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
> +  %D%/packages/patches/python-slugify-depend-on-unidecode.patch	\
>    %D%/packages/patches/python2-subprocess32-disable-input-test.patch	\
>    %D%/packages/patches/python-unittest2-python3-compat.patch	\
>    %D%/packages/patches/python-unittest2-remove-argparse.patch	\
> diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
> new file mode 100644
> index 0000000000..93a3aaebe9
> --- /dev/null
> +++ b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
> @@ -0,0 +1,22 @@
> +diff --git a/setup.py b/setup.py
> +index 4800173..6bdd77f 100755
> +--- a/setup.py
> ++++ b/setup.py
> +@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
> + author = 'Val Neekman'
> + author_email = 'info@neekware.com'
> + license = 'MIT'
> +-install_requires = ['text-unidecode==1.2']
> +-extras_require = {'unidecode': ['Unidecode==1.0.23']}
> ++install_requires = ['Unidecode==1.0.23']

Ah, the python-unidecode package was just updated to version 1.1.0 which
then breaks csvkit.

Here's a fixed patch that ignores the version number, the tests pass so
I think we're good still.

Thanks!
Pierre


[-- Attachment #2: 0001-gnu-Add-python-slugify.patch --]
[-- Type: text/x-patch, Size: 4182 bytes --]

From 39110b5dc66485cdda73b85bc46ff9ff2c85b97f Mon Sep 17 00:00:00 2001
From: Pierre Langlois <pierre.langlois@gmx.com>
Date: Wed, 12 Jun 2019 21:15:27 +0100
Subject: [PATCH] gnu: Add python-slugify.

* gnu/packages/python-web.scm (python-slugify): New variable.
* gnu/packages/patches/python-slugify-depend-on-unidecode.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |  1 +
 .../python-slugify-depend-on-unidecode.patch  | 22 +++++++++++++
 gnu/packages/python-web.scm                   | 31 +++++++++++++++++++
 3 files changed, 54 insertions(+)
 create mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 4c54f024e0..28d9d118a6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1223,6 +1223,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
   %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch	\
   %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
+  %D%/packages/patches/python-slugify-depend-on-unidecode.patch	\
   %D%/packages/patches/python2-subprocess32-disable-input-test.patch	\
   %D%/packages/patches/python-unittest2-python3-compat.patch	\
   %D%/packages/patches/python-unittest2-remove-argparse.patch	\
diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
new file mode 100644
index 0000000000..6038f432f1
--- /dev/null
+++ b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
@@ -0,0 +1,22 @@
+diff --git a/setup.py b/setup.py
+index 4800173..6bdd77f 100755
+--- a/setup.py
++++ b/setup.py
+@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
+ author = 'Val Neekman'
+ author_email = 'info@neekware.com'
+ license = 'MIT'
+-install_requires = ['text-unidecode==1.2']
+-extras_require = {'unidecode': ['Unidecode==1.0.23']}
++install_requires = ['Unidecode']
+ 
+ classifiers = [
+     'Development Status :: 5 - Production/Stable',
+@@ -67,7 +66,6 @@ setup(
+     author_email=author_email,
+     packages=find_packages(exclude=EXCLUDE_FROM_PACKAGES),
+     install_requires=install_requires,
+-    extras_require=extras_require,
+     classifiers=classifiers,
+     entry_points={'console_scripts': ['slugify=slugify.slugify:main']},
+ )
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index cbcbe6c867..e441cbaa81 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -29,6 +29,7 @@
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3165,3 +3166,33 @@ Python.")
     (propagated-inputs
      `(("python-gevent" ,python2-gevent)
        ("python-tornado" ,python2-tornado)))))
+
+(define-public python-slugify
+  (package
+    (name "python-slugify")
+    (version "3.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "python-slugify" version))
+       (sha256
+        (base32
+         "0n6pfmsq899c54plpvzi46l7zrpa3zfpm8im6h32czjw6kxky5jp"))
+       (patches
+        (search-patches "python-slugify-depend-on-unidecode.patch"))))
+    (native-inputs
+     `(("python-wheel" ,python-wheel)))
+    (propagated-inputs
+     `(("python-unidecode" ,python-unidecode)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "python" "test.py"))))))
+    (build-system python-build-system)
+    (home-page "https://github.com/un33k/python-slugify")
+    (synopsis "Python Slugify application that handles Unicode")
+    (description "This package provides a @command{slufigy} command and
+library to create slugs from unicode strings while keeping it DRY.")
+    (license license:expat)))
-- 
2.22.0


^ permalink raw reply related	[relevance 87%]

* [bug#36608] [PATCH 2/9] Update docker-compose to 1.24.1.
  @ 2019-07-11 20:51 70% ` Jacob MacDonald
  2019-07-11 20:51 70% ` [bug#36608] [PATCH 4/9] " Jacob MacDonald
  1 sibling, 0 replies; 200+ results
From: Jacob MacDonald @ 2019-07-11 20:51 UTC (permalink / raw)
  To: 36608

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



[-- Attachment #2: 0002-gnu-Add-python-urllib3-1.24.patch --]
[-- Type: text/x-patch, Size: 1285 bytes --]

From 758c97ef60e00309d8e6e20ff06eecb4bc44928d Mon Sep 17 00:00:00 2001
From: Jacob MacDonald <jaccarmac@gmail.com>
Date: Thu, 11 Jul 2019 15:42:10 -0500
Subject: [PATCH 2/9] gnu: Add python-urllib3-1.24.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e441cbaa81..04f53740e4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1528,6 +1528,18 @@ can reuse the same socket connection for multiple requests, it can POST files,
 supports url redirection and retries, and also gzip and deflate decoding.")
     (license license:expat)))
 
+;; Some software requires an older version of urllib3, notably Docker.
+(define-public python-urllib3-1.24
+  (package (inherit python-urllib3)
+           (version "1.24.3")
+           (source (origin
+                     (method url-fetch)
+                     (uri (pypi-uri "urllib3" version))
+                     (sha256
+                      (base32
+                       "1x0slqrv6kixkbcdnxbglvjliwhc1payavxjvk8fvbqjrnasd4r3"))))))
+
+
 (define-public python2-urllib3
   (package-with-python2 python-urllib3))
 
-- 
2.22.0


^ permalink raw reply related	[relevance 70%]

* [bug#36608] [PATCH 4/9] Update docker-compose to 1.24.1.
    2019-07-11 20:51 70% ` [bug#36608] [PATCH 2/9] " Jacob MacDonald
@ 2019-07-11 20:51 70% ` Jacob MacDonald
  1 sibling, 0 replies; 200+ results
From: Jacob MacDonald @ 2019-07-11 20:51 UTC (permalink / raw)
  To: 36608

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



[-- Attachment #2: 0004-gnu-Add-python-requests-2.20.patch --]
[-- Type: text/x-patch, Size: 1473 bytes --]

From 5c5e79fa7d9d492e73d66298616f9921c92bace5 Mon Sep 17 00:00:00 2001
From: Jacob MacDonald <jaccarmac@gmail.com>
Date: Thu, 11 Jul 2019 15:41:26 -0500
Subject: [PATCH 4/9] gnu: Add python-requests-2.20.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 04f53740e4..72d4eba0ff 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1352,6 +1352,22 @@ WebSocket usage in Python programs.")
 than Python’s urllib2 library.")
     (license license:asl2.0)))
 
+;; Some software requires an older version of Requests, notably Docker/Docker
+;; Compose.
+(define-public python-requests-2.20
+  (package (inherit python-requests)
+           (version "2.20.1")
+           (source (origin
+                     (method url-fetch)
+                     (uri (pypi-uri "requests" version))
+                     (sha256
+                      (base32
+                       "0qzj6cgv3k9wyj7wlxgz7xq0cfg4jbbkfm24pp8dnhczwl31527a"))))
+           (propagated-inputs
+            `(("python-urllib3" ,python-urllib3-1.24)
+              ("python-idna" ,python-idna-2.7)
+              ,@(package-propagated-inputs python-requests)))))
+
 ;; Some software requires an older version of Requests, notably Docker
 ;; Compose.
 (define-public python-requests-2.7
-- 
2.22.0


^ permalink raw reply related	[relevance 70%]

* [bug#36624] [PATCH 2/2] gnu: python-aiohttp: Update to 3.5.4
  2019-07-12 21:33 89% [bug#36625] [PATCH 1/2] gnu: python-aiorpcx: Update to 0.18.3 Arne Babenhauserheide
@ 2019-07-12 21:33 89% ` Arne Babenhauserheide
  0 siblings, 0 replies; 200+ results
From: Arne Babenhauserheide @ 2019-07-12 21:33 UTC (permalink / raw)
  To: 36624; +Cc: Arne Babenhauserheide

* gnu/packages/python-web.scm (python-aiohttp): Update to 3.5.4.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 339ed20b01..35f471084f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -75,14 +75,14 @@
 (define-public python-aiohttp
   (package
     (name "python-aiohttp")
-    (version "3.4.4")
+    (version "3.5.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp" version))
        (sha256
         (base32
-         "1ykm6kdjkrg556j0zd7dx2l1rsrbh0d9g27ivr6dmaahz9pyrbsi"))))
+         "1gy95ni8rkdwzir9zf14ivpfwp02g69xbhibldykff0rzbs86k4w"))))
     (build-system python-build-system)
     (arguments
      `(#:tests? #f))                    ;missing pytest-timeout
--
2.22.0

^ permalink raw reply related	[relevance 89%]

* [bug#36625] [PATCH 1/2] gnu: python-aiorpcx: Update to 0.18.3
@ 2019-07-12 21:33 89% Arne Babenhauserheide
  2019-07-12 21:33 89% ` [bug#36624] [PATCH 2/2] gnu: python-aiohttp: Update to 3.5.4 Arne Babenhauserheide
  0 siblings, 1 reply; 200+ results
From: Arne Babenhauserheide @ 2019-07-12 21:33 UTC (permalink / raw)
  To: 36625; +Cc: Arne Babenhauserheide

* gnu/packages/python-web.scm (python-aiorpcx): Update to 0.18.3
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e441cbaa81..339ed20b01 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -154,14 +154,14 @@ using @url{https://github.com/saghul/pycares,pycares}.")
 (define-public python-aiorpcx
   (package
     (name "python-aiorpcx")
-    (version "0.10.2")
+    (version "0.18.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiorpcX" version))
        (sha256
         (base32
-         "1p88k15jh0d2a18pnnbfcamsqi2bxvmmhpizmdlxfdxf8vy5ggyj"))))
+         "0k545hc7wl6sh1svydzbv6x7sx5pig2pqkl3yxs9riwmvzawx9xp"))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-attrs" ,python-attrs)))
--
2.22.0

^ permalink raw reply related	[relevance 89%]

* [bug#36629] [PATCH 2/2] gnu: python-aiorpcx: capitalize description
  @ 2019-07-12 21:41 89% ` Arne Babenhauserheide
  0 siblings, 0 replies; 200+ results
From: Arne Babenhauserheide @ 2019-07-12 21:41 UTC (permalink / raw)
  To: 36629; +Cc: Arne Babenhauserheide

* gnu/packages/python-web.scm (python-aiorpcx): capitalize description
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 35f471084f..e07951978e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -168,8 +168,8 @@ using @url{https://github.com/saghul/pycares,pycares}.")
     (home-page "https://github.com/kyuupichan/aiorpcX")
     (synopsis "Generic asyncio RPC implementation")
     (description
-     "aiorpcX is a generic asyncio library implementation of RPC suitable for
-an application that is a client, server or both.
+     "The aiorpcX library is a generic asyncio implementation of RPC suitable
+for an application that is a client, server or both.

 The package includes a module with full coverage of JSON RPC versions 1.0 and
 2.0, JSON RPC protocol auto-detection, and arbitrary message framing.  It also
--
2.22.0

^ permalink raw reply related	[relevance 89%]

* [bug#37234] [PATCH 02/21] gnu: Add python-databricks-cli.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
@ 2019-08-30 14:25 68%   ` Marius Bakke
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 04/21] gnu: Add python-querystring-parser Marius Bakke
                     ` (7 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/python-web.scm (python-databricks-cli): New public variable.
---
 gnu/packages/python-web.scm | 40 +++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3ed0c6dd16..8d11e9890f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -740,6 +740,46 @@ another XPath engine to find the matching elements in an XML or HTML document.")
 (define-public python2-cssselect
   (package-with-python2 python-cssselect))
 
+(define-public python-databricks-cli
+  (package
+    (name "python-databricks-cli")
+    (version "0.8.7")
+    (home-page "https://github.com/databricks/databricks-cli")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url home-page) (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0wr373kh13gns007g8fm6c4kdrg2xnwk40fkdnlfx7l0yzjbgqy3"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "tests" "-vv"))))))
+    (native-inputs
+     `(;; For tests.
+       ("python-decorator" ,python-decorator)
+       ("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)
+       ("python-requests-mock" ,python-requests-mock)))
+    (propagated-inputs
+     `(("python-click" ,python-click)
+       ("python-configparser" ,python-configparser)
+       ("python-requests" ,python-requests)
+       ("python-six" ,python-six)
+       ("python-tabulate" ,python-tabulate)))
+    (synopsis "Command line interface for Databricks")
+    (description
+     "The Databricks Command Line Interface is a tool which provides an easy
+to use interface to the Databricks platform.  The CLI is built on top of the
+Databricks REST APIs.")
+    (license license:asl2.0)))
+
 (define-public python-openid-cla
   (package
     (name "python-openid-cla")
-- 
2.22.1

^ permalink raw reply related	[relevance 68%]

* [bug#37234] [PATCH 05/21] gnu: Add python-minio.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
  2019-08-30 14:25 68%   ` [bug#37234] [PATCH 02/21] gnu: Add python-databricks-cli Marius Bakke
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 04/21] gnu: Add python-querystring-parser Marius Bakke
@ 2019-08-30 14:25 70%   ` Marius Bakke
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 11/21] gnu: Add python-jsonpickle Marius Bakke
                     ` (5 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 9966f66d8f..7454fe8793 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -523,6 +523,34 @@ C, yielding parse times that can be a thirtieth of the html5lib parse times.")
 (define-public python2-html5-parser
   (package-with-python2 python-html5-parser))
 
+(define-public python-minio
+  (package
+    (name "python-minio")
+    (version "4.0.20")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "minio" version))
+              (sha256
+               (base32
+                "03z96iri7xl74p76blz72x09bjwh4qx2y6jxzv10vjssp4mx6499"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-faker" ,python-faker)
+       ("python-mock" ,python-mock)
+       ("python-nose" ,python-nose)))
+    (propagated-inputs
+     `(("python-certifi" ,python-certifi)
+       ("python-dateutil" ,python-dateutil)
+       ("python-future" ,python-future)
+       ("python-pytz" ,python-pytz)
+       ("python-urllib3" ,python-urllib3)))
+    (home-page "https://github.com/minio/minio-py")
+    (synopsis "Programmatically access Amazon S3 from Python")
+    (description
+     "This package provides a Python library that allows you to interact with
+any Amazon S3 compatible object storage server.")
+    (license license:asl2.0)))
+
 (define-public python-pycurl
   (package
     (name "python-pycurl")
-- 
2.22.1

^ permalink raw reply related	[relevance 70%]

* [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn.
  @ 2019-08-30 14:25 60% ` Marius Bakke
  2019-08-30 14:25 68%   ` [bug#37234] [PATCH 02/21] gnu: Add python-databricks-cli Marius Bakke
                     ` (8 more replies)
  0 siblings, 9 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/check.scm (python-pytest-3.2, python-pytest-cov-2.5,
python-coverage-4.3): New public variables.
* gnu/packages/python-web.scm (python-gunicorn): New public variable.
---
 gnu/packages/check.scm      | 41 ++++++++++++++++++++++++++++++++++++-
 gnu/packages/python-web.scm | 28 ++++++++++++++++++++++++-
 2 files changed, 67 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 085538b2de..e81cd50b66 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -25,7 +25,7 @@
 ;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
@@ -776,6 +776,21 @@ and many external plugins.")
                 ("python2-pathlib2" ,python2-pathlib2-bootstrap)
                 ,@(package-propagated-inputs pytest))))))
 
+;; python-gunicorn requires this ancient version for Python 2.6 support.
+(define-public python-pytest-3.2
+  (package
+    (inherit python-pytest)
+    (version "3.2.5")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pytest" version))
+              (sha256
+               (base32
+                "10cbsyyyzamhvi1gqqyhccsx906xlcwcgddvldalqi1v27vx8nvd"))))
+    (arguments
+     ;; XXX: Tests require similarly ancient versions of many dependencies.
+     `(#:tests? #f))))
+
 (define-public python-pytest-cov
   (package
     (name "python-pytest-cov")
@@ -811,6 +826,18 @@ supports coverage of subprocesses.")
 (define-public python2-pytest-cov
   (package-with-python2 python-pytest-cov))
 
+;; Some packages require this old version.  Remove when no longer needed.
+(define-public python-pytest-cov-2.5
+  (package
+    (inherit python-pytest-cov)
+    (version "2.5.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pytest-cov" version))
+              (sha256
+               (base32
+                "0bbfpwdh9k3636bxc88vz9fa7vf4akchgn513ql1vd0xy4n7bah3"))))))
+
 (define-public python-pytest-runner
   (package
     (name "python-pytest-runner")
@@ -1289,6 +1316,18 @@ executed.")
 (define-public python2-coverage
   (package-with-python2 python-coverage))
 
+;; python-gunicorn requires this version.  Remove once no longer needed.
+(define-public python-coverage-4.3
+  (package
+    (inherit python-coverage)
+    (version "4.3.4")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "coverage" version))
+              (sha256
+               (base32
+                "1prkwz1hkcbx19nsadbcmk4wl27ysx001pa8bykfagd3d87zxbpa"))))))
+
 (define-public python-cov-core
   (package
     (name "python-cov-core")
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 9b88d66118..3ed0c6dd16 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a@scratchpost.org>
 ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu>
@@ -421,6 +421,32 @@ both of which are installed automatically if you install this library.")
 (define-public python2-flask-babel
   (package-with-python2 python-flask-babel))
 
+(define-public python-gunicorn
+  (package
+    (name "python-gunicorn")
+    (version "19.9.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "gunicorn" version))
+              (sha256
+               (base32
+                "1wzlf4xmn6qjirh5w81l6i6kqjnab1n1qqkh7zsj1yb6gh4n49ps"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(;; XXX: check requirements_test.txt to see whether these special
+       ;; versions are still needed when updating.
+       ("python-coverage" ,python-coverage-4.3)
+       ("python-pytest" ,python-pytest-3.2)
+       ("python-pytest-cov" ,python-pytest-cov-2.5)))
+    (home-page "https://gunicorn.org/")
+    (synopsis "Python WSGI erver")
+    (description
+     "Gunicorn ('Green Unicorn') is a Python WSGI HTTP Server.  It is a
+pre-fork worker model ported from Ruby's Unicorn project.  The Gunicorn
+server is broadly compatible with various web frameworks, simply implemented,
+light on server resource usage, and fairly speedy.")
+    (license license:expat)))
+
 (define-public python-html5lib
   (package
     (name "python-html5lib")
-- 
2.22.1

^ permalink raw reply related	[relevance 60%]

* [bug#37234] [PATCH 14/21] gnu: Add python-jsondiff.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (4 preceding siblings ...)
  2019-08-30 14:25 63%   ` [bug#37234] [PATCH 13/21] gnu: Add python-aws-xray-sdk Marius Bakke
@ 2019-08-30 14:25 70%   ` Marius Bakke
  2019-08-30 14:25 67%   ` [bug#37234] [PATCH 15/21] gnu: Add python-jose Marius Bakke
                     ` (2 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a169279fcc..6695bd5e39 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -389,6 +389,27 @@ Swartz.")
 (define-public python2-html2text
   (package-with-python2 python-html2text))
 
+(define-public python-jsondiff
+  (package
+    (name "python-jsondiff")
+    (version "1.1.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "jsondiff" version))
+              (sha256
+               (base32
+                "08dfs98xi7ick0mp1bkcvmw66ki3cs25nln7g8xqyjmaxj51663y"))))
+    (build-system python-build-system)
+    (arguments
+     ;; XXX: Tests depend on an unmaintained library called "nose-random".
+     `(#:tests? #f))
+    (home-page "https://github.com/xlwings/jsondiff")
+    (synopsis "Diff JSON and JSON-like structures in Python")
+    (description
+     "This package provides facilities for inspecting differences between
+data structures such as JSON, dictionaries, and sets.")
+    (license license:expat)))
+
 (define-public python-jsonpickle
   (package
     (name "python-jsonpickle")
-- 
2.22.1

^ permalink raw reply related	[relevance 70%]

* [bug#37234] [PATCH 17/21] gnu: Add python-aws-sam-translator.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (6 preceding siblings ...)
  2019-08-30 14:25 67%   ` [bug#37234] [PATCH 15/21] gnu: Add python-jose Marius Bakke
@ 2019-08-30 14:25 69%   ` Marius Bakke
  2019-08-30 14:25 68%   ` [bug#37234] [PATCH 18/21] gnu: Add python-cfn-lint Marius Bakke
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/python-web.scm (python-aws-sam-translator): New public variable.
---
 gnu/packages/python-web.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6ae5fd6860..6e7ecacc99 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -176,6 +176,32 @@ The package includes a module with full coverage of JSON RPC versions 1.0 and
 comes with a SOCKS proxy client.")
     (license (list license:expat license:bsd-2))))
 
+(define-public python-aws-sam-translator
+  (package
+    (name "python-aws-sam-translator")
+    (version "1.13.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "aws-sam-translator" version))
+              (sha256
+               (base32
+                "0xin1819l4hdd8cs235ffww8w7k9gbb0k3p1li6nczsjnz13k1mk"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; XXX: Tests are not distributed with the PyPI archive, and would
+       ;; introduce a circular dependency on python-cfn-lint.
+       #:tests? #f))
+    (propagated-inputs
+     `(("python-boto3" ,python-boto3)
+       ("python-jsonschema" ,python-jsonschema)
+       ("python-six" ,python-six)))
+    (home-page "https://github.com/awslabs/serverless-application-model")
+    (synopsis "Transform AWS SAM templates into AWS CloudFormation templates")
+    (description
+     "AWS SAM Translator is a library that transform @dfn{Serverless Application
+Model} (SAM) templates into AWS CloudFormation templates.")
+    (license license:asl2.0)))
+
 (define-public python-aws-xray-sdk
   (package
     (name "python-aws-xray-sdk")
-- 
2.22.1

^ permalink raw reply related	[relevance 69%]

* [bug#37234] [PATCH 18/21] gnu: Add python-cfn-lint.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (7 preceding siblings ...)
  2019-08-30 14:25 69%   ` [bug#37234] [PATCH 17/21] gnu: Add python-aws-sam-translator Marius Bakke
@ 2019-08-30 14:25 68%   ` Marius Bakke
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/python-web.scm (python-cfn-lint): New public variable.
---
 gnu/packages/python-web.scm | 40 +++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6e7ecacc99..b6f1f208ad 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -266,6 +266,46 @@ Model} (SAM) templates into AWS CloudFormation templates.")
 emit information from within their applications to the AWS X-Ray service.")
     (license license:asl2.0)))
 
+(define-public python-cfn-lint
+  (package
+    (name "python-cfn-lint")
+    (version "0.23.3")
+    (home-page "https://github.com/aws-cloudformation/cfn-python-lint")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1bf40lvhggf2x0n85sprkhzk9cgnxng5hhpazy4gipia1p7gv25x"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "python" "-m" "unittest" "discover"
+                              "-s" "test"))))))
+    (native-inputs
+     `(("python-mock" ,python-mock)))
+    (propagated-inputs
+     `(("python-aws-sam-translator" ,python-aws-sam-translator)
+       ("python-jsonpatch" ,python-jsonpatch)
+       ("python-jsonpointer" ,python-jsonpointer)
+       ("python-jsonschema" ,python-jsonschema)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-six" ,python-six)))
+    (synopsis "Validate CloudFormation templates")
+    (description
+     "This package lets you validate CloudFormation YAML/JSON templates against
+the CloudFormation spec and additional checks.  Includes checking valid values
+for resource properties and best practices.")
+    (license license:expat)))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.22.1

^ permalink raw reply related	[relevance 68%]

* [bug#37234] [PATCH 13/21] gnu: Add python-aws-xray-sdk.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (3 preceding siblings ...)
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 11/21] gnu: Add python-jsonpickle Marius Bakke
@ 2019-08-30 14:25 63%   ` Marius Bakke
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 14/21] gnu: Add python-jsondiff Marius Bakke
                     ` (3 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/python-web.scm (python-aws-xray-sdk): New public variable.
---
 gnu/packages/python-web.scm | 64 +++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d5b0c26f46..a169279fcc 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -176,6 +176,70 @@ The package includes a module with full coverage of JSON RPC versions 1.0 and
 comes with a SOCKS proxy client.")
     (license (list license:expat license:bsd-2))))
 
+(define-public python-aws-xray-sdk
+  (package
+    (name "python-aws-xray-sdk")
+    (version "2.4.2")
+    (home-page "https://github.com/aws/aws-xray-sdk-python")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url home-page) (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0a4b3lay728rb43aklwi99yimn44bgjhsgd6hbqrabpbdizh2xpr"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'disable-tests
+                    (lambda _
+                      (for-each delete-file
+                                '(;; These tests require packages not yet in Guix.
+                                  "tests/ext/aiobotocore/test_aiobotocore.py"
+                                  "tests/ext/pg8000/test_pg8000.py"
+                                  "tests/ext/pynamodb/test_pynamodb.py"
+                                  "tests/ext/psycopg2/test_psycopg2.py"
+                                  "tests/ext/aiohttp/test_middleware.py"
+                                  "tests/test_async_recorder.py"
+
+                                  ;; FIXME: Why is this failing?
+                                  "tests/test_patcher.py"
+
+                                  ;; TODO: How to configure Django for these tests.
+                                  "tests/ext/django/test_db.py"
+                                  "tests/ext/django/test_middleware.py"
+
+                                  ;; These tests want to access httpbin.org.
+                                  "tests/ext/requests/test_requests.py"
+                                  "tests/ext/httplib/test_httplib.py"
+                                  "tests/ext/aiohttp/test_client.py"))))
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:.:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-vv" "tests"))))))
+    (native-inputs
+     `(;; These are required for the test suite.
+       ("python-flask" ,python-flask)
+       ("python-flask-sqlalchemy" ,python-flask-sqlalchemy)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-aiohttp" ,python-pytest-aiohttp)
+       ("python-requests" ,python-requests)
+       ("python-sqlalchemy" ,python-sqlalchemy)))
+    (propagated-inputs
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-botocore" ,python-botocore)
+       ("python-future" ,python-future)
+       ("python-jsonpickle" ,python-jsonpickle)
+       ("python-urllib3" ,python-urllib3)
+       ("python-wrapt" ,python-wrapt)))
+    (synopsis "Profile applications on AWS X-Ray")
+    (description
+     "The AWS X-Ray SDK for Python enables Python developers to record and
+emit information from within their applications to the AWS X-Ray service.")
+    (license license:asl2.0)))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.22.1

^ permalink raw reply related	[relevance 63%]

* [bug#37234] [PATCH 04/21] gnu: Add python-querystring-parser.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
  2019-08-30 14:25 68%   ` [bug#37234] [PATCH 02/21] gnu: Add python-databricks-cli Marius Bakke
@ 2019-08-30 14:25 70%   ` Marius Bakke
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 05/21] gnu: Add python-minio Marius Bakke
                     ` (6 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

* gnu/packages/python-web.scm (python-querystring-parser): New public variable.
---
 gnu/packages/python-web.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8d11e9890f..9966f66d8f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -825,6 +825,37 @@ teams extension for python-openid.")
 (define-public python2-openid-teams
   (package-with-python2 python-openid-teams))
 
+(define-public python-querystring-parser
+  (package
+    (name "python-querystring-parser")
+    (version "1.2.4")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "querystring_parser" version))
+              (sha256
+               (base32
+                "0qlar8a0wa003hm2z6wcpb625r6vjj0a70rsni9h8lz0zwfcwkv4"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      ;; XXX FIXME: This test is broken with Python 3.7:
+                      ;; https://github.com/bernii/querystring-parser/issues/35
+                      (substitute* "querystring_parser/tests.py"
+                        (("self\\.assertEqual\\(self\\.knownValuesNormalized, result\\)")
+                         "True"))
+                      (invoke "python" "querystring_parser/tests.py"))))))
+    (propagated-inputs
+     `(("python-six" ,python-six)))
+    (home-page "https://github.com/bernii/querystring-parser")
+    (synopsis "QueryString parser that correctly handles nested dictionaries")
+    (description
+     "This package provides a query string parser for Python and Django
+projects that correctly creates nested dictionaries from sent form/querystring
+data.")
+    (license license:expat)))
+
 (define-public python-tornado
   (package
     (name "python-tornado")
-- 
2.22.1

^ permalink raw reply related	[relevance 70%]

* [bug#37234] [PATCH 15/21] gnu: Add python-jose.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (5 preceding siblings ...)
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 14/21] gnu: Add python-jsondiff Marius Bakke
@ 2019-08-30 14:25 67%   ` Marius Bakke
  2019-08-30 14:25 69%   ` [bug#37234] [PATCH 17/21] gnu: Add python-aws-sam-translator Marius Bakke
  2019-08-30 14:25 68%   ` [bug#37234] [PATCH 18/21] gnu: Add python-cfn-lint Marius Bakke
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6695bd5e39..6ae5fd6860 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -389,6 +389,48 @@ Swartz.")
 (define-public python2-html2text
   (package-with-python2 python-html2text))
 
+(define-public python-jose
+  (package
+    (name "python-jose")
+    (version "3.0.1")
+    (home-page "http://github.com/mpdavis/python-jose")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url home-page) (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1ahq4m86z504bnlk9z473r7r3dprg5m39900rld797hbczdhqa4f"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest" "-vv" "-m"
+                     ;; Test only the pyca/cryptography backend.
+                     "not (pycryptodome or pycrypto or backend_compatibility)"))))))
+    (native-inputs
+     `(;; All native inputs are for tests.
+       ("python-ecdsa" ,python-ecdsa)
+       ("python-pyasn1" ,python-pyasn1)
+       ("python-pycrypto" ,python-pycrypto)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-runner" ,python-pytest-runner)))
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)
+       ("python-future" ,python-future) ;XXX: remove for >3.0.1
+       ("python-rsa" ,python-rsa)
+       ("python-six" ,python-six)))
+    (synopsis "JOSE implementation in Python")
+    (description
+     "The @dfn{JavaScript Object Signing and Encryption} (JOSE) technologies
+- JSON Web Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), and
+JSON Web Algorithms (JWA) - collectively can be used to encrypt and/or sign
+content using a variety of algorithms.")
+    (license license:expat)))
+
 (define-public python-jsondiff
   (package
     (name "python-jsondiff")
-- 
2.22.1

^ permalink raw reply related	[relevance 67%]

* [bug#37234] [PATCH 11/21] gnu: Add python-jsonpickle.
  2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
                     ` (2 preceding siblings ...)
  2019-08-30 14:25 70%   ` [bug#37234] [PATCH 05/21] gnu: Add python-minio Marius Bakke
@ 2019-08-30 14:25 70%   ` Marius Bakke
  2019-08-30 14:25 63%   ` [bug#37234] [PATCH 13/21] gnu: Add python-aws-xray-sdk Marius Bakke
                     ` (4 subsequent siblings)
  8 siblings, 0 replies; 200+ results
From: Marius Bakke @ 2019-08-30 14:25 UTC (permalink / raw)
  To: 37234

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7454fe8793..d5b0c26f46 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -325,6 +325,37 @@ Swartz.")
 (define-public python2-html2text
   (package-with-python2 python-html2text))
 
+(define-public python-jsonpickle
+  (package
+    (name "python-jsonpickle")
+    (version "1.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "jsonpickle" version))
+              (sha256
+               (base32
+                "16xj4r31pnd90slax5mmd5wps5s73wp9mn6sy9nhkl5ih7bj5sfk"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-vv"))))))
+    (native-inputs
+     `(;; For tests.
+       ("python-numpy" ,python-numpy)
+       ("python-pandas" ,python-pandas)
+       ("python-pytest" ,python-pytest)))
+    (home-page "https://jsonpickle.github.io/")
+    (synopsis "Serialize object graphs into JSON")
+    (description
+     "This package provides a Python library for serializing any arbitrary
+object graph to and from JSON.")
+    (license license:bsd-3)))
+
 (define-public python-mechanicalsoup
   (package
     (name "python-mechanicalsoup")
-- 
2.22.1

^ permalink raw reply related	[relevance 70%]

* [bug#37535] [PATCH] gnu: Add python-flask-cors.
@ 2019-09-27 22:16 70% Hamzeh Nasajpour
  0 siblings, 0 replies; 200+ results
From: Hamzeh Nasajpour @ 2019-09-27 22:16 UTC (permalink / raw)
  To: 37535

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e37ae94e18..276ed0f01f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2146,6 +2146,27 @@ SlimIt also provides a library that includes a JavaScript parser, lexer,
 pretty printer and a tree visitor.")
     (license license:expat)))
 
+(define-public python-flask-cors
+  (package
+  (name "python-flask-cors")
+    (version "3.0.7")
+    (source (origin
+      (method url-fetch)
+      (uri (pypi-uri "Flask-Cors" version))
+      (sha256 (base32 "1v6gq4vjgyxi8q8lxawpdfhq01adb4bznnabp08ks5nzbwibz43y"))))
+    (build-system python-build-system)
+    (arguments
+      `(#:tests? #f))
+    (propagated-inputs
+      `(("python-six" ,python-six)
+        ("python-flask" ,python-flask)))
+    (home-page "https://github.com/corydolphin/flask-cors")
+    (synopsis "A Flask extension adding a decorator for CORS support")
+    (description
+     "A Flask extension for handling Cross Origin Resource Sharing (CORS), 
+making cross-origin AJAX possible.")
+    (license license:expat)))
+
 (define-public python-flask-restful
   (package
     (name "python-flask-restful")
-- 
2.23.0

^ permalink raw reply related	[relevance 70%]

* [bug#37613] [PATCH 1/1] gnu: Add python-httpie.
  @ 2019-10-04  6:57 69% ` Tanguy Le Carrour
  2019-10-14 11:43 67% ` [bug#37613] [PATCH] " Tanguy Le Carrour
  1 sibling, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-04  6:57 UTC (permalink / raw)
  To: 37613

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



[-- Attachment #2: Type: text/plain, Size: 1820 bytes --]

From 8a60be6eb9ee4e17dc4fbc19ada22c7993841b26 Mon Sep 17 00:00:00 2001
From: "tanguy@bioneland.org" <tanguy@bioneland.org>
Date: Fri, 4 Oct 2019 08:44:59 +0200
Subject: [PATCH] gnu: Add python-httpie.

---
 gnu/packages/python-web.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e37ae94e18..b7d3b0aa73 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -303,6 +304,32 @@ other HTTP libraries.")
 (define-public python2-httplib2
   (package-with-python2 python-httplib2))
 
+(define-public python-httpie
+  (package
+    (name "python-httpie")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "httpie" version))
+       (sha256
+        (base32
+         "103fcigpxf4nqmrdqjnyz7d9n4n16906slwmmqqc0gkxv8hnw6vd"))))
+    (build-system python-build-system)
+    (arguments
+     ;; The tests attempt to access external web servers, so we cannot run them.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("python-colorama" ,python-colorama)
+       ("python-pygments" ,python-pygments)
+       ("python-requests" ,python-requests)))
+    (home-page "http://httpie.org/")
+    (synopsis
+     "HTTPie - a CLI, cURL-like tool for humans")
+    (description
+     "HTTPie - a CLI, cURL-like tool for humans.")
+    (license license:bsd-3)))
+
 (define-public python-html2text
   (package
     (name "python-html2text")
-- 
2.23.0


^ permalink raw reply related	[relevance 69%]

* [bug#37617] [PATCH 3/6] gnu: Add python-cssselect2.
    2019-10-04 11:08 65% ` [bug#37617] [PATCH 2/6] gnu: Add python-tinycss2 Hartmut Goebel
@ 2019-10-04 11:08 69% ` Hartmut Goebel
  1 sibling, 0 replies; 200+ results
From: Hartmut Goebel @ 2019-10-04 11:08 UTC (permalink / raw)
  To: 37617

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 576b75175d..0946a298a9 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3309,3 +3309,36 @@ grammar of CSS but doesn’t know specific rules, properties or values supported
 in various CSS modules.")
     (license license:bsd-3)))
 
+(define-public python-cssselect2
+  (package
+    (name "python-cssselect2")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "cssselect2" version))
+       (sha256
+        (base32 "0skymzb4ncrm2zdsy80f53vi0arf776lvbp51hzh4ayp1il5lj3h"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _ (invoke "pytest"))))))
+    (propagated-inputs
+     `(("python-tinycss2" ,python-tinycss2)))
+    (native-inputs
+     `(("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-flake8" ,python-pytest-flake8)
+       ("python-pytest-isort" ,python-pytest-isort)
+       ("python-pytest-runner" ,python-pytest-runner)))
+    (home-page "https://cssselect2.readthedocs.io/")
+    (synopsis "CSS selectors for Python ElementTree")
+    (description "@code{cssselect2} is a straightforward implementation of
+CSS3 Selectors for markup documents (HTML, XML, etc.) that can be read by
+ElementTree-like parsers (including cElementTree, lxml, html5lib, etc.).
+
+Unlike the Python package @code{cssselect}, it does not translate selectors to
+XPath and therefore does not have all the correctness corner cases that are
+hard or impossible to fix in cssselect.")
+    (license license:bsd-3)))
-- 
2.21.0

^ permalink raw reply related	[relevance 69%]

* [bug#37617] [PATCH 2/6] gnu: Add python-tinycss2.
  @ 2019-10-04 11:08 65% ` Hartmut Goebel
  2019-10-04 11:08 69% ` [bug#37617] [PATCH 3/6] gnu: Add python-cssselect2 Hartmut Goebel
  1 sibling, 0 replies; 200+ results
From: Hartmut Goebel @ 2019-10-04 11:08 UTC (permalink / raw)
  To: 37617

* gnu/packages/python-web.scm (python-tinycss2): New variable.
---
 gnu/packages/python-web.scm | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e37ae94e18..576b75175d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2015, 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2016, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2015, 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2015, 2016 Christopher Allan Webber <cwebber@dustycloud.org>
@@ -62,6 +62,7 @@
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sphinx)
@@ -3275,3 +3276,36 @@ library to create slugs from unicode strings while keeping it DRY.")
     (description "Generate complex HTML+JS pages with Python")
     (license license:expat)))
 
+(define-public python-tinycss2
+  (package
+    (name "python-tinycss2")
+    (version "1.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "tinycss2" version))
+       (sha256
+        (base32 "1kw84y09lggji4krkc58jyhsfj31w8npwhznr7lf19d0zbix09v4"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _ (invoke "pytest"))))))
+    (propagated-inputs
+     `(("python-webencodings" ,python-webencodings)))
+    (native-inputs
+     `(("python-pytest-flake8" ,python-pytest-flake8)
+       ("python-pytest-isort" ,python-pytest-isort)
+       ("python-pytest-runner" ,python-pytest-runner)))
+    (home-page "https://tinycss2.readthedocs.io/")
+    (synopsis "Low-level CSS parser for Python")
+    (description "@code{tinycss2} can parse strings, return Python objects
+representing tokens and blocks, and generate CSS strings corresponding to
+these objects.
+
+Based on the CSS Syntax Level 3 specification, @code{tinycss2} knows the
+grammar of CSS but doesn’t know specific rules, properties or values supported
+in various CSS modules.")
+    (license license:bsd-3)))
+
-- 
2.21.0

^ permalink raw reply related	[relevance 65%]

* [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5.
  @ 2019-10-11 16:41 69% ` Tanguy Le Carrour
  2019-10-14 15:19 69% ` Tanguy Le Carrour
  1 sibling, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-11 16:41 UTC (permalink / raw)
  To: 37704

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



[-- Attachment #2: Type: text/plain, Size: 2061 bytes --]

From e1a304525bf27718f0dea75486f844d34b3f0aaa Mon Sep 17 00:00:00 2001
From: Tanguy Le Carrour <tanguy@bioneland.org>
Date: Wed, 9 Oct 2019 10:30:26 +0200
Subject: [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5.

---
 gnu/packages/python-web.scm | 23 +++++------------------
 1 file changed, 5 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index ffef3319f7..5d67f21330 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1987,7 +1987,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
 (define-public python-cachecontrol
   (package
     (name "python-cachecontrol")
-    (version "0.11.6")
+    (version "0.12.5")
     (source
      (origin
        (method git-fetch)
@@ -1998,25 +1998,12 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "0pb16bzbkk99nh317xyfk8fxc2ngimsbz7lz9pxsw8c82n83d4dh"))))
+         "03lgc65sl04n0cgzmmgg99bk83f9i6k8yrmcd4hpl46q1pymn0kz"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             ;; Drop test that requires internet access.
-             (delete-file "tests/test_regressions.py")
-             (setenv "PYTHONPATH"
-                     (string-append (getcwd) "/build/lib:"
-                                    (getenv "PYTHONPATH")))
-             (invoke "py.test" "-vv")
-             #t)))))
-    (native-inputs
-     `(("python-pytest" ,python-pytest)
-       ("python-redis" ,python-redis)
-       ("python-webtest" ,python-webtest)
-       ("python-mock" ,python-mock)))
+     ;; Versions > 0.11.6 depend on CherryPy for testing.
+     ;; It's too much work to package CherryPy for now.
+     `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
        ("python-lockfile" ,python-lockfile)))
-- 
2.23.0


^ permalink raw reply related	[relevance 69%]

* [bug#37613] [PATCH] gnu: Add python-httpie.
    2019-10-04  6:57 69% ` [bug#37613] [PATCH 1/1] " Tanguy Le Carrour
@ 2019-10-14 11:43 67% ` Tanguy Le Carrour
  1 sibling, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-14 11:43 UTC (permalink / raw)
  To: 37613

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



[-- Attachment #2: Type: text/plain, Size: 2175 bytes --]

From 13062545e9df7f9cab728f6ee17b572a88a11e31 Mon Sep 17 00:00:00 2001
From: Tanguy Le Carrour <tanguy@bioneland.org>
Date: Fri, 4 Oct 2019 08:44:59 +0200
Subject: [PATCH] gnu: Add python-httpie.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* gnu/packages/python-web.scm (python-httpie): New public 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 ffef3319f7..b980b83a70 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -303,6 +304,34 @@ other HTTP libraries.")
 (define-public python2-httplib2
   (package-with-python2 python-httplib2))
 
+(define-public python-httpie
+  (package
+    (name "python-httpie")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "httpie" version))
+       (sha256
+        (base32
+         "103fcigpxf4nqmrdqjnyz7d9n4n16906slwmmqqc0gkxv8hnw6vd"))))
+    (build-system python-build-system)
+    (arguments
+     ;; The tests attempt to access external web servers, so we cannot run them.
+     '(#:tests? #f))
+    (propagated-inputs
+     `(("python-colorama" ,python-colorama)
+       ("python-pygments" ,python-pygments)
+       ("python-requests" ,python-requests)))
+    (home-page "https://httpie.org/")
+    (synopsis "cURL-like tool for humans")
+    (description
+     "A command line HTTP client with an intuitive UI, JSON support,
+syntax highlighting, wget-like downloads, plugins, and more.  It consists of
+a single http command designed for painless debugging and interaction with
+HTTP servers, RESTful APIs, and web services.")
+    (license license:bsd-3)))
+
 (define-public python-html2text
   (package
     (name "python-html2text")
-- 
2.23.0


^ permalink raw reply related	[relevance 67%]

* [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5.
    2019-10-11 16:41 69% ` [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5 Tanguy Le Carrour
@ 2019-10-14 15:19 69% ` Tanguy Le Carrour
  1 sibling, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-14 15:19 UTC (permalink / raw)
  To: 37704

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



[-- Attachment #2: Type: text/plain, Size: 2132 bytes --]

From 79676f293533f038edc9b563b23279ea2048a2fa Mon Sep 17 00:00:00 2001
From: Tanguy Le Carrour <tanguy@bioneland.org>
Date: Wed, 9 Oct 2019 10:30:26 +0200
Subject: [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5.

* gnu/packages/python-web.scm (python-cachecontrol): Update to 0.12.5.
---
 gnu/packages/python-web.scm | 23 +++++------------------
 1 file changed, 5 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index ffef3319f7..5d67f21330 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1987,7 +1987,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
 (define-public python-cachecontrol
   (package
     (name "python-cachecontrol")
-    (version "0.11.6")
+    (version "0.12.5")
     (source
      (origin
        (method git-fetch)
@@ -1998,25 +1998,12 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "0pb16bzbkk99nh317xyfk8fxc2ngimsbz7lz9pxsw8c82n83d4dh"))))
+         "03lgc65sl04n0cgzmmgg99bk83f9i6k8yrmcd4hpl46q1pymn0kz"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             ;; Drop test that requires internet access.
-             (delete-file "tests/test_regressions.py")
-             (setenv "PYTHONPATH"
-                     (string-append (getcwd) "/build/lib:"
-                                    (getenv "PYTHONPATH")))
-             (invoke "py.test" "-vv")
-             #t)))))
-    (native-inputs
-     `(("python-pytest" ,python-pytest)
-       ("python-redis" ,python-redis)
-       ("python-webtest" ,python-webtest)
-       ("python-mock" ,python-mock)))
+     ;; Versions > 0.11.6 depend on CherryPy for testing.
+     ;; It's too much work to package CherryPy for now.
+     `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
        ("python-lockfile" ,python-lockfile)))
-- 
2.23.0


^ permalink raw reply related	[relevance 69%]

* [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5.
  @ 2019-10-28  9:46 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-28  9:46 UTC (permalink / raw)
  To: 37704; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-cachecontrol): Update to 0.12.5.
---
 gnu/packages/python-web.scm | 23 +++++------------------
 1 file changed, 5 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b79b10d51e..eb25bd0ade 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2013,7 +2013,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
 (define-public python-cachecontrol
   (package
     (name "python-cachecontrol")
-    (version "0.11.6")
+    (version "0.12.5")
     (source
      (origin
        (method git-fetch)
@@ -2024,25 +2024,12 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "0pb16bzbkk99nh317xyfk8fxc2ngimsbz7lz9pxsw8c82n83d4dh"))))
+         "03lgc65sl04n0cgzmmgg99bk83f9i6k8yrmcd4hpl46q1pymn0kz"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             ;; Drop test that requires internet access.
-             (delete-file "tests/test_regressions.py")
-             (setenv "PYTHONPATH"
-                     (string-append (getcwd) "/build/lib:"
-                                    (getenv "PYTHONPATH")))
-             (invoke "py.test" "-vv")
-             #t)))))
-    (native-inputs
-     `(("python-pytest" ,python-pytest)
-       ("python-redis" ,python-redis)
-       ("python-webtest" ,python-webtest)
-       ("python-mock" ,python-mock)))
+     ;; Versions > 0.11.6 depend on CherryPy for testing.
+     ;; It's too much work to package CherryPy for now.
+     `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
        ("python-lockfile" ,python-lockfile)))
-- 
2.23.0

^ permalink raw reply related	[relevance 70%]

* [bug#37704] [PATCH v4 8/9] gnu: python-cachecontrol: Update to 0.12.5.
  @ 2019-10-28 14:41 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2019-10-28 14:41 UTC (permalink / raw)
  To: 37704; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-cachecontrol): Update to 0.12.5.
---
 gnu/packages/python-web.scm | 23 +++++------------------
 1 file changed, 5 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b79b10d51e..eb25bd0ade 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2013,7 +2013,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
 (define-public python-cachecontrol
   (package
     (name "python-cachecontrol")
-    (version "0.11.6")
+    (version "0.12.5")
     (source
      (origin
        (method git-fetch)
@@ -2024,25 +2024,12 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "0pb16bzbkk99nh317xyfk8fxc2ngimsbz7lz9pxsw8c82n83d4dh"))))
+         "03lgc65sl04n0cgzmmgg99bk83f9i6k8yrmcd4hpl46q1pymn0kz"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             ;; Drop test that requires internet access.
-             (delete-file "tests/test_regressions.py")
-             (setenv "PYTHONPATH"
-                     (string-append (getcwd) "/build/lib:"
-                                    (getenv "PYTHONPATH")))
-             (invoke "py.test" "-vv")
-             #t)))))
-    (native-inputs
-     `(("python-pytest" ,python-pytest)
-       ("python-redis" ,python-redis)
-       ("python-webtest" ,python-webtest)
-       ("python-mock" ,python-mock)))
+     ;; Versions > 0.11.6 depend on CherryPy for testing.
+     ;; It's too much work to package CherryPy for now.
+     `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
        ("python-lockfile" ,python-lockfile)))
-- 
2.23.0

^ permalink raw reply related	[relevance 70%]

* [bug#38251] [PATCH 1/1] gnu: Add gunicorn.
@ 2019-11-17 22:03 81% Hartmut Goebel
  0 siblings, 0 replies; 200+ results
From: Hartmut Goebel @ 2019-11-17 22:03 UTC (permalink / raw)
  To: 38251

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index eb25bd0ade..1632d7ade5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -54,6 +54,7 @@
   #:use-module (guix build-system python)
   #:use-module (guix utils)
   #:use-module (gnu packages)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
@@ -67,6 +68,7 @@
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sphinx)
+  #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages time)
   #:use-module (gnu packages web)
@@ -3354,3 +3356,68 @@ Unlike the Python package @code{cssselect}, it does not translate selectors to
 XPath and therefore does not have all the correctness corner cases that are
 hard or impossible to fix in cssselect.")
     (license license:bsd-3)))
+
+(define-public gunicorn
+  (package
+    (name "gunicorn")
+    (version "20.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "gunicorn" version))
+       (sha256
+        (base32
+         "0l1zm8a0vz8ws3lkn8q9a0f93ipdzyvlf2zlwdj5xyadh6jdwsgg"))))
+    (outputs '("out" "doc"))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'build 'build-doc
+           (lambda _
+             (invoke "make" "-C" "docs" "PAPER=a4" "html" "info")
+             (delete-file "docs/build/texinfo/Makefile")
+             (delete-file "docs/build/texinfo/Gunicorn.texi")
+             #t))
+         (replace 'check
+           (lambda _
+             (setenv "PYTHONPATH"
+                     (string-append ".:" (getenv "PYTHONPATH")))
+             ;; Remove test modules failing due to libc not found due to
+             ;; section '.dynamic' not found in libc.so
+             (delete-file "tests/test_arbiter.py")
+             (delete-file "tests/test_config.py")
+             (delete-file "tests/test_sock.py")
+             (invoke "pytest")))
+         (add-after 'install 'install-doc
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((doc (string-append (assoc-ref outputs "doc")
+                                        "/share/doc/" ,name "-" ,version))
+                    (html (string-append doc "/html"))
+                    (info (string-append doc "/info"))
+                    (examples (string-append doc "/examples")))
+               (mkdir-p html)
+               (mkdir-p info)
+               (mkdir-p examples)
+               (copy-recursively "docs/build/html" html)
+               (copy-recursively "docs/build/texinfo" info)
+               (copy-recursively "examples" examples)
+               (for-each (lambda (file)
+                           (copy-file file (string-append doc "/" file)))
+                         '("README.rst" "NOTICE" "LICENSE" "THANKS")))
+             #t)))))
+    (native-inputs
+     `(("binutils" ,binutils)  ;; for ctypes.util.find_library()
+       ("python-aiohttp", python-aiohttp)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-sphinx" ,python-sphinx)
+       ("texinfo" ,texinfo)))
+    (home-page "http://gunicorn.org/")
+    (synopsis "Python WSGI HTTP Server for UNIX")
+    (description "Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP
+Server for UNIX.  It’s a pre-fork worker model ported from Ruby’s
+Unicorn project.  The Gunicorn server is broadly compatible with
+various web frameworks, simply implemented, light on server resources,
+and fairly speedy.")
+  (license license:expat)))
-- 
2.21.0

^ permalink raw reply related	[relevance 81%]

* [bug#38957] [PATCH] gnu: Add python-pywinrm
@ 2020-01-05 20:43 65% Alexandros Theodotou
    0 siblings, 1 reply; 200+ results
From: Alexandros Theodotou @ 2020-01-05 20:43 UTC (permalink / raw)
  To: 38957

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




[-- Attachment #2: 0001-gnu-Add-python-pywinrm.patch --]
[-- Type: text/x-patch, Size: 7324 bytes --]

From 701f416b45990dfc8de2082bec4621479b2041cb Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Sun, 5 Jan 2020 20:39:24 +0000
Subject: [PATCH] gnu: Add python-pywinrm.

* gnu/packages/python-xyz.scm (python-pywinrm): New variable.
* gnu/packages/python-web.scm (python-requests_ntlm): New variable.
* gnu/packages/python-crypto.scm (python-ntlm-auth): New variable.
* gnu/packages/python-crypto.scm (python-kerberos): New variable.
---
 gnu/packages/python-crypto.scm | 56 ++++++++++++++++++++++++++++++++++
 gnu/packages/python-web.scm    | 25 +++++++++++++++
 gnu/packages/python-xyz.scm    | 31 +++++++++++++++++++
 3 files changed, 112 insertions(+)

diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 63d3be17c2..61e1107248 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -21,6 +21,7 @@
 ;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu>
 ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -45,6 +46,7 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages check)
   #:use-module (gnu packages crypto)
+  #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages protobuf)
@@ -1135,3 +1137,57 @@ storing and retrieving sensitive information in your programs.")
 package provides a tool to securely sign firmware images for booting by
 MCUboot.")
     (license license:expat)))
+
+(define-public python-ntlm-auth
+  (package
+    (name "python-ntlm-auth")
+    (version "1.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "ntlm-auth" version))
+       (sha256
+        (base32
+         "16mavidki4ma5ip8srqalr19gz4f5yn3cnmmgps1fmgfr24j63rm"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)))
+    (home-page "https://github.com/jborean93/ntlm-auth")
+    (synopsis
+      "Calculates NTLM Authentication codes")
+    (description
+      "This library handles the low-level details of NTLM authentication for
+use in authenticating with a service that uses NTLM.  It will create and parse
+the 3 different message types in the order required and produce a base64
+encoded value that can be attached to the HTTP header.
+
+The goal of this library is to offer full NTLM support including signing and
+sealing of messages as well as supporting MIC for message integrity and the
+ability to customise and set limits on the messages sent.  Please see Features
+and Backlog for a list of what is and is not currently supported.")
+    (license license:expat)))
+
+(define-public python-kerberos
+  (package
+    (name "python-kerberos")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "kerberos" version))
+       (sha256
+        (base32
+         "19663qxmma0i8bfbjc2iwy5hgq0g4pfb75r023v5dps68zfvffgh"))))
+    (build-system python-build-system)
+    (inputs
+      `(("mit-krb5" ,mit-krb5)))
+    (home-page "https://github.com/apple/ccs-pykerberos")
+    (synopsis
+      "Python Kerberos library used by CalendarServer")
+    (description
+      "This Python package is a high-level wrapper for Kerberos (GSSAPI)
+operations.  The goal is to avoid having to build a module that wraps the
+entire Kerberos.framework, and instead offer a limited set of functions that
+do what is needed for client/server Kerberos authentication based on
+<http://www.ietf.org/rfc/rfc4559.txt>.")
+    (license license:asl2.0)))
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 179e64e0a1..7ea83808f0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3421,3 +3422,27 @@ Unicorn project.  The Gunicorn server is broadly compatible with
 various web frameworks, simply implemented, light on server resources,
 and fairly speedy.")
   (license license:expat)))
+
+(define-public python-requests_ntlm
+  (package
+    (name "python-requests_ntlm")
+    (version "1.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "requests_ntlm" version))
+       (sha256
+        (base32
+         "0wgbqzaq9w7bas16b7brdb75f91bh3275fb459093bk1ihpck2ci"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)
+       ("python-ntlm-auth" ,python-ntlm-auth)
+       ("python-requests" ,python-requests)))
+    (home-page "https://github.com/requests/requests-ntlm")
+    (synopsis
+      "NTLM authentication support for Requests")
+    (description
+      "This package allows for HTTP NTLM authentication using the requests
+library.")
+    (license license:isc)))
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index db43bd72e4..6e301a59ad 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -68,6 +68,7 @@
 ;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -107,6 +108,7 @@
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
@@ -17112,3 +17114,32 @@ scripts to load entry points more quickly.")
 functional combinators.  Parser combinators are just higher-order functions
 that take parsers as their arguments and return them as result values.")
     (license license:expat)))
+
+(define-public python-pywinrm
+  (package
+    (name "python-pywinrm")
+    (version "0.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pywinrm" version))
+       (sha256
+        (base32
+         "10gabhhg3rgacd5ahmi2r128z99fzbrbx6mz1nnq0dxmhmn5rpjf"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-six" ,python-six)
+       ("python-requests_ntlm" ,python-requests_ntlm)
+       ("python-xmltodict" ,python-xmltodict)
+       ("python-kerberos" ,python-kerberos)))
+    (native-inputs
+      `(("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/diyan/pywinrm/")
+    (synopsis
+      "Python library for Windows Remote Management (WinRM)")
+    (description
+      "pywinrm is a Python client for the Windows Remote Management (WinRM)
+service.  It allows you to invoke commands on target Windows machines from
+any machine that can run Python.")
+    (license license:expat)))
-- 
2.24.1


^ permalink raw reply related	[relevance 65%]

* [bug#38957] [PATCH] gnu: Add python-pywinrm
  @ 2020-01-08 15:02 66%   ` Alexandros Theodotou
  0 siblings, 0 replies; 200+ results
From: Alexandros Theodotou @ 2020-01-08 15:02 UTC (permalink / raw)
  To: Brett Gilio; +Cc: 38957

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

Hi Brett,

Thanks for taking a look at this.

On Mon, 2020-01-06 at 03:22 -0600, Brett Gilio wrote:
> Could you please split these package
> definitions into a patch series, rather than as a single patch? This
> is
> preferable for how our Git workflow is utilized so that we can keep
> track of packages individually in the commit log if we ever need to
> go
> back and look at our records.

Attaching the split patches.

Thanks,
Alex

[-- Attachment #2: 0001-gnu-Add-python-kerberos.patch --]
[-- Type: text/x-patch, Size: 2274 bytes --]

From 0a619578c282dd4cf1ccbe14773f3f10287621f5 Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Wed, 8 Jan 2020 14:55:28 +0000
Subject: [PATCH 1/4] gnu: Add python-kerberos.

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

diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 63d3be17c2..a60ee6289d 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -21,6 +21,7 @@
 ;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu>
 ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -45,6 +46,7 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages check)
   #:use-module (gnu packages crypto)
+  #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages protobuf)
@@ -1135,3 +1137,28 @@ storing and retrieving sensitive information in your programs.")
 package provides a tool to securely sign firmware images for booting by
 MCUboot.")
     (license license:expat)))
+
+(define-public python-kerberos
+  (package
+    (name "python-kerberos")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "kerberos" version))
+       (sha256
+        (base32
+         "19663qxmma0i8bfbjc2iwy5hgq0g4pfb75r023v5dps68zfvffgh"))))
+    (build-system python-build-system)
+    (inputs
+      `(("mit-krb5" ,mit-krb5)))
+    (home-page "https://github.com/apple/ccs-pykerberos")
+    (synopsis
+      "Python Kerberos library used by CalendarServer")
+    (description
+      "This Python package is a high-level wrapper for Kerberos (GSSAPI)
+operations.  The goal is to avoid having to build a module that wraps the
+entire Kerberos.framework, and instead offer a limited set of functions that
+do what is needed for client/server Kerberos authentication based on
+<http://www.ietf.org/rfc/rfc4559.txt>.")
+    (license license:asl2.0)))
--
2.24.1


[-- Attachment #3: 0004-gnu-Add-python-pywinrm.patch --]
[-- Type: text/x-patch, Size: 2443 bytes --]

From 8942151b1178fd25625a3f9a9213eba1c9c4646d Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Wed, 8 Jan 2020 14:59:27 +0000
Subject: [PATCH 4/4] gnu: Add python-pywinrm.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index db43bd72e4..6e301a59ad 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -68,6 +68,7 @@
 ;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -107,6 +108,7 @@
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
@@ -17112,3 +17114,32 @@ scripts to load entry points more quickly.")
 functional combinators.  Parser combinators are just higher-order functions
 that take parsers as their arguments and return them as result values.")
     (license license:expat)))
+
+(define-public python-pywinrm
+  (package
+    (name "python-pywinrm")
+    (version "0.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pywinrm" version))
+       (sha256
+        (base32
+         "10gabhhg3rgacd5ahmi2r128z99fzbrbx6mz1nnq0dxmhmn5rpjf"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-six" ,python-six)
+       ("python-requests_ntlm" ,python-requests_ntlm)
+       ("python-xmltodict" ,python-xmltodict)
+       ("python-kerberos" ,python-kerberos)))
+    (native-inputs
+      `(("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/diyan/pywinrm/")
+    (synopsis
+      "Python library for Windows Remote Management (WinRM)")
+    (description
+      "pywinrm is a Python client for the Windows Remote Management (WinRM)
+service.  It allows you to invoke commands on target Windows machines from
+any machine that can run Python.")
+    (license license:expat)))
-- 
2.24.1


[-- Attachment #4: 0003-gnu-Add-python-requests_ntlm.patch --]
[-- Type: text/x-patch, Size: 1875 bytes --]

From dda41af4a8292633a4d38f01c35c8a007c001c59 Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Wed, 8 Jan 2020 14:58:06 +0000
Subject: [PATCH 3/4] gnu: Add python-requests_ntlm.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 179e64e0a1..7ea83808f0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3421,3 +3422,27 @@ Unicorn project.  The Gunicorn server is broadly compatible with
 various web frameworks, simply implemented, light on server resources,
 and fairly speedy.")
   (license license:expat)))
+
+(define-public python-requests_ntlm
+  (package
+    (name "python-requests_ntlm")
+    (version "1.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "requests_ntlm" version))
+       (sha256
+        (base32
+         "0wgbqzaq9w7bas16b7brdb75f91bh3275fb459093bk1ihpck2ci"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)
+       ("python-ntlm-auth" ,python-ntlm-auth)
+       ("python-requests" ,python-requests)))
+    (home-page "https://github.com/requests/requests-ntlm")
+    (synopsis
+      "NTLM authentication support for Requests")
+    (description
+      "This package allows for HTTP NTLM authentication using the requests
+library.")
+    (license license:isc)))
-- 
2.24.1


[-- Attachment #5: 0002-gnu-Add-python-ntlm-auth.patch --]
[-- Type: text/x-patch, Size: 1972 bytes --]

From d89f6bdb5559c60d568749ab864e8503bf2e91f4 Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Wed, 8 Jan 2020 14:56:52 +0000
Subject: [PATCH 2/4] gnu: Add python-ntlm-auth.

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

diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index a60ee6289d..61e1107248 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -1138,6 +1138,35 @@ package provides a tool to securely sign firmware images for booting by
 MCUboot.")
     (license license:expat)))
 
+(define-public python-ntlm-auth
+  (package
+    (name "python-ntlm-auth")
+    (version "1.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "ntlm-auth" version))
+       (sha256
+        (base32
+         "16mavidki4ma5ip8srqalr19gz4f5yn3cnmmgps1fmgfr24j63rm"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)))
+    (home-page "https://github.com/jborean93/ntlm-auth")
+    (synopsis
+      "Calculates NTLM Authentication codes")
+    (description
+      "This library handles the low-level details of NTLM authentication for
+use in authenticating with a service that uses NTLM.  It will create and parse
+the 3 different message types in the order required and produce a base64
+encoded value that can be attached to the HTTP header.
+
+The goal of this library is to offer full NTLM support including signing and
+sealing of messages as well as supporting MIC for message integrity and the
+ability to customise and set limits on the messages sent.  Please see Features
+and Backlog for a list of what is and is not currently supported.")
+    (license license:expat)))
+
 (define-public python-kerberos
   (package
     (name "python-kerberos")
-- 
2.24.1


^ permalink raw reply related	[relevance 66%]

* [bug#39114] [PATCH 2/2] gnu: httpie: Update to 2.0.0.
  @ 2020-01-13 14:41 70% ` Josh Holland
  0 siblings, 0 replies; 200+ results
From: Josh Holland @ 2020-01-13 14:41 UTC (permalink / raw)
  To: 39114; +Cc: Josh Holland

* gnu/packages/python-web.scm (httpie): Update to 2.0.0.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 179e64e0a1..20ed65cf01 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -310,14 +310,14 @@ other HTTP libraries.")
 (define-public httpie
   (package
     (name "httpie")
-    (version "1.0.3")
+    (version "2.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "httpie" version))
        (sha256
         (base32
-         "103fcigpxf4nqmrdqjnyz7d9n4n16906slwmmqqc0gkxv8hnw6vd"))))
+         "02bw20cwv3a1lzrn919dk25dq4v81x6q786zlrqsqzhsdxszj14c"))))
     (build-system python-build-system)
     (arguments
      ;; The tests attempt to access external web servers, so we cannot run them.
-- 
2.24.1

^ permalink raw reply related	[relevance 70%]

* [bug#39128] [PATCH 06/12] gnu: Add python-gitlab.
    2020-01-14  1:57 64%   ` [bug#39128] [PATCH 04/12] gnu: Add python-translation-finder Julien Lepiller
@ 2020-01-14  1:57 70%   ` Julien Lepiller
  1 sibling, 0 replies; 200+ results
From: Julien Lepiller @ 2020-01-14  1:57 UTC (permalink / raw)
  To: 39128

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f1a62d50a0..29bd79b178 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3459,3 +3459,28 @@ and fairly speedy.")
 the source code of a project.  It supports many translation file formats and
 is part of the Weblate translation platform.")
     (license license:gpl3+)))
+
+(define-public python-gitlab
+  (package
+    (name "python-gitlab")
+    (version "1.15.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "python-gitlab" version))
+        (sha256
+         (base32
+          "0zl6kz8v8cg1bcy2r78b2snb0lpw0b573gdx2x1ps0nhsh75l4j5"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-requests" ,python-requests)
+       ("python-six" ,python-six)))
+    (native-inputs
+     `(("python-httmock" ,python-httmock)
+       ("python-mock" ,python-mock)))
+    (home-page
+      "https://github.com/python-gitlab/python-gitlab")
+    (synopsis "Interact with GitLab API")
+    (description "This package provides an extended library for interacting
+with GitLab instances through their API.")
+    (license license:lgpl3+)))
-- 
2.24.0

^ permalink raw reply related	[relevance 70%]

* [bug#39128] [PATCH 04/12] gnu: Add python-translation-finder.
  @ 2020-01-14  1:57 64%   ` Julien Lepiller
  2020-01-14  1:57 70%   ` [bug#39128] [PATCH 06/12] gnu: Add python-gitlab Julien Lepiller
  1 sibling, 0 replies; 200+ results
From: Julien Lepiller @ 2020-01-14  1:57 UTC (permalink / raw)
  To: 39128

* gnu/packages/python-web.scm (python-translation-finder): New variable.
---
 gnu/packages/python-web.scm | 40 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 179e64e0a1..f1a62d50a0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2016, 2017, 2020 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
@@ -67,6 +67,7 @@
   #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls)
@@ -3421,3 +3422,40 @@ Unicorn project.  The Gunicorn server is broadly compatible with
 various web frameworks, simply implemented, light on server resources,
 and fairly speedy.")
   (license license:expat)))
+
+(define-public python-translation-finder
+  (package
+    (name "python-translation-finder")
+    (version "1.7")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "translation-finder" version))
+        (sha256
+         (base32
+          "1pcy9z8gmb8x41gjhw9x0lkr0d2mv5mdxcs2hwg6q8mxs857j589"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'remove-failing-test
+           (lambda _
+             (delete-file "translation_finder/test_api.py")
+             #t)))))
+    (propagated-inputs
+     `(("python-chardet" ,python-chardet)
+       ("python-pathlib2" ,python-pathlib2)
+       ("python-ruamel.yaml" ,python-ruamel.yaml)
+       ("python-six" ,python-six)))
+    (native-inputs
+     `(("python-codecov" ,python-codecov)
+       ("python-codacy-coverage" ,python-codacy-coverage)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-runner" ,python-pytest-runner)
+       ("python-twine" ,python-twine)))
+    (home-page "https://weblate.org/")
+    (synopsis "Translation file finder for Weblate")
+    (description "This package provides a function to find translation file in
+the source code of a project.  It supports many translation file formats and
+is part of the Weblate translation platform.")
+    (license license:gpl3+)))
-- 
2.24.0

^ permalink raw reply related	[relevance 64%]

* [bug#39396] [PATCH] gnu: Add grip.
@ 2020-02-02 19:35 62% Jakub Kądziołka
  2020-02-02 22:51 86% ` [bug#39396] [PATCH v2 1/2] gnu: Add python-path-and-address Jakub Kądziołka
  2020-02-02 22:51 85% ` [bug#39396] [PATCH v2 2/2] gnu: Add grip Jakub Kądziołka
  0 siblings, 2 replies; 200+ results
From: Jakub Kądziołka @ 2020-02-02 19:35 UTC (permalink / raw)
  To: 39396

* gnu/packages/python-web.scm (grip, python-path-and-address): New
  variables.
---
 gnu/packages/python-web.scm | 59 +++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 9464021d82..a6b1e97ba1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3494,3 +3495,61 @@ is part of the Weblate translation platform.")
     (description "This package provides an extended library for interacting
 with GitLab instances through their API.")
     (license license:lgpl3+)))
+
+(define-public python-path-and-address
+  (package
+    (name "python-path-and-address")
+    (version "2.0.1")
+    (source
+     (origin
+       ;; Use git-fetch because pypi-url fails.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/joeyespo/path-and-address")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0b0afpsaim06mv3lhbpm8fmawcraggc11jhzr6h72kdj1cqjk5h6"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/joeyespo/path-and-address")
+    (synopsis "Functions for command-line server tools used by humans")
+    (description "Path-and-address resolves ambiguities of command-line
+interfaces, inferring which argument is the path, and which is the address.")
+    (license license:expat)))
+
+(define-public grip
+  ;; No release by upstream for quite some time, some bugs fixed since. See:
+  ;; https://github.com/joeyespo/grip/issues/304
+  (let ((commit "27a4d6d87ea1d0ea7f7f120de55baabee3de73e3"))
+    (package
+      (name "grip")
+      (version (git-version "4.5.2" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/joeyespo/grip")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "0kx5hgb3q19i4l18a4vqdq9af390xgpk88lp2ay75qi96k0dc68w"))))
+      (build-system python-build-system)
+      (propagated-inputs
+       `(("python-docopt" ,python-docopt)
+         ("python-flask" ,python-flask)
+         ("python-markdown" ,python-markdown)
+         ("python-path-and-address" ,python-path-and-address)
+         ("python-pygments" ,python-pygments)
+         ("python-requests" ,python-requests)))
+      (native-inputs
+       `(("python-responses" ,python-responses)))
+      (home-page "https://github.com/joeyespo/grip")
+      (synopsis "Preview Markdown files using the GitHub API")
+      (description "Grip is a command-line server application written in Python
+that uses the GitHub Markdown API to render a local Markdown file.  The styles
+and rendering come directly from GitHub, so you'll know exactly how it will
+appear.  Changes you make to the file will be instantly reflected in the browser
+without requiring a page refresh.")
+      (license license:expat))))
-- 
2.25.0

^ permalink raw reply related	[relevance 62%]

* [bug#39396] [PATCH v2 1/2] gnu: Add python-path-and-address.
  2020-02-02 19:35 62% [bug#39396] [PATCH] gnu: Add grip Jakub Kądziołka
@ 2020-02-02 22:51 86% ` Jakub Kądziołka
  2020-02-02 22:51 85% ` [bug#39396] [PATCH v2 2/2] gnu: Add grip Jakub Kądziołka
  1 sibling, 0 replies; 200+ results
From: Jakub Kądziołka @ 2020-02-02 22:51 UTC (permalink / raw)
  To: 39396, efraim

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

* gnu/packages/python-web.scm (python-path-and-address): New variable.
---
I believe I have addressed all of your concerns, Efraim. I wouldn't have
thought to check if tests are being ran, nice catch.
[git am will remove this note automatically]
---
 gnu/packages/python-web.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 9464021d82..3e5253489b 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3494,3 +3495,35 @@ is part of the Weblate translation platform.")
     (description "This package provides an extended library for interacting
 with GitLab instances through their API.")
     (license license:lgpl3+)))
+
+(define-public python-path-and-address
+  (package
+    (name "python-path-and-address")
+    (version "2.0.1")
+    (source
+     (origin
+       ;; Use git-fetch because the source distributed on PyPI doesn't include
+       ;; tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/joeyespo/path-and-address")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0b0afpsaim06mv3lhbpm8fmawcraggc11jhzr6h72kdj1cqjk5h6"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "py.test"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/joeyespo/path-and-address")
+    (synopsis "Functions for command-line server tools used by humans")
+    (description "Path-and-address resolves ambiguities of command-line
+interfaces, inferring which argument is the path, and which is the address.")
+    (license license:expat)))
-- 
2.25.0


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

^ permalink raw reply related	[relevance 86%]

* [bug#39396] [PATCH v2 2/2] gnu: Add grip.
  2020-02-02 19:35 62% [bug#39396] [PATCH] gnu: Add grip Jakub Kądziołka
  2020-02-02 22:51 86% ` [bug#39396] [PATCH v2 1/2] gnu: Add python-path-and-address Jakub Kądziołka
@ 2020-02-02 22:51 85% ` Jakub Kądziołka
  1 sibling, 0 replies; 200+ results
From: Jakub Kądziołka @ 2020-02-02 22:51 UTC (permalink / raw)
  To: 39396, efraim

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

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3e5253489b..35c168948c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3527,3 +3527,52 @@ with GitLab instances through their API.")
     (description "Path-and-address resolves ambiguities of command-line
 interfaces, inferring which argument is the path, and which is the address.")
     (license license:expat)))
+
+(define-public grip
+  ;; No release by upstream for quite some time, some bugs fixed since. See:
+  ;; https://github.com/joeyespo/grip/issues/304
+  (let ((commit "27a4d6d87ea1d0ea7f7f120de55baabee3de73e3"))
+    (package
+      (name "grip")
+      (version (git-version "4.5.2" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/joeyespo/grip")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "0kx5hgb3q19i4l18a4vqdq9af390xgpk88lp2ay75qi96k0dc68w"))))
+      (build-system python-build-system)
+      (propagated-inputs
+       `(("python-docopt" ,python-docopt)
+         ("python-flask" ,python-flask)
+         ("python-markdown" ,python-markdown)
+         ("python-path-and-address" ,python-path-and-address)
+         ("python-pygments" ,python-pygments)
+         ("python-requests" ,python-requests)))
+      (native-inputs
+       `(("python-responses" ,python-responses)
+         ("python-pytest" ,python-pytest)))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           ;; Run 'check after 'install so that the grip binary is available.
+           (delete 'check)
+           (add-after 'install 'check
+             (lambda* (#:key inputs outputs #:allow-other-keys)
+               (add-installed-pythonpath inputs outputs)
+               (setenv "PATH" (string-append
+                                (getenv "PATH") ":"
+                                (assoc-ref %outputs "out") "/bin"))
+               (invoke "py.test" "-m" "not assumption"))))))
+      (home-page "https://github.com/joeyespo/grip")
+      (synopsis "Preview Markdown files using the GitHub API")
+      (description "Grip is a command-line server application written in Python
+that uses the GitHub Markdown API to render a local Markdown file.  The styles
+and rendering come directly from GitHub, so you'll know exactly how it will
+appear.  Changes you make to the file will be instantly reflected in the browser
+without requiring a page refresh.")
+      (license license:expat))))
-- 
2.25.0


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

^ permalink raw reply related	[relevance 85%]

* [bug#39792] [PATCH] gnu: awscli: Update to 1.18.6.
@ 2020-02-25 19:28 83% Evan Straw
  2020-02-25 19:56 82% ` [bug#39792] [PATCH v2] " Evan Straw
  0 siblings, 1 reply; 200+ results
From: Evan Straw @ 2020-02-25 19:28 UTC (permalink / raw)
  To: 39792


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.1: [PATCH] gnu: awscli: Update to 1.18.6. --]
[-- Type: text/x-patch, Size: 3548 bytes --]

From 6fb3e294ea4ac9b8bc046e974800b12affd858c3 Mon Sep 17 00:00:00 2001
From: Evan Straw <evan.straw99@gmail.com>
Date: Tue, 25 Feb 2020 11:27:16 -0800
Subject: [PATCH] gnu: awscli: Update to 1.18.6.

* gnu/packages/python-web.scm (awscli): Update to 1.18.6.
---
 gnu/packages/python-web.scm | 72 ++++++++++++++++++-------------------
 1 file changed, 36 insertions(+), 36 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f9981454fb..d3a150ea44 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1600,43 +1600,43 @@ supports url redirection and retries, and also gzip and deflate decoding.")
 
 (define-public awscli
   (package
-   (name "awscli")
-   (version "1.14.41")
-   (source
-    (origin
-     (method url-fetch)
-     (uri (pypi-uri name version))
-     (sha256
-      (base32
-       "0sispclx263lybbk19zp1n9yhg8xxx4jddypzgi24vpjaqnsbwlc"))))
-   (build-system python-build-system)
-   (arguments
-    ;; FIXME: The 'pypi' release does not contain tests.
-    '(#:tests? #f
-      #:phases
-      (modify-phases %standard-phases
-        (add-after 'unpack 'fix-reference-to-groff
-          (lambda _
-            (substitute* "awscli/help.py"
-              (("if not self._exists_on_path\\('groff'\\):") "")
-              (("raise ExecutableNotFoundError\\('groff'\\)") "")
-              (("cmdline = \\['groff'")
-               (string-append "cmdline = ['" (which "groff") "'")))
-            #t)))))
-   (propagated-inputs
-    `(("python-colorama" ,python-colorama)
-      ("python-botocore" ,python-botocore)
-      ("python-s3transfer" ,python-s3transfer)
-      ("python-docutils" ,python-docutils)
-      ("python-pyyaml" ,python-pyyaml)
-      ("python-rsa" ,python-rsa)))
-   (inputs
-    `(("groff" ,groff)))
-   (home-page "https://aws.amazon.com/cli/")
-   (synopsis "Command line client for AWS")
-   (description "AWS CLI provides a unified command line interface to the
+    (name "awscli")
+    (version "1.18.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri name version))
+       (sha256
+        (base32
+         "0p479mfs9r0m82a217pap8156ijwvhv6r3kqa4k267gd05wgvygm"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: The 'pypi' release does not contain tests.
+     '(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-reference-to-groff
+           (lambda _
+             (substitute* "awscli/help.py"
+               (("if not self._exists_on_path\\('groff'\\):") "")
+               (("raise ExecutableNotFoundError\\('groff'\\)") "")
+               (("cmdline = \\['groff'")
+                (string-append "cmdline = ['" (which "groff") "'")))
+             #t)))))
+    (propagated-inputs
+     `(("python-colorama" ,python-colorama)
+       ("python-botocore" ,python-botocore)
+       ("python-s3transfer" ,python-s3transfer)
+       ("python-docutils" ,python-docutils)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-rsa" ,python-rsa)))
+    (native-inputs
+     `(("groff" ,groff)))
+    (home-page "https://aws.amazon.com/cli/")
+    (synopsis "Command line client for AWS")
+    (description "AWS CLI provides a unified command line interface to the
 Amazon Web Services (AWS) API.")
-   (license license:asl2.0)))
+    (license license:asl2.0)))
 
 (define-public python-wsgiproxy2
   (package
-- 
2.20.1


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

^ permalink raw reply related	[relevance 83%]

* [bug#39792] [PATCH v2] gnu: awscli: Update to 1.18.6.
  2020-02-25 19:28 83% [bug#39792] [PATCH] gnu: awscli: Update to 1.18.6 Evan Straw
@ 2020-02-25 19:56 82% ` Evan Straw
  0 siblings, 0 replies; 200+ results
From: Evan Straw @ 2020-02-25 19:56 UTC (permalink / raw)
  To: 39792


[-- Attachment #1.1: Type: text/plain, Size: 92 bytes --]


Sending an update to this patch, forgot to add my name to the copyright
headers.

-- Evan


[-- Attachment #1.2: [PATCH] gnu: awscli: Update to 1.18.6. --]
[-- Type: text/x-patch, Size: 3870 bytes --]

From 61f1f64075771f32d02fe4bfd9967ffddfada53b Mon Sep 17 00:00:00 2001
From: Evan Straw <evan.straw99@gmail.com>
Date: Tue, 25 Feb 2020 11:27:16 -0800
Subject: [PATCH] gnu: awscli: Update to 1.18.6.

* gnu/packages/python-web.scm (awscli): Update to 1.18.6.
---
 gnu/packages/python-web.scm | 73 +++++++++++++++++++------------------
 1 file changed, 37 insertions(+), 36 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f9981454fb..310fec4edf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -32,6 +32,7 @@
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1600,43 +1601,43 @@ supports url redirection and retries, and also gzip and deflate decoding.")
 
 (define-public awscli
   (package
-   (name "awscli")
-   (version "1.14.41")
-   (source
-    (origin
-     (method url-fetch)
-     (uri (pypi-uri name version))
-     (sha256
-      (base32
-       "0sispclx263lybbk19zp1n9yhg8xxx4jddypzgi24vpjaqnsbwlc"))))
-   (build-system python-build-system)
-   (arguments
-    ;; FIXME: The 'pypi' release does not contain tests.
-    '(#:tests? #f
-      #:phases
-      (modify-phases %standard-phases
-        (add-after 'unpack 'fix-reference-to-groff
-          (lambda _
-            (substitute* "awscli/help.py"
-              (("if not self._exists_on_path\\('groff'\\):") "")
-              (("raise ExecutableNotFoundError\\('groff'\\)") "")
-              (("cmdline = \\['groff'")
-               (string-append "cmdline = ['" (which "groff") "'")))
-            #t)))))
-   (propagated-inputs
-    `(("python-colorama" ,python-colorama)
-      ("python-botocore" ,python-botocore)
-      ("python-s3transfer" ,python-s3transfer)
-      ("python-docutils" ,python-docutils)
-      ("python-pyyaml" ,python-pyyaml)
-      ("python-rsa" ,python-rsa)))
-   (inputs
-    `(("groff" ,groff)))
-   (home-page "https://aws.amazon.com/cli/")
-   (synopsis "Command line client for AWS")
-   (description "AWS CLI provides a unified command line interface to the
+    (name "awscli")
+    (version "1.18.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri name version))
+       (sha256
+        (base32
+         "0p479mfs9r0m82a217pap8156ijwvhv6r3kqa4k267gd05wgvygm"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: The 'pypi' release does not contain tests.
+     '(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-reference-to-groff
+           (lambda _
+             (substitute* "awscli/help.py"
+               (("if not self._exists_on_path\\('groff'\\):") "")
+               (("raise ExecutableNotFoundError\\('groff'\\)") "")
+               (("cmdline = \\['groff'")
+                (string-append "cmdline = ['" (which "groff") "'")))
+             #t)))))
+    (propagated-inputs
+     `(("python-colorama" ,python-colorama)
+       ("python-botocore" ,python-botocore)
+       ("python-s3transfer" ,python-s3transfer)
+       ("python-docutils" ,python-docutils)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-rsa" ,python-rsa)))
+    (native-inputs
+     `(("groff" ,groff)))
+    (home-page "https://aws.amazon.com/cli/")
+    (synopsis "Command line client for AWS")
+    (description "AWS CLI provides a unified command line interface to the
 Amazon Web Services (AWS) API.")
-   (license license:asl2.0)))
+    (license license:asl2.0)))
 
 (define-public python-wsgiproxy2
   (package
-- 
2.20.1


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

^ permalink raw reply related	[relevance 82%]

* [bug#39777] [PATCH V2 07/10] gnu: python-cachecontrol: Add missing propagated-input.
  @ 2020-03-08 14:10 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-03-08 14:10 UTC (permalink / raw)
  To: 39777

From: Tanguy Le Carrour <>

* gnu/packages/python-web.scm (python-cachecontrol):
[propagated-inputs]: Add python-msgpack.
---
 gnu/packages/python-web.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d294e43d45..214a98522f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2037,6 +2037,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
      `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
+       ("python-msgpack" ,python-msgpack)
        ("python-lockfile" ,python-lockfile)))
     (home-page "https://github.com/ionrock/cachecontrol")
     (synopsis "The httplib2 caching algorithms for use with requests")
-- 
2.25.1

^ permalink raw reply related	[relevance 70%]

* [bug#39777] [PATCH V3 07/11] gnu: python-cachecontrol: Add missing propagated-input.
  @ 2020-03-09  8:18 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-03-09  8:18 UTC (permalink / raw)
  To: 39777; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-cachecontrol):
[propagated-inputs]: Add python-msgpack.
---
 gnu/packages/python-web.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d294e43d45..214a98522f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2037,6 +2037,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
      `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
+       ("python-msgpack" ,python-msgpack)
        ("python-lockfile" ,python-lockfile)))
     (home-page "https://github.com/ionrock/cachecontrol")
     (synopsis "The httplib2 caching algorithms for use with requests")
-- 
2.25.1

^ permalink raw reply related	[relevance 70%]

* [bug#39777] [PATCH V4 05/10] gnu: python-cachecontrol: Add missing propagated-input.
  @ 2020-03-19 17:30 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-03-19 17:30 UTC (permalink / raw)
  To: 39777; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-cachecontrol):
[propagated-inputs]: Add python-msgpack.
---
 gnu/packages/python-web.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..2cc4bc270f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2036,6 +2036,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
      `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
+       ("python-msgpack" ,python-msgpack)
        ("python-lockfile" ,python-lockfile)))
     (home-page "https://github.com/ionrock/cachecontrol")
     (synopsis "The httplib2 caching algorithms for use with requests")
-- 
2.25.1

^ permalink raw reply related	[relevance 70%]

* [bug#39777] [PATCH V5 05/14] gnu: python-cachecontrol: Add missing propagated-input.
  @ 2020-03-21 11:26 70% ` Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-03-21 11:26 UTC (permalink / raw)
  To: 39777; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-cachecontrol):
[propagated-inputs]: Add python-msgpack.
---
 gnu/packages/python-web.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..2cc4bc270f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2036,6 +2036,7 @@ provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients."
      `(#:tests? #f))
     (propagated-inputs
      `(("python-requests" ,python-requests)
+       ("python-msgpack" ,python-msgpack)
        ("python-lockfile" ,python-lockfile)))
     (home-page "https://github.com/ionrock/cachecontrol")
     (synopsis "The httplib2 caching algorithms for use with requests")
-- 
2.25.2

^ permalink raw reply related	[relevance 70%]

* [bug#40165] Subject: [PATCH] gnu: Add python-flask-markdown.
@ 2020-03-21  8:06 70% pinoaffe
  0 siblings, 0 replies; 200+ results
From: pinoaffe @ 2020-03-21  8:06 UTC (permalink / raw)
  To: 40165


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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..db66f1ed4d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -470,6 +470,36 @@ both of which are installed automatically if you 
install this library.")
  (define-public python2-flask-babel
    (package-with-python2 python-flask-babel))

+(define-public python-flask-markdown
+  (package
+    (name "python-flask-markdown")
+    (version "0.3")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "Flask-Markdown" version))
+        (sha256
+          (base32
+            "0l32ikv4f7va926jlq4f7gx0xid247bhlxl6bd9av5dk8ljz1hyq"))))
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f))
+    (propagated-inputs
+      `(("python-markdown" ,python-markdown)
+        ("python-flask" ,python-flask)))
+    (native-inputs
+      `(("python-nose" ,python-nose)))
+    (home-page
+      "http://github.com/dcolish/flask-markdown")
+    (synopsis
+      "Small extension to make using markdown in flask easy")
+    (description
+      "Small extension to make using markdown in flask easy")
+    (license license:bsd-3)))
+
+(define-public python2-flask-markdown
+  (package-with-python2 python-flask-markdown))
+
  (define-public python-html5lib
    (package
      (name "python-html5lib")
-- 
2.25.1

^ permalink raw reply related	[relevance 70%]

* [bug#38957] [PATCH 3/4] gnu: Add python-requests_ntlm.
  @ 2020-03-22 23:36 70% ` Christopher Baines
  0 siblings, 0 replies; 200+ results
From: Christopher Baines @ 2020-03-22 23:36 UTC (permalink / raw)
  To: 38957

From: Alexandros Theodotou <alex@zrythm.org>

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..6f6b5fd4d3 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -33,6 +33,7 @@
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
+;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1422,6 +1423,30 @@ than Python’s urllib2 library.")
 (define-public python2-requests
   (package-with-python2 python-requests))
 
+(define-public python-requests_ntlm
+  (package
+    (name "python-requests_ntlm")
+    (version "1.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "requests_ntlm" version))
+       (sha256
+        (base32
+         "0wgbqzaq9w7bas16b7brdb75f91bh3275fb459093bk1ihpck2ci"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-cryptography" ,python-cryptography)
+       ("python-ntlm-auth" ,python-ntlm-auth)
+       ("python-requests" ,python-requests)))
+    (home-page "https://github.com/requests/requests-ntlm")
+    (synopsis
+      "NTLM authentication support for Requests")
+    (description
+      "This package allows for HTTP NTLM authentication using the requests
+library.")
+    (license license:isc)))
+
 (define-public python-requests-mock
   (package
     (name "python-requests-mock")
-- 
2.25.1

^ permalink raw reply related	[relevance 70%]

* [bug#40251] [PATCH] Enable tests for python-aiohttp
@ 2020-03-27 13:10 91% Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2020-03-27 13:10 UTC (permalink / raw)
  To: 40251


[-- Attachment #1.1: Type: text/plain, Size: 310 bytes --]

Hi,

this patch-set enables tests for python-aiohttp.

gunicorn 20.0.4 fixes a critical bug that prevents using it on a guix system
and python-pytest-forked is required for the tests. We also need to cut through
a circular dependency (gunicorn<->aiohttp), thus gunicorn-bootstrap is introduced.

Cheers,
Lars


[-- Attachment #1.2: 0001-gnu-gunicorn-Update-to-20.0.4.patch --]
[-- Type: text/x-diff, Size: 1797 bytes --]

From 405d7831be08b7f00643b7b28a88ce60c2ebcd00 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Fri, 27 Mar 2020 13:55:03 +0100
Subject: [PATCH 1/3] gnu: gunicorn: Update to 20.0.4

* gnu/packages/python-web.scm (gunicorn) [version]: Update to 20.0.4
[arguments] Re-enable previously failing tests
---
 gnu/packages/python-web.scm | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 26e2fe04ec..19c08026f2 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3390,14 +3390,14 @@ hard or impossible to fix in cssselect.")
 (define-public gunicorn
   (package
     (name "gunicorn")
-    (version "20.0.0")
+    (version "20.0.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "gunicorn" version))
        (sha256
         (base32
-         "0l1zm8a0vz8ws3lkn8q9a0f93ipdzyvlf2zlwdj5xyadh6jdwsgg"))))
+         "09n6fc019bgrvph1s5h1lwhn2avcsprw6ncd203qhra3i8mvn10r"))))
     (outputs '("out" "doc"))
     (build-system python-build-system)
     (arguments
@@ -3413,11 +3413,6 @@ hard or impossible to fix in cssselect.")
            (lambda _
              (setenv "PYTHONPATH"
                      (string-append ".:" (getenv "PYTHONPATH")))
-             ;; Remove test modules failing due to libc not found due to
-             ;; section '.dynamic' not found in libc.so
-             (delete-file "tests/test_arbiter.py")
-             (delete-file "tests/test_config.py")
-             (delete-file "tests/test_sock.py")
              (invoke "pytest")))
          (add-after 'install 'install-doc
            (lambda* (#:key outputs #:allow-other-keys)
-- 
2.20.1


[-- Attachment #1.3: 0002-gnu-Add-python-pytest-forked.patch --]
[-- Type: text/x-diff, Size: 1563 bytes --]

From 02c51b326e72a501cc00216a34355ce0512ca449 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Fri, 27 Mar 2020 13:57:00 +0100
Subject: [PATCH 2/3] gnu: Add python-pytest-forked

* gnu/packages/check.scm (python-pytest-forked): New variable.
---
 gnu/packages/check.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 1b60b99ce1..ef0d4e3aec 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1025,6 +1025,31 @@ result back.")
 timeout has been exceeded.")
     (license license:expat)))
 
+(define-public python-pytest-forked
+  (package
+    (name "python-pytest-forked")
+    (version "1.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pytest-forked" version))
+       (sha256
+        (base32
+         "000i4q7my2fq4l49n8idx2c812dql97qv6qpm2vhrrn9v6g6j18q"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-pytest" ,python-pytest)))
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm)))
+    (home-page
+     "https://github.com/pytest-dev/pytest-forked")
+    (synopsis
+     "Run tests in isolated forked subprocesses")
+    (description
+     "Pytest plugin which will run each test in a subprocess and will report if
+a test crashed the process.")
+    (license license:expat)))
+
 (define-public python-scripttest
   (package
     (name "python-scripttest")
-- 
2.20.1


[-- Attachment #1.4: 0003-gnu-python-aiohttp-Enable-tests.patch --]
[-- Type: text/x-diff, Size: 5968 bytes --]

From f3bbf527ca17d509a1c755960d0f7fc2c3daf8ea Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Fri, 27 Mar 2020 13:58:11 +0100
Subject: [PATCH 3/3] gnu: python-aiohttp: Enable tests

* gnu/packages/python-web.scm (python-aiohttp) [arguments]: Enable tests
[native-inputs] Add test dependencies [patches] Add test case patch
* gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch: New file
* gnu/local.mk (dist_patch_DATA): Add it
---
 gnu/local.mk                                  |  1 +
 ...python-aiohttp-3.6.2-no-warning-fail.patch | 34 ++++++++++++++++++
 gnu/packages/python-web.scm                   | 36 +++++++++++++++++--
 3 files changed, 69 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 0a406dffa0..dc9db36c69 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1339,6 +1339,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-3.8-search-paths.patch		\
   %D%/packages/patches/python-3.8-fix-tests.patch		\
   %D%/packages/patches/python-CVE-2018-14647.patch		\
+  %D%/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch	\
   %D%/packages/patches/python-alembic-exceptions-cause.patch	\
   %D%/packages/patches/python-axolotl-AES-fix.patch		\
   %D%/packages/patches/python-cairocffi-dlopen-path.patch	\
diff --git a/gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch b/gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch
new file mode 100644
index 0000000000..6cdddefd50
--- /dev/null
+++ b/gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch
@@ -0,0 +1,34 @@
+Do not fail test on runtime warning like: RuntimeWarning: coroutine 'noop2' was
+never awaited. This could be related to
+https://github.com/aio-libs/aiohttp/commit/60f01cca36b9f9d8d35dd351384eaae2f8fd0d4b,
+which does not fix this issue though.
+
+--- a/aiohttp/pytest_plugin.py	2019-10-09 18:52:31.000000000 +0200
++++ b/aiohttp/pytest_plugin.py	2020-03-05 08:35:48.230396025 +0100
+@@ -120,15 +120,6 @@
+     """
+     with warnings.catch_warnings(record=True) as _warnings:
+         yield
+-        rw = ['{w.filename}:{w.lineno}:{w.message}'.format(w=w)
+-              for w in _warnings  # type: ignore
+-              if w.category == RuntimeWarning]
+-        if rw:
+-            raise RuntimeError('{} Runtime Warning{},\n{}'.format(
+-                len(rw),
+-                '' if len(rw) == 1 else 's',
+-                '\n'.join(rw)
+-            ))
+ 
+ 
+ @contextlib.contextmanager
+--- a/tests/test_pytest_plugin.py	2020-03-05 09:26:58.502284893 +0100
++++ a/tests/test_pytest_plugin.py	2020-03-05 09:27:06.074284619 +0100
+@@ -170,7 +170,7 @@
+     expected_outcomes = (
+         {'failed': 0, 'passed': 2}
+         if IS_PYPY and bool(os.environ.get('PYTHONASYNCIODEBUG'))
+-        else {'failed': 1, 'passed': 1}
++        else {'failed': 0, 'passed': 2}
+     )
+     """Under PyPy "coroutine 'foobar' was never awaited" does not happen."""
+     result.assert_outcomes(**expected_outcomes)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 19c08026f2..3686432a1d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -90,10 +90,23 @@
        (uri (pypi-uri "aiohttp" version))
        (sha256
         (base32
-         "09pkw6f1790prnrq0k8cqgnf1qy57ll8lpmc6kld09q7zw4vi6i5"))))
+         "09pkw6f1790prnrq0k8cqgnf1qy57ll8lpmc6kld09q7zw4vi6i5"))
+       (patches (search-patches "python-aiohttp-3.6.2-no-warning-fail.patch"))))
+
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f))                    ;missing pytest-timeout
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-tests
+           (lambda _
+             ;; disable brotli tests, because we’re not providing that optional library
+             (substitute* "tests/test_http_parser.py"
+               (("    async def test_feed_eof_no_err_brotli")
+                "    @pytest.mark.xfail\n    async def test_feed_eof_no_err_brotli"))
+             ;; make sure the timestamp of this file is > 1990, because a few
+             ;; tests like test_static_file_if_modified_since_past_date depend on it
+             (invoke "touch" "-d" "2020-01-01" "tests/data.unknown_mime_type")
+             #t)))))
     (propagated-inputs
      `(("python-aiodns" ,python-aiodns)
        ("python-async-timeout" ,python-async-timeout)
@@ -102,6 +115,15 @@
        ("python-idna-ssl" ,python-idna-ssl)
        ("python-multidict" ,python-multidict)
        ("python-yarl" ,python-yarl)))
+    (native-inputs
+     `(("python-pytest-runner" ,python-pytest-runner)
+       ("python-pytest-xdit" ,python-pytest-xdist)
+       ("python-pytest-timeout" ,python-pytest-timeout)
+       ("python-pytest-forked" ,python-pytest-forked)
+       ("python-pytest-mock" ,python-pytest-mock)
+       ("gunicorn" ,gunicorn-bootstrap)
+       ("python-freezegun" ,python-freezegun)
+       ("python-async-generator" ,python-async-generator)))
     (home-page "https://github.com/aio-libs/aiohttp/")
     (synopsis "Async HTTP client/server framework (asyncio)")
     (description "@code{aiohttp} is an asynchronous HTTP client/server
@@ -3447,6 +3469,16 @@ various web frameworks, simply implemented, light on server resources,
 and fairly speedy.")
   (license license:expat)))
 
+;; break cyclic dependency for python-aiohttp, which depends on gunicorn for
+;; its tests
+(define-public gunicorn-bootstrap
+  (package
+    (inherit gunicorn)
+    (name "gunicorn")
+	(arguments `(#:tests? #f))
+	(properties '((hidden? . #t)))
+    (native-inputs `())))
+
 (define-public python-translation-finder
   (package
     (name "python-translation-finder")
-- 
2.20.1


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

^ permalink raw reply related	[relevance 91%]

* [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown.
@ 2020-03-28  9:33 70% pinoaffe
  2020-03-28  9:36 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
                   ` (2 more replies)
  0 siblings, 3 replies; 200+ results
From: pinoaffe @ 2020-03-28  9:33 UTC (permalink / raw)
  To: 40270


* gnu/packages/python-web.scm (python-flask-markdown, 
python2-flask-markdown): New variables.
---
  gnu/packages/python-web.scm | 30 ++++++++++++++++++++++++++++++
  1 file changed, 30 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..db66f1ed4d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -470,6 +470,36 @@ both of which are installed automatically if you 
install this library.")
  (define-public python2-flask-babel
    (package-with-python2 python-flask-babel))

+(define-public python-flask-markdown
+  (package
+    (name "python-flask-markdown")
+    (version "0.3")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "Flask-Markdown" version))
+        (sha256
+          (base32
+            "0l32ikv4f7va926jlq4f7gx0xid247bhlxl6bd9av5dk8ljz1hyq"))))
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f))
+    (propagated-inputs
+      `(("python-markdown" ,python-markdown)
+        ("python-flask" ,python-flask)))
+    (native-inputs
+      `(("python-nose" ,python-nose)))
+    (home-page
+      "http://github.com/dcolish/flask-markdown")
+    (synopsis
+      "Small extension to make using markdown in flask easy")
+    (description
+      "Small extension to make using markdown in flask easy")
+    (license license:bsd-3)))
+
+(define-public python2-flask-markdown
+  (package-with-python2 python-flask-markdown))
+
  (define-public python-html5lib
    (package
      (name "python-html5lib")
-- 
2.25.2

^ permalink raw reply related	[relevance 70%]

* [bug#40270] [PATCH 2/2] gnu: Add python-flask-session.
  2020-03-28  9:33 70% [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
@ 2020-03-28  9:36 70% ` pinoaffe
  2020-11-22 17:52 70% ` [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
  2020-11-22 19:15 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
  2 siblings, 0 replies; 200+ results
From: pinoaffe @ 2020-03-28  9:36 UTC (permalink / raw)
  To: 40270


* gnu/packages/python-web.scm (python-flask-session, 
python2-flask-session): New variables.
---
  gnu/packages/python-web.scm | 27 +++++++++++++++++++++++++++
  1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index db66f1ed4d..acca981eee 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -500,6 +500,33 @@ both of which are installed automatically if you 
install this library.")
  (define-public python2-flask-markdown
    (package-with-python2 python-flask-markdown))

+(define-public python-flask-session
+  (package
+    (name "python-flask-session")
+    (version "0.3.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "Flask-Session" version))
+        (sha256
+          (base32
+            "0cd7h5c236m6smyixnyfrks4spsqp9d65ndk4p400zr8qgh2f753"))))
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f))
+    (propagated-inputs
+      `(("python-flask" ,python-flask)))
+    (home-page
+      "https://github.com/fengsp/flask-session")
+    (synopsis
+      "Adds server-side session support to your Flask application")
+    (description
+      "Adds server-side session support to your Flask application")
+    (license license:bsd-3)))
+
+(define-public python2-flask-session
+  (package-with-python2 python-flask-session))
+
  (define-public python-html5lib
    (package
      (name "python-html5lib")
-- 
2.25.2

^ permalink raw reply related	[relevance 70%]

* [bug#40846] [PATCH] gnu: Bump python-webob and python-pastedeploy versions
@ 2020-04-25  7:58 99% Holger Peters
  0 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-04-25  7:58 UTC (permalink / raw)
  To: 40846

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

Attached are two patches bumping the version of two python web packages. pastedeploy changed their test runner from nose to pytest so the patch reflects that change.

FYI This is my first contribution to guix, so I advise extra care when applying these patches to be on the safe side :)







[-- Attachment #2: 0002-gnu-python-pastedeploy-Update-to-1.8.3.patch --]
[-- Type: application/octet-stream, Size: 1505 bytes --]

From 1a58918030197dd4f942e78cfe346dc8add67c23 Mon Sep 17 00:00:00 2001
From: Holger Peters <holger.peters@posteo.de>
Date: Fri, 24 Apr 2020 20:38:24 +0200
Subject: [PATCH 2/2] gnu: python-pastedeploy: Update to 1.8.3

* gnu/packages/python-web.scm (python-pastedeploy): Update to 1.7:
  Tests are now run via pytest
---
 gnu/packages/python-web.scm | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2142b6235f..ed37f41c71 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1717,17 +1717,19 @@ and to spawn subprocesses to handle requests.")
 (define-public python-pastedeploy
   (package
     (name "python-pastedeploy")
-    (version "1.5.2")
+    (version "2.1.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "PasteDeploy" version))
        (sha256
-        (base32
-         "1jz3m4hq8v6hyhfjz9425nd3nvn52cvbfipdcd72krjmla4qz1fm"))))
+         (base32
+           "16qsq5y6mryslmbp5pn35x4z8z3ndp5rpgl42h226879nrw9hmg7"))))
     (build-system python-build-system)
+    (arguments '(#:test-target "pytest"))
     (native-inputs
-     `(("python-nose" ,python-nose)))
+      `(("python-pytest-runner" ,python-pytest-runner)
+        ("python-pytest" ,python-pytest)))
     (home-page "https://pylonsproject.org/")
     (synopsis
      "Load, configure, and compose WSGI applications and servers")
-- 
2.26.2


[-- Attachment #3: 0001-gnu-python-webob-Update-to-1.8.3.patch --]
[-- Type: application/octet-stream, Size: 1105 bytes --]

From 5e892cb63c76e7bd2fd8c51da91127536043c333 Mon Sep 17 00:00:00 2001
From: Holger Peters <holger.peters@posteo.de>
Date: Fri, 24 Apr 2020 20:35:18 +0200
Subject: [PATCH 1/2] gnu: python-webob: Update to 1.8.3

* gnu/packages/python-web.scm (python-webob): Update to 1.7.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1d99239dbb..2142b6235f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -968,14 +968,14 @@ your Web app.")
 (define-public python-webob
   (package
     (name "python-webob")
-    (version "1.5.1")
+    (version "1.8.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "WebOb" version))
        (sha256
         (base32
-         "02bhhzijfhv8hmi1i54d4b0v43liwhnywhflvxsv4x3zax9s3afq"))))
+          "1cpqskanmvwia8wqlpcr3ykyxysynjdnbl5namvpg8vw6jnkv1dh"))))
     (build-system python-build-system)
     (native-inputs
       `(("python-nose" ,python-nose)))
-- 
2.26.2


^ permalink raw reply related	[relevance 99%]

* [bug#41027] [PATCH core-updates] gnu: python-s3transfer: Fix build with Python 3.8.
@ 2020-05-02 14:44 70% Christopher Baines
  0 siblings, 0 replies; 200+ results
From: Christopher Baines @ 2020-05-02 14:44 UTC (permalink / raw)
  To: 41027

* gnu/packages/python-web.scm (python-s3transfer)[arguments]: Add a 'patch
phase to fix a test to work under Python 3.8.
---
 gnu/packages/python-web.scm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 27749246d8..56887ef9d4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2204,6 +2204,15 @@ Betamax.")
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda _
+             ;; There's a small issue with one test with Python 3.8, this
+             ;; change has been suggested upstream:
+             ;; https://github.com/boto/s3transfer/pull/164
+             (substitute* "tests/unit/test_s3transfer.py"
+               (("super\\(FailedDownloadParts, self\\)\\.submit\\(function\\)")
+                "futures.Future()"))
+             #t))
          (replace 'check
            (lambda _
              ;; Some of the 'integration' tests require network access or
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41153] [PATCH] Added python-vf-1
@ 2020-05-09 15:52 70% Ron Nazarov
  0 siblings, 0 replies; 200+ results
From: Ron Nazarov @ 2020-05-09 15:52 UTC (permalink / raw)
  To: 41153; +Cc: Ron Nazarov

---
 gnu/packages/python-web.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 56887ef9d4..f1502661d0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -35,6 +35,7 @@
 ;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
 ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
+;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3702,3 +3703,22 @@ association.")
 for starting a web server in a directory.  It can trigger arbitrary commands
 and serve updated contents upon changes to the directory.")
     (license license:bsd-3)))
+
+(define-public python-vf-1
+  (package
+    (name "python-vf-1")
+    (version "0.0.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "VF-1" version))
+       (sha256
+        (base32
+         "0xlqsaxsiayk1sd07kpz8abbcnab582y29a1y4882fq6j4gma5xi"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/solderpunk/VF-1")
+    (synopsis
+     "Command line gopher client. High speed, low drag")
+    (description
+     "Command line gopher client.  High speed, low drag.")
+    (license license:bsd-2)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41172] [PATCH] gnu: Add python-vf-1
@ 2020-05-10 11:11 70% Ron Nazarov
  0 siblings, 0 replies; 200+ results
From: Ron Nazarov @ 2020-05-10 11:11 UTC (permalink / raw)
  To: 41172; +Cc: Ron Nazarov

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 56887ef9d4..85863c0e8f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -35,6 +35,7 @@
 ;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
 ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
+;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3702,3 +3703,22 @@ association.")
 for starting a web server in a directory.  It can trigger arbitrary commands
 and serve updated contents upon changes to the directory.")
     (license license:bsd-3)))
+
+(define-public python-vf-1
+  (package
+    (name "python-vf-1")
+    (version "0.0.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "VF-1" version))
+       (sha256
+        (base32
+         "0xlqsaxsiayk1sd07kpz8abbcnab582y29a1y4882fq6j4gma5xi"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/solderpunk/VF-1")
+    (synopsis
+     "Command line gopher client")
+    (description
+     "VF-1 is a command line gopher client with @acronym{TLS, Transport Layer Security} support.")
+    (license license:bsd-2)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41186] change name, remove url comment in darcs
@ 2020-05-11 11:25 60% Nikita Gillmann
  0 siblings, 0 replies; 200+ results
From: Nikita Gillmann @ 2020-05-11 11:25 UTC (permalink / raw)
  To: 41186


[-- Attachment #1.1: Type: text/plain, Size: 472 bytes --]

The 2 patches address the following: changing my name globally
(one time using the longform to prevent confusion), as well as
removing an url which probably served to explain why darcs
(allegedly?) has no https support. The url was not saved in the
internet archive, and it makes no sense to point to an url which
will now tell you that for GDPR reasons they shut down the service.

I hope I got the formal procedures right, it's been a long time since
I've sent a patch.

[-- Attachment #1.2: 0001-Change-Email-and-name-to-my-new-name.patch --]
[-- Type: text/plain, Size: 71133 bytes --]

From 227ec2b0141573e632d5cf3d8772b40de09e5a75 Mon Sep 17 00:00:00 2001
From: nikita <nikita@n0.is>
Date: Mon, 11 May 2020 13:05:45 +0200
Subject: [PATCH 1/2] Change Email and name to my new name.

* .mailmap: change email and name for Nikita.
* Makefile.am, doc/guix.texi. etc/completion/fish/guix.fish,
  gnu/packages/accessibility.scm, gnu/packages/admin.scm,
  gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm,
  gnu/packages/check.scm, gnu/packages/cinnamon.scm,
  gnu/packages/compression.scm, gnu/packages/crypto.scm,
  gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm,
  gnu/packages/elixir.scm, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
  gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
  gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm,
  gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm,
  gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
  gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile-xyz.scm,
  gnu/packages/haskell-apps.scm, gnu/packages/haskell-check.scm,
  gnu/packages/haskell-crypto.scm, gnu/packages/haskell-xyz.scm,
  gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
  gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm,
  gnu/packages/libcanberra.scm, gnu/packages/linux.scm,
  gnu/packages/lisp-xyz.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
  gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
  gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
  gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
  gnu/packages/ncurses.scm, gnu/packages/networking.scm,
  gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
  gnu/packages/perl-check.scm, gnu/packages/perl.scm,
  gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
  gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
  gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
  gnu/packages/rust.scm, gnu/packages/scheme.scm,
  gnu/packages/serialization.scm, gnu/packages/shells.scm,
  gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
  gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
  gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
  gnu/packages/tor.scm, gnu/packages/version-control.scm,
  gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
  gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
  gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
  gnu/services/desktop.scm, gnu/services/version-control.scm,
  gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise.
---
 .mailmap                            | 30 +++++++++++++++--------------
 Makefile.am                         |  2 +-
 doc/guix.texi                       |  2 +-
 etc/completion/fish/guix.fish       |  2 +-
 gnu/packages/accessibility.scm      |  2 +-
 gnu/packages/admin.scm              |  2 +-
 gnu/packages/audio.scm              |  2 +-
 gnu/packages/autotools.scm          |  2 +-
 gnu/packages/cdrom.scm              |  2 +-
 gnu/packages/check.scm              |  2 +-
 gnu/packages/cinnamon.scm           |  2 +-
 gnu/packages/compression.scm        |  2 +-
 gnu/packages/crypto.scm             |  2 +-
 gnu/packages/databases.scm          |  2 +-
 gnu/packages/django.scm             |  2 +-
 gnu/packages/dns.scm                |  2 +-
 gnu/packages/elixir.scm             |  2 +-
 gnu/packages/emacs-xyz.scm          |  2 +-
 gnu/packages/emacs.scm              |  2 +-
 gnu/packages/enlightenment.scm      |  2 +-
 gnu/packages/erlang.scm             |  2 +-
 gnu/packages/fonts.scm              |  2 +-
 gnu/packages/fontutils.scm          |  2 +-
 gnu/packages/forth.scm              |  2 +-
 gnu/packages/fvwm.scm               |  2 +-
 gnu/packages/games.scm              |  2 +-
 gnu/packages/gl.scm                 |  2 +-
 gnu/packages/gnome.scm              |  2 +-
 gnu/packages/gnunet.scm             |  2 +-
 gnu/packages/gnupg.scm              |  2 +-
 gnu/packages/gtk.scm                |  2 +-
 gnu/packages/guile-wm.scm           |  2 +-
 gnu/packages/guile-xyz.scm          |  2 +-
 gnu/packages/haskell-apps.scm       |  2 +-
 gnu/packages/haskell-check.scm      |  2 +-
 gnu/packages/haskell-crypto.scm     |  2 +-
 gnu/packages/haskell-xyz.scm        |  2 +-
 gnu/packages/haskell.scm            |  2 +-
 gnu/packages/image-viewers.scm      |  2 +-
 gnu/packages/image.scm              |  2 +-
 gnu/packages/irc.scm                |  2 +-
 gnu/packages/language.scm           |  2 +-
 gnu/packages/libcanberra.scm        |  2 +-
 gnu/packages/linux.scm              |  2 +-
 gnu/packages/lisp-xyz.scm           |  2 +-
 gnu/packages/lisp.scm               |  2 +-
 gnu/packages/lolcode.scm            |  2 +-
 gnu/packages/lxde.scm               |  2 +-
 gnu/packages/lxqt.scm               |  2 +-
 gnu/packages/mail.scm               |  2 +-
 gnu/packages/markup.scm             |  2 +-
 gnu/packages/mate.scm               |  2 +-
 gnu/packages/maths.scm              |  2 +-
 gnu/packages/mc.scm                 |  2 +-
 gnu/packages/messaging.scm          |  2 +-
 gnu/packages/music.scm              |  2 +-
 gnu/packages/ncurses.scm            |  2 +-
 gnu/packages/networking.scm         |  2 +-
 gnu/packages/nickle.scm             |  2 +-
 gnu/packages/openbox.scm            |  2 +-
 gnu/packages/pdf.scm                |  2 +-
 gnu/packages/perl-check.scm         |  2 +-
 gnu/packages/perl.scm               |  2 +-
 gnu/packages/python-compression.scm |  2 +-
 gnu/packages/python-crypto.scm      |  2 +-
 gnu/packages/python-web.scm         |  2 +-
 gnu/packages/python-xyz.scm         |  2 +-
 gnu/packages/python.scm             |  2 +-
 gnu/packages/qt.scm                 |  2 +-
 gnu/packages/ruby.scm               |  2 +-
 gnu/packages/rust.scm               |  2 +-
 gnu/packages/scheme.scm             |  2 +-
 gnu/packages/serialization.scm      |  2 +-
 gnu/packages/shells.scm             |  2 +-
 gnu/packages/ssh.scm                |  2 +-
 gnu/packages/suckless.scm           |  2 +-
 gnu/packages/tbb.scm                |  2 +-
 gnu/packages/telephony.scm          |  2 +-
 gnu/packages/text-editors.scm       |  2 +-
 gnu/packages/textutils.scm          |  2 +-
 gnu/packages/time.scm               |  2 +-
 gnu/packages/tls.scm                |  2 +-
 gnu/packages/tor.scm                |  2 +-
 gnu/packages/version-control.scm    |  2 +-
 gnu/packages/video.scm              |  2 +-
 gnu/packages/vim.scm                |  2 +-
 gnu/packages/web.scm                |  2 +-
 gnu/packages/wm.scm                 |  2 +-
 gnu/packages/xdisorg.scm            |  2 +-
 gnu/packages/xfce.scm               |  2 +-
 gnu/packages/xml.scm                |  2 +-
 gnu/packages/xorg.scm               |  2 +-
 gnu/services/certbot.scm            |  2 +-
 gnu/services/desktop.scm            |  2 +-
 gnu/services/version-control.scm    |  2 +-
 gnu/services/web.scm                |  2 +-
 guix/import/hackage.scm             |  2 +-
 guix/licenses.scm                   |  2 +-
 98 files changed, 113 insertions(+), 111 deletions(-)

diff --git a/.mailmap b/.mailmap
index 97018775f6..fe545fb2d3 100644
--- a/.mailmap
+++ b/.mailmap
@@ -48,20 +48,22 @@ Mathieu Lirzin <mthl@gnu.org> <mathieu.lirzin@openmailbox.org>
 Mathieu Othacehe <m.othacehe@gmail.com>
 Mathieu Othacehe <mathieu.othacehe@parrot.com>
 Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
-ng0 <ng0@n0.is> Nils Gillmann <ng0@n0.is>
-ng0 <ng0@n0.is> Nils Gillmann <gillmann@infotropique.org>
-ng0 <ng0@n0.is> ng0 <ng0@crash.cx>
-ng0 <ng0@n0.is> ng0 <ng0@crash.cx>
-ng0 <ng0@n0.is> <ng0@infotropique.org>
-ng0 <ng0@n0.is> <ng0@no-reply.infotropique.org>
-ng0 <ng0@n0.is> <ng0@no-reply.pragmatique.xyz>
-ng0 <ng0@n0.is> <ng0@pragmatique.xyz>
-ng0 <ng0@n0.is> <contact.ng0@cryptolab.net>
-ng0 <ng0@n0.is> <ng0@we.make.ritual.n0.is>
-ng0 <ng0@n0.is> <ngillmann@runbox.com>
-ng0 <ng0@n0.is> <niasterisk@grrlz.net>
-ng0 <ng0@n0.is> <ng@niasterisk.space>
-ng0 <ng0@n0.is> <ng0@libertad.pw>
+nikita <nikita@n0.is>
+nikita <nikita@n0.is> ng0 <ng0@n0.is>
+nikita <nikita@n0.is> Nils Gillmann <ng0@n0.is>
+nikita <nikita@n0.is> Nils Gillmann <gillmann@infotropique.org>
+nikita <nikita@n0.is> ng0 <ng0@crash.cx>
+nikita <nikita@n0.is> ng0 <ng0@crash.cx>
+nikita <nikita@n0.is> <ng0@infotropique.org>
+nikita <nikita@n0.is> <ng0@no-reply.infotropique.org>
+nikita <nikita@n0.is> <ng0@no-reply.pragmatique.xyz>
+nikita <nikita@n0.is> <ng0@pragmatique.xyz>
+nikita <nikita@n0.is> <contact.ng0@cryptolab.net>
+nikita <nikita@n0.is> <ng0@we.make.ritual.n0.is>
+nikita <nikita@n0.is> <ngillmann@runbox.com>
+nikita <nikita@n0.is> <niasterisk@grrlz.net>
+nikita <nikita@n0.is> <ng@niasterisk.space>
+nikita <nikita@n0.is> <ng0@libertad.pw>
 Pierre Neidhardt <mail@ambrevar.xyz>
 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public01@thebird.nl>
diff --git a/Makefile.am b/Makefile.am
index 6cd6e79cab..752445afcb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,7 +9,7 @@
 # Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 # Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
 # Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
-# Copyright © 2018 ng0 <ng0@n0.is>
+# Copyright © 2018 Nikita <nikita@n0.is>
 # Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
 # Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 # Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
diff --git a/doc/guix.texi b/doc/guix.texi
index 0cba0ee1ec..01c355e31c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -34,7 +34,7 @@ Copyright @copyright{} 2016 Ben Woodcroft@*
 Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@*
 Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Efraim Flashner@*
 Copyright @copyright{} 2016 John Darrington@*
-Copyright @copyright{} 2016, 2017 ng0@*
+Copyright @copyright{} 2016, 2017 Nikita Gillmann@*
 Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@*
 Copyright @copyright{} 2016 Julien Lepiller@*
 Copyright @copyright{} 2016 Alex ter Weele@*
diff --git a/etc/completion/fish/guix.fish b/etc/completion/fish/guix.fish
index 6582f3a186..73bd176112 100644
--- a/etc/completion/fish/guix.fish
+++ b/etc/completion/fish/guix.fish
@@ -1,6 +1,6 @@
 #
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2017, 2018 ng0 <ng0@n0.is>
+# Copyright © 2017, 2018 Nikita <nikita@n0.is>
 #
 # This file is part of GNU Guix.
 #
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index 431e5924c9..8d421a092a 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Andrew Miloradovsky <andrew@interpretmath.pw>
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 9afd88919c..13587894d8 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index c4c92d69d1..2eeda826b5 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018, 2020 Oleg Pykhalov <go.wigust@gmail.com>
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index 657d4d3cb9..775576ff5d 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index e1cded55e2..bd44ae8e80 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 9971700d2d..e8547a5096 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/cinnamon.scm b/gnu/packages/cinnamon.scm
index fadf18df81..e1c9d7b614 100644
--- a/gnu/packages/cinnamon.scm
+++ b/gnu/packages/cinnamon.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;;
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index b599f3a603..140b32e06b 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index bb684ddb53..ccf1c2875f 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 45af67985f..f563ae8b5d 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index 8e72139a07..0cf414ad41 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com>
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 7ac1611cbf..e7c739f1a7 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
index 6f744af2f1..0613acff27 100644
--- a/gnu/packages/elixir.scm
+++ b/gnu/packages/elixir.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 nee <nee.git@cock.li>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2018 Nikita <nikita@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index c472958886..a3c47eb45a 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -12,7 +12,7 @@
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index e8499eb174..8fe5750791 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2016 David Thompson <dthompson2@worcester.edu>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index 244ac7dcd8..0fcf2d138b 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
 ;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
 ;;;
diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
index 865895da78..4b6c0cf105 100644
--- a/gnu/packages/erlang.scm
+++ b/gnu/packages/erlang.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2018 Nikita <nikita@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 6e9b080299..1728eeeaf9 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Jookia <166291@gmail.com>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 825362047f..e552ece50b 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 6902a4a4a3..4dcea19f4e 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/fvwm.scm b/gnu/packages/fvwm.scm
index 88f6e24a99..470f2e11e3 100644
--- a/gnu/packages/fvwm.scm
+++ b/gnu/packages/fvwm.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c6093f2b7c..63977f9c47 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016, 2017 Rodger Fox <thylakoid@openmailbox.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Albin Söderqvist <albin@fripost.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 941d0adcca..e024dd2756 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
 ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d5a2032ccf..5b359f28fc 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d7ea498907..1b7ea9246c 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018, 2019 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018, 2019 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 298f18a8cc..cf6f965b0d 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org>
 ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 3c2a9afaa0..3e2cb30246 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm
index 3a6eebc91a..e2c1bd432b 100644
--- a/gnu/packages/guile-wm.scm
+++ b/gnu/packages/guile-wm.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Alex ter Weele <alex.ter.weele@gmail.com>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 303b058e99..18f170ce16 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2017 David Thompson <davet@gnu.org>
 ;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 4785ebaca3..3856c6f6ef 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017, 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm
index 7942f2019a..d571d46945 100644
--- a/gnu/packages/haskell-check.scm
+++ b/gnu/packages/haskell-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 4170ec82f0..b9b350b61a 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
 ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index ed0b17bcd6..768159ba6c 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 982dced5d0..e9c8e7f82a 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index bcc44c2d5d..78d7e7c01b 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index c6fc26f9b8..28d3385e71 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017,2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 95b8123b8e..548a3ca049 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2014 Kevin Lemonnier <lemonnierk@ulrar.net>
 ;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index cec0ffa942..c66718aa1e 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;;
diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm
index 121ba11f89..32d1cd3605 100644
--- a/gnu/packages/libcanberra.scm
+++ b/gnu/packages/libcanberra.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2014, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
-;;; Copyright © 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index c429b05cff..ab291e2ae4 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -18,7 +18,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2018 Rene Saavedra <pacoon@protonmail.com>
 ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
 ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index d0a0065957..60fb4b0487 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2017, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 619794ae71..5d6cc1ce30 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/lolcode.scm b/gnu/packages/lolcode.scm
index 84ae83dcc8..3f62c4d5a5 100644
--- a/gnu/packages/lolcode.scm
+++ b/gnu/packages/lolcode.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm
index 38dcd0e8ed..14c4120d05 100644
--- a/gnu/packages/lxde.scm
+++ b/gnu/packages/lxde.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index a5a15e583b..f9c757a804 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 5c25ea3cce..f621d81f5d 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -15,7 +15,7 @@
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm
index 240bb9e8f4..3cd7fb559c 100644
--- a/gnu/packages/markup.scm
+++ b/gnu/packages/markup.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;;
diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm
index d913836825..8b548b5d8e 100644
--- a/gnu/packages/mate.scm
+++ b/gnu/packages/mate.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 9df547f1b4..b4bcd024f2 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -16,7 +16,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018, 2019, 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 ;;; Copyright © 2017, 2019 Arun Isaac <arunisaac@systemreboot.net>
diff --git a/gnu/packages/mc.scm b/gnu/packages/mc.scm
index 76bf77d1c8..8ff4759127 100644
--- a/gnu/packages/mc.scm
+++ b/gnu/packages/mc.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 46242f20e9..0ba166b591 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2016, 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index e0b6f6c0c1..9a55f0db3a 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 nikita <nikita@n0.is>
 ;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
 ;;; Copyright © 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2017, 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm
index ec0fc6a6b7..7b2ab991cf 100644
--- a/gnu/packages/ncurses.scm
+++ b/gnu/packages/ncurses.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2016 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 76b0fc1559..74a36a4861 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 Benz Schenk <benz.schenk@uzh.ch>
 ;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
diff --git a/gnu/packages/nickle.scm b/gnu/packages/nickle.scm
index 9cc38867b6..2353f37fb6 100644
--- a/gnu/packages/nickle.scm
+++ b/gnu/packages/nickle.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/openbox.scm b/gnu/packages/openbox.scm
index ceca6e53e0..00c93c3864 100644
--- a/gnu/packages/openbox.scm
+++ b/gnu/packages/openbox.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index de94b7c951..7906fd28da 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2014, 2015, 2016, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
 ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 6af240a40a..0031b46948 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index a47cc6b254..d32e7b6ece 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016, 2018 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2018, 2020 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
diff --git a/gnu/packages/python-compression.scm b/gnu/packages/python-compression.scm
index 2eb0933116..42855f0298 100644
--- a/gnu/packages/python-compression.scm
+++ b/gnu/packages/python-compression.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index eb57f2bbd9..e6208ab3d9 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6d48b0146a..6221c77065 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2016, 2017, 2020 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2014, 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 29b3305e5b..ad02005101 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel <d4n1@d4n1.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index a30ad6fb6e..1ec002df73 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel <d4n1@d4n1.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 8a57127771..3f8ac698c5 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Quiliro <quiliro@fsfla.org>
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index b1adf80693..c92daf6062 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 5e5748f199..62d2591254 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Eric Le Bihan <eric.le.bihan.dev@free.fr>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2017, 2018 Nikolai Merinov <nikolai.merinov@member.fsf.org>
 ;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 10a24199a8..46f1826ba1 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 21209f8b0c..482749c515 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2017 Corentin Bocquillon <corentin@nybble.fr>
 ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
 ;;;
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 73bc55bc3c..b752fb4a90 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 1d1b1c9951..ec5c4d5a18 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018 Manuel Graf <graf@init.at>
 ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
 ;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index f0055cc0cc..0cf334d7e0 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2015 Dmitry Bogatov <KAction@gnu.org>
 ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index f04385ca1e..38cb06d1b2 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 87217f633a..760c1e0727 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015, 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Adonay Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info>
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 886babf3fa..f415fd7f65 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2017, 2018, 2020 Eric Bavier <bavier@posteo.net>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 62988ec574..e800e624aa 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm
index a0599764cf..6eefb6c525 100644
--- a/gnu/packages/time.scm
+++ b/gnu/packages/time.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index fa9f380f5f..ec81b7bf07 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index 6c6da2379a..4ec503d2ed 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index a173bc83b8..6f985bf84d 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2015, 2018 Kyle Meyer <kyle@kyleam.com>
 ;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 3c5acbe2a1..e0eb2db84a 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2018, 2019, 2020 Eric Bavier <bavier@posteo.net>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2017 Feng Shu <tumashu@163.com>
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index ff7da7958f..deea538622 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 1797e52295..25afd8257d 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index ec4572b161..4b0ef9760a 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
 ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
 ;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
 ;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 49f83ff358..7c6f26fd39 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -17,7 +17,7 @@
 ;;; Copyright © 2016, 2017, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2016 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com>
 ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org>
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 1eccb3ccba..4217023cf8 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
 ;;; Copyright © 2019 L  p R n  d n <guix@lprndn.info>
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index 67ec1742ea..03daebb4a7 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index cef22cd400..25f2793fa1 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
 ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com>
 ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
diff --git a/gnu/services/certbot.scm b/gnu/services/certbot.scm
index 3e005918d6..5643340799 100644
--- a/gnu/services/certbot.scm
+++ b/gnu/services/certbot.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index e165d87c5f..93f2ae576c 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
diff --git a/gnu/services/version-control.scm b/gnu/services/version-control.scm
index 9d53f9358d..cc07f8025b 100644
--- a/gnu/services/version-control.scm
+++ b/gnu/services/version-control.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index dcbe6ee16f..9fcfe8a0dc 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2017 nee <nee-git@hidamari.blue>
diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm
index 9cf07c9504..dbc1afa4a7 100644
--- a/guix/import/hackage.scm
+++ b/guix/import/hackage.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
 ;;;
diff --git a/guix/licenses.scm b/guix/licenses.scm
index ab2ad3f169..a16d2241ad 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -8,7 +8,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
-;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-- 
2.25.2


[-- Attachment #1.3: 0002-gnu-darcs-Adjust-comment-URL-disappeared.patch --]
[-- Type: text/plain, Size: 1227 bytes --]

From 1a7ca1a52d0bf2101ade29e44b4b51492193865c Mon Sep 17 00:00:00 2001
From: nikita <nikita@n0.is>
Date: Mon, 11 May 2020 13:16:37 +0200
Subject: [PATCH 2/2] gnu: darcs: Adjust comment, URL disappeared.

* gnu/packages/haskell-apps.scm (darcs): The irc log this URL pointed
  to disappeared. It was never archived, and in retrospective it is
  better to point only to the manual of darcs itself.
---
 gnu/packages/haskell-apps.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 3856c6f6ef..af2a0de103 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -198,7 +198,7 @@ pre-processors.  Additional features include: a plain-text mode; an option to
 unlit literate code files; and an option to turn off macro-expansion.")
     (license (list license:lgpl2.1+ license:gpl3+))))
 
-;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
+;; Darcs has no https support:
 ;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
 ;; and results of search engines will show that if the protocol is http, https
 ;; is never mentioned.
-- 
2.25.2


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

^ permalink raw reply related	[relevance 60%]

* [bug#41203] [PATCH] gnu: Add python-websockets
@ 2020-05-12  8:46 89% Edouard Klein
  0 siblings, 0 replies; 200+ results
From: Edouard Klein @ 2020-05-12  8:46 UTC (permalink / raw)
  To: 41203

---
 gnu/packages/python-web.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6d48b0146a..9be92053b1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -36,6 +36,7 @@
 ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
 ;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
+;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3721,3 +3722,27 @@ and serve updated contents upon changes to the directory.")
     (description "@code{VF-1} is a command line gopher client with
 @acronym{TLS, Transport Layer Security} support.")
     (license license:bsd-2)))
+
+(define-public python-websockets
+  (package
+    (name "python-websockets")
+    (version "8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "websockets" version))
+       (sha256
+        (base32
+         "03s3ml6sbki24aajllf8aily0xzrn929zxi84p50zkkbikdd4raw"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/aaugustin/websockets")
+    (synopsis
+     "Python implementation of the WebSocket Protocol (RFC 6455 & 7692)")
+    (description
+     "@code{websockets} is a library for building WebSocket servers and clients
+in Python with a focus on correctness and simplicity.
+
+Built on top of @code{asyncio}, Python's standard asynchronous I/O framework,
+it provides an elegant coroutine-based API.")
+    (license license:bsd-3)))
-- 
2.26.2




^ permalink raw reply related	[relevance 89%]

* [bug#41206] [PATCH] gnu: Add python-selenium
@ 2020-05-12 11:29 89% Edouard Klein
  0 siblings, 0 replies; 200+ results
From: Edouard Klein @ 2020-05-12 11:29 UTC (permalink / raw)
  To: 41206

---
 gnu/packages/python-web.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 9be92053b1..32a4d2b756 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3746,3 +3746,26 @@ in Python with a focus on correctness and simplicity.
 Built on top of @code{asyncio}, Python's standard asynchronous I/O framework,
 it provides an elegant coroutine-based API.")
     (license license:bsd-3)))
+
+(define-public python-selenium
+  (package
+    (name "python-selenium")
+    (version "3.141.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "selenium" version))
+       (sha256
+        (base32
+         "039hf9knvl4s3hp21bzwsp1g5ri9gxsh504dp48lc6nr1av35byy"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-urllib3" ,python-urllib3)))
+    (home-page
+     "https://github.com/SeleniumHQ/selenium/")
+    (synopsis "Python bindings for Selenium")
+    (description "Selenium enables web browser automation.
+Selenium specifically provides infrastructure for the W3C WebDriver specification
+— a platform and language-neutral coding interface compatible with all
+major web browsers.")
+    (license license:asl2.0)))
-- 
2.26.2




^ permalink raw reply related	[relevance 89%]

* [bug#41227] [PATCH] gnu: Add python-random-user-agent.
@ 2020-05-13  7:52 89% Edouard Klein
  0 siblings, 0 replies; 200+ results
From: Edouard Klein @ 2020-05-13  7:52 UTC (permalink / raw)
  To: 41227


* gnu/packages/python-web.scm (python-random-user-agent): New variable.
---
 gnu/packages/python-web.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 32a4d2b756..c6d8c3744b 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3769,3 +3769,24 @@ Selenium specifically provides infrastructure for the W3C WebDriver specificatio
 — a platform and language-neutral coding interface compatible with all
 major web browsers.")
     (license license:asl2.0)))
+
+(define-public python-random-user-agent
+  (package
+    (name "python-random-user-agent")
+    (version "1.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "random_user_agent" version))
+       (sha256
+        (base32
+         "04nhzdh2ki7ybhjrmghxci6hcm6i03vvin2q2ynj87fbr1pa534g"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/Luqman-Ud-Din/random_user_agent")
+    (synopsis
+     "Random user agents based on filters provided by the user")
+    (description
+     "Provides list of user agents, from a collection of more than
+ 326,000 user agents, based on filters.")
+    (license license:expat)))
-- 
2.26.2




^ permalink raw reply related	[relevance 89%]

* [bug#41331] [PATCH 2/2] gnu: Add python-pyramid and dependencies
  2020-05-16 16:43 70% ` [bug#41331] [PATCH 1/2] gnu: python-webob: Update to 1.8.6 Holger Peters
@ 2020-05-16 16:43 49%   ` Holger Peters
  0 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-16 16:43 UTC (permalink / raw)
  To: 41331; +Cc: Holger Peters

* gnu/packages/python-web.scm Added several packages
(python-venusian): Added 3.0.0
(python-python-zope-deprecation): Added 4.4.0
(python-python-translationstring): Added 1.3
(python-python-plaster): Added 1.0
(python-python-plaster-pastedeploy): Added 0.7
(python-hupper): Added 1.10.2
(python-pyramid): Added 1.10.4
---
 gnu/packages/python-web.scm | 175 ++++++++++++++++++++++++++++++++++++
 1 file changed, 175 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 05c26610e9..bbd7796c2e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3769,3 +3769,178 @@ Selenium specifically provides infrastructure for the W3C WebDriver specificatio
 — a platform and language-neutral coding interface compatible with all
 major web browsers.")
     (license license:asl2.0)))
+
+(define-public python-venusian
+  (package
+    (name "python-venusian")
+    (version "3.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "venusian" version))
+       (sha256
+        (base32 "0f7f67dkgxxcjfhpdd5frb9pszkf04lyzzpn5069q0xi89r2p17n"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-runner" ,python-pytest-runner)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (arguments '(#:test-target "pytest"))
+    (home-page "https://docs.pylonsproject.org/projects/venusian")
+    (synopsis "Library for defering decorator actions")
+    (description
+     "Venusian is a library which allows framework authors to defer decorator
+      actions.  Instead of taking actions when a function (or class) decorator
+      is executed at import time, you can defer the action usually taken by
+      the decorator until a separate scan phase.")
+    (license license:repoze)))
+
+(define-public python-zope-deprecation
+  (package
+    (name "python-zope-deprecation")
+    (version "4.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "zope.deprecation" version))
+              (sha256
+               (base32
+                "1pz2cv7gv9y1r3m0bdv7ks1alagmrn5msm5spwdzkb2by0w36i8d"))))
+    (build-system python-build-system)
+    (native-inputs `())
+    (propagated-inputs `())
+    (home-page "https://zopedeprecation.readthedocs.io/")
+    (synopsis "Provides a function for marking deprecations")
+    (description "The zope.deprecation module provides a function for marking
+                 modules, classes, functions, methods and properties as
+                 deprecated, displaying warnings when usaged in application
+                 code.")
+    (license license:zpl2.1)))
+
+(define-public python-translationstring
+  (package
+    (name "python-translationstring")
+    (version "1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "translationstring" version))
+              (sha256
+               (base32
+                "0bdpcnd9pv0131dl08h4zbcwmgc45lyvq3pa224xwan5b3x4rr2f"))))
+    (build-system python-build-system)
+    (native-inputs `())
+    (propagated-inputs `())
+    (home-page "http://docs.pylonsproject.org/projects/translationstring")
+    (synopsis "Internationalization tooling for the Pylons project")
+    (description "A library used by various Pylons project packages for
+                 internationalization (i18n) duties related to translation.")
+    (license license:repoze)))
+
+(define-public python-plaster
+  (package
+    (name "python-plaster")
+    (version "1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "plaster" version))
+              (sha256
+               (base32
+                "1hy8k0nv2mxq94y5aysk6hjk9ryb4bsd13g83m60hcyzxz3wflc3"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs `())
+    (home-page "https://docs.pylonsproject.org/projects/plaster/en/latest/")
+    (synopsis "Configuration loader for multiple config file formats")
+    (description
+     "Plaster is a loader interface around multiple config file formats.  It
+      exists to define a common API for applications to use when they wish to
+      load configuration.  The library itself does not aim to handle anything
+      except a basic API that applications may use to find and load
+      configuration settings.  Any specific constraints should be implemented
+      in a pluggable loader which can be registered via an entrypoint.")
+    (license license:repoze)))
+
+(define-public python-plaster-pastedeploy
+  (package
+    (name "python-plaster-pastedeploy")
+    (version "0.7")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "plaster_pastedeploy" version))
+              (sha256
+               (base32
+                "1zg7gcsvc1kzay1ry5p699rg2qavfsxqwl17mqxzr0gzw6j9679r"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-plaster" ,python-plaster)
+       ("python-pastedeploy" ,python-pastedeploy)))
+    (home-page "https://github.com/Pylons/plaster_pastedeploy")
+    (synopsis "Plugin for `python-plaster' adds support for PasteDeploy
+              syntax")
+    (description
+     "This plugin for `python-plaster' adds support for PasteDeploy syntax, it
+      provides a plaster Loader object that can parse ini files according to
+      the standard set by PasteDeploy ")
+    (license license:expat)))
+
+(define-public python-hupper
+  (package
+    (name "python-hupper")
+    (version "1.10.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "hupper" version))
+              (sha256
+               (base32
+                "0am0p6g5cz6xmcaf04xq8q6dzdd9qz0phj6gcmpsckf2mcyza61q"))))
+    (build-system python-build-system)
+    (arguments '(#:test-target "pytest"))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-runner" ,python-pytest-runner)
+       ("python-watchdog" ,python-watchdog)
+       ("python-mock" ,python-mock)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (propagated-inputs
+     `(("python-pytz" ,python-pytz)))
+    (home-page "https://readthedocs.org/projects/hupper")
+    (synopsis
+      "Integrated process monitor tracking changes to imported
+      Python files")
+    (description
+      "Hupper is an integrated process monitor that will track changes to any
+      imported Python files in sys.modules as well as custom paths.  When
+      files are changed the process is restarted.")
+    (license license:expat)))
+
+(define-public python-pyramid
+  (package
+    (name "python-pyramid")
+    (version "1.10.4")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pyramid" version))
+              (sha256
+               (base32
+                "0rkxs1ajycg2zh1c94xlmls56mx5m161sn8112skj0amza6cn36q"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-hupper" ,python-hupper)
+       ("python-plaster-pastedeploy" ,python-plaster-pastedeploy)
+       ("python-translationstring" ,python-translationstring)
+       ("python-venusian" ,python-venusian)
+       ("python-webob" ,python-webob)
+       ("python-zope-deprecation" ,python-zope-deprecation)
+       ("python-zope-interface" ,python-zope-interface)
+       ("python-webtest" ,python-webtest)
+       ("python-zope-component" ,python-zope-component)
+       ("python-plaster" ,python-plaster)))
+    (native-inputs `())
+    (home-page "https://trypyramid.com/")
+    (synopsis "Python web-framework suitable for small and large sites")
+    (description
+     "Pyramid makes it easy to write web applications.  From minimal
+      request/response web apps to larger, grown applications.")
+    (license license:repoze)))
-- 
2.26.0





^ permalink raw reply related	[relevance 49%]

* [bug#41331] [PATCH 1/2] gnu: python-webob: Update to 1.8.6
  @ 2020-05-16 16:43 70% ` Holger Peters
  2020-05-16 16:43 49%   ` [bug#41331] [PATCH 2/2] gnu: Add python-pyramid and dependencies Holger Peters
  0 siblings, 1 reply; 200+ results
From: Holger Peters @ 2020-05-16 16:43 UTC (permalink / raw)
  To: 41331; +Cc: Holger Peters

* gnu/packages/python-web.scm (python-webob): Update to 1.8.6.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d64f698dbc..05c26610e9 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1012,14 +1012,14 @@ your Web app.")
 (define-public python-webob
   (package
     (name "python-webob")
-    (version "1.8.3")
+    (version "1.8.6")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "WebOb" version))
        (sha256
         (base32
-          "1cpqskanmvwia8wqlpcr3ykyxysynjdnbl5namvpg8vw6jnkv1dh"))))
+          "026i3z99nr3px75isa9mbnky5i7rffiv4d124h5kxfjjsxz92fma"))))
     (build-system python-build-system)
     (native-inputs
       `(("python-nose" ,python-nose)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6
  @ 2020-05-20  7:07 70% ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 2/8] gnu: Add python-venusian Holger Peters
                     ` (6 more replies)
  0 siblings, 7 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

* gnu/packages/python-web.scm (python-webob): Update to 1.8.6.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2cd37c8bcf..a554f598e2 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1035,14 +1035,14 @@ your Web app.")
 (define-public python-webob
   (package
     (name "python-webob")
-    (version "1.8.3")
+    (version "1.8.6")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "WebOb" version))
        (sha256
         (base32
-          "1cpqskanmvwia8wqlpcr3ykyxysynjdnbl5namvpg8vw6jnkv1dh"))))
+          "026i3z99nr3px75isa9mbnky5i7rffiv4d124h5kxfjjsxz92fma"))))
     (build-system python-build-system)
     (native-inputs
       `(("python-nose" ,python-nose)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 2/8] gnu: Add python-venusian
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 3/8] gnu: Add python-zope-deprecation Holger Peters
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a554f598e2..0dff9610bc 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3836,3 +3836,28 @@ major web browsers.")
     (synopsis "Python wrapper around rapidjson")
     (description "This package provides a python wrapper around rapidjson.")
     (license license:expat)))
+
+(define-public python-venusian
+  (package
+    (name "python-venusian")
+    (version "3.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "venusian" version))
+       (sha256
+        (base32 "0f7f67dkgxxcjfhpdd5frb9pszkf04lyzzpn5069q0xi89r2p17n"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-runner" ,python-pytest-runner)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (arguments '(#:test-target "pytest"))
+    (home-page "https://docs.pylonsproject.org/projects/venusian")
+    (synopsis "Library for defering decorator actions")
+    (description
+     "Venusian is a library which allows framework authors to defer decorator
+actions.  Instead of taking actions when a function (or class) decorator is
+executed at import time, you can defer the action usually taken by the
+decorator until a separate scan phase.")
+    (license license:repoze)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 3/8] gnu: Add python-zope-deprecation
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 2/8] gnu: Add python-venusian Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 4/8] gnu: Add python-translationstring Holger Peters
                     ` (4 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

* gnu/packages/python-web.scm Added several packages:
  (python-zope-deprecation): New variable
---
 gnu/packages/python-web.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 0dff9610bc..da0726ae99 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3861,3 +3861,23 @@ actions.  Instead of taking actions when a function (or class) decorator is
 executed at import time, you can defer the action usually taken by the
 decorator until a separate scan phase.")
     (license license:repoze)))
+
+(define-public python-zope-deprecation
+  (package
+    (name "python-zope-deprecation")
+    (version "4.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "zope.deprecation" version))
+              (sha256
+               (base32
+                "1pz2cv7gv9y1r3m0bdv7ks1alagmrn5msm5spwdzkb2by0w36i8d"))))
+    (build-system python-build-system)
+    (native-inputs `())
+    (propagated-inputs `())
+    (home-page "https://zopedeprecation.readthedocs.io/")
+    (synopsis "Provides a function for marking deprecations")
+    (description "The zope.deprecation module provides a function for marking
+modules, classes, functions, methods and properties as deprecated, displaying
+warnings when usaged in application code.")
+    (license license:zpl2.1)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 5/8] gnu: Add python-plaster
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
                     ` (2 preceding siblings ...)
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 4/8] gnu: Add python-translationstring Holger Peters
@ 2020-05-20  7:07 69%   ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 6/8] gnu: Add python-plaster-pastedeploy Holger Peters
                     ` (2 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

* gnu/packages/python-web.scm (python-plaster): New Variable
---
 gnu/packages/python-web.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 38334c1bc5..df9c29ecb7 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3898,3 +3898,27 @@ warnings when usaged in application code.")
     (description "Library used by various Pylons project packages for
 internationalization (i18n) duties related to translation.")
     (license license:repoze)))
+
+(define-public python-plaster
+  (package
+    (name "python-plaster")
+    (version "1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "plaster" version))
+              (sha256
+               (base32
+                "1hy8k0nv2mxq94y5aysk6hjk9ryb4bsd13g83m60hcyzxz3wflc3"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://docs.pylonsproject.org/projects/plaster/en/latest/")
+    (synopsis "Configuration loader for multiple config file formats")
+    (description
+     "Plaster is a loader interface around multiple config file formats.  It
+exists to define a common API for applications to use when they wish to load
+configuration.  The library itself does not aim to handle anything except a
+basic API that applications may use to find and load configuration settings.
+Any specific constraints should be implemented in a pluggable loader which can
+be registered via an entrypoint.")
+    (license license:repoze)))
-- 
2.26.0





^ permalink raw reply related	[relevance 69%]

* [bug#41416] [PATCH 6/8] gnu: Add python-plaster-pastedeploy
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
                     ` (3 preceding siblings ...)
  2020-05-20  7:07 69%   ` [bug#41416] [PATCH 5/8] gnu: Add python-plaster Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 7/8] gnu: Add python-hupper Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 8/8] gnu: Add python-pyramid Holger Peters
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

* gnu/packages/python-web.scm (python-plaster-pastedeploy): New Variable
---
 gnu/packages/python-web.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index df9c29ecb7..79cb0424ff 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3922,3 +3922,27 @@ basic API that applications may use to find and load configuration settings.
 Any specific constraints should be implemented in a pluggable loader which can
 be registered via an entrypoint.")
     (license license:repoze)))
+
+(define-public python-plaster-pastedeploy
+  (package
+    (name "python-plaster-pastedeploy")
+    (version "0.7")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "plaster_pastedeploy" version))
+              (sha256
+               (base32
+                "1zg7gcsvc1kzay1ry5p699rg2qavfsxqwl17mqxzr0gzw6j9679r"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-plaster" ,python-plaster)
+       ("python-pastedeploy" ,python-pastedeploy)))
+    (home-page "https://github.com/Pylons/plaster_pastedeploy")
+    (synopsis "Plugin for `python-plaster' adds PasteDeploy syntax")
+    (description
+     "This plugin for `python-plaster' adds support for PasteDeploy syntax, it
+provides a plaster Loader object that can parse ini files according to the
+standard set by PasteDeploy ")
+    (license license:expat)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 4/8] gnu: Add python-translationstring
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 2/8] gnu: Add python-venusian Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 3/8] gnu: Add python-zope-deprecation Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  2020-05-20  7:07 69%   ` [bug#41416] [PATCH 5/8] gnu: Add python-plaster Holger Peters
                     ` (3 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index da0726ae99..38334c1bc5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3881,3 +3881,20 @@ decorator until a separate scan phase.")
 modules, classes, functions, methods and properties as deprecated, displaying
 warnings when usaged in application code.")
     (license license:zpl2.1)))
+
+(define-public python-translationstring
+  (package
+    (name "python-translationstring")
+    (version "1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "translationstring" version))
+              (sha256
+               (base32
+                "0bdpcnd9pv0131dl08h4zbcwmgc45lyvq3pa224xwan5b3x4rr2f"))))
+    (build-system python-build-system)
+    (home-page "http://docs.pylonsproject.org/projects/translationstring")
+    (synopsis "Internationalization tooling for the Pylons project")
+    (description "Library used by various Pylons project packages for
+internationalization (i18n) duties related to translation.")
+    (license license:repoze)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 7/8] gnu: Add python-hupper
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
                     ` (4 preceding siblings ...)
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 6/8] gnu: Add python-plaster-pastedeploy Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 8/8] gnu: Add python-pyramid Holger Peters
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 79cb0424ff..84aeaed869 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3946,3 +3946,33 @@ be registered via an entrypoint.")
 provides a plaster Loader object that can parse ini files according to the
 standard set by PasteDeploy ")
     (license license:expat)))
+
+(define-public python-hupper
+  (package
+    (name "python-hupper")
+    (version "1.10.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "hupper" version))
+              (sha256
+               (base32
+                "0am0p6g5cz6xmcaf04xq8q6dzdd9qz0phj6gcmpsckf2mcyza61q"))))
+    (build-system python-build-system)
+    (arguments '(#:test-target "pytest"))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-runner" ,python-pytest-runner)
+       ("python-watchdog" ,python-watchdog)
+       ("python-mock" ,python-mock)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (propagated-inputs
+     `(("python-pytz" ,python-pytz)))
+    (home-page "https://readthedocs.org/projects/hupper")
+    (synopsis
+      "Integrated process monitor tracking changes to imported
+      Python files")
+    (description
+      "Hupper is an integrated process monitor that will track changes to any
+imported Python files in sys.modules as well as custom paths.  When files are
+changed the process is restarted.")
+    (license license:expat)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41416] [PATCH 8/8] gnu: Add python-pyramid
  2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
                     ` (5 preceding siblings ...)
  2020-05-20  7:07 70%   ` [bug#41416] [PATCH 7/8] gnu: Add python-hupper Holger Peters
@ 2020-05-20  7:07 70%   ` Holger Peters
  6 siblings, 0 replies; 200+ results
From: Holger Peters @ 2020-05-20  7:07 UTC (permalink / raw)
  To: 41416; +Cc: Holger Peters

* gnu/packages/python-web.scm (python-pyramid): 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 84aeaed869..bfeefc0420 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3976,3 +3976,32 @@ standard set by PasteDeploy ")
 imported Python files in sys.modules as well as custom paths.  When files are
 changed the process is restarted.")
     (license license:expat)))
+
+(define-public python-pyramid
+  (package
+    (name "python-pyramid")
+    (version "1.10.4")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pyramid" version))
+              (sha256
+               (base32
+                "0rkxs1ajycg2zh1c94xlmls56mx5m161sn8112skj0amza6cn36q"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-hupper" ,python-hupper)
+       ("python-plaster-pastedeploy" ,python-plaster-pastedeploy)
+       ("python-translationstring" ,python-translationstring)
+       ("python-venusian" ,python-venusian)
+       ("python-webob" ,python-webob)
+       ("python-zope-deprecation" ,python-zope-deprecation)
+       ("python-zope-interface" ,python-zope-interface)
+       ("python-webtest" ,python-webtest)
+       ("python-zope-component" ,python-zope-component)
+       ("python-plaster" ,python-plaster)))
+    (home-page "https://trypyramid.com/")
+    (synopsis "Python web-framework suitable for small and large sites")
+    (description
+     "Pyramid makes it easy to write web applications.  From minimal
+request/response web apps to larger, grown applications.")
+    (license license:repoze)))
-- 
2.26.0





^ permalink raw reply related	[relevance 70%]

* [bug#41459] [PATCH] gnu: Add python-flask-restx
@ 2020-05-22 15:06 70% Edouard Klein
  2020-06-02  9:45 65% ` [bug#41459] (no subject) Edouard Klein
  0 siblings, 1 reply; 200+ results
From: Edouard Klein @ 2020-05-22 15:06 UTC (permalink / raw)
  To: 41459


* gnu/packages/python-web.scm (python-flask-restx): New variable.
* gnu/packages/python-check.scm (python-pytest-benchmark): New variable.
* gnu/packages/python-check.scm (python-pytest-flask): New variable.
* gnu/packages/python-xyz.scm (python-py-cpuinfo): New variable.
---
 gnu/packages/python-check.scm | 49 +++++++++++++++++++++++++++++++++++
 gnu/packages/python-web.scm   | 49 +++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm   | 20 ++++++++++++++
 3 files changed, 118 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 50911673b2..70db8445ee 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -362,6 +362,55 @@ framework.")
 framework.")
     (license license:expat)))
 
+(define-public python-pytest-benchmark
+  (package
+  (name "python-pytest-benchmark")
+  (version "3.2.3")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (pypi-uri "pytest-benchmark" version))
+      (sha256
+        (base32
+          "0a4mpb4j73dsyk47hd1prrjpfk4r458s102cn80rf253jg818hxd"))))
+  (build-system python-build-system)
+  (native-inputs
+    `(("python-pathlib2" ,python-pathlib2)
+      ("python-py-cpuinfo" ,python-py-cpuinfo)
+      ("python-pytest" ,python-pytest)))
+  (home-page "https://github.com/ionelmc/pytest-benchmark")
+  (synopsis
+    "Pytest fixture for benchmarking code")
+  (description
+    "This pytest fixture will group the tests into rounds that are calibrated to
+the chosen timer.")
+  (license license:bsd-2)))
+
+(define-public python-pytest-flask
+  (package
+  (name "python-pytest-flask")
+  (version "1.0.0")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (pypi-uri "pytest-flask" version))
+      (sha256
+        (base32
+          "1hln7mwgdzfi5ma0kqfsi768l7p24jhkw8l0imhifwy08nh7hmjd"))))
+  (build-system python-build-system)
+  (native-inputs
+    `(("python-flask" ,python-flask)
+      ("python-pytest" ,python-pytest)
+      ("python-setuptools-scm" ,python-setuptools-scm)
+      ("python-werkzeug" ,python-werkzeug)))
+  (home-page
+    "https://github.com/pytest-dev/pytest-flask")
+  (synopsis
+    "Pytest fixtures to test Flask applications")
+  (description
+   "This pytest plugin provides some fixtures to simplify app testing.")
+  (license license:expat)))
+
 (define-public python-codacy-coverage
   (package
     (name "python-codacy-coverage")
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 00caf7f229..c1658052d8 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4024,3 +4024,52 @@ request/response web apps to larger, grown applications.")
 than 326,000 known user-agents.  Users can pick a random one, or select one
 based on filters.")
     (license license:expat)))
+
+(define-public python-flask-restx
+  (package
+  (name "python-flask-restx")
+  (version "0.2.0")
+  (source
+   ;; We fetch from the Git repo because there are no tests in the PyPI
+   ;; archive.
+   (origin
+     (method git-fetch)
+     (uri (git-reference
+           (url "https://github.com/python-restx/flask-restx")
+           (commit version)))
+     (file-name (git-file-name name version))
+     (sha256
+      (base32 "0xf2vkmdngp9cv9klznizai4byxjcf0iqh1pr4b83nann0jxqwy7"))))
+  (build-system python-build-system)
+  (propagated-inputs
+   `(("python-aniso8601" ,python-aniso8601)
+     ("python-flask" ,python-flask)
+     ("python-jsonschema" ,python-jsonschema)
+     ("python-pytz" ,python-pytz)))
+  (native-inputs
+   `(("python-blinker" ,python-blinker)
+      ("python-faker" ,python-faker)
+      ("python-pytest" ,python-pytest)
+      ("python-pytest-benchmark"
+       ,python-pytest-benchmark)
+      ("python-pytest-flask" ,python-pytest-flask)
+      ("python-pytest-mock" ,python-pytest-mock)))
+  (arguments
+   `(#:phases
+     (modify-phases %standard-phases
+       (replace 'check
+         (lambda _
+           (invoke "pytest" "--benchmark-skip" "-k"
+                   ;; Those tests need internet access
+                   "not test_check and not test_valid_value_check"))))))
+  (home-page
+    "https://github.com/python-restx/flask-restx")
+  (synopsis
+    "Framework for fast, easy and documented API development with Flask")
+  (description
+    "Flask-RESTX is an extension for Flask that adds support for quickly building
+REST APIs.  Flask-RESTX encourages best practices with minimal setup.  If you are familiar
+ with Flask, Flask-RESTX should be easy to pick up.  It provides a coherent collection of
+decorators and tools to describe your API and expose its documentation properly using
+Swagger.")
+  (license license:bsd-3)))
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1b32e7e2a8..d8552276fc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20076,6 +20076,26 @@ It builds upon tmux's target and formats to create an object mapping to traverse
 using multi-select lists, confirmations, free text prompts, completion, etc.")
   (license license:expat)))
 
+(define-public python-py-cpuinfo
+  (package
+  (name "python-py-cpuinfo")
+  (version "5.0.0")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (pypi-uri "py-cpuinfo" version))
+      (sha256
+        (base32
+          "0045y6832gqjg63jmw0qj2jwyypgjwr7sfdq3lfv49b6fxpl5xic"))))
+  (build-system python-build-system)
+  (home-page
+    "https://github.com/workhorsy/py-cpuinfo")
+  (synopsis "Get CPU info with pure Python 2 & 3")
+  (description
+    "This module returns the CPU info by using the best sources of information for
+ your OS.")
+  (license license:expat)))
+
 (define-public python-daemux
   (package
     (name "python-daemux")
-- 
2.26.2




^ permalink raw reply related	[relevance 70%]

* [bug#41593] [PATCH 1/1] gnu: python-furl: Update to 2.0.0.
@ 2020-05-29  7:40 70% Hamzeh Nasajpour
  0 siblings, 0 replies; 200+ results
From: Hamzeh Nasajpour @ 2020-05-29  7:40 UTC (permalink / raw)
  To: 41593

* gnu/packages/python-web.scm (python-furl): Update to 2.0.0.
---
 gnu/packages/python-web.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index cd8ce8a83f..a7892b02ce 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -324,17 +324,18 @@ over a different origin than that of the web application.")
 (define-public python-furl
   (package
     (name "python-furl")
-    (version "0.5.6")
+    (version "2.0.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "furl" version))
         (sha256
           (base32
-            "0lzpfpm686hvz3sr1mcrnd1b3lgmnw8v59gb43wfi98r3b671pqc"))))
+            "1v2lakx03d5w8954a39ki44xv5mllnq0a0avhxykv9hrzg0yvjpx"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-six" ,python-six)
+     `(("python-flake8" ,python-flake8)
+       ("python-six" ,python-six)
        ("python-orderedmultidict" ,python-orderedmultidict)))
     (native-inputs
      `(("python-pycodestyle" ,python-pycodestyle)))
-- 
2.26.0




^ permalink raw reply related	[relevance 70%]

* [bug#41459] (no subject)
  2020-05-22 15:06 70% [bug#41459] [PATCH] gnu: Add python-flask-restx Edouard Klein
@ 2020-06-02  9:45 65% ` Edouard Klein
  0 siblings, 0 replies; 200+ results
From: Edouard Klein @ 2020-06-02  9:45 UTC (permalink / raw)
  To: 41459

Subject: [PATCH 4/4] gnu: Add python-flask-restx
From 38a64901c9dcf53b4b32dd83bd6b50c4e4ea4d52 Mon Sep 17 00:00:00 2001
* gnu/packages/python-web.scm (python-flask-restx): New variable.
---
 gnu/packages/python-web.scm | 48 +++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 61d21418d4..f8c61b8a53 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4024,3 +4024,51 @@ request/response web apps to larger, grown applications.")
 than 326,000 known user-agents.  Users can pick a random one, or select one
 based on filters.")
     (license license:expat)))
+
+(define-public python-flask-restx
+  (package
+    (name "python-flask-restx")
+    (version "0.2.0")
+    (source
+     ;; We fetch from the Git repo because there are no tests in the PyPI
+     ;; archive.
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/python-restx/flask-restx")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0xf2vkmdngp9cv9klznizai4byxjcf0iqh1pr4b83nann0jxqwy7"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-aniso8601" ,python-aniso8601)
+       ("python-flask" ,python-flask)
+       ("python-jsonschema" ,python-jsonschema)
+       ("python-pytz" ,python-pytz)))
+    (native-inputs
+     `(("python-blinker" ,python-blinker)
+       ("python-faker" ,python-faker)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-benchmark"
+        ,python-pytest-benchmark)
+       ("python-pytest-flask" ,python-pytest-flask)
+       ("python-pytest-mock" ,python-pytest-mock)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest" "--benchmark-skip" "-k"
+                     ;; Those tests need internet access
+                     "not test_check and not test_valid_value_check"))))))
+    (home-page "https://github.com/python-restx/flask-restx")
+    (synopsis
+     "Framework for fast, easy and documented API development with Flask")
+    (description
+     "Flask-RESTX is an extension for Flask that adds support for quickly building
+REST APIs.  Flask-RESTX encourages best practices with minimal setup.  If you are familiar
+ with Flask, Flask-RESTX should be easy to pick up.  It provides a coherent collection of
+decorators and tools to describe your API and expose its documentation properly using
+Swagger.")
+    (license license:bsd-3)))
-- 
2.26.2

Date: Tue, 02 Jun 2020 11:45:18 +0200
Message-ID: <87eeqxdcnl.fsf@alice.lan>




^ permalink raw reply related	[relevance 65%]

* [bug#41807] [PATCH 13/26] gnu: Add python-h2.
                     ` (3 preceding siblings ...)
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 12/26] gnu: Add python-hyperframe Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 14/26] gnu: Add python-hstspreload Giacomo Leidi
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index db53ec8471..d658de9aee 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4162,3 +4162,26 @@ own implementation of RFC 6214.")
 framing code used in the @code{hyper} project.  It provides a pure-Python
 codebase that is capable of decoding a binary stream into HTTP/2 frames.")
     (license license:expat)))
+
+(define-public python-h2
+  (package
+    (name "python-h2")
+    (version "3.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "h2" version))
+       (sha256
+        (base32
+         "051gg30aca26rdxsmr9svwqm06pdz9bv21ch4n0lgi7jsvml2pw7"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-hpack" ,python-hpack)
+       ("python-hyperframe" ,python-hyperframe)))
+    (home-page
+     "https://github.com/python-hyper/hyper-h2")
+    (synopsis
+     "HTTP/2 State-Machine based protocol implementation")
+    (description
+     "@code{python-h2} is a Python implementation of a HTTP/2 protocol stack.")
+    (license license:expat)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 11/26] gnu: Add python-hpack.
    2020-06-11 15:13 70% ` [bug#41807] [PATCH 08/26] gnu: Add python-httptools Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 10/26] gnu: Add python-h11 Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 12/26] gnu: Add python-hyperframe Giacomo Leidi
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index dcfe523912..4810a10834 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4123,3 +4123,22 @@ IO code whatsoever.  This means you can hook @code{python-h11} up to
 your favorite network API: synchronous, threaded, asynchronous, or your
 own implementation of RFC 6214.")
     (license license:expat)))
+
+(define-public python-hpack
+  (package
+    (name "python-hpack")
+    (version "3.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hpack" version))
+       (sha256
+        (base32
+         "1lp9ja4dk6jg0pm2d18kvh95k9p6yxhh4l1h7y541qzs9cgrrv4f"))))
+    (build-system python-build-system)
+    (home-page "http://hyper.rtfd.org")
+    (synopsis "HTTP/2 Header Encoding for Python")
+    (description
+     "@code{python-hpack} contains a pure-Python HTTP/2 header encoding
+(HPACK) logic for use in Python programs that implement HTTP/2.")
+    (license license:expat)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 26/26] gnu: Add python-sanic.
                     ` (6 preceding siblings ...)
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 24/26] gnu: Add python-httpx Giacomo Leidi
@ 2020-06-11 15:13 67% ` Giacomo Leidi
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

* gnu/packages/python-web.scm (python-sanic): New variable,
(python-httpx-0.11): New variable.
---
 gnu/packages/python-web.scm | 49 +++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index daaf4a8934..b7abe9fc17 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4234,3 +4234,52 @@ as a Python package.")
     (description "HTTPX is a fully featured HTTP client for Python 3,
 which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.")
     (license license:bsd-3)))
+
+;; This is only for python-sanic
+(define-public python-httpx-0.11
+  (package (inherit python-httpx)
+    (version "0.11.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "httpx" version))
+        (sha256
+          (base32
+           "1xrwlgnzm9x0d92s22ypli4cybwwv8idpp8m7naigmzfdrrgnavx"))))
+    (arguments
+     ;; FIXME: Tests can't import rfc3986.
+     `(#:tests? #f))))
+
+(define-public python-sanic
+  (package
+    (name "python-sanic")
+    (version "20.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sanic" version))
+       (sha256
+        (base32
+         "1zssckzjsa1qi2bxirn0dksszmfhsbrkakvfx3r080sdcph8y1xl"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests depend on httpcore.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-aiofiles" ,python-aiofiles)
+       ("python-httptools" ,python-httptools)
+       ("python-httpx" ,python-httpx-0.11)
+       ("python-multidict" ,python-multidict)
+       ("python-ujson" ,python-ujson)
+       ("python-uvloop" ,python-uvloop)
+       ("python-websockets" ,python-websockets)))
+    (home-page
+     "https://github.com/huge-success/sanic/")
+    (synopsis
+     "Async Python 3.6+ web server/framework")
+    (description
+     "Sanic is a Python 3.6+ web server and web framework
+that's written to go fast.  It allows the usage of the
+@code{async/await} syntax added in Python 3.5, which makes
+your code non-blocking and speedy.")
+    (license license:expat)))
-- 
2.26.2





^ permalink raw reply related	[relevance 67%]

* [bug#41807] [PATCH 10/26] gnu: Add python-h11.
    2020-06-11 15:13 70% ` [bug#41807] [PATCH 08/26] gnu: Add python-httptools Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 11/26] gnu: Add python-hpack Giacomo Leidi
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 83333d5f1c..dcfe523912 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4096,3 +4096,30 @@ based on filters.")
 NodeJS HTTP parser.  It provides collection of framework independent HTTP
 protocol utils.")
     (license license:expat)))
+
+(define-public python-h11
+  (package
+    (name "python-h11")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "h11" version))
+       (sha256
+        (base32
+         "1qfad70h59hya21vrzz8dqyyaiqhac0anl2dx3s3k80gpskvrm1k"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/python-hyper/h11")
+    (synopsis
+     "Python implementation of HTTP/1.1")
+    (description
+     "@code{python-h11} is a little HTTP/1.1 library written from
+scratch in Python, heavily inspired by code{hyper-h2}.
+
+It's a \"bring-your-own-I/O\" library; @code{python-h11} contains no
+IO code whatsoever.  This means you can hook @code{python-h11} up to
+your favorite network API: synchronous, threaded, asynchronous, or your
+own implementation of RFC 6214.")
+    (license license:expat)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 08/26] gnu: Add python-httptools.
  @ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 10/26] gnu: Add python-h11 Giacomo Leidi
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

* gnu/packages/python-web.scm (python-httptools): New variable.
* gnu/packages/python-xyz.scm (python-cython-0.29.14): New variable.
---
 gnu/packages/python-web.scm | 67 +++++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm | 11 ++++++
 2 files changed, 78 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c01a86935c..83333d5f1c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -37,6 +37,7 @@
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
 ;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4029,3 +4030,69 @@ request/response web apps to larger, grown applications.")
 than 326,000 known user-agents.  Users can pick a random one, or select one
 based on filters.")
     (license license:expat)))
+
+(define-public python-httptools
+  (package
+    (name "python-httptools")
+    (version "0.1.1")
+    (source (origin
+              ;; The PyPI release does not contain tests.
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/MagicStack/httptools.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0g08128x2ixsiwrzskxc6c8ymgzs39wbzr5mhy0mjk30q9pqqv77"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-hardcoded-paths
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((http-parser (assoc-ref inputs "http-parser")))
+               (substitute* "httptools/parser/cparser.pxd"
+                 (("\\.\\./\\.\\./vendor/http-parser/http_parser\\.h")
+                  (string-append http-parser "/include/http_parser.h"))))
+             #t))
+         (add-after 'patch-hardcoded-paths 'disable-failing-test
+           (lambda _
+             ;; TestResponseParser.test_parser_response_1 fails every time.
+             ;; We force it to pass to avoid patching it out.
+             (substitute* "tests/test_parser.py"
+               (("data received after completed connection")
+                "invalid constant string"))
+             #t))
+         (replace 'build
+           (lambda _
+             (invoke "python" "setup.py" "build_ext"
+                     "--use-system-http-parser" "--inplace")
+             #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (invoke "python" "setup.py" "install"
+                       (string-append "--prefix=" out)
+                       "--single-version-externally-managed" "--root=/"
+                       "--skip-build")
+               #t)))
+         (replace 'check
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (invoke "pytest")
+               #t))))))
+    (inputs
+     `(("http-parser" ,http-parser)))
+    (native-inputs
+     `(("python-cython" ,python-cython-0.29.14)
+       ("python-pytest" ,python-pytest)))
+    (home-page
+     "https://github.com/MagicStack/httptools")
+    (synopsis
+     "Python bindings for the NodeJS HTTP parser")
+    (description
+     "@code{python-httptools} creates Python bindings for the
+NodeJS HTTP parser.  It provides collection of framework independent HTTP
+protocol utils.")
+    (license license:expat)))
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b6dec540ab..78bc419845 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20278,3 +20278,14 @@ permissively licensed, async/await-native I/O library for Python.")
     ;; Choice of either license.
     (license (list license:expat license:asl2.0))))
 
+;; This is only needed for python-httptools.
+(define-public python-cython-0.29.14
+  (package (inherit python-cython)
+    (version "0.29.14")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Cython" version))
+       (sha256
+        (base32
+         "050lh336791yl76krn44zm2dz00mlhpb26bk9fq9wcfh0f3vpmp4"))))))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 24/26] gnu: Add python-httpx.
                     ` (5 preceding siblings ...)
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 14/26] gnu: Add python-hstspreload Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 67% ` [bug#41807] [PATCH 26/26] gnu: Add python-sanic Giacomo Leidi
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d40dad2e00..daaf4a8934 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4206,3 +4206,31 @@ codebase that is capable of decoding a binary stream into HTTP/2 frames.")
      "@code{python-hstspreload} contains Chromium HSTS Preload list
 as a Python package.")
     (license license:bsd-3)))
+
+(define-public python-httpx
+  (package
+    (name "python-httpx")
+    (version "0.13.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "httpx" version))
+       (sha256
+        (base32
+         "1bpg46mx8n74hxmw2pvgr5pc590hxdsh4wrs4j5bm00bx49vshin"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-certifi" ,python-certifi)
+       ("python-chardet" ,python-chardet)
+       ("python-h11" ,python-h11)
+       ("python-h2" ,python-h2)
+       ("python-hstspreload" ,python-hstspreload)
+       ("python-idna" ,python-idna)
+       ("python-rfc3986" ,python-rfc3986)
+       ("python-sniffio" ,python-sniffio)
+       ("python-urllib3" ,python-urllib3)))
+    (home-page "https://github.com/encode/httpx")
+    (synopsis "HTTP client for Python")
+    (description "HTTPX is a fully featured HTTP client for Python 3,
+which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.")
+    (license license:bsd-3)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 12/26] gnu: Add python-hyperframe.
                     ` (2 preceding siblings ...)
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 11/26] gnu: Add python-hpack Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 13/26] gnu: Add python-h2 Giacomo Leidi
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4810a10834..db53ec8471 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4142,3 +4142,23 @@ own implementation of RFC 6214.")
      "@code{python-hpack} contains a pure-Python HTTP/2 header encoding
 (HPACK) logic for use in Python programs that implement HTTP/2.")
     (license license:expat)))
+
+(define-public python-hyperframe
+  (package
+    (name "python-hyperframe")
+    (version "5.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hyperframe" version))
+       (sha256
+        (base32
+         "07xlf44l1cw0ghxx46sbmkgzil8vqv8kxwy42ywikiy35izw3xd9"))))
+    (build-system python-build-system)
+    (home-page
+     "https://python-hyper.org/hyperframe/en/latest/")
+    (synopsis "HTTP/2 framing layer for Python")
+    (description "@code{python-hyperframe} library contains the HTTP/2
+framing code used in the @code{hyper} project.  It provides a pure-Python
+codebase that is capable of decoding a binary stream into HTTP/2 frames.")
+    (license license:expat)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCH 14/26] gnu: Add python-hstspreload.
                     ` (4 preceding siblings ...)
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 13/26] gnu: Add python-h2 Giacomo Leidi
@ 2020-06-11 15:13 70% ` Giacomo Leidi
  2020-06-11 15:13 70% ` [bug#41807] [PATCH 24/26] gnu: Add python-httpx Giacomo Leidi
  2020-06-11 15:13 67% ` [bug#41807] [PATCH 26/26] gnu: Add python-sanic Giacomo Leidi
  7 siblings, 0 replies; 200+ results
From: Giacomo Leidi @ 2020-06-11 15:13 UTC (permalink / raw)
  To: 41807; +Cc: Giacomo Leidi

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d658de9aee..d40dad2e00 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4185,3 +4185,24 @@ codebase that is capable of decoding a binary stream into HTTP/2 frames.")
     (description
      "@code{python-h2} is a Python implementation of a HTTP/2 protocol stack.")
     (license license:expat)))
+
+(define-public python-hstspreload
+  (package
+    (name "python-hstspreload")
+    (version "2020.5.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hstspreload" version))
+       (sha256
+        (base32
+         "148zkdjqkhmdm3wwffpbgq8nvcnvpgrgrmgih63j14lb822374i6"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/sethmlarson/hstspreload")
+    (synopsis
+     "Chromium HSTS Preload list as a Python package")
+    (description
+     "@code{python-hstspreload} contains Chromium HSTS Preload list
+as a Python package.")
+    (license license:bsd-3)))
-- 
2.26.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCHES] Add python-sanic and dependencies.
  @ 2020-06-11 20:41 79% ` paul
    1 sibling, 0 replies; 200+ results
From: paul @ 2020-06-11 20:41 UTC (permalink / raw)
  To: 41807

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

Hi I'm sending an updated version of patch 24 and patch 26.

Thanks again,

Giacomo


[-- Attachment #2: 0024-gnu-Add-python-httpx.patch --]
[-- Type: text/x-patch, Size: 1861 bytes --]

From 121ffb5b3f3c5e19d4a84270edcff6c89f788d3e Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 18:08:03 +0200
Subject: [PATCH 24/26] gnu: Add python-httpx.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d40dad2e00..3dd14e41ec 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4206,3 +4206,34 @@ codebase that is capable of decoding a binary stream into HTTP/2 frames.")
      "@code{python-hstspreload} contains Chromium HSTS Preload list
 as a Python package.")
     (license license:bsd-3)))
+
+(define-public python-httpx
+  (package
+    (name "python-httpx")
+    (version "0.13.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "httpx" version))
+       (sha256
+        (base32
+         "1bpg46mx8n74hxmw2pvgr5pc590hxdsh4wrs4j5bm00bx49vshin"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests depend on httpcore.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-certifi" ,python-certifi)
+       ("python-chardet" ,python-chardet)
+       ("python-h11" ,python-h11)
+       ("python-h2" ,python-h2)
+       ("python-hstspreload" ,python-hstspreload)
+       ("python-idna" ,python-idna)
+       ("python-rfc3986" ,python-rfc3986)
+       ("python-sniffio" ,python-sniffio)
+       ("python-urllib3" ,python-urllib3)))
+    (home-page "https://github.com/encode/httpx")
+    (synopsis "HTTP client for Python")
+    (description "HTTPX is a fully featured HTTP client for Python 3,
+which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.")
+    (license license:bsd-3)))
-- 
2.26.2


[-- Attachment #3: 0026-gnu-Add-python-sanic.patch --]
[-- Type: text/x-patch, Size: 2382 bytes --]

From b3a25e0bde18087fcbf769cdb5e604996b479829 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Thu, 11 Jun 2020 16:43:26 +0200
Subject: [PATCH 26/26] gnu: Add python-sanic.

* gnu/packages/python-web.scm (python-sanic): New variable,
(python-httpx-0.11): New variable.
---
 gnu/packages/python-web.scm | 49 +++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3dd14e41ec..22b1b1299e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4237,3 +4237,52 @@ as a Python package.")
     (description "HTTPX is a fully featured HTTP client for Python 3,
 which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.")
     (license license:bsd-3)))
+
+;; This is only for python-sanic
+(define-public python-httpx-0.11
+  (package (inherit python-httpx)
+    (version "0.11.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "httpx" version))
+        (sha256
+          (base32
+           "1xrwlgnzm9x0d92s22ypli4cybwwv8idpp8m7naigmzfdrrgnavx"))))
+    (arguments
+     ;; FIXME: Tests can't import rfc3986.
+     `(#:tests? #f))))
+
+(define-public python-sanic
+  (package
+    (name "python-sanic")
+    (version "20.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sanic" version))
+       (sha256
+        (base32
+         "1zssckzjsa1qi2bxirn0dksszmfhsbrkakvfx3r080sdcph8y1xl"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests depend on httpcore.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-aiofiles" ,python-aiofiles)
+       ("python-httptools" ,python-httptools)
+       ("python-httpx" ,python-httpx-0.11)
+       ("python-multidict" ,python-multidict)
+       ("python-ujson" ,python-ujson)
+       ("python-uvloop" ,python-uvloop)
+       ("python-websockets" ,python-websockets)))
+    (home-page
+     "https://github.com/huge-success/sanic/")
+    (synopsis
+     "Async Python 3.6+ web server/framework")
+    (description
+     "Sanic is a Python 3.6+ web server and web framework
+that's written to go fast.  It allows the usage of the
+@code{async/await} syntax added in Python 3.5, which makes
+your code non-blocking and speedy.")
+    (license license:expat)))
-- 
2.26.2


^ permalink raw reply related	[relevance 79%]

* [bug#42288] [PATCH] gnu: httpie: Update to 2.2.0.
@ 2020-07-09  7:48 70% Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-07-09  7:48 UTC (permalink / raw)
  To: 42288; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (httpie): Update to 2.2.0.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c929e254f7..c3016c8d95 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -372,14 +372,14 @@ other HTTP libraries.")
 (define-public httpie
   (package
     (name "httpie")
-    (version "2.0.0")
+    (version "2.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "httpie" version))
        (sha256
         (base32
-         "02bw20cwv3a1lzrn919dk25dq4v81x6q786zlrqsqzhsdxszj14c"))))
+         "18058k0i3cc4ixvgzj882w693lf40283flvspbrvd876iq42ib1i"))))
     (build-system python-build-system)
     (arguments
      ;; The tests attempt to access external web servers, so we cannot run them.
-- 
2.27.0





^ permalink raw reply related	[relevance 70%]

* [bug#42511] [PATCH 1/2] gnu: python-slugify: Update to 4.0.1.
  @ 2020-07-24  8:17 77% ` Tanguy Le Carrour
  2020-07-25 17:23 74% ` [bug#42511] [PATCH v2 " Tanguy Le Carrour
  2020-07-27 20:08 74% ` [bug#42511] [PATCH v3 1/3] " Tanguy Le Carrour
  2 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-07-24  8:17 UTC (permalink / raw)
  To: 42511; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (python-slugify): Update to 4.0.1. [source] Drop patch.
* gnu/packages/patches/python-slugify-depend-on-unidecode.patch: Remove useless patch.
---
 .../python-slugify-depend-on-unidecode.patch  | 22 -------------------
 gnu/packages/python-web.scm                   |  6 ++---
 2 files changed, 2 insertions(+), 26 deletions(-)
 delete mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch

diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
deleted file mode 100644
index 5ac749c19d..0000000000
--- a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 4800173..6bdd77f 100755
---- a/setup.py
-+++ b/setup.py
-@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
- author = 'Val Neekman'
- author_email = 'info@neekware.com'
- license = 'MIT'
--install_requires = ['text-unidecode>=1.3']
--extras_require = {'unidecode': ['Unidecode>=1.1.1']}
-+install_requires = ['Unidecode']
- 
- classifiers = [
-     'Development Status :: 5 - Production/Stable',
-@@ -67,7 +66,6 @@ setup(
-     author_email=author_email,
-     packages=find_packages(exclude=EXCLUDE_FROM_PACKAGES),
-     install_requires=install_requires,
--    extras_require=extras_require,
-     classifiers=classifiers,
-     entry_points={'console_scripts': ['slugify=slugify.slugify:main']},
- )
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a202873fd0..a52220ff23 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3522,15 +3522,13 @@ Python.")
 (define-public python-slugify
   (package
     (name "python-slugify")
-    (version "3.0.4")
+    (version "4.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "python-slugify" version))
        (sha256
-        (base32 "0dv97yi5fq074q5qyqbin09pmi8ixg36caf5nkpw2bqkd8jh6pap"))
-       (patches
-        (search-patches "python-slugify-depend-on-unidecode.patch"))))
+        (base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9"))))
     (native-inputs
      `(("python-wheel" ,python-wheel)))
     (propagated-inputs
-- 
2.27.0





^ permalink raw reply related	[relevance 77%]

* [bug#42511] [PATCH v2 1/2] gnu: python-slugify: Update to 4.0.1.
    2020-07-24  8:17 77% ` [bug#42511] [PATCH 1/2] gnu: python-slugify: Update to 4.0.1 Tanguy Le Carrour
@ 2020-07-25 17:23 74% ` Tanguy Le Carrour
  2020-07-27 20:08 74% ` [bug#42511] [PATCH v3 1/3] " Tanguy Le Carrour
  2 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-07-25 17:23 UTC (permalink / raw)
  To: 42511; +Cc: go.wigust, Tanguy Le Carrour

* gnu/packages/patches/python-slugify-depend-on-unidecode.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-web.scm (python-slugify): Update to 4.0.1. [source] Drop patch.
---
 gnu/local.mk                                  |  1 -
 .../python-slugify-depend-on-unidecode.patch  | 22 -------------------
 gnu/packages/python-web.scm                   |  6 ++---
 3 files changed, 2 insertions(+), 27 deletions(-)
 delete mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f2a7b6b984..bb9b03bb6f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1478,7 +1478,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch	\
   %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
   %D%/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch	\
-  %D%/packages/patches/python-slugify-depend-on-unidecode.patch	\
   %D%/packages/patches/python2-subprocess32-disable-input-test.patch	\
   %D%/packages/patches/python-tinycss2-flake8-compat.patch	\
   %D%/packages/patches/python-unittest2-python3-compat.patch	\
diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
deleted file mode 100644
index 5ac749c19d..0000000000
--- a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 4800173..6bdd77f 100755
---- a/setup.py
-+++ b/setup.py
-@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
- author = 'Val Neekman'
- author_email = 'info@neekware.com'
- license = 'MIT'
--install_requires = ['text-unidecode>=1.3']
--extras_require = {'unidecode': ['Unidecode>=1.1.1']}
-+install_requires = ['Unidecode']
- 
- classifiers = [
-     'Development Status :: 5 - Production/Stable',
-@@ -67,7 +66,6 @@ setup(
-     author_email=author_email,
-     packages=find_packages(exclude=EXCLUDE_FROM_PACKAGES),
-     install_requires=install_requires,
--    extras_require=extras_require,
-     classifiers=classifiers,
-     entry_points={'console_scripts': ['slugify=slugify.slugify:main']},
- )
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a202873fd0..a52220ff23 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3522,15 +3522,13 @@ Python.")
 (define-public python-slugify
   (package
     (name "python-slugify")
-    (version "3.0.4")
+    (version "4.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "python-slugify" version))
        (sha256
-        (base32 "0dv97yi5fq074q5qyqbin09pmi8ixg36caf5nkpw2bqkd8jh6pap"))
-       (patches
-        (search-patches "python-slugify-depend-on-unidecode.patch"))))
+        (base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9"))))
     (native-inputs
      `(("python-wheel" ,python-wheel)))
     (propagated-inputs
-- 
2.27.0





^ permalink raw reply related	[relevance 74%]

* [bug#42511] [PATCH v3 1/3] gnu: python-slugify: Update to 4.0.1.
    2020-07-24  8:17 77% ` [bug#42511] [PATCH 1/2] gnu: python-slugify: Update to 4.0.1 Tanguy Le Carrour
  2020-07-25 17:23 74% ` [bug#42511] [PATCH v2 " Tanguy Le Carrour
@ 2020-07-27 20:08 74% ` Tanguy Le Carrour
  2 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-07-27 20:08 UTC (permalink / raw)
  To: 42511; +Cc: Tanguy Le Carrour

* gnu/packages/patches/python-slugify-depend-on-unidecode.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-web.scm (python-slugify): Update to 4.0.1. [source] Drop patch.
---
 gnu/local.mk                                  |  1 -
 .../python-slugify-depend-on-unidecode.patch  | 22 -------------------
 gnu/packages/python-web.scm                   |  6 ++---
 3 files changed, 2 insertions(+), 27 deletions(-)
 delete mode 100644 gnu/packages/patches/python-slugify-depend-on-unidecode.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 8274e158d0..ef67d2e00a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1468,7 +1468,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch	\
   %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
   %D%/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch	\
-  %D%/packages/patches/python-slugify-depend-on-unidecode.patch	\
   %D%/packages/patches/python2-subprocess32-disable-input-test.patch	\
   %D%/packages/patches/python-tinycss2-flake8-compat.patch	\
   %D%/packages/patches/python-unittest2-python3-compat.patch	\
diff --git a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch b/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
deleted file mode 100644
index 5ac749c19d..0000000000
--- a/gnu/packages/patches/python-slugify-depend-on-unidecode.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 4800173..6bdd77f 100755
---- a/setup.py
-+++ b/setup.py
-@@ -14,8 +14,7 @@ url = 'https://github.com/un33k/python-slugify'
- author = 'Val Neekman'
- author_email = 'info@neekware.com'
- license = 'MIT'
--install_requires = ['text-unidecode>=1.3']
--extras_require = {'unidecode': ['Unidecode>=1.1.1']}
-+install_requires = ['Unidecode']
- 
- classifiers = [
-     'Development Status :: 5 - Production/Stable',
-@@ -67,7 +66,6 @@ setup(
-     author_email=author_email,
-     packages=find_packages(exclude=EXCLUDE_FROM_PACKAGES),
-     install_requires=install_requires,
--    extras_require=extras_require,
-     classifiers=classifiers,
-     entry_points={'console_scripts': ['slugify=slugify.slugify:main']},
- )
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 44fe95479f..d1dc907e35 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3522,15 +3522,13 @@ Python.")
 (define-public python-slugify
   (package
     (name "python-slugify")
-    (version "3.0.4")
+    (version "4.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "python-slugify" version))
        (sha256
-        (base32 "0dv97yi5fq074q5qyqbin09pmi8ixg36caf5nkpw2bqkd8jh6pap"))
-       (patches
-        (search-patches "python-slugify-depend-on-unidecode.patch"))))
+        (base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9"))))
     (native-inputs
      `(("python-wheel" ,python-wheel)))
     (propagated-inputs
-- 
2.27.0





^ permalink raw reply related	[relevance 74%]

* [bug#42717] [PATCH 1/3] gnu: Add python-hyperframe.
@ 2020-08-05 15:12 68% Vinicius Monego
  2020-08-05 15:12 68% ` [bug#42719] [PATCH 2/3] gnu: Add python-hpack Vinicius Monego
  2020-08-05 15:12 68% ` [bug#42718] [PATCH 3/3] gnu: Add python-h2 Vinicius Monego
  0 siblings, 2 replies; 200+ results
From: Vinicius Monego @ 2020-08-05 15:12 UTC (permalink / raw)
  To: 42717; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-hyperframe): 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 0bdea1b86d..a9f63bcf28 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -37,6 +37,7 @@
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
 ;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -464,6 +465,34 @@ follow links and submit forms.  It doesn’t do JavaScript.")
 (define-public python2-mechanicalsoup
   (package-with-python2 python-mechanicalsoup))
 
+(define-public python-hyperframe
+  (package
+    (name "python-hyperframe")
+    (version "5.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hyperframe" version))
+       (sha256
+        (base32 "07xlf44l1cw0ghxx46sbmkgzil8vqv8kxwy42ywikiy35izw3xd9"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "test"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/python-hyper/hyperframe")
+    (synopsis "HTTP/2 framing layer for Python")
+    (description
+     "This library contains the HTTP/2 framing code used in the hyper project.
+It provides a pure-Python codebase that is capable of decoding a binary stream
+into HTTP/2 frames.")
+    (license license:expat)))
+
 (define-public python-sockjs-tornado
   (package
     (name "python-sockjs-tornado")
-- 
2.20.1





^ permalink raw reply related	[relevance 68%]

* [bug#42718] [PATCH 3/3] gnu: Add python-h2.
  2020-08-05 15:12 68% [bug#42717] [PATCH 1/3] gnu: Add python-hyperframe Vinicius Monego
  2020-08-05 15:12 68% ` [bug#42719] [PATCH 2/3] gnu: Add python-hpack Vinicius Monego
@ 2020-08-05 15:12 68% ` Vinicius Monego
  1 sibling, 0 replies; 200+ results
From: Vinicius Monego @ 2020-08-05 15:12 UTC (permalink / raw)
  To: 42718; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 857a0e755c..f9c8157f0d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -527,6 +527,39 @@ into HTTP/2 frames.")
 for use in Python programs that implement HTTP/2.")
     (license license:expat)))
 
+(define-public python-h2
+  (package
+    (name "python-h2")
+    (version "3.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "h2" version))
+       (sha256
+        (base32 "051gg30aca26rdxsmr9svwqm06pdz9bv21ch4n0lgi7jsvml2pw7"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "test"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-hpack" ,python-hpack)
+       ("python-hyperframe" ,python-hyperframe)))
+    (home-page "https://github.com/python-hyper/hyper-h2")
+    (synopsis "HTTP/2 State-Machine based protocol implementation")
+    (description
+     "This module contains a pure-Python implementation of a HTTP/2 protocol
+stack.  It does not provide a parsing layer, a network layer, or any rules
+about concurrency.  Instead, it's a purely in-memory solution, defined in
+terms of data actions and HTTP/2 frames.  This is one building block of a full
+Python HTTP implementation.")
+    (license license:expat)))
+
 (define-public python-sockjs-tornado
   (package
     (name "python-sockjs-tornado")
-- 
2.20.1





^ permalink raw reply related	[relevance 68%]

* [bug#42719] [PATCH 2/3] gnu: Add python-hpack.
  2020-08-05 15:12 68% [bug#42717] [PATCH 1/3] gnu: Add python-hyperframe Vinicius Monego
@ 2020-08-05 15:12 68% ` Vinicius Monego
  2020-08-05 15:12 68% ` [bug#42718] [PATCH 3/3] gnu: Add python-h2 Vinicius Monego
  1 sibling, 0 replies; 200+ results
From: Vinicius Monego @ 2020-08-05 15:12 UTC (permalink / raw)
  To: 42719; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a9f63bcf28..857a0e755c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -493,6 +493,40 @@ It provides a pure-Python codebase that is capable of decoding a binary stream
 into HTTP/2 frames.")
     (license license:expat)))
 
+(define-public python-hpack
+  (package
+    (name "python-hpack")
+    (version "3.0.0")
+    (source
+     (origin
+       ;; PyPI tarball is missing some files necessary for the tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/python-hyper/hpack")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0w8hkz50a6lzkmgi41ryicm0mh9ca9cx29pm3s0xlpn0vs29xrmd"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (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"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://hyper.rtfd.org")
+    (synopsis "Pure-Python HPACK header compression")
+    (description
+     "This module contains a pure-Python HTTP/2 header encoding (HPACK) logic
+for use in Python programs that implement HTTP/2.")
+    (license license:expat)))
+
 (define-public python-sockjs-tornado
   (package
     (name "python-sockjs-tornado")
-- 
2.20.1





^ permalink raw reply related	[relevance 68%]

* [bug#42894] [PATCH 1/4] gnu: Add python-h11.
@ 2020-08-16 20:04 70% Vinicius Monego
  2020-08-16 20:07 69% ` [bug#42894] [PATCH 2/4] gnu: Add python-wsproto Vinicius Monego
  0 siblings, 1 reply; 200+ results
From: Vinicius Monego @ 2020-08-16 20:04 UTC (permalink / raw)
  To: 42894; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f9c8157f0d..957c5ceeff 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -527,6 +527,34 @@ into HTTP/2 frames.")
 for use in Python programs that implement HTTP/2.")
     (license license:expat)))
 
+(define-public python-h11
+  (package
+    (name "python-h11")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "h11" version))
+       (sha256
+        (base32 "1qfad70h59hya21vrzz8dqyyaiqhac0anl2dx3s3k80gpskvrm1k"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest" "-vv"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/python-hyper/h11")
+    (synopsis "Pure-Python, bring-your-own-I/O implementation of HTTP/1.1")
+    (description
+     "This is a little HTTP/1.1 library written from scratch in Python, heavily
+inspired by hyper-h2.  It's a bring-your-own-I/O library; h11 contains no IO
+code whatsoever.  This means you can hook h11 up to your favorite network API,
+and that could be anything you want.")
+    (license license:expat)))
+
 (define-public python-h2
   (package
     (name "python-h2")
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#42894] [PATCH 2/4] gnu: Add python-wsproto.
  2020-08-16 20:04 70% [bug#42894] [PATCH 1/4] gnu: Add python-h11 Vinicius Monego
@ 2020-08-16 20:07 69% ` Vinicius Monego
  2020-08-16 20:07 69%   ` [bug#42894] [PATCH 3/4] gnu: Add python-priority Vinicius Monego
  2020-08-16 20:07 67%   ` [bug#42894] [PATCH 4/4] gnu: Add python-hypercorn Vinicius Monego
  0 siblings, 2 replies; 200+ results
From: Vinicius Monego @ 2020-08-16 20:07 UTC (permalink / raw)
  To: 42894; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 957c5ceeff..f05658555a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -996,6 +996,37 @@ teams extension for python-openid.")
 (define-public python2-openid-teams
   (package-with-python2 python-openid-teams))
 
+(define-public python-wsproto
+  (package
+    (name "python-wsproto")
+    (version "0.15.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "wsproto" version))
+       (sha256
+        (base32 "17gsxlli4w8am1wwwl3k90hpdfa213ax40ycbbvb7hjx1v1rhiv1"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "test"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-h11" ,python-h11)))
+    (home-page "https://github.com/python-hyper/wsproto/")
+    (synopsis "WebSockets state-machine based protocol implementation")
+    (description
+     "@code{wsproto} is a pure-Python implementation of a WebSocket protocol
+stack.  It's written from the ground up to be embeddable in whatever program you
+choose to use, ensuring that you can communicate via WebSockets, as defined in
+RFC6455, regardless of your programming paradigm.")
+    (license license:expat)))
+
 (define-public python-tornado
   (package
     (name "python-tornado")
-- 
2.20.1





^ permalink raw reply related	[relevance 69%]

* [bug#42894] [PATCH 3/4] gnu: Add python-priority.
  2020-08-16 20:07 69% ` [bug#42894] [PATCH 2/4] gnu: Add python-wsproto Vinicius Monego
@ 2020-08-16 20:07 69%   ` Vinicius Monego
  2020-08-16 20:07 67%   ` [bug#42894] [PATCH 4/4] gnu: Add python-hypercorn Vinicius Monego
  1 sibling, 0 replies; 200+ results
From: Vinicius Monego @ 2020-08-16 20:07 UTC (permalink / raw)
  To: 42894; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f05658555a..d6d3b733de 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -996,6 +996,38 @@ teams extension for python-openid.")
 (define-public python2-openid-teams
   (package-with-python2 python-openid-teams))
 
+(define-public python-priority
+  (package
+    (name "python-priority")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "priority" version))
+       (sha256
+        (base32 "1gpzn9k9zgks0iw5wdmad9b4dry8haiz2sbp6gycpjkzdld9dhbb"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "test" "-k"
+                     ;; This test exceeded the Hypothesis deadline.
+                     "not test_period_of_repetition"))))))
+    (native-inputs
+     `(("python-hypothesis" ,python-hypothesis)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-xdist" ,python-pytest-xdist)))
+    (home-page "http://python-hyper.org/priority/")
+    (synopsis "Pure-Python implementation of the HTTP/2 priority tree")
+    (description
+     "Priority is a pure-Python implementation of the priority logic for HTTP/2,
+set out in RFC 7540 Section 5.3 (Stream Priority).")
+    (license license:expat)))
+
 (define-public python-wsproto
   (package
     (name "python-wsproto")
-- 
2.20.1





^ permalink raw reply related	[relevance 69%]

* [bug#42894] [PATCH 4/4] gnu: Add python-hypercorn.
  2020-08-16 20:07 69% ` [bug#42894] [PATCH 2/4] gnu: Add python-wsproto Vinicius Monego
  2020-08-16 20:07 69%   ` [bug#42894] [PATCH 3/4] gnu: Add python-priority Vinicius Monego
@ 2020-08-16 20:07 67%   ` Vinicius Monego
  1 sibling, 0 replies; 200+ results
From: Vinicius Monego @ 2020-08-16 20:07 UTC (permalink / raw)
  To: 42894; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d6d3b733de..59b2d196a8 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1059,6 +1059,49 @@ choose to use, ensuring that you can communicate via WebSockets, as defined in
 RFC6455, regardless of your programming paradigm.")
     (license license:expat)))
 
+(define-public python-hypercorn
+  (package
+    (name "python-hypercorn")
+    (version "0.10.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Hypercorn" version))
+       (sha256
+        (base32 "15dgy47a18w2ls3hwykra1cyf7yzxmfjqnsqml482p12cxr2xwqr"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv"))))))
+    (propagated-inputs
+     `(("python-h11" ,python-h11)
+       ("python-h2" ,python-h2)
+       ("python-priority" ,python-priority)
+       ("python-toml" ,python-toml)
+       ("python-typing-extensions"
+        ,python-typing-extensions)
+       ("python-wsproto" ,python-wsproto)))
+    (native-inputs
+     `(("python-hypothesis" ,python-hypothesis)
+       ("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-asyncio" ,python-pytest-asyncio)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-trio" ,python-pytest-trio)
+       ("python-trio" ,python-trio)))
+    (home-page "https://gitlab.com/pgjones/hypercorn/")
+    (synopsis "ASGI Server based on Hyper libraries")
+    (description
+     "Hypercorn is an ASGI web server based on the sans-io hyper, h11, h2, and
+wsproto libraries and inspired by Gunicorn.  It supports HTTP/1, HTTP/2,
+WebSockets (over HTTP/1 and HTTP/2), ASGI/2, and ASGI/3 specifications.  It can
+utilise asyncio, uvloop, or trio worker types.")
+    (license license:expat)))
+
 (define-public python-tornado
   (package
     (name "python-tornado")
-- 
2.20.1





^ permalink raw reply related	[relevance 67%]

* [bug#43045] [PATCH 5/7] gnu: Add python-cloudscraper.
    2020-08-25 17:37 70% ` [bug#43045] [PATCH 4/7] gnu: Add python-requests-toolbelt-0.9.1 Leo Prikler
@ 2020-08-25 17:37 70% ` Leo Prikler
  1 sibling, 0 replies; 200+ results
From: Leo Prikler @ 2020-08-25 17:37 UTC (permalink / raw)
  To: 43045

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f7a623ceba..52ea88c5c0 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4666,3 +4666,39 @@ using a pure Python implementation.")
      "This package provices a simple implementation of Encrypted Content
 Encoding for HTTP.")
     (license license:expat)))
+
+(define-public python-cloudscraper
+  (package
+    (name "python-cloudscraper")
+    (version "1.2.46")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "cloudscraper" version))
+       (sha256
+        (base32
+         "1br4p648yassywsd7whz1c7s10rwdysnd7wdqfjq9bksqfxrac3r"))
+       (modules '((guix build utils)))
+       (snippet
+        '(with-directory-excursion "cloudscraper"
+           (for-each delete-file
+                     '("captcha/2captcha.py"
+                       "captcha/9kw.py"
+                       "captcha/anticaptcha.py"
+                       "captcha/deathbycaptcha.py"
+                       "interpreters/js2py.py"
+                       "interpreters/v8.py"))
+           #t))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-requests" ,python-requests)
+       ("python-requests-toolbelt" ,python-requests-toolbelt-0.9.1)
+       ("python-pyparsing" ,python-pyparsing-2.4.7)))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/venomous/cloudscraper")
+    (synopsis "Cloudflare anti-bot bypass")
+    (description
+     "This module acts as a webbrowser solving Cloudflare's Javascript
+challenges.")
+    (license license:expat)))
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43045] [PATCH 4/7] gnu: Add python-requests-toolbelt-0.9.1.
  @ 2020-08-25 17:37 70% ` Leo Prikler
  2020-08-25 17:37 70% ` [bug#43045] [PATCH 5/7] gnu: Add python-cloudscraper Leo Prikler
  1 sibling, 0 replies; 200+ results
From: Leo Prikler @ 2020-08-25 17:37 UTC (permalink / raw)
  To: 43045

* gnu/packages/python-web.scm (python-requests-toolbelt-0.9.1): New variable.
---
 gnu/packages/python-web.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1b97d1401d..f7a623ceba 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2003,6 +2003,20 @@ with python-requests.")
 (define-public python2-requests-toolbelt
   (package-with-python2 python-requests-toolbelt))
 
+(define-public python-requests-toolbelt-0.9.1
+  (package
+    (inherit python-requests-toolbelt)
+    (version "0.9.1")
+    (source (origin
+             (method url-fetch)
+             (uri (pypi-uri "requests-toolbelt" version))
+             (sha256
+              (base32
+               "1h3gm88dcjbd7gm229a7x5qkkhnsqsjz0m0l2xyavm2ab3a8k04n"))))
+    (arguments
+     `(;; FIXME: Some tests require network access.
+       #:tests? #f))))
+
 (define-public python-oauthlib
   (package
     (name "python-oauthlib")
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43233] [PATCH 10/10] gnu: Add python-httpx.
  2020-09-06  5:46 67% ` [bug#43233] [PATCH 02/10] gnu: Add python-uvloop Vinicius Monego
  2020-09-06  5:46 66%   ` [bug#43233] [PATCH 05/10] gnu: Add python-uvicorn Vinicius Monego
  2020-09-06  5:46 61%   ` [bug#43233] [PATCH 09/10] gnu: Add python-httpcore Vinicius Monego
@ 2020-09-06  5:46 59%   ` Vinicius Monego
  2 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-06  5:46 UTC (permalink / raw)
  To: 43233; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4fe637a5c6..82f62975c1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -73,6 +73,7 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-check)
+  #:use-module (gnu packages python-compression)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages serialization)
@@ -4380,6 +4381,93 @@ Some things HTTP Core does do:
 @end itemize")
     (license license:bsd-3)))
 
+(define-public python-httpx
+  (package
+    (name "python-httpx")
+    (version "0.14.3")
+    (source
+     (origin
+       ;; PyPI tarball does not contain tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/encode/httpx")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0mn8gqkgaij3s2pbwgrih20iq34f3f82dfvypaw3nnh7n63vna43"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest" "-vv" "-k"
+                     ;; This test tries to open an outgoing connection.
+                     "not test_connect_timeout[asyncio]"))))))
+    (native-inputs
+     `(("python-autoflake" ,python-autoflake)
+       ("python-black" ,python-black)
+       ("python-cryptography" ,python-cryptography)
+       ("python-flake8" ,python-flake8)
+       ("python-flake8-bugbear" ,python-flake8-bugbear)
+       ("python-flake8-pie" ,python-flake8-pie)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-asyncio" ,python-pytest-asyncio)
+       ("python-pytest-trio" ,python-pytest-trio)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-trio" ,python-trio)
+       ("python-trio-typing" ,python-trio-typing)
+       ("python-trustme" ,python-trustme)
+       ("python-uvicorn" ,python-uvicorn)))
+    (propagated-inputs
+     `(("python-brotli" ,python-brotli)
+       ("python-certifi" ,python-certifi)
+       ("python-chardet" ,python-chardet)
+       ("python-httpcore" ,python-httpcore)
+       ("python-idna" ,python-idna)
+       ("python-rfc3986" ,python-rfc3986)
+       ("python-sniffio" ,python-sniffio)))
+    (home-page "https://github.com/encode/httpx")
+    (synopsis "Next generation HTTP client")
+    (description
+     "HTTPX is a fully featured HTTP client for Python 3, which provides sync
+and async APIs, and support for both HTTP/1.1 and HTTP/2.
+
+HTTPX builds on the well-established usability of requests, and gives you:
+
+@itemize
+@item A broadly requests-compatible API.
+@item Standard synchronous interface, but with async support if you need it.
+@item HTTP/1.1 and HTTP/2 support.
+@item Ability to make requests directly to WSGI applications or ASGI applications.
+@item Strict timeouts everywhere.
+@item Fully type annotated.
+@item 99% test coverage.
+@end itemize
+
+Plus all the standard features of requests:
+
+@itemize
+@item International Domains and URLs
+@item Keep-Alive & Connection Pooling
+@item Sessions with Cookie Persistence
+@item Browser-style SSL Verification
+@item Basic/Digest Authentication
+@item Elegant Key/Value Cookies
+@item Automatic Decompression
+@item Automatic Content Decoding
+@item Unicode Response Bodies
+@item Multipart File Uploads
+@item HTTP(S) Proxy Support
+@item Connection Timeouts
+@item Streaming Downloads
+@item .netrc Support
+@item Chunked Requests
+@end itemize")
+    (license license:bsd-3)))
+
 (define-public python-websockets
   (package
     (name "python-websockets")
-- 
2.20.1





^ permalink raw reply related	[relevance 59%]

* [bug#43233] [PATCH 02/10] gnu: Add python-uvloop.
  2020-09-06  5:45 67% [bug#43233] [PATCH 01/10] gnu: Add python-httptools Vinicius Monego
@ 2020-09-06  5:46 67% ` Vinicius Monego
  2020-09-06  5:46 66%   ` [bug#43233] [PATCH 05/10] gnu: Add python-uvicorn Vinicius Monego
                     ` (2 more replies)
  0 siblings, 3 replies; 200+ results
From: Vinicius Monego @ 2020-09-06  5:46 UTC (permalink / raw)
  To: 43233; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 5dc7430bde..49699a7bc5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -68,6 +68,7 @@
   #:use-module (gnu packages databases)
   #:use-module (gnu packages django)
   #:use-module (gnu packages groff)
+  #:use-module (gnu packages libevent)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -3887,6 +3888,43 @@ XPath and therefore does not have all the correctness corner cases that are
 hard or impossible to fix in cssselect.")
     (license license:bsd-3)))
 
+(define-public python-uvloop
+  (package
+    (name "python-uvloop")
+    (version "0.14.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "uvloop" version))
+       (sha256
+        (base32 "07j678z9gf41j98w72ysrnb5sa41pl5yxd7ib17lcwfxqz0cjfhj"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:tests? #f ;FIXME: tests hang and with some errors in the way
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'preparations
+           (lambda _
+             ;; Use packaged libuv.
+             (substitute* "setup.py" (("self.use_system_libuv = False")
+                                      "self.use_system_libuv = True"))
+             #t)))))
+    (native-inputs
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-cython" ,python-cython)
+       ("python-flake8" ,python-flake8)
+       ("python-psutil" ,python-psutil)
+       ("python-pyopenssl" ,python-pyopenssl)
+       ("python-twine" ,python-twine)))
+    (inputs
+     `(("libuv" ,libuv)))
+    (home-page "https://github.com/MagicStack/uvloop")
+    (synopsis "Fast implementation of asyncio event loop on top of libuv")
+    (description
+     "@code{uvloop} is a fast, drop-in replacement of the built-in asyncio
+event loop.  It is implemented in Cython and uses libuv under the hood.")
+    (license license:expat)))
+
 (define-public gunicorn
   (package
     (name "gunicorn")
-- 
2.20.1





^ permalink raw reply related	[relevance 67%]

* [bug#43233] [PATCH 01/10] gnu: Add python-httptools.
@ 2020-09-06  5:45 67% Vinicius Monego
  2020-09-06  5:46 67% ` [bug#43233] [PATCH 02/10] gnu: Add python-uvloop Vinicius Monego
  0 siblings, 1 reply; 200+ results
From: Vinicius Monego @ 2020-09-06  5:45 UTC (permalink / raw)
  To: 43233; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 42b2bbc1a1..5dc7430bde 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3957,6 +3957,55 @@ and fairly speedy.")
     (properties '((hidden? . #t)))
     (native-inputs `())))
 
+(define-public python-httptools
+  (package
+    (name "python-httptools")
+    (version "0.1.1")
+    (source
+     (origin
+       ;; PyPI tarball comes with a vendored http-parser and no tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/MagicStack/httptools")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0g08128x2ixsiwrzskxc6c8ymgzs39wbzr5mhy0mjk30q9pqqv77"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'preparations
+           (lambda _
+             ;; Skip a failing test (AssertionError).  Bug report:
+             ;; https://github.com/MagicStack/httptools/issues/10.
+             (substitute* "tests/test_parser.py"
+               (("    def test_parser_response_1")
+                (string-append
+                 "    @unittest.skip(\"Disabled.\")\n"
+                 "    def test_parser_response_1")))
+             ;; Use packaged http-parser.
+             (substitute* "setup.py" (("self.use_system_http_parser = False")
+                                      "self.use_system_http_parser = True"))
+             ;; This path is hardcoded.  Hardcode our own.
+             (substitute* "httptools/parser/cparser.pxd"
+               (("../../vendor/http-parser")
+                (string-append (assoc-ref %build-inputs "http-parser")
+                               "/include")))
+             ;; Don't force Cython version.
+             (substitute* "setup.py" (("Cython==") "Cython>="))
+             #t)))))
+    (native-inputs
+     `(("python-cython" ,python-cython)
+       ("python-pytest" ,python-pytest)))
+    (inputs
+     `(("http-parser" ,http-parser)))
+    (home-page "https://github.com/MagicStack/httptools")
+    (synopsis "Collection of framework independent HTTP protocol utils")
+    (description
+     "@code{httptools} is a Python binding for the nodejs HTTP parser.")
+    (license license:expat)))
+
 (define-public python-translation-finder
   (package
     (name "python-translation-finder")
-- 
2.20.1





^ permalink raw reply related	[relevance 67%]

* [bug#43233] [PATCH 09/10] gnu: Add python-httpcore.
  2020-09-06  5:46 67% ` [bug#43233] [PATCH 02/10] gnu: Add python-uvloop Vinicius Monego
  2020-09-06  5:46 66%   ` [bug#43233] [PATCH 05/10] gnu: Add python-uvicorn Vinicius Monego
@ 2020-09-06  5:46 61%   ` Vinicius Monego
  2020-09-06  5:46 59%   ` [bug#43233] [PATCH 10/10] gnu: Add python-httpx Vinicius Monego
  2 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-06  5:46 UTC (permalink / raw)
  To: 43233; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-httpcore): New variable.
---
mitmproxy requires python-kaitaistruct which requires kaitai-struct-compiler
which is written in Scala. We don't have a Scala compiler in Guix.
 gnu/packages/python-web.scm | 74 +++++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d772506607..4fe637a5c6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4306,6 +4306,80 @@ and serve updated contents upon changes to the directory.")
 @acronym{TLS, Transport Layer Security} support.")
     (license license:bsd-2)))
 
+(define-public python-httpcore
+  (package
+    (name "python-httpcore")
+    (version "0.10.2")
+    (source
+     (origin
+       ;; PyPI tarball does not contain tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/encode/httpcore")
+             (commit  version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "00gn8nfv814rg6fj7xv97mrra3fvx6fzjcgx9y051ihm6hxljdsi"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-unavailable-tests
+           (lambda _
+             ;; These tests require 'mitmproxy' which is not packaged.
+             (for-each (lambda (f)
+                         (delete-file f))
+                       '("tests/conftest.py"
+                         "tests/sync_tests/test_interfaces.py"
+                         "tests/async_tests/test_interfaces.py"))
+             #t))
+         (add-after 'remove-unavailable-tests 'force-h11-version
+           ;; Allow build with h11 >= 0.10.
+           (lambda _
+             (substitute* "setup.py" (("h11>=0.8,<0.10") "h11"))
+             #t))
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "--cov=httpcore" "--cov=tests" "tests"))))))
+    (native-inputs
+     `(;; ("mitmproxy" ,mitmproxy) ;; TODO: Package this.
+       ("python-autoflake" ,python-autoflake)
+       ("python-flake8" ,python-flake8)
+       ("python-flake8-bugbear" ,python-flake8-bugbear)
+       ("python-flake8-pie" ,python-flake8-pie)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-asyncio" ,python-pytest-asyncio)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-trio" ,python-pytest-trio)
+       ("python-uvicorn" ,python-uvicorn)
+       ("python-trustme" ,python-trustme)))
+    (propagated-inputs
+     `(("python-h11" ,python-h11)
+       ("python-h2" ,python-h2)
+       ("python-sniffio" ,python-sniffio)
+       ("python-trio" ,python-trio)
+       ("python-trio-typing" ,python-trio-typing)))
+    (home-page "https://github.com/encode/httpcore")
+    (synopsis "Minimal, low-level HTTP client")
+    (description
+     "HTTP Core provides a minimal and low-level HTTP client, which does one
+thing only: send HTTP requests.
+
+Some things HTTP Core does do:
+
+@itemize
+@item Sending HTTP requests.
+@item Provides both sync and async interfaces.
+@item Supports HTTP/1.1 and HTTP/2.
+@item Async backend support for asyncio and trio.
+@item Automatic connection pooling.
+@item HTTP(S) proxy support.
+@end itemize")
+    (license license:bsd-3)))
+
 (define-public python-websockets
   (package
     (name "python-websockets")
-- 
2.20.1





^ permalink raw reply related	[relevance 61%]

* [bug#43233] [PATCH 05/10] gnu: Add python-uvicorn.
  2020-09-06  5:46 67% ` [bug#43233] [PATCH 02/10] gnu: Add python-uvloop Vinicius Monego
@ 2020-09-06  5:46 66%   ` Vinicius Monego
  2020-09-06  5:46 61%   ` [bug#43233] [PATCH 09/10] gnu: Add python-httpcore Vinicius Monego
  2020-09-06  5:46 59%   ` [bug#43233] [PATCH 10/10] gnu: Add python-httpx Vinicius Monego
  2 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-06  5:46 UTC (permalink / raw)
  To: 43233; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 49699a7bc5..d772506607 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4044,6 +4044,55 @@ and fairly speedy.")
      "@code{httptools} is a Python binding for the nodejs HTTP parser.")
     (license license:expat)))
 
+(define-public python-uvicorn
+  (package
+    (name "python-uvicorn")
+    (version "0.11.8")
+    (source
+     (origin
+       ;; PyPI tarball has no tests.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/encode/uvicorn")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "00iidg5ysp7k00bw3kmkvr8mghnh4jdi0p2ryiarhryf8wz2r3fy"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv"))))))
+    (native-inputs
+     `(("python-black" ,python-black)
+       ("python-codecov" ,python-codecov)
+       ("python-flake8" ,python-flake8)
+       ("python-isort" ,python-isort)
+       ("python-mypy" ,python-mypy)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-mock" ,python-pytest-mock)
+       ("python-requests" ,python-requests)))
+    (propagated-inputs
+     `(("python-click" ,python-click)
+       ("python-h11" ,python-h11)
+       ("python-httptools" ,python-httptools)
+       ("python-pyyaml" ,python-pyyaml)
+       ("python-uvloop" ,python-uvloop)
+       ("python-watchgod" ,python-watchgod)
+       ("python-websockets" ,python-websockets)
+       ("python-wsproto" ,python-wsproto)))
+    (home-page "https://github.com/encode/uvicorn")
+    (synopsis "Lightning-fast ASGI server")
+    (description
+     "@code{uvicorn} is a lightning-fast ASGI server implementation, using
+@code{uvloop} and @code{httptools}.  It currently supports HTTP/1.1 and
+WebSockets.  Support for HTTP/2 is planned.")
+    (license license:bsd-3)))
+
 (define-public python-translation-finder
   (package
     (name "python-translation-finder")
-- 
2.20.1





^ permalink raw reply related	[relevance 66%]

* [bug#43354] [PATCH 01/55] gnu: Add python-asgiref.
  @ 2020-09-12 14:28 70% ` Marius Bakke
  2020-09-12 14:28 69%   ` [bug#43354] [PATCH 13/55] gnu: Add python-css-html-js-minify Marius Bakke
  2020-09-12 14:28 70%   ` [bug#43354] [PATCH 18/55] gnu: python-webassets: Update to 2.0 Marius Bakke
  0 siblings, 2 replies; 200+ results
From: Marius Bakke @ 2020-09-12 14:28 UTC (permalink / raw)
  To: 43354

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 24bd51e006..87c362e007 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -222,6 +222,36 @@ The package includes a module with full coverage of JSON RPC versions 1.0 and
 comes with a SOCKS proxy client.")
     (license (list license:expat license:bsd-2))))
 
+(define-public python-asgiref
+  (package
+    (name "python-asgiref")
+    (version "3.2.10")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "asgiref" version))
+              (sha256
+               (base32
+                "06kg3hnnvh7qg0w9amkvk1hd6n6bs055r04b7if6ipa7w4g92lby"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-vv"))))))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-asyncio" ,python-pytest-asyncio)))
+    (home-page "https://github.com/django/asgiref/")
+    (synopsis "ASGI specs, helper code, and adapters")
+    (description
+     "ASGI is a standard for Python asynchronous web apps and servers to
+communicate with each other, and positioned as an asynchronous successor to
+WSGI.  This package includes libraries for implementing ASGI servers.")
+    (license license:bsd-3)))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43354] [PATCH 13/55] gnu: Add python-css-html-js-minify.
  2020-09-12 14:28 70% ` [bug#43354] [PATCH 01/55] gnu: Add python-asgiref Marius Bakke
@ 2020-09-12 14:28 69%   ` Marius Bakke
  2020-09-12 14:28 70%   ` [bug#43354] [PATCH 18/55] gnu: python-webassets: Update to 2.0 Marius Bakke
  1 sibling, 0 replies; 200+ results
From: Marius Bakke @ 2020-09-12 14:28 UTC (permalink / raw)
  To: 43354

* gnu/packages/python-web.scm (python-css-html-js-minify): New public variable.
---
 gnu/packages/python-web.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 87c362e007..b6fac0bf65 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -252,6 +252,30 @@ communicate with each other, and positioned as an asynchronous successor to
 WSGI.  This package includes libraries for implementing ASGI servers.")
     (license license:bsd-3)))
 
+(define-public python-css-html-js-minify
+  (package
+    (name "python-css-html-js-minify")
+    (version "2.5.5")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "css-html-js-minify" version ".zip"))
+              (sha256
+               (base32
+                "0v3l2dqdk2y4r6ax259gs4ij1zzm9yxg6491s6254vs9w3vi37sa"))))
+    (build-system python-build-system)
+    ;; XXX: The git repository has no tags, and the PyPI releases do not
+    ;; contain tests.
+    (arguments '(#:tests? #f))
+    (native-inputs `(("unzip" ,unzip)))
+    (home-page "https://github.com/juancarlospaco/css-html-js-minify")
+    (synopsis "CSS/HTML/JS minifier")
+    (description
+     "This package provides a single-file minifier for CSS, HTML, and JavaScript.")
+    ;; XXX: The README just says "GNU GPL and GNU LGPL and MIT".  From
+    ;; <https://github.com/juancarlospaco/css-html-js-minify/issues/9> it
+    ;; looks like the user can choose a license.
+    (license (list license:gpl3+ license:lgpl3+ license:expat))))
+
 (define-public python-falcon
   (package
     (name "python-falcon")
-- 
2.28.0





^ permalink raw reply related	[relevance 69%]

* [bug#43354] [PATCH 18/55] gnu: python-webassets: Update to 2.0.
  2020-09-12 14:28 70% ` [bug#43354] [PATCH 01/55] gnu: Add python-asgiref Marius Bakke
  2020-09-12 14:28 69%   ` [bug#43354] [PATCH 13/55] gnu: Add python-css-html-js-minify Marius Bakke
@ 2020-09-12 14:28 70%   ` Marius Bakke
  1 sibling, 0 replies; 200+ results
From: Marius Bakke @ 2020-09-12 14:28 UTC (permalink / raw)
  To: 43354

* gnu/packages/python-web.scm (python-webassets): Update to 2.0.
[arguments]: New field.
---
 gnu/packages/python-web.scm | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b6fac0bf65..ea5683c9b8 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3095,15 +3095,29 @@ for Flask.")
 (define-public python-webassets
   (package
     (name "python-webassets")
-    (version "0.12.1")
+    (version "2.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "webassets" version))
        (sha256
         (base32
-         "1nrqkpb7z46h2b77xafxihqv3322cwqv6293ngaky4j3ff4cing7"))))
+         "1kc1042jydgk54xpgcp0r1ib4gys91nhy285jzfcxj3pfqrk4w8n"))))
     (build-system python-build-system)
+    (arguments
+     '(#:phases (modify-phases %standard-phases
+                  (add-before 'check 'disable-some-tests
+                    (lambda _
+                      ;; This test requires 'postcss' and 'babel' which are
+                      ;; not yet available in Guix.
+                      (delete-file "tests/test_filters.py")
+                      #t))
+                  (replace 'check
+                    (lambda _
+                      (setenv "PYTHONPATH"
+                              (string-append "./build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-vv"))))))
     (native-inputs
      `(("python-jinja2" ,python-jinja2)
        ("python-mock" ,python-mock)
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43449] [PATCH] gnu: Add python-requests-ftp.
@ 2020-09-16 15:10 70% Konrad Hinsen
  2020-09-17  7:27 70% ` Konrad Hinsen
  0 siblings, 1 reply; 200+ results
From: Konrad Hinsen @ 2020-09-16 15:10 UTC (permalink / raw)
  To: 43449

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7926539233..b75accccac 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2029,6 +2029,28 @@ with python-requests.")
      `(;; FIXME: Some tests require network access.
        #:tests? #f))))
 
+(define-public python-requests-ftp
+  (package
+    (name "python-requests-ftp")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "requests-ftp" version))
+       (sha256
+        (base32
+         "0yh5v21v36dsjsgv4y9dx4mmz35741l5jf6pbq9w19d8rfsww13m"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-requests" ,python-requests)))
+    (home-page
+     "http://github.com/Lukasa/requests-ftp")
+    (synopsis "FTP Transport Adapter for Requests.")
+    (description
+     "Requests-FTP is an implementation of a simple FTP transport
+adapter for use with the Requests library.")
+    (license license:asl2.0)))
+
 (define-public python-oauthlib
   (package
     (name "python-oauthlib")
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43454] [PATCH 1/2] gnu: Add python-apiron.
@ 2020-09-16 19:54 70% Vinicius Monego
  2020-09-16 19:57 70% ` [bug#43454] [PATCH 2/2] gnu: Add python-beren Vinicius Monego
  0 siblings, 1 reply; 200+ results
From: Vinicius Monego @ 2020-09-16 19:54 UTC (permalink / raw)
  To: 43454; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7926539233..aaa406d547 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1879,6 +1879,39 @@ WebSocket usage in Python programs.")
       "Purl is a Python package for handling URLs.")
     (license license:expat)))
 
+(define-public python-apiron
+  (package
+    (name "python-apiron")
+    (version "5.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "apiron" version))
+       (sha256
+        (base32 "1qwbqn47sf0aqznj1snbv37v8ijx476qqkjf5l9pac7xjkxsr8qk"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "--cov" "-k"
+                     ;; This test tries to connect to the internet.
+                     "not test_call"))))))
+    (propagated-inputs
+     `(("python-requests" ,python-requests)))
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (home-page "https://github.com/ithaka/apiron")
+    (synopsis "Python wrapper for interacting with RESTful APIs")
+    (description
+     "@code{apiron} provides a declarative, structured configuration of
+services and endpoints with a unified interface for interacting with RESTful
+APIs.")
+    (license license:expat)))
+
 (define-public python-requests
   (package
     (name "python-requests")
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#43454] [PATCH 2/2] gnu: Add python-beren.
  2020-09-16 19:54 70% [bug#43454] [PATCH 1/2] gnu: Add python-apiron Vinicius Monego
@ 2020-09-16 19:57 70% ` Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-16 19:57 UTC (permalink / raw)
  To: 43454; +Cc: Vinicius Monego

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index aaa406d547..b0ad2240b6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1912,6 +1912,28 @@ services and endpoints with a unified interface for interacting with RESTful
 APIs.")
     (license license:expat)))
 
+(define-public python-beren
+  (package
+    (name "python-beren")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "beren" version))
+       (sha256
+        (base32 "1v3mdwfqsyza892zvs124ym9w1bkng1j56b7l4dwfjir3723xcgf"))))
+    (build-system python-build-system)
+    (arguments
+     ;; The test tries to open a connection to a remote server.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-apiron" ,python-apiron)))
+    (home-page "https://github.com/teffalump/beren")
+    (synopsis "REST client for Orthanc DICOM servers")
+    (description
+     "@code{beren} provides a REST client for Orthanc, a DICOM server.")
+    (license license:gpl3+)))
+
 (define-public python-requests
   (package
     (name "python-requests")
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#43449] [PATCH] gnu: Add python-requests-ftp.
  2020-09-16 15:10 70% [bug#43449] [PATCH] gnu: Add python-requests-ftp Konrad Hinsen
@ 2020-09-17  7:27 70% ` Konrad Hinsen
  0 siblings, 0 replies; 200+ results
From: Konrad Hinsen @ 2020-09-17  7:27 UTC (permalink / raw)
  To: 43449

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7926539233..6bd413efca 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2029,6 +2029,28 @@ with python-requests.")
      `(;; FIXME: Some tests require network access.
        #:tests? #f))))
 
+(define-public python-requests-ftp
+  (package
+    (name "python-requests-ftp")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "requests-ftp" version))
+       (sha256
+        (base32
+         "0yh5v21v36dsjsgv4y9dx4mmz35741l5jf6pbq9w19d8rfsww13m"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-requests" ,python-requests)))
+    (home-page
+     "https://github.com/Lukasa/requests-ftp")
+    (synopsis "FTP Transport Adapter for Requests")
+    (description
+     "Requests-FTP is an implementation of a simple FTP transport
+adapter for use with the Requests library.")
+    (license license:asl2.0)))
+
 (define-public python-oauthlib
   (package
     (name "python-oauthlib")
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#43574] [PATCH 3/3] gnu: python-httpx: Update to 0.15.0.
  2020-09-22 23:30 70% ` [bug#43574] [PATCH 2/3] gnu: python-httpcore: Update to 0.11.0 Vinicius Monego
@ 2020-09-22 23:30 70%   ` Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-22 23:30 UTC (permalink / raw)
  To: 43574; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-httpx): Update to 0.15.0.
---
 gnu/packages/python-web.scm | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 536ad37117..6f9b56711f 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4463,7 +4463,7 @@ Some things HTTP Core does do:
 (define-public python-httpx
   (package
     (name "python-httpx")
-    (version "0.14.3")
+    (version "0.15.0")
     (source
      (origin
        ;; PyPI tarball does not contain tests.
@@ -4473,7 +4473,7 @@ Some things HTTP Core does do:
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "0mn8gqkgaij3s2pbwgrih20iq34f3f82dfvypaw3nnh7n63vna43"))))
+        (base32 "06w50br6b825sd70l6rm2s0fca1lnjbyx9n8nmcdlwg673z25kc6"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
@@ -4481,8 +4481,16 @@ Some things HTTP Core does do:
          (replace 'check
            (lambda _
              (invoke "pytest" "-vv" "-k"
-                     ;; This test tries to open an outgoing connection.
-                     "not test_connect_timeout[asyncio]"))))))
+                     ;; These tests try to open an outgoing connection.
+                     (string-append
+                      "not test_connect_timeout"
+                      " and not test_that_send_cause_async_client_to_be_not_"
+                      "closed"
+                      " and not test_that_async_client_caused_warning_when_"
+                      "being_deleted"
+                      " and not test_that_send_cause_client_to_be_not_closed"
+                      " and not test_async_proxy_close"
+                      " and not test_sync_proxy_close")))))))
     (native-inputs
      `(("python-autoflake" ,python-autoflake)
        ("python-black" ,python-black)
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#43574] [PATCH 2/3] gnu: python-httpcore: Update to 0.11.0.
  @ 2020-09-22 23:30 70% ` Vinicius Monego
  2020-09-22 23:30 70%   ` [bug#43574] [PATCH 3/3] gnu: python-httpx: Update to 0.15.0 Vinicius Monego
  0 siblings, 1 reply; 200+ results
From: Vinicius Monego @ 2020-09-22 23:30 UTC (permalink / raw)
  To: 43574; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-httpcore): Update to 0.11.0.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b5d4a62c7d..536ad37117 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4388,7 +4388,7 @@ and serve updated contents upon changes to the directory.")
 (define-public python-httpcore
   (package
     (name "python-httpcore")
-    (version "0.10.2")
+    (version "0.11.0")
     (source
      (origin
        ;; PyPI tarball does not contain tests.
@@ -4398,7 +4398,7 @@ and serve updated contents upon changes to the directory.")
              (commit  version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "00gn8nfv814rg6fj7xv97mrra3fvx6fzjcgx9y051ihm6hxljdsi"))))
+        (base32 "01bhajcxqgkdzg7b7x0fqs2lwcfsajlgqwi1nlxx58jss7g2kxn9"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#43656] [PATCH] gnu: python-httpx: Update to 0.15.4.
@ 2020-09-27 21:38 70% Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-09-27 21:38 UTC (permalink / raw)
  To: 43656; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-httpx): Update to 0.15.4.
[home-page]: Change from public repository to project's webpage.
---
 gnu/packages/python-web.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 6f9b56711f..f08cc50abf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4463,7 +4463,7 @@ Some things HTTP Core does do:
 (define-public python-httpx
   (package
     (name "python-httpx")
-    (version "0.15.0")
+    (version "0.15.4")
     (source
      (origin
        ;; PyPI tarball does not contain tests.
@@ -4473,7 +4473,7 @@ Some things HTTP Core does do:
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "06w50br6b825sd70l6rm2s0fca1lnjbyx9n8nmcdlwg673z25kc6"))))
+        (base32 "1qr91xw6jxynvihmw953bi5446ssm9ffmb2c4nhfa77v7883sp21"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
@@ -4516,7 +4516,7 @@ Some things HTTP Core does do:
        ("python-idna" ,python-idna)
        ("python-rfc3986" ,python-rfc3986)
        ("python-sniffio" ,python-sniffio)))
-    (home-page "https://github.com/encode/httpx")
+    (home-page "https://www.python-httpx.org/")
     (synopsis "HTTP client for Python")
     (description
      "HTTPX is a fully featured HTTP client for Python 3, which provides sync
-- 
2.20.1





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCHES] Add python-sanic and dependencies.
  @ 2020-10-20 10:58 73%   ` paul
  2020-11-13  8:59 89%     ` Lars-Dominik Braun
  0 siblings, 1 reply; 200+ results
From: paul @ 2020-10-20 10:58 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: 41807

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

Hi :),

I apologize for the long delay,

On 6/17/20 8:49 AM, Lars-Dominik Braun wrote:
> Hi,
>
>> I'm sending a patch series to add python-sanic, its dependencies and some
>> dependencies of mypy.
> I’ve got Sanic 19.12 in my own channel[1], which I wanted to upstream for a
> long time now. Most packages have tests enabled, because I managed to package
> that really old httpcore. Do you want to try and port these to sanic 20.03?
>
> Cheers,
> Lars
>
> [1] https://github.com/leibniz-psychology/guix-zpid/blob/master/zpid/packages/sanic.scm
>

I managed to package sanic following your channel definition (and 
enabled tests), I updated some packages, removed some other packages 
that were already merged in Guix and produced an updated patch set.

Thank you for your patience,

Giacomo


[-- Attachment #2: 0001-gnu-Add-python-contextvars.patch --]
[-- Type: text/x-patch, Size: 1392 bytes --]

From 63cee61e501d34a234106e47594eec6ce2504c6b Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Mon, 8 Jun 2020 23:57:19 +0200
Subject: [PATCH 1/9] gnu: Add python-contextvars.

* gnu/packages/python-xyz.scm (python-contextvars): 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 575ce40ac8..cf20973cfc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22524,3 +22524,24 @@ applications with variable CPU loads).")
 
 (define-public python2-parallel
   (package-with-python2 python-parallel))
+
+(define-public python-contextvars
+  (package
+    (name "python-contextvars")
+    (version "2.4")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "contextvars" version))
+        (sha256
+          (base32
+            "17n3w8c20kgkgc6khaafdhhlcdj4bzman4paxqsl7harma59137k"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-immutables" ,python-immutables)))
+    (home-page
+      "https://github.com/MagicStack/contextvars")
+    (synopsis "PEP 567 Backport")
+    (description "This package implements a backport of Python 3.7
+@code{contextvars} module (see PEP 567) for Python 3.6.")
+    (license license:asl2.0)))
-- 
2.28.0


[-- Attachment #3: 0002-gnu-Add-python-aiofiles.patch --]
[-- Type: text/x-patch, Size: 1368 bytes --]

From 8f2fa7e0e72f2402b6d4b0970744973523575177 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 9 Jun 2020 17:40:32 +0200
Subject: [PATCH 2/9] gnu: Add python-aiofiles.

* gnu/packages/python-xyz.scm (python-aiofiles): 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 cf20973cfc..1d51128090 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22545,3 +22545,21 @@ applications with variable CPU loads).")
     (description "This package implements a backport of Python 3.7
 @code{contextvars} module (see PEP 567) for Python 3.6.")
     (license license:asl2.0)))
+
+(define-public python-aiofiles
+  (package
+    (name "python-aiofiles")
+    (version "0.5.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "aiofiles" version))
+        (sha256
+          (base32
+            "1bqmv019x16qa3zah0z915cw6z4va3fjs60fk2s7vyah3gyvrrlq"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/Tinche/aiofiles")
+    (synopsis "File support for @code{asyncio}")
+    (description "@code{python-aiofiles} is a library for handling local
+disk files in asyncio applications.")
+    (license license:asl2.0)))
-- 
2.28.0


[-- Attachment #4: 0003-gnu-Add-python-hstspreload.patch --]
[-- Type: text/x-patch, Size: 1352 bytes --]

From 8cfe473e1995c45c15faecde6cc48a15ca8ccdd2 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 20 Oct 2020 12:37:54 +0200
Subject: [PATCH 3/9] gnu: Add python-hstspreload.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b8b7ce9d31..b0bbd66583 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5164,3 +5164,24 @@ Encoding for HTTP.")
      "This module acts as a webbrowser solving Cloudflare's Javascript
 challenges.")
     (license license:expat)))
+
+(define-public python-hstspreload
+  (package
+    (name "python-hstspreload")
+    (version "2020.10.20")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hstspreload" version))
+       (sha256
+        (base32
+         "1qah80p2xlib1rhivvdj9v5y3girxrj7dwp1mnh8mwaj5wy32y8a"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/sethmlarson/hstspreload")
+    (synopsis
+     "Chromium HSTS Preload list as a Python package")
+    (description
+     "@code{python-hstspreload} contains Chromium HSTS Preload list
+as a Python package.")
+    (license license:bsd-3)))
-- 
2.28.0


[-- Attachment #5: 0004-gnu-Add-python-mypy-extensions.patch --]
[-- Type: text/x-patch, Size: 1481 bytes --]

From e19cceab869a67d876cbb807626b605f778cbc0f Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 9 Jun 2020 19:06:02 +0200
Subject: [PATCH 4/9] gnu: Add python-mypy-extensions.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1d51128090..82c3a21913 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22563,3 +22563,25 @@ applications with variable CPU loads).")
     (description "@code{python-aiofiles} is a library for handling local
 disk files in asyncio applications.")
     (license license:asl2.0)))
+
+(define-public python-mypy-extensions
+  (package
+    (name "python-mypy-extensions")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "mypy-extensions" version))
+       (sha256
+        (base32
+         "1a04qsk8hd1lqns8w1j7cr0vmvbhg450di5k1i16kqxkbf7q30id"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/python/mypy_extensions")
+    (synopsis
+     "Experimental type system extensions for mypy")
+    (description
+     "@code{python-mypy-extensions} defines experimental extensions
+to the standard @code{typing} module that are supported by the
+@code{mypy} typechecker.")
+    (license license:expat)))
-- 
2.28.0


[-- Attachment #6: 0005-gnu-Add-python-pyre-extensions.patch --]
[-- Type: text/x-patch, Size: 1592 bytes --]

From dbe8aad933bf7d6bf2571df8b08d48be73d73c9e Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 12:52:20 +0200
Subject: [PATCH 5/9] gnu: Add python-pyre-extensions.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 82c3a21913..2e3c8b762c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22585,3 +22585,27 @@ disk files in asyncio applications.")
 to the standard @code{typing} module that are supported by the
 @code{mypy} typechecker.")
     (license license:expat)))
+
+(define-public python-pyre-extensions
+  (package
+    (name "python-pyre-extensions")
+    (version "0.0.18")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pyre-extensions" version))
+        (sha256
+          (base32
+            "0c5cbbqrfyjwakdh3kbwxis6mbrbwky1z1fqslgszgpcj4g43q30"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-typing-extensions"
+         ,python-typing-extensions)
+        ("python-typing-inspect" ,python-typing-inspect)))
+    (home-page "https://pyre-check.org")
+    (synopsis
+     "Type system extensions for use with @code{python-pyre}")
+    (description
+      "@code{python-pyre-extensions} defines extensions to the standard
+@code{typing} module that are supported by the Pyre typechecker.")
+    (license license:expat)))
-- 
2.28.0


[-- Attachment #7: 0006-gnu-Add-python-nbsphinx.patch --]
[-- Type: text/x-patch, Size: 2232 bytes --]

From e432d180aef69ecec895dd9dcbd6a1a476c01184 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 20 Oct 2020 12:43:17 +0200
Subject: [PATCH 6/9] gnu: Add python-nbsphinx.

* gnu/packages/sphinx.scm (python-nbsphinx): New variable.
---
 gnu/packages/sphinx.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index f27f9d0176..439febc91b 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
 ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -643,3 +644,32 @@ translate and to apply translation to Sphinx generated document.")
 documentation when a change is detected.  It also includes a livereload
 enabled web server.")
     (license license:expat)))
+
+(define-public python-nbsphinx
+  (package
+    (name "python-nbsphinx")
+    (version "0.7.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "nbsphinx" version))
+        (sha256
+          (base32
+            "0j56bxdj08vn3q1804qwb1ywhga1mdg1awgm7i64wfpfwi8df2zm"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-docutils" ,python-docutils)
+        ("python-jinja2" ,python-jinja2)
+        ("python-nbconvert" ,python-nbconvert)
+        ("python-nbformat" ,python-nbformat)
+        ("python-sphinx" ,python-sphinx)
+        ("python-traitlets" ,python-traitlets)))
+    (home-page "https://nbsphinx.readthedocs.io/")
+    (synopsis "Jupyter Notebook Tools for Sphinx")
+    (description "@code{python-nbsphinx} is a Sphinx extension that
+provides a source parser for @code{*.ipynb} files.  Custom Sphinx
+directives are used to show Jupyter Notebook code cells (and of course
+their results) in both HTML and LaTeX output.  Un-evaluated notebooks
+- i.e. notebooks without stored output cells - will be automatically
+executed during the Sphinx build process.")
+    (license license:expat)))
-- 
2.28.0


[-- Attachment #8: 0007-gnu-Add-python-dataclasses.patch --]
[-- Type: text/x-patch, Size: 1500 bytes --]

From 69618814e8904ea0baf0515d664de11985525463 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 17:00:25 +0200
Subject: [PATCH 7/9] gnu: Add python-dataclasses.

* gnu/packages/python-xyz.scm (python-dataclasses): 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 2e3c8b762c..32a7381402 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22609,3 +22609,24 @@ to the standard @code{typing} module that are supported by the
       "@code{python-pyre-extensions} defines extensions to the standard
 @code{typing} module that are supported by the Pyre typechecker.")
     (license license:expat)))
+
+(define-public python-dataclasses
+  (package
+    (name "python-dataclasses")
+    (version "0.7")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "dataclasses" version))
+        (sha256
+          (base32
+            "1rh8111fbws2vxyf2qy2zw3x6p6cq1jfz8pf904gig5qwg56sjj9"))))
+    (build-system python-build-system)
+    (home-page
+      "https://github.com/ericvsmith/dataclasses")
+    (synopsis
+      "Backport of the @code{dataclasses} module for Python 3.6")
+    (description
+      "This is an implementation of PEP 557, Data Classes. It is a
+backport of the @code{dataclasses} module for Python 3.6.")
+    (license license:asl2.0)))
-- 
2.28.0


[-- Attachment #9: 0008-gnu-Add-python-pywatchman.patch --]
[-- Type: text/x-patch, Size: 1466 bytes --]

From 6265a08e96e310cac418bcebf16d259b46d85b95 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 17:58:58 +0200
Subject: [PATCH 8/9] gnu: Add python-pywatchman.

* gnu/packages/python-xyz.scm (python-pywatchman): 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 32a7381402..df7587749a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22630,3 +22630,24 @@ to the standard @code{typing} module that are supported by the
       "This is an implementation of PEP 557, Data Classes. It is a
 backport of the @code{dataclasses} module for Python 3.6.")
     (license license:asl2.0)))
+
+(define-public python-pywatchman
+  (package
+    (name "python-pywatchman")
+    (version "1.4.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pywatchman" version))
+        (sha256
+          (base32
+            "1yf2gm20wc3djpb5larxii3l55xxby0il2ns3q0v1byyfnr7w16h"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ;there are none
+    (home-page
+      "https://facebook.github.io/watchman/")
+    (synopsis "Watchman client for python")
+    (description "@code{python-pywatchman} is a library to connect and
+query Watchman to discover file changes.")
+    (license license:bsd-3)))
-- 
2.28.0


[-- Attachment #10: 0009-gnu-Add-python-sanic.patch --]
[-- Type: text/x-patch, Size: 4710 bytes --]

From c19961406504ba9e90e836b30751f68f1d4820d9 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 20 Oct 2020 12:51:27 +0200
Subject: [PATCH 9/9] gnu: Add python-sanic.

* gnu/packages/python-check.scm (python-pytest-sanic): New variable.
* gnu/packages/python-web.scm (python-sanic): New variable.
---
 gnu/packages/python-check.scm | 28 +++++++++++++++++
 gnu/packages/python-web.scm   | 59 +++++++++++++++++++++++++++++++++++
 2 files changed, 87 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 498f495584..caab81f18c 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1044,3 +1044,31 @@ any Python VM with basically no runtime overhead.")
     (description "Robber is a Python assertion library for test-driven and
 behavior-driven development (TDD and BDD).")
     (license license:expat)))
+
+;; This is only used by python-sanic
+(define-public python-pytest-sanic
+  (package
+    (name "python-pytest-sanic")
+    (version "1.6.2")
+    (source
+    (origin
+      (method url-fetch)
+      (uri (pypi-uri "pytest-sanic" version))
+      (sha256
+        (base32
+          "02ajd8z77ahi69kzkz200qgxrb4s2j4qb6k8j9ds1kz6qa6fsa34"))))
+    (build-system python-build-system)
+    (arguments
+     ;; Tests depend on python-sanic.
+     `(#:tests? #f))
+    (propagated-inputs
+      `(("python-aiohttp" ,python-aiohttp)
+        ("python-async-generator"
+         ,python-async-generator)
+        ("python-pytest" ,python-pytest)))
+    (home-page
+      "https://github.com/yunstanford/pytest-sanic")
+    (synopsis "Pytest plugin for Sanic")
+    (description "A pytest plugin for Sanic. It helps you to test your
+code asynchronously.")
+    (license license:expat)))
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b0bbd66583..5aaf9fb03d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -39,6 +39,7 @@
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -5185,3 +5186,61 @@ challenges.")
      "@code{python-hstspreload} contains Chromium HSTS Preload list
 as a Python package.")
     (license license:bsd-3)))
+
+(define-public python-sanic
+  (package
+    (name "python-sanic")
+    (version "20.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sanic" version))
+       (sha256
+        (base32
+         "0h832ja7j1f2w0ylbx5vj0j5gv5j9gn1yhhspvq0yikjyrkg46yr"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'use-recent-pytest
+           ;; Allow using recent dependencies.
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "setup.py"
+               (("httpcore==0.3.0") "httpcore")
+               (("pytest==5.2.1") "pytest"))
+             #t))
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "./tests" "-k"
+                     "not test_zero_downtime and not test_gunicorn_worker"))))))
+    (propagated-inputs
+     `(("python-aiofiles" ,python-aiofiles)
+       ("python-httptools" ,python-httptools)
+       ("python-httpx" ,python-httpx)
+       ("python-multidict" ,python-multidict)
+       ("python-ujson" ,python-ujson)
+       ("python-uvloop" ,python-uvloop)
+       ("python-websockets" ,python-websockets)))
+    (native-inputs
+     `(("gunicorn" ,gunicorn)
+       ("python-beautifulsoup4" ,python-beautifulsoup4)
+       ("python-hstspreload" ,python-hstspreload)
+       ("python-httpcore" ,python-httpcore)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-benchmark" ,python-pytest-benchmark)
+       ("python-pytest-sanic" ,python-pytest-sanic)
+       ("python-pytest-sugar" ,python-pytest-sugar)
+       ("python-urllib3" ,python-urllib3)
+       ("python-uvicorn" ,python-uvicorn)))
+    (home-page
+     "https://github.com/huge-success/sanic/")
+    (synopsis
+     "Async Python 3.6+ web server/framework")
+    (description
+     "Sanic is a Python 3.6+ web server and web framework
+that's written to go fast.  It allows the usage of the
+@code{async/await} syntax added in Python 3.5, which makes
+your code non-blocking and speedy.")
+    (license license:expat)))
-- 
2.28.0


^ permalink raw reply related	[relevance 73%]

* [bug#44138] [PATCH] gnu: Add python-imap-tools.
@ 2020-10-22 14:42 70% Reza Alizadeh Majd
  0 siblings, 0 replies; 200+ results
From: Reza Alizadeh Majd @ 2020-10-22 14:42 UTC (permalink / raw)
  To: 44138; +Cc: Reza Alizadeh Majd

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b8b7ce9d31..0f9b4a4af6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5164,3 +5164,22 @@ Encoding for HTTP.")
      "This module acts as a webbrowser solving Cloudflare's Javascript
 challenges.")
     (license license:expat)))
+
+(define-public python-imap-tools
+  (package
+    (name "python-imap-tools")
+    (version "0.27.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "imap_tools" version))
+        (sha256
+          (base32
+            "0zd3dkahjc3np9b9zs9cqgmif1gd64ykl1ydw60k5l5zli4ydlk8"))))
+    (build-system python-build-system)
+    (arguments '(#:tests? #f))          ; tests require internet access
+    (home-page "https://github.com/ikvk/imap_tools")
+    (synopsis "Work with email and mailbox by IMAP")
+    (description
+      "Work with email and mailbox by IMAP")
+    (license license:asl2.0)))
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#44302] [PATCH] gnu: httpie: Update to 2.3.0.
@ 2020-10-29  9:47 68% Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-10-29  9:47 UTC (permalink / raw)
  To: 44302; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (httpie): Update to 2.3.0.
[propagated-inputs]: Add python-requests-toolbelt.
[home-page]: Update URL.
---
 gnu/packages/python-web.scm | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1b6f0290ab..cf71a64e7c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -30,7 +30,7 @@
 ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
 ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
-;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2019, 2020 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
 ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
@@ -429,14 +429,14 @@ other HTTP libraries.")
 (define-public httpie
   (package
     (name "httpie")
-    (version "2.2.0")
+    (version "2.3.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "httpie" version))
        (sha256
         (base32
-         "18058k0i3cc4ixvgzj882w693lf40283flvspbrvd876iq42ib1i"))))
+         "15ngl3yc186gkgqdx8iav9bpj8gxjpzz26y32z92jwyhj4cmfh6m"))))
     (build-system python-build-system)
     (arguments
      ;; The tests attempt to access external web servers, so we cannot run them.
@@ -444,8 +444,9 @@ other HTTP libraries.")
     (propagated-inputs
      `(("python-colorama" ,python-colorama)
        ("python-pygments" ,python-pygments)
-       ("python-requests" ,python-requests)))
-    (home-page "https://httpie.org/")
+       ("python-requests" ,python-requests)
+       ("python-requests-toolbelt" ,python-requests-toolbelt-0.9.1)))
+    (home-page "https://httpie.io")
     (synopsis "cURL-like tool for humans")
     (description
      "A command line HTTP client with an intuitive UI, JSON support,
-- 
2.29.1





^ permalink raw reply related	[relevance 68%]

* [bug#44392] [PATCH] gnu: httpie: Add 'lint-hidden-cve' property.
@ 2020-11-02 16:07 70% Tanguy Le Carrour
  0 siblings, 0 replies; 200+ results
From: Tanguy Le Carrour @ 2020-11-02 16:07 UTC (permalink / raw)
  To: 44392; +Cc: Tanguy Le Carrour

* gnu/packages/python-web.scm (httpie)[properties]: New field.
---
 gnu/packages/python-web.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index cf71a64e7c..e9dde499d5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -453,6 +453,8 @@ other HTTP libraries.")
 syntax highlighting, wget-like downloads, plugins, and more.  It consists of
 a single http command designed for painless debugging and interaction with
 HTTP servers, RESTful APIs, and web services.")
+    ;; This was fixed in 1.0.3.
+    (properties `((lint-hidden-cve . ("CVE-2019-10751"))))
     (license license:bsd-3)))
 
 (define-public python-html2text
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#41807] [PATCHES] Add python-sanic and dependencies.
  2020-10-20 10:58 73%   ` paul
@ 2020-11-13  8:59 89%     ` Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2020-11-13  8:59 UTC (permalink / raw)
  To: paul; +Cc: 41807


[-- Attachment #1.1: Type: text/plain, Size: 741 bytes --]

Hi,

> I managed to package sanic following your channel definition (and enabled
> tests), I updated some packages, removed some other packages that were
> already merged in Guix and produced an updated patch set.
I’ve tested the patches with a real application and made some minor
modifications pointed out by `guix lint`. Also python-sanic requests
multidict==5.0.0, which we don’t have right now. But it seems to work with
4.7.5 just fine.

Cheers,
Lars

-- 
Lars-Dominik Braun
Wissenschaftlicher Mitarbeiter/Research Associate

www.leibniz-psychology.org
ZPID - Leibniz-Institut für Psychologie /
ZPID - Leibniz Institute for Psychology
Universitätsring 15
D-54296 Trier - Germany
Tel.: +49–651–201-4964

[-- Attachment #1.2: 0001-gnu-Add-python-contextvars.patch --]
[-- Type: text/x-diff, Size: 1436 bytes --]

From a9d80c2beee8dfcff1a5c8b23a1acdcab89b267b Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Mon, 8 Jun 2020 23:57:19 +0200
Subject: [PATCH 01/10] gnu: Add python-contextvars.

* gnu/packages/python-xyz.scm (python-contextvars): 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 e5b8db02e0..3284128d79 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22672,3 +22672,24 @@ applications with variable CPU loads).")
 
 (define-public python2-parallel
   (package-with-python2 python-parallel))
+
+(define-public python-contextvars
+  (package
+    (name "python-contextvars")
+    (version "2.4")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "contextvars" version))
+        (sha256
+          (base32
+            "17n3w8c20kgkgc6khaafdhhlcdj4bzman4paxqsl7harma59137k"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-immutables" ,python-immutables)))
+    (home-page
+      "https://github.com/MagicStack/contextvars")
+    (synopsis "PEP 567 Backport")
+    (description "This package implements a backport of Python 3.7
+@code{contextvars} module (see PEP 567) for Python 3.6.")
+    (license license:asl2.0)))
-- 
2.26.2


[-- Attachment #1.3: 0002-gnu-Add-python-aiofiles.patch --]
[-- Type: text/x-diff, Size: 1409 bytes --]

From cd1d8c98637f43c386d51a74e2508ac25ae4b2e0 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 9 Jun 2020 17:40:32 +0200
Subject: [PATCH 02/10] gnu: Add python-aiofiles.

* gnu/packages/python-xyz.scm (python-aiofiles): 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 3284128d79..77b7222959 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22693,3 +22693,21 @@ applications with variable CPU loads).")
     (description "This package implements a backport of Python 3.7
 @code{contextvars} module (see PEP 567) for Python 3.6.")
     (license license:asl2.0)))
+
+(define-public python-aiofiles
+  (package
+    (name "python-aiofiles")
+    (version "0.5.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "aiofiles" version))
+        (sha256
+          (base32
+            "1bqmv019x16qa3zah0z915cw6z4va3fjs60fk2s7vyah3gyvrrlq"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/Tinche/aiofiles")
+    (synopsis "File support for @code{asyncio}")
+    (description "@code{python-aiofiles} is a library for handling local
+disk files in asyncio applications.")
+    (license license:asl2.0)))
-- 
2.26.2


[-- Attachment #1.4: 0003-gnu-Add-python-hstspreload.patch --]
[-- Type: text/x-diff, Size: 1406 bytes --]

From dda0406a4e36565ef241003104cb54c552df5577 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 20 Oct 2020 12:37:54 +0200
Subject: [PATCH 03/10] gnu: Add python-hstspreload.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e9dde499d5..37c5980dc2 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5194,3 +5194,24 @@ over IMAP:
 @item Work with mailbox folders (list, set, get, create, exists, rename, delete, status)
 @end itemize")
     (license license:asl2.0)))
+
+(define-public python-hstspreload
+  (package
+    (name "python-hstspreload")
+    (version "2020.10.20")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "hstspreload" version))
+       (sha256
+        (base32
+         "1qah80p2xlib1rhivvdj9v5y3girxrj7dwp1mnh8mwaj5wy32y8a"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/sethmlarson/hstspreload")
+    (synopsis
+     "Chromium HSTS Preload list as a Python package")
+    (description
+     "@code{python-hstspreload} contains Chromium HSTS Preload list
+as a Python package.")
+    (license license:bsd-3)))
-- 
2.26.2


[-- Attachment #1.5: 0004-gnu-Add-python-mypy-extensions.patch --]
[-- Type: text/x-diff, Size: 1526 bytes --]

From c835de22832e8c7fb33cf6eec1aa0afb029253ca Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 9 Jun 2020 19:06:02 +0200
Subject: [PATCH 04/10] gnu: Add python-mypy-extensions.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 77b7222959..6f13c730bd 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22711,3 +22711,25 @@ applications with variable CPU loads).")
     (description "@code{python-aiofiles} is a library for handling local
 disk files in asyncio applications.")
     (license license:asl2.0)))
+
+(define-public python-mypy-extensions
+  (package
+    (name "python-mypy-extensions")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "mypy-extensions" version))
+       (sha256
+        (base32
+         "1a04qsk8hd1lqns8w1j7cr0vmvbhg450di5k1i16kqxkbf7q30id"))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/python/mypy_extensions")
+    (synopsis
+     "Experimental type system extensions for mypy")
+    (description
+     "@code{python-mypy-extensions} defines experimental extensions
+to the standard @code{typing} module that are supported by the
+@code{mypy} typechecker.")
+    (license license:expat)))
-- 
2.26.2


[-- Attachment #1.6: 0005-gnu-Add-python-pyre-extensions.patch --]
[-- Type: text/x-diff, Size: 1639 bytes --]

From 1f021271add8115a03f1645d5e02c6a664360225 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 12:52:20 +0200
Subject: [PATCH 05/10] gnu: Add python-pyre-extensions.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6f13c730bd..a1ae408c82 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22733,3 +22733,27 @@ disk files in asyncio applications.")
 to the standard @code{typing} module that are supported by the
 @code{mypy} typechecker.")
     (license license:expat)))
+
+(define-public python-pyre-extensions
+  (package
+    (name "python-pyre-extensions")
+    (version "0.0.18")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pyre-extensions" version))
+        (sha256
+          (base32
+            "0c5cbbqrfyjwakdh3kbwxis6mbrbwky1z1fqslgszgpcj4g43q30"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-typing-extensions"
+         ,python-typing-extensions)
+        ("python-typing-inspect" ,python-typing-inspect)))
+    (home-page "https://pyre-check.org")
+    (synopsis
+     "Type system extensions for use with @code{python-pyre}")
+    (description
+      "@code{python-pyre-extensions} defines extensions to the standard
+@code{typing} module that are supported by the Pyre typechecker.")
+    (license license:expat)))
-- 
2.26.2


[-- Attachment #1.7: 0006-gnu-Add-python-nbsphinx.patch --]
[-- Type: text/x-diff, Size: 2288 bytes --]

From 22e6e518b43feab5082618de8c53f72fab1b90ca Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Tue, 20 Oct 2020 12:43:17 +0200
Subject: [PATCH 06/10] gnu: Add python-nbsphinx.

* gnu/packages/sphinx.scm (python-nbsphinx): New variable.
---
 gnu/packages/sphinx.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index ac506ecbe5..5172f246a1 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
 ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -642,3 +643,32 @@ translate and to apply translation to Sphinx generated document.")
 documentation when a change is detected.  It also includes a livereload
 enabled web server.")
     (license license:expat)))
+
+(define-public python-nbsphinx
+  (package
+    (name "python-nbsphinx")
+    (version "0.7.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "nbsphinx" version))
+        (sha256
+          (base32
+            "0j56bxdj08vn3q1804qwb1ywhga1mdg1awgm7i64wfpfwi8df2zm"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-docutils" ,python-docutils)
+        ("python-jinja2" ,python-jinja2)
+        ("python-nbconvert" ,python-nbconvert)
+        ("python-nbformat" ,python-nbformat)
+        ("python-sphinx" ,python-sphinx)
+        ("python-traitlets" ,python-traitlets)))
+    (home-page "https://nbsphinx.readthedocs.io/")
+    (synopsis "Jupyter Notebook Tools for Sphinx")
+    (description "@code{python-nbsphinx} is a Sphinx extension that
+provides a source parser for @code{*.ipynb} files.  Custom Sphinx
+directives are used to show Jupyter Notebook code cells (and of course
+their results) in both HTML and LaTeX output.  Un-evaluated notebooks
+- i.e. notebooks without stored output cells - will be automatically
+executed during the Sphinx build process.")
+    (license license:expat)))
-- 
2.26.2


[-- Attachment #1.8: 0007-gnu-Add-python-dataclasses.patch --]
[-- Type: text/x-diff, Size: 1545 bytes --]

From 4c17f3615e43e5cbeae80898a649535232923aea Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 17:00:25 +0200
Subject: [PATCH 07/10] gnu: Add python-dataclasses.

* gnu/packages/python-xyz.scm (python-dataclasses): 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 a1ae408c82..17c38ec5aa 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22757,3 +22757,24 @@ to the standard @code{typing} module that are supported by the
       "@code{python-pyre-extensions} defines extensions to the standard
 @code{typing} module that are supported by the Pyre typechecker.")
     (license license:expat)))
+
+(define-public python-dataclasses
+  (package
+    (name "python-dataclasses")
+    (version "0.7")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "dataclasses" version))
+        (sha256
+          (base32
+            "1rh8111fbws2vxyf2qy2zw3x6p6cq1jfz8pf904gig5qwg56sjj9"))))
+    (build-system python-build-system)
+    (home-page
+      "https://github.com/ericvsmith/dataclasses")
+    (synopsis
+      "Backport of the @code{dataclasses} module for Python 3.6")
+    (description
+      "This is an implementation of PEP 557, Data Classes.  It is a
+backport of the @code{dataclasses} module for Python 3.6.")
+    (license license:asl2.0)))
-- 
2.26.2


[-- Attachment #1.9: 0008-gnu-Add-python-pywatchman.patch --]
[-- Type: text/x-diff, Size: 1511 bytes --]

From a726b42ccf10f8ee08ff5fab5049990d3a0080c8 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Wed, 10 Jun 2020 17:58:58 +0200
Subject: [PATCH 08/10] gnu: Add python-pywatchman.

* gnu/packages/python-xyz.scm (python-pywatchman): 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 17c38ec5aa..fb5c117aa8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22778,3 +22778,24 @@ to the standard @code{typing} module that are supported by the
       "This is an implementation of PEP 557, Data Classes.  It is a
 backport of the @code{dataclasses} module for Python 3.6.")
     (license license:asl2.0)))
+
+(define-public python-pywatchman
+  (package
+    (name "python-pywatchman")
+    (version "1.4.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pywatchman" version))
+        (sha256
+          (base32
+            "1yf2gm20wc3djpb5larxii3l55xxby0il2ns3q0v1byyfnr7w16h"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ;there are none
+    (home-page
+      "https://facebook.github.io/watchman/")
+    (synopsis "Watchman client for python")
+    (description "@code{python-pywatchman} is a library to connect and
+query Watchman to discover file changes.")
+    (license license:bsd-3)))
-- 
2.26.2


[-- Attachment #1.10: 0009-gnu-Add-python-pytest-sanic.patch --]
[-- Type: text/x-diff, Size: 1741 bytes --]

From fe0fe1a37494f1894e2425dad2a239c557cf9925 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Fri, 13 Nov 2020 09:54:01 +0100
Subject: [PATCH 09/10] gnu: Add python-pytest-sanic.

* gnu/packages/python-check.scm (python-pytest-sanic): New variable.
---
 gnu/packages/python-check.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index dcd4bb90d8..314ca5795c 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1078,3 +1078,31 @@ any Python VM with basically no runtime overhead.")
     (description "Robber is a Python assertion library for test-driven and
 behavior-driven development (TDD and BDD).")
     (license license:expat)))
+
+;; This is only used by python-sanic
+(define-public python-pytest-sanic
+  (package
+    (name "python-pytest-sanic")
+    (version "1.6.2")
+    (source
+    (origin
+      (method url-fetch)
+      (uri (pypi-uri "pytest-sanic" version))
+      (sha256
+        (base32
+          "02ajd8z77ahi69kzkz200qgxrb4s2j4qb6k8j9ds1kz6qa6fsa34"))))
+    (build-system python-build-system)
+    (arguments
+     ;; Tests depend on python-sanic.
+     `(#:tests? #f))
+    (propagated-inputs
+      `(("python-aiohttp" ,python-aiohttp)
+        ("python-async-generator"
+         ,python-async-generator)
+        ("python-pytest" ,python-pytest)))
+    (home-page
+      "https://github.com/yunstanford/pytest-sanic")
+    (synopsis "Pytest plugin for Sanic")
+    (description "A pytest plugin for Sanic.  It helps you to test your
+code asynchronously.")
+    (license license:expat)))
-- 
2.26.2


[-- Attachment #1.11: 0010-gnu-Add-python-sanic.patch --]
[-- Type: text/x-diff, Size: 3425 bytes --]

From 34bba96451cb29cb38706d04f7703301b1ae7dd7 Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Fri, 13 Nov 2020 09:55:19 +0100
Subject: [PATCH 10/10] gnu: Add python-sanic.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 37c5980dc2..958cbd5323 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -39,6 +39,7 @@
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -5215,3 +5216,62 @@ over IMAP:
      "@code{python-hstspreload} contains Chromium HSTS Preload list
 as a Python package.")
     (license license:bsd-3)))
+
+(define-public python-sanic
+  (package
+    (name "python-sanic")
+    (version "20.9.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sanic" version))
+       (sha256
+        (base32
+         "06p0lsxqbfbka2yaqlpp0bg5pf7ma44zi6kq7qbb6hhry48dp1w6"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'use-recent-pytest
+           ;; Allow using recent dependencies.
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "setup.py"
+               (("httpcore==0.3.0") "httpcore")
+               (("pytest==5.2.1") "pytest")
+               (("multidict==5.0.0") "multidict"))
+             #t))
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (add-installed-pythonpath inputs outputs)
+             (invoke "pytest" "-vv" "./tests" "-k"
+                     "not test_zero_downtime and not test_gunicorn_worker"))))))
+    (propagated-inputs
+     `(("python-aiofiles" ,python-aiofiles)
+       ("python-httptools" ,python-httptools)
+       ("python-httpx" ,python-httpx)
+       ("python-multidict" ,python-multidict)
+       ("python-ujson" ,python-ujson)
+       ("python-uvloop" ,python-uvloop)
+       ("python-websockets" ,python-websockets)))
+    (native-inputs
+     `(("gunicorn" ,gunicorn)
+       ("python-beautifulsoup4" ,python-beautifulsoup4)
+       ("python-hstspreload" ,python-hstspreload)
+       ("python-httpcore" ,python-httpcore)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-benchmark" ,python-pytest-benchmark)
+       ("python-pytest-sanic" ,python-pytest-sanic)
+       ("python-pytest-sugar" ,python-pytest-sugar)
+       ("python-urllib3" ,python-urllib3)
+       ("python-uvicorn" ,python-uvicorn)))
+    (home-page
+     "https://github.com/huge-success/sanic/")
+    (synopsis
+     "Async Python 3.6+ web server/framework")
+    (description
+     "Sanic is a Python 3.6+ web server and web framework
+that's written to go fast.  It allows the usage of the
+@code{async/await} syntax added in Python 3.5, which makes
+your code non-blocking and speedy.")
+    (license license:expat)))
-- 
2.26.2


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

^ permalink raw reply related	[relevance 89%]

* [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown.
  2020-03-28  9:33 70% [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
  2020-03-28  9:36 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
@ 2020-11-22 17:52 70% ` pinoaffe
  2020-11-22 19:15 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
  2 siblings, 0 replies; 200+ results
From: pinoaffe @ 2020-11-22 17:52 UTC (permalink / raw)
  To: 40270; +Cc: mail

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b02ffd5f58..baf24d3849 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -470,6 +470,34 @@ both of which are installed automatically if you 
install this library.")
  (define-public python2-flask-babel
    (package-with-python2 python-flask-babel))

+(define-public python-flask-markdown
+  (package
+    (name "python-flask-markdown")
+    (version "0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Flask-Markdown" version))
+       (sha256
+        (base32
+         "0l32ikv4f7va926jlq4f7gx0xid247bhlxl6bd9av5dk8ljz1hyq"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ;tests seem to be incompatible with latest python
+    (propagated-inputs
+     `(("python-markdown" ,python-markdown)
+       ("python-flask" ,python-flask)))
+    (native-inputs
+     `(("python-nose" ,python-nose)))
+    (home-page
+     "http://github.com/dcolish/flask-markdown")
+    (synopsis
+     "Small extension to make using Markdown in Flask easy")
+    (description
+     "Small extension to make using Markdown in Flask easy.  Supports
+several extensions for Markdown and integrates into Jinja2 by 
default.")
+    (license license:bsd-3)))
+
  (define-public python-html5lib
    (package
      (name "python-html5lib")
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#40270] [PATCH 2/2] gnu: Add python-flask-session.
  2020-03-28  9:33 70% [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
  2020-03-28  9:36 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
  2020-11-22 17:52 70% ` [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
@ 2020-11-22 19:15 70% ` pinoaffe
  2 siblings, 0 replies; 200+ results
From: pinoaffe @ 2020-11-22 19:15 UTC (permalink / raw)
  To: 40270; +Cc: mail

* gnu/packages/python-web.scm (python-flask-session, 
python2-flask-session): New variables.
---
  gnu/packages/python-web.scm | 25 +++++++++++++++++++++++++
  1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index baf24d3849..4ad81ef6e5 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -498,6 +498,31 @@ both of which are installed automatically if you 
install this library.")
  several extensions for Markdown and integrates into Jinja2 by 
default.")
      (license license:bsd-3)))

+(define-public python-flask-session
+  (package
+    (name "python-flask-session")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Flask-Session" version))
+       (sha256
+        (base32
+         "0cd7h5c236m6smyixnyfrks4spsqp9d65ndk4p400zr8qgh2f753"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ;tests require the various storage backends to be 
present
+    (propagated-inputs
+     `(("python-flask" ,python-flask)))
+    (home-page
+     "https://github.com/fengsp/flask-session")
+    (synopsis
+     "Adds server-side session support to your Flask application")
+    (description
+     "Adds server-side support for secure sessions to your Flask 
application,
+and supports a variety of different backends for session storage.")
+    (license license:bsd-3)))
+
  (define-public python-html5lib
    (package
      (name "python-html5lib")
-- 
2.29.2




^ permalink raw reply related	[relevance 70%]

* [bug#44984] [PATCH] gnu: electrum: Update to 4.0.5.
@ 2020-12-01  8:58 65% dftxbs3e
  0 siblings, 0 replies; 200+ results
From: dftxbs3e @ 2020-12-01  8:58 UTC (permalink / raw)
  To: 44984

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

Hello!

I attached all patches generated by git format-patch. They are numbered
in the order they must be applied, I hope that will be OK.

Thank you!

[-- Attachment #2: 0007-gnu-electrum-Update-to-4.0.5.patch --]
[-- Type: text/x-patch, Size: 3384 bytes --]

From 1e95f5cc36aff2811865f4cb575b7935fb72ab38 Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 09:45:44 +0100
Subject: [PATCH 7/7] gnu: electrum: Update to 4.0.5.

* gnu/packages/finance.scm (electrum): Update to 4.0.5.
[inputs]: Remove.
[propagated-inputs]: Add python-pyqt, python-ecdsa, python-qrcode,
python-protobuf, python-aiohttp, python-aiohttp-socks, python-aiorpcx,
python-certifi, python-bitstring, python-attrs, python-cryptography,
python-qdarkstyle, python-dnspython and libsecp256k1.
[arguments]: Copy 'use-libsecp256k1-input phase from
(electron-cash) to #:phases to fix runtime lookup of libsecp256k1
library.
---
 gnu/packages/finance.scm | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index a79c70d1e0..e7b83eec20 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -493,7 +493,7 @@ do so.")
 (define-public electrum
   (package
     (name "electrum")
-    (version "3.3.8")
+    (version "4.0.5")
     (source
      (origin
        (method url-fetch)
@@ -501,7 +501,7 @@ do so.")
                            version "/Electrum-"
                            version ".tar.gz"))
        (sha256
-        (base32 "1g00cj1pmckd4xis8r032wmraiv3vd3zc803hnyxa2bnhj8z3bg2"))
+        (base32 "06ml9lwa5k2dp56sm5s7dsl6qirqmgim7rn853cqcq9n45z41437"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -509,22 +509,21 @@ do so.")
            (delete-file-recursively "packages")
            #t))))
     (build-system python-build-system)
-    (inputs
-     `(("python-pyaes" ,python-pyaes)
-       ("python-pysocks" ,python-pysocks)
-       ("python-sip" ,python-sip)
-       ("python-pyqt" ,python-pyqt)
+    (propagated-inputs
+     `(("python-pyqt" ,python-pyqt)
        ("python-ecdsa" ,python-ecdsa)
-       ("python-pbkdf2" ,python-pbkdf2)
-       ("python-requests" ,python-requests)
        ("python-qrcode" ,python-qrcode)
        ("python-protobuf" ,python-protobuf)
        ("python-aiohttp" ,python-aiohttp)
        ("python-aiohttp-socks" ,python-aiohttp-socks)
        ("python-aiorpcx" ,python-aiorpcx)
        ("python-certifi" ,python-certifi)
+       ("python-bitstring" ,python-bitstring)
+       ("python-attrs" ,python-attrs)
+       ("python-cryptography" ,python-cryptography)
+       ("python-qdarkstyle" ,python-qdarkstyle)
        ("python-dnspython" ,python-dnspython)
-       ("python-jsonrpclib-pelix" ,python-jsonrpclib-pelix)))
+       ("libsecp256k1" ,libsecp256k1)))
     (arguments
      `(#:tests? #f                      ; no tests
        #:phases
@@ -538,7 +537,14 @@ do so.")
                (substitute* "setup.py"
                  (("sys\\.prefix")
                   (format #f "\"~a\"" out)))
-               #t))))))
+               #t)))
+         (add-after 'unpack 'use-libsecp256k1-input
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "electrum/ecc_fast.py"
+               (("library_paths = .* 'libsecp256k1.so.0'.")
+                (string-append "library_paths = ('"
+                               (assoc-ref inputs "libsecp256k1")
+                               "/lib/libsecp256k1.so.0'"))))))))
     (home-page "https://electrum.org/")
     (synopsis "Bitcoin wallet")
     (description
-- 
2.28.0


[-- Attachment #3: 0006-gnu-libsecp256k1-Update-to-20200615-1-dbd41db.patch --]
[-- Type: text/x-patch, Size: 1997 bytes --]

From 3664e9494ee427a3155f21398d189d02ed35c3c4 Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 09:36:51 +0100
Subject: [PATCH 6/7] gnu: libsecp256k1: Update to 20200615-1-dbd41db.

* gnu/packages/crypto.scm (libsecp256k1):
[commit]: Set to "dbd41db16a0e91b2566820898a3ab2d7dad4fe00".
[version]: Bump to 20200615-1-dbd41db.
[arguments]: Add "--enable-module-recovery",
"--enable-experimental", "--enable-module-ecdh" and
"--enable-shared" to #:configure-flags.
---
 gnu/packages/crypto.scm | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 1b51366d7e..f0fc1ec5a3 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1028,10 +1028,10 @@ trivial to build for local use.  Portability is emphasized over performance.")
     (license license:unlicense)))
 
 (define-public libsecp256k1
-  (let ((commit "d644dda5c9dbdecee52d1aa259235510fdc2d4ee"))
+  (let ((commit "dbd41db16a0e91b2566820898a3ab2d7dad4fe00"))
     (package
       (name "libsecp256k1")
-      (version (git-version "20191213" "1" commit))
+      (version (git-version "20200615" "1" commit))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
@@ -1039,9 +1039,14 @@ trivial to build for local use.  Portability is emphasized over performance.")
                       (commit commit)))
                 (sha256
                  (base32
-                  "0zmx32746khsm2cx0p3pdy3j2vkwmafvf7axiixijhgcg0xjv93i"))
+                  "1fcpnksq5cqwqzshn5f0lq94b73p3frwbp04hgmmbnrndpqg6mpy"))
                 (file-name (git-file-name name version))))
       (build-system gnu-build-system)
+      (arguments
+	'(#:configure-flags '("--enable-module-recovery"
+			      "--enable-experimental"
+			      "--enable-module-ecdh"
+			      "--enable-shared")))
       (native-inputs
        `(("autoconf" ,autoconf)
          ("automake" ,automake)
-- 
2.28.0


[-- Attachment #4: 0005-gnu-python-aiohttp-socks-Update-to-0.5.5.patch --]
[-- Type: text/x-patch, Size: 1480 bytes --]

From 59c210ccdd43348601c0fe142c5d2c0feee38bf9 Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 08:34:13 +0100
Subject: [PATCH 5/7] gnu: python-aiohttp-socks: Update to 0.5.5.

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.28.0


[-- Attachment #5: 0004-gnu-Add-python-socks.patch --]
[-- Type: text/x-patch, Size: 1540 bytes --]

From 290ec654f15c02f51c15c84506ce94570934497d Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 08:21:52 +0100
Subject: [PATCH 4/7] gnu: Add python-socks.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3c170ebe3c..feffad00b3 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23325,3 +23325,29 @@ process.")
     (description
       "Simple construction, analysis and modification of binary data.")
     (license license:expat)))
+
+(define-public python-socks
+  (package
+    (name "python-socks")
+    (version "1.1.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "python-socks" version))
+        (sha256
+          (base32
+            "1y9sp0hijywjrqwpjgpq3yjmfm6s0rj1br19xm77ffk72w5pdr26"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      ;; For python-socks[asyncio]
+      `(("python-async-timeout" ,python-async-timeout)))
+    (native-inputs
+      `(("python-trio" ,python-trio)
+	("python-curio" ,python-curio)))
+    (home-page
+      "https://github.com/romis2012/python-socks")
+    (synopsis
+      "Core proxy (SOCKS4, SOCKS5, HTTP tunneling) functionality for Python")
+    (description
+      "Core proxy (SOCKS4, SOCKS5, HTTP tunneling) functionality for Python")
+    (license license:asl2.0)))
-- 
2.28.0


[-- Attachment #6: 0003-gnu-Add-python-bitstring.patch --]
[-- Type: text/x-patch, Size: 1328 bytes --]

From 6945ad2c40bcd76236bcca8617f7654e92e9cc72 Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 06:19:05 +0100
Subject: [PATCH 3/7] gnu: Add python-bitstring.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 758496d52f..3c170ebe3c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23305,3 +23305,23 @@ process.")
     (description
       "The most complete dark stylesheet for Python and Qt applications")
     (license license:expat)))
+
+(define-public python-bitstring
+  (package
+    (name "python-bitstring")
+    (version "3.1.7")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "bitstring" version))
+        (sha256
+          (base32
+            "0jl6192dwrlm5ybkbh7ywmyaymrc3cmz9y07nm7qdli9n9rfpwzx"))))
+    (build-system python-build-system)
+    (home-page
+      "https://github.com/scott-griffiths/bitstring")
+    (synopsis
+      "Simple construction, analysis and modification of binary data.")
+    (description
+      "Simple construction, analysis and modification of binary data.")
+    (license license:expat)))
-- 
2.28.0


[-- Attachment #7: 0002-gnu-Add-python-qdarkstyle.patch --]
[-- Type: text/x-patch, Size: 1589 bytes --]

From 31f912728b017d04ea6ce164e07d6e44d1df9401 Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 07:31:59 +0100
Subject: [PATCH 2/7] gnu: Add python-qdarkstyle.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 36373ae71c..758496d52f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23278,3 +23278,30 @@ process.")
     (description
       "HelpDev - Extracts information about the Python environment easily.")
     (license license:expat)))
+
+(define-public python-qdarkstyle
+  (package
+    (name "python-qdarkstyle")
+    (version "2.8.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "QDarkStyle" version))
+        (sha256
+          (base32
+            "0883vzg35fzpyl1aiijzpfcdfvpq5vi325w0m7xkx7nxplh02fym"))))
+    (build-system python-build-system)
+    (arguments
+      `(;; Fails unable to detect valid Qt bindings even if you
+	;; add them as native-inputs.
+	#:tests? #f))
+    (propagated-inputs
+      `(("python-helpdev" ,python-helpdev)
+        ("python-qtpy" ,python-qtpy)))
+    (home-page
+      "https://github.com/ColinDuquesnoy/QDarkStyleSheet")
+    (synopsis
+      "The most complete dark stylesheet for Python and Qt applications")
+    (description
+      "The most complete dark stylesheet for Python and Qt applications")
+    (license license:expat)))
-- 
2.28.0


[-- Attachment #8: 0001-gnu-Add-python-helpdev.patch --]
[-- Type: text/x-patch, Size: 1473 bytes --]

From 5d439ae49ae55abf5c8e908032ffb405c1cbc1ba Mon Sep 17 00:00:00 2001
From: John Doe <dftxbs3e@free.fr>
Date: Tue, 1 Dec 2020 07:27:54 +0100
Subject: [PATCH 1/7] gnu: Add python-helpdev.

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

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ad51498050..36373ae71c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23256,3 +23256,25 @@ process.")
     (description
       "Provides an abstraction layer on top of the various Qt bindings (PyQt5, PyQt4 and PySide) and additional custom QWidgets.")
     (license license:expat)))
+
+(define-public python-helpdev
+  (package
+    (name "python-helpdev")
+    (version "0.7.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "helpdev" version))
+        (sha256
+          (base32
+            "0gfvj28i82va7c264jl2p4cdsl3lpf9fpb9cyjnis55crfdafqmv"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-importlib-metadata"
+         ,python-importlib-metadata)))
+    (home-page "https://gitlab.com/dpizetta/helpdev")
+    (synopsis
+      "HelpDev - Extracts information about the Python environment easily.")
+    (description
+      "HelpDev - Extracts information about the Python environment easily.")
+    (license license:expat)))
-- 
2.28.0


^ permalink raw reply related	[relevance 65%]

* [bug#44987] [PATCH 5/7] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-01 11:25 70% ` dftxbs3e
  0 siblings, 0 replies; 200+ results
From: dftxbs3e @ 2020-12-01 11:25 UTC (permalink / raw)
  To: 44987; +Cc: John Doe

From: John Doe <dftxbs3e@free.fr>

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-01 11:55 70% ` dftxbs3e
  0 siblings, 0 replies; 200+ results
From: dftxbs3e @ 2020-12-01 11:55 UTC (permalink / raw)
  To: 44990; +Cc: John Doe

From: John Doe <dftxbs3e@free.fr>

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.28.0





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-11 20:18 70% ` John Doe
  0 siblings, 0 replies; 200+ results
From: John Doe @ 2020-12-11 20:18 UTC (permalink / raw)
  To: 44990; +Cc: John Doe

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-11 19:53 70% ` Léo Le Bouter via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: Léo Le Bouter via Guix-patches via @ 2020-12-11 19:53 UTC (permalink / raw)
  To: 44990; +Cc: John Doe

From: John Doe <dftxbs3e@free.fr>

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-11 20:01 70% ` Léo Le Bouter via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: Léo Le Bouter via Guix-patches via @ 2020-12-11 20:01 UTC (permalink / raw)
  To: 44990

From: John Doe <dftxbs3e@free.fr>

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..797d94f12a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -166,17 +166,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#45213] [PATCH] gnu: python-httpx: Update to 0.16.1.
@ 2020-12-12 20:36 70% Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2020-12-12 20:36 UTC (permalink / raw)
  To: 45213; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-httpx): Update to 0.16.1.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 107f579ad6..9195b8328c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4989,7 +4989,7 @@ Some things HTTP Core does do:
 (define-public python-httpx
   (package
     (name "python-httpx")
-    (version "0.15.4")
+    (version "0.16.1")
     (source
      (origin
        ;; PyPI tarball does not contain tests.
@@ -4999,7 +4999,7 @@ Some things HTTP Core does do:
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1qr91xw6jxynvihmw953bi5446ssm9ffmb2c4nhfa77v7883sp21"))))
+        (base32 "00gmq45fckcqkj910bvd7pyqz1mvgsdvz4s0k7dzbnc5czzq1f4a"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#45289] [PATCHES] Fix python-sanic
@ 2020-12-17 10:10 96% Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2020-12-17 10:10 UTC (permalink / raw)
  To: 45289


[-- Attachment #1.1: Type: text/plain, Size: 385 bytes --]

Hi,

a recent change to python-httpx broke python-sanic, which the attached patch
series fixes.

Cheers,
Lars

-- 
Lars-Dominik Braun
Wissenschaftlicher Mitarbeiter/Research Associate

www.leibniz-psychology.org
ZPID - Leibniz-Institut für Psychologie /
ZPID - Leibniz Institute for Psychology
Universitätsring 15
D-54296 Trier - Germany
Tel.: +49–651–201-4964

[-- Attachment #1.2: 0001-gnu-python-httpcore-Upgrade-to-0.12.2.patch --]
[-- Type: text/x-diff, Size: 3242 bytes --]

From 99dd608b5727a499c3937863ff09739c6cbf43ac Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 17 Dec 2020 10:59:43 +0100
Subject: [PATCH 1/2] gnu: python-httpcore: Upgrade to 0.12.2.

httpx was upgraded in commit bc49b009bf08326b55aea3508a6b677a065d5a31,
but was broken, because it requests this new version of httpcore.

* gnu/packages/python-web.scm (python-httpcore)[version]: Upgrade to
0.12.2.
[arguments]: Respect tests? argument. Disable tests. Remove obsolete
phases.
[native-inputs]: Remove obsolete comment regarding mitmproxy.
---
 gnu/packages/python-web.scm | 34 +++++++++++-----------------------
 1 file changed, 11 insertions(+), 23 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f88178ab2c..7a4a83f210 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4915,7 +4915,7 @@ and serve updated contents upon changes to the directory.")
 (define-public python-httpcore
   (package
     (name "python-httpcore")
-    (version "0.11.0")
+    (version "0.12.2")
     (source
      (origin
        ;; PyPI tarball does not contain tests.
@@ -4925,33 +4925,21 @@ and serve updated contents upon changes to the directory.")
              (commit  version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "01bhajcxqgkdzg7b7x0fqs2lwcfsajlgqwi1nlxx58jss7g2kxn9"))))
+        (base32 "1nrwwfdqjfc2a1k3j41cdwkprwvplf95fwmypdl2aq2qgp3209q0"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
+     `(#:tests? #f ; Tests hang at 98%
+       #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'remove-unavailable-tests
-           (lambda _
-             ;; These tests require 'mitmproxy' which is not packaged.
-             (for-each (lambda (f)
-                         (delete-file f))
-                       '("tests/conftest.py"
-                         "tests/sync_tests/test_interfaces.py"
-                         "tests/async_tests/test_interfaces.py"))
-             #t))
-         (add-after 'remove-unavailable-tests 'force-h11-version
-           ;; Allow build with h11 >= 0.10.
-           (lambda _
-             (substitute* "setup.py" (("h11>=0.8,<0.10") "h11"))
-             #t))
          (replace 'check
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (add-installed-pythonpath inputs outputs)
-             (invoke "pytest" "-vv" "--cov=httpcore"
-                     "--cov=tests" "tests"))))))
+           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+             (if tests?
+               (begin
+                 (add-installed-pythonpath inputs outputs)
+                 (invoke "pytest" "-vv" "--cov=httpcore"
+                         "--cov=tests" "tests"))))))))
     (native-inputs
-     `(;; ("mitmproxy" ,mitmproxy) ;; TODO: Package this.
-       ("python-autoflake" ,python-autoflake)
+     `(("python-autoflake" ,python-autoflake)
        ("python-flake8" ,python-flake8)
        ("python-flake8-bugbear" ,python-flake8-bugbear)
        ("python-flake8-pie" ,python-flake8-pie)
-- 
2.26.2


[-- Attachment #1.3: 0002-gnu-python-sanic-Relax-httpx-version-requirement.patch --]
[-- Type: text/x-diff, Size: 1067 bytes --]

From be26e673556898bf4c7ec1f9dcf1fa89f4692eb5 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 17 Dec 2020 11:04:14 +0100
Subject: [PATCH 2/2] gnu: python-sanic: Relax httpx version requirement.

* gnu/packages/python-web.scm (python-sanic)[arguments]: Substitute
strict httpx version requirement.
---
 gnu/packages/python-web.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7a4a83f210..097a421bad 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5685,7 +5685,8 @@ as a Python package.")
              (substitute* "setup.py"
                (("httpcore==0.3.0") "httpcore")
                (("pytest==5.2.1") "pytest")
-               (("multidict==5.0.0") "multidict"))
+               (("multidict==5.0.0") "multidict")
+               (("httpx==0\\.15\\.4") "httpx"))
              #t))
          (replace 'check
            (lambda* (#:key inputs outputs #:allow-other-keys)
-- 
2.26.2


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

^ permalink raw reply related	[relevance 96%]

* [bug#45406] [PATCH] gnu: awscli: updating to version 1.18.203.
@ 2020-12-24 15:22 70% Vincent Legoll
  0 siblings, 0 replies; 200+ results
From: Vincent Legoll @ 2020-12-24 15:22 UTC (permalink / raw)
  To: 45406; +Cc: Vincent Legoll

* gnu/packages/python-web.scm (awscli): updating to version 1.18.203.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4ec5a3e882..bdde4d90f4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2717,14 +2717,14 @@ supports url redirection and retries, and also gzip and deflate decoding.")
   (package
     ;; Note: updating awscli typically requires updating botocore as well.
     (name "awscli")
-    (version "1.18.183")
+    (version "1.18.203")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri name version))
        (sha256
         (base32
-         "0n1pmdl33r1v8qnrcg08ihvri9zm4fvsp14605vwmlkxvs8nb7s5"))))
+         "128zg24961j8nmnq2dxqg6a7zwh3qgv87cmvclsdqwwih9nigxv9"))))
     (build-system python-build-system)
     (arguments
      ;; FIXME: The 'pypi' release does not contain tests.
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH v3 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-27 22:13 70%   ` John Doe
  0 siblings, 0 replies; 200+ results
From: John Doe @ 2020-12-27 22:13 UTC (permalink / raw)
  To: efraim; +Cc: 44990, John Doe

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index bdde4d90f4..0f1a6dec44 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -167,17 +167,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#44990] [PATCH v4 6/8] gnu: python-aiohttp-socks: Update to 0.5.5.
  @ 2020-12-27 22:26 70%   ` John Doe
  0 siblings, 0 replies; 200+ results
From: John Doe @ 2020-12-27 22:26 UTC (permalink / raw)
  To: efraim; +Cc: 44990, John Doe

* gnu/packages/python-web.scm (python-aiohttp-socks):
[version]: Bump to 0.5.5.
[propagated-inputs]: Add python-socks, python-attrs.
---
 gnu/packages/python-web.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index bdde4d90f4..0f1a6dec44 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -167,17 +167,19 @@ Callback Hell.
 (define-public python-aiohttp-socks
   (package
     (name "python-aiohttp-socks")
-    (version "0.2.2")
+    (version "0.5.5")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "aiohttp_socks" version))
        (sha256
         (base32
-         "0473702jk66xrgpm28wbdgpnak4v0dh2qmdjw7ky7hf3lwwqkggf"))))
+         "0jmhb0l1w8k1nishij3awd9zv8zbyb5l35a2pdalrqxxasbhbcif"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-aiohttp" ,python-aiohttp)))
+     `(("python-aiohttp" ,python-aiohttp)
+       ("python-attrs" ,python-attrs)
+       ("python-socks" ,python-socks)))
     (home-page "https://github.com/romis2012/aiohttp-socks")
     (synopsis "SOCKS proxy connector for aiohttp")
     (description "This package provides a SOCKS proxy connector for
-- 
2.29.2





^ permalink raw reply related	[relevance 70%]

* [bug#45712] [PATCHES] Improve Python package quality
@ 2021-01-07 13:26 64% Lars-Dominik Braun
    0 siblings, 1 reply; 200+ results
From: Lars-Dominik Braun @ 2021-01-07 13:26 UTC (permalink / raw)
  To: 45712

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

Hi,

as announced in
https://lists.gnu.org/archive/html/guix-devel/2021-01/msg00021.html I’ve
been working on adding an additional phase to Python packages to check
whether they actually work. I cleaned up my patch, added tests and now
I’m pretty confident it works as expected. The first patch in this
series adds this phase, while the other ones fix build failures caused
by it. All of this should go to core-updates (or a separate wip-*
branch?), since it causes a massive number of rebuilds.

You can also pull my git repo at https://github.com/PromyLOPh/guix.git
branch work-python-importcheck.

Cheers,
Lars


[-- Attachment #2: 0001-build-system-python-Validate-installed-package.patch --]
[-- Type: text/x-diff, Size: 9950 bytes --]

From 7a9ac1ee220ec2cb3dc10da1a8455289aa5e3b99 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 3 Jan 2021 10:30:29 +0100
Subject: [PATCH 01/15] build-system/python: Validate installed package
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Adds a new phase validating usalibity of installed Python packages.

* guix/build/python-build-system.scm (validate-loadable): New phase.
(%standard-phases): Use it.
* tests/builders.scm (python-dummy-*) Add test packages.
("python-build-system: …"): Add tests.
---
 guix/build/python-build-system.scm |  70 +++++++++++++
 tests/builders.scm                 | 161 ++++++++++++++++++++++++++++-
 2 files changed, 228 insertions(+), 3 deletions(-)

diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm
index 09bd8465c8..15d4f0c54e 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -148,6 +148,75 @@
       (format #t "test suite not run~%"))
   #t)
 
+(define validate-script
+  "from __future__ import print_function # Python 2 support.
+import pkg_resources, sys, importlib, traceback
+try:
+    from importlib.machinery import PathFinder
+except ImportError:
+    PathFinder = None
+ret = 0
+# Only check site-packages installed by this package, but not dependencies
+# (which pkg_resources.working_set would include). Path supplied via argv.
+ws = pkg_resources.find_distributions(sys.argv[1])
+for dist in ws:
+    print('validating', repr(dist.project_name), dist.location)
+    try:
+        print('...checking requirements', end=': ')
+        req = str(dist.as_requirement())
+        # dist.activate() is not enough to actually check requirements, we have to
+        # .require() it.
+        pkg_resources.require(req)
+        print('OK')
+    except Exception as e:
+        print('ERROR:', req, e)
+        ret = 1
+        continue
+    # Try to load entry points of console scripts too, making sure they work. They
+    # should be removed if they don’t. Other groups may not be safe, as they can
+    # depend on optional packages.
+    for group, v in dist.get_entry_map().items():
+       if group not in {'console_scripts', }:
+           continue
+       for name, ep in v.items():
+           try:
+               print('...trying to load endpoint', group, name, end=': ')
+               ep.load()
+               print('OK')
+           except Exception:
+               print('ERROR:')
+               traceback.print_exc(file=sys.stdout)
+               ret = 1
+               continue
+    # And finally try to load top level modules. This should not have any
+    # side-effects.
+    for name in dist.get_metadata_lines('top_level.txt'):
+        # Only available on Python 3.
+        if PathFinder and PathFinder.find_spec(name) is None:
+            # Ignore unavailable modules. Cannot use ModuleNotFoundError,
+            # because it is raised by failed imports too.
+            continue
+        try:
+            print('...trying to load module', name, end=': ')
+            importlib.import_module(name)
+            print('OK')
+        except Exception:
+            print('ERROR:')
+            traceback.print_exc(file=sys.stdout)
+            ret = 1
+            continue
+sys.exit(ret)")
+
+(define* (validate-loadable #:key tests? inputs outputs #:allow-other-keys)
+  "Ensure packages depending on this package via setuptools work properly,
+their advertised endpoints work and their top level modules are importable
+without errors."
+  (add-installed-pythonpath inputs outputs)
+  ;; Make sure the working directory is empty (i.e. no Python modules in it)
+  (with-directory-excursion "/tmp"
+    (invoke "python" "-c" validate-script (site-packages inputs outputs)))
+  #t)
+
 (define (python-version python)
   (let* ((version     (last (string-split python #\-)))
          (components  (string-split version #\.))
@@ -267,6 +336,7 @@ installed with setuptools."
     (replace 'install install)
     (add-after 'install 'check check)
     (add-after 'install 'wrap wrap)
+    (add-after 'check 'validate-loadable validate-loadable)
     (add-before 'strip 'rename-pth-file rename-pth-file)))
 
 (define* (python-build #:key inputs (phases %standard-phases)
diff --git a/tests/builders.scm b/tests/builders.scm
index fdcf38ded3..8fc0c07ee0 100644
--- a/tests/builders.scm
+++ b/tests/builders.scm
@@ -21,15 +21,15 @@
   #:use-module (guix download)
   #:use-module (guix build-system)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system python)
   #:use-module (guix store)
+  #:use-module (guix monads)
   #:use-module (guix utils)
   #:use-module (guix base32)
   #:use-module (guix derivations)
   #:use-module (gcrypt hash)
   #:use-module (guix tests)
-  #:use-module ((guix packages)
-                #:select (package?
-                          package-derivation package-native-search-paths))
+  #:use-module (guix packages)
   #:use-module (gnu packages bootstrap)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1)
@@ -78,4 +78,159 @@
 (test-assert "gnu-build-system"
   (build-system? gnu-build-system))
 
+\f
+(define python-dummy-ok
+  (package
+    (name "python-dummy-ok")
+    (version "0.1")
+    (source #f) ; source is generated in 'unpack
+    (build-system python-build-system)
+    (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (replace 'unpack
+             (lambda _
+               (mkdir-p "src")
+               (chdir "src")
+               (mkdir-p "dummy")
+               (invoke "touch" "dummy/__init__.py")
+               (with-output-to-file "setup.py"
+                 (lambda _
+                   (display "from setuptools import setup
+setup(
+     name='dummy-ok',
+     version='0.1',
+     packages=['dummy'],
+     )
+")))
+               #t)))))
+    (home-page #f)
+    (synopsis #f)
+    (description #f)
+    (license #f)))
+
+(define python2-dummy-ok
+  (package-with-python2 python-dummy-ok))
+
+(define python-dummy-fail-requirements
+  (package
+    (name "python-dummy-fail-requirements")
+    (version "0.1")
+    (source #f) ; source is generated in 'unpack
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (replace 'unpack
+             (lambda _
+               (mkdir-p "src")
+               (chdir "src")
+               (mkdir-p "dummy")
+               (invoke "touch" "dummy/__init__.py")
+               (with-output-to-file "setup.py"
+                 (lambda _
+                   (display "from setuptools import setup
+setup(
+     name='dummy-fail-requirements',
+     version='0.1',
+     packages=['dummy'],
+     install_requires=['nonexistent'],
+     )
+")))
+               #t)))))
+    (home-page #f)
+    (synopsis #f)
+    (description #f)
+    (license #f)))
+
+(define-public python2-dummy-fail-requirements
+  (package-with-python2 python-dummy-fail-requirements))
+
+(define-public python-dummy-fail-import
+  (package
+    (name "python-dummy-fail-import")
+    (version "0.1")
+    (source #f) ; source is generated in 'unpack
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (replace 'unpack
+             (lambda _
+               (mkdir-p "src")
+               (chdir "src")
+               (mkdir-p "dummy")
+               (with-output-to-file "dummy/__init__.py"
+                 (lambda _
+                   (display "import nonexistent")))
+               (with-output-to-file "setup.py"
+                 (lambda _
+                   (display "from setuptools import setup
+setup(
+     name='dummy-fail-import',
+     version='0.1',
+     packages=['dummy'],
+     )
+")))
+               #t)))))
+    (home-page #f)
+    (synopsis #f)
+    (description #f)
+    (license #f)))
+
+(define-public python2-dummy-fail-import
+  (package-with-python2 python-dummy-fail-import))
+
+(define-public python-dummy-fail-console-script
+  (package
+    (name "python-dummy-fail-console-script")
+    (version "0.1")
+    (source #f) ; source is generated in 'unpack
+    (build-system python-build-system)
+    (arguments
+       `(#:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (replace 'unpack
+             (lambda _
+               (mkdir-p "src")
+               (chdir "src")
+               (mkdir-p "dummy")
+               (invoke "touch" "dummy/__init__.py")
+               (with-output-to-file "setup.py"
+                 (lambda _
+                   (display "from setuptools import setup
+setup(
+     name='dummy-fail-console-script',
+     version='0.1',
+     packages=['dummy'],
+     entry_points={'console_scripts': ['broken = dummy:nonexistent']},
+     )
+")))
+               #t)))))
+    (home-page #f)
+    (synopsis #f)
+    (description #f)
+    (license #f)))
+
+(define-public python2-dummy-fail-console-script
+  (package-with-python2 python-dummy-fail-console-script))
+
+(with-external-store store
+  (unless store (test-skip 1))
+  (test-assert "python-build-system: dummy-ok"
+    (let* ((drv (package-derivation store python-dummy-ok)))
+      (build-derivations store (list drv))))
+  (unless store (test-skip 1))
+  (test-assert "python-build-system: dummy-fail-requirements"
+    (not (false-if-exception (package-derivation store python-dummy-fail-requirements))))
+  (unless store (test-skip 1))
+  (test-assert "python-build-system: dummy-fail-import"
+    (not (false-if-exception (package-derivation store python-dummy-fail-import))))
+  (unless store (test-skip 1))
+  (test-assert "python-build-system: dummy-fail-console-script"
+    (not (false-if-exception (package-derivation store python-dummy-fail-console-script)))))
+
 (test-end "builders")
-- 
2.26.2


[-- Attachment #3: 0002-gnu-pytest-6-Add-missing-propagated-input.patch --]
[-- Type: text/x-diff, Size: 1372 bytes --]

From cf9ae80b59e86a60c27734c8cc27637757490d70 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:25:56 +0100
Subject: [PATCH 02/15] gnu: pytest@6: Add missing propagated-input.

* gnu/packages/check.scm (python-pytest-6) [native-inputs]: Remove
python-iniconfig.
[propagated-inputs]: Move it here.
---
 gnu/packages/check.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 1300f9e1a6..9d1e0b8173 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -964,13 +964,13 @@ and many external plugins.")
     (propagated-inputs
      (append (alist-delete "python-py"
                            (package-propagated-inputs python-pytest))
-             `(("python-py" ,python-py-next))))
+             `(("python-py" ,python-py-next)
+               ("python-iniconfig" ,python-iniconfig))))
     (native-inputs
      (append (alist-delete "python-pytest"
                            (package-native-inputs python-pytest))
              `(("python-pytest" ,python-pytest-6-bootstrap)
-               ("python-toml" ,python-toml)
-               ("python-iniconfig" ,python-iniconfig))))))
+               ("python-toml" ,python-toml))))))
 
 ;; Pytest 4.x are the last versions that support Python 2.
 (define-public python2-pytest
-- 
2.26.2


[-- Attachment #4: 0003-gnu-python-pytest-xdist-Add-missing-input-relax-pyte.patch --]
[-- Type: text/x-diff, Size: 2111 bytes --]

From 9bc53a8e9706440668ec70d88db1ebc7d5e2c71d Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:27:55 +0100
Subject: [PATCH 03/15] gnu: python-pytest-xdist: Add missing input, relax
 pytest requirement.

* gnu/packages/check.scm: (python-pytest-xdist)
[arguments]: Relax pytest version requirements.
[propagated-inputs]: Add python-pytest-forked.
---
 gnu/packages/check.scm | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 9d1e0b8173..32a1a2d6a3 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1216,20 +1216,27 @@ same arguments.")
            #t))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f)) ;FIXME: Some tests are failing.
-       ;; #:phases
-       ;; (modify-phases %standard-phases
-       ;;   (delete 'check)
-       ;;   (add-after 'install 'check
-       ;;     (lambda* (#:key inputs outputs #:allow-other-keys)
-       ;;       (add-installed-pythonpath inputs outputs)
-       ;;       (zero? (system* "py.test" "-v")))))
+     '(#:tests? #f ; Lots of tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; Relax pytest requirement.
+             (substitute* "setup.py"
+               (("pytest>=6\\.0\\.0") "pytest"))
+             #t))
+         (replace 'check
+            (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+              (when tests?
+                (add-installed-pythonpath inputs outputs)
+                (invoke "py.test" "-v")))))))
     (native-inputs
      `(("python-setuptools-scm" ,python-setuptools-scm)))
     (propagated-inputs
      `(("python-execnet" ,python-execnet)
        ("python-pytest" ,python-pytest)
-       ("python-py" ,python-py)))
+       ("python-py" ,python-py)
+       ("python-pytest-forked" ,python-pytest-forked)))
     (home-page
      "https://github.com/pytest-dev/pytest-xdist")
     (synopsis
-- 
2.26.2


[-- Attachment #5: 0004-gnu-python-fixtures-bootstrap-Do-not-apply-loadable-.patch --]
[-- Type: text/x-diff, Size: 1109 bytes --]

From 0974fc1c98ae1554ddd37a1ca40127bd5df95179 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:29:59 +0100
Subject: [PATCH 04/15] gnu: python-fixtures-bootstrap: Do not apply loadable
 check.

* gnu/packages/check.scm (python-fixtures-bootstrap) [arguments]: Delete
'validate-loadable.
---
 gnu/packages/check.scm | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 32a1a2d6a3..fba408d88f 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1541,7 +1541,12 @@ protocol.")))
                (base32
                 "1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))))
     (build-system python-build-system)
-    (arguments `(#:tests? #f))
+    (arguments
+      `(#:tests? #f
+        #:phases
+         (modify-phases %standard-phases
+           ;; Package is not loadable on its own at this stage.
+           (delete 'validate-loadable))))
     (propagated-inputs
      `(("python-pbr-minimal" ,python-pbr-minimal)
        ("python-six" ,python-six)))
-- 
2.26.2


[-- Attachment #6: 0005-gnu-python-pytest-pep8-Fix-package.patch --]
[-- Type: text/x-diff, Size: 1515 bytes --]

From d2272e00c42e3ddde1b0532a4b1ad187816dc98f Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:35:11 +0100
Subject: [PATCH 05/15] gnu: python-pytest-pep8: Fix package.

* gnu/packages/check.scm (python-pytest-pep8) [arguments]: Remove
dependency on pytest-cache and add proper 'check phase.
---
 gnu/packages/check.scm | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index fba408d88f..796635e012 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2043,7 +2043,19 @@ failures.")
                 "06032agzhw1i9d9qlhfblnl3dw5hcyxhagn7b120zhrszbjzfbh3"))))
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f)) ; Fails with recent pytest and pep8. See upstream issues #8 and #12.
+     `(#:tests? #t ; Fails with recent pytest and pep8. See upstream issues #8 and #12.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-dependencies
+           (lambda _
+             (substitute* "setup.py"
+               (("'pytest-cache', ") "")) ; Included in recent pytest
+             #t))
+         (replace 'check
+            (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+              (when tests?
+                (add-installed-pythonpath inputs outputs)
+                (invoke "pytest" "-v")))))))
     (native-inputs
      `(("python-pytest" ,python-pytest)))
     (propagated-inputs
-- 
2.26.2


[-- Attachment #7: 0006-gnu-python-pyfakefs-Disable-unreliable-test.patch --]
[-- Type: text/x-diff, Size: 1413 bytes --]

From a252a9d180804a6cb0d2829acd99a1010b4e1984 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:42:40 +0100
Subject: [PATCH 06/15] gnu: python-pyfakefs: Disable unreliable test.

* gnu/packages/check.scm (python-pyfakefs) [arguments]: Disable test.
---
 gnu/packages/check.scm | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 796635e012..0535a1b2c4 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2858,13 +2858,14 @@ grew out of the @dfn{Vc} project.")
     (arguments
      `(#:phases
        (modify-phases %standard-phases
-         ;; The default test suite does not run these extra tests.
-         (add-after 'check 'check-pytest-plugin
+         (replace 'check
            (lambda _
-             (invoke
-              "python" "-m" "pytest"
-              "pyfakefs/pytest_tests/pytest_plugin_test.py")
-             #t)))))
+             (invoke "pytest"
+               "pyfakefs/tests"
+               ;; The default test suite does not run these extra tests.
+               ;"pyfakefs/pytest_tests/pytest_plugin_test.py"
+               ;; atime difference is larger than expected.
+               "-k" "not test_copy_real_file"))))))
     (native-inputs
      `(("python-pytest" ,python-pytest)))
     (build-system python-build-system)
-- 
2.26.2


[-- Attachment #8: 0007-gnu-python-slugify-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 960 bytes --]

From ced04daa680ef5f261b6f23e0500aca60032d323 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:48:36 +0100
Subject: [PATCH 07/15] gnu: python-slugify: Add missing input.

* gnu/packages/python-web.scm (python-slugify) [propagated-inputs]: Add
python-text-unidecode.
---
 gnu/packages/python-web.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 622f5fc6e2..e3cf25a687 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4398,7 +4398,8 @@ Python.")
        (sha256
         (base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9"))))
     (propagated-inputs
-     `(("python-unidecode" ,python-unidecode)))
+     `(("python-unidecode" ,python-unidecode)
+       ("python-text-unidecode" ,python-text-unidecode)))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
-- 
2.26.2


[-- Attachment #9: 0008-gnu-python-websockets-Fix-Python-package-name.patch --]
[-- Type: text/x-diff, Size: 1439 bytes --]

From 4412f706693caa7fd888a637ea66b65afd34a15b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:49:01 +0100
Subject: [PATCH 08/15] gnu: python-websockets: Fix Python package name.

* gnu/packages/python-web.scm (python-websockets) [arguments]: Add new
phase to fix package name.
---
 gnu/packages/python-web.scm | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e3cf25a687..e3318a18ce 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5086,7 +5086,16 @@ Plus all the standard features of requests:
          (base32
           "03s3ml6sbki24aajllf8aily0xzrn929zxi84p50zkkbikdd4raw"))))
     (build-system python-build-system)
-    (arguments '(#:tests? #f))  ; Tests not included in release tarball.
+    (arguments
+     '(#:tests? #f  ; Tests not included in release tarball.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; Python package names use dot as separator.
+             (substitute* "setup.py"
+               (("websockets/extensions") "websockets.extensions"))
+             #t)))))
     (home-page "https://github.com/aaugustin/websockets")
     (synopsis
      "Python implementation of the WebSocket Protocol (RFC 6455 & 7692)")
-- 
2.26.2


[-- Attachment #10: 0009-gnu-python-black-Remove-blackd.patch --]
[-- Type: text/x-diff, Size: 1297 bytes --]

From f1b8ada28652fa85fa62075afb462a0611a50a50 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:50:18 +0100
Subject: [PATCH 09/15] gnu: python-black: Remove blackd.

* gnu/packages/python-xyz.scm (python-black) [arguments]: Add new phase
to prevent installation of blackd.
---
 gnu/packages/python-xyz.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 818a244378..a02960f1c6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -4277,7 +4277,14 @@ matching of file paths.")
              (substitute* "tests/test_black.py"
                (("( *)def test_python38" match indent)
                 (string-append indent "@unittest.skip(\"guix\")\n" match)))
-             #t)))))
+             #t))
+         ;; Remove blackd, because it depends on python-aiohttp and
+         ;; python-aiohttp-cors.
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "setup.py"
+               (("\\s*\"blackd=blackd:patched_main \\[d\\]\",\n") "")
+                (("\"blackd\", ") "")))))))
     (propagated-inputs
      `(("python-click" ,python-click)
        ("python-attrs" ,python-attrs)
-- 
2.26.2


[-- Attachment #11: 0010-gnu-python-traitlets-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 1075 bytes --]

From df86a15fef25655c78faed179b25cd3c06e6b396 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:53:25 +0100
Subject: [PATCH 10/15] gnu: python-traitlets: Add missing input.

* gnu/packages/python-xyz.scm (python-traitlets) [propagated-inputs]:
Add python-six.
---
 gnu/packages/python-xyz.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a02960f1c6..4b7fff5750 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -6973,7 +6973,8 @@ cluster down and deletes the throwaway profile.")
          (replace 'check (lambda _ (invoke "pytest" "-vv" "traitlets"))))))
     (propagated-inputs
      `(("python-ipython-genutils" ,python-ipython-genutils)
-       ("python-decorator" ,python-decorator)))
+       ("python-decorator" ,python-decorator)
+       ("python-six" ,python-six)))
     (native-inputs
      `(("python-pytest" ,python-pytest)))
     (properties `((python2-variant . ,(delay python2-traitlets))))
-- 
2.26.2


[-- Attachment #12: 0011-gnu-python-idna-ssl-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 996 bytes --]

From f41d09b6acf31fc36b37f8fb895fb9ded52fe825 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:12:56 +0100
Subject: [PATCH 11/15] gnu: python-idna-ssl: Add missing input.

* gnu/packages/python-xyz.scm (python-idna-ssl) [propagated-inputs]: Add
python-idna.
---
 gnu/packages/python-xyz.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4b7fff5750..58ad3b6e55 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9517,6 +9517,7 @@ is binding LibSass.")
     (build-system python-build-system)
     (arguments
      `(#:tests? #f))          ;circular dependency with python-aiohttp
+    (propagated-inputs `(("python-idna" ,python-idna)))
     (home-page "https://github.com/aio-libs/idna-ssl")
     (synopsis "Patch @code{ssl.match_hostname} for Unicode(idna) domains support")
     (description "Patch @code{ssl.match_hostname} for Unicode(idna)
-- 
2.26.2


[-- Attachment #13: 0012-gnu-python-twisted-Remove-broken-console-scripts.patch --]
[-- Type: text/x-diff, Size: 1327 bytes --]

From fe272f9e3a35a9a3b6b9994f3b6881fbe8facb7b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:13:53 +0100
Subject: [PATCH 12/15] gnu: python-twisted: Remove broken console scripts.

* gnu/packages/python-xyz.scm (python-twisted) [arguments]: Patch
setup.py.
---
 gnu/packages/python-xyz.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 58ad3b6e55..d8b61cd1d2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12716,7 +12716,14 @@ format.")
                 "17d3hnxv9qndagzz63mdpyk99xj63p9gq586vjn0rxk8cl197nym"))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f))                    ; FIXME: some tests fail
+     '(#:tests? #f                    ; FIXME: some tests fail
+       #:phases
+       (modify-phases %standard-phases
+         ;; Remove scripts, because they depend on [conch]
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "src/twisted/python/_setup.py"
+               (("\".+ = twisted\\.conch\\.scripts\\..+\",") "")))))))
     (propagated-inputs
      `(("python-zope-interface" ,python-zope-interface)
        ("python-pyhamcrest" ,python-pyhamcrest)
-- 
2.26.2


[-- Attachment #14: 0013-gnu-python-automat-Remove-broken-console-script.patch --]
[-- Type: text/x-diff, Size: 1329 bytes --]

From fef86cb5fc9dede96cc458c3801818f7cd6912cd Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:15:12 +0100
Subject: [PATCH 13/15] gnu: python-automat: Remove broken console script.

* gnu/packages/python-xyz.scm (python-automat) [arguments]: Patch
setup.py.
---
 gnu/packages/python-xyz.scm | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d8b61cd1d2..acd674878a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15151,7 +15151,15 @@ instead of servers and network commands.")
     ;; python-twisted depends on python-automat.  Twisted is optional, but the
     ;; tests fail if it is not available.  Also see
     ;; <https://github.com/glyph/automat/issues/71>.
-    (arguments '(#:tests? #f))
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         ;; Remove script, because it depends on python-twisted.
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "setup.py"
+               (("\"automat-visualize = automat._visualize:tool\"") "")))))))
     (native-inputs
      `(("python-m2r" ,python-m2r)
        ("python-setuptools-scm" ,python-setuptools-scm)
-- 
2.26.2


[-- Attachment #15: 0014-gnu-python-packaging-bootstrap-Remove-dependency.patch --]
[-- Type: text/x-diff, Size: 1411 bytes --]

From 9c0eb0a2ede51bc234cd5c4d7a1347fa3f83e843 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:16:05 +0100
Subject: [PATCH 14/15] gnu: python-packaging-bootstrap: Remove dependency.

* gnu/packages/python-xyz.scm (python-packaging-bootstrap) [arguments]:
Remove dependency from setup.py, which we do not provide for this
variant.
---
 gnu/packages/python-xyz.scm | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index acd674878a..e78016221f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16049,10 +16049,18 @@ information.")
    (package/inherit
     python-packaging
     (name "python-packaging-bootstrap")
+    (arguments
+      (substitute-keyword-arguments (package-arguments python-packaging)
+        ((#:phases phases)
+         `(modify-phases ,phases
+            (add-after 'unpack 'fix-dependencies
+              (lambda* (#:key tests? #:allow-other-keys)
+                (substitute* "setup.py" (("\"six\"") ""))
+                #t))))
+         ((#:tests? _ #f) #f)))
     (native-inputs '())
     (propagated-inputs
-     `(("python-pyparsing" ,python-pyparsing)))
-    (arguments '(#:tests? #f)))))
+     `(("python-pyparsing" ,python-pyparsing))))))
 
 (define-public python2-packaging-bootstrap
   (hidden-package
-- 
2.26.2


[-- Attachment #16: 0015-gnu-python-traceback2-Add-missing-dependency.patch --]
[-- Type: text/x-diff, Size: 996 bytes --]

From ecc8eebadbeb8c75ac5025d7bce581423d4d1894 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:17:20 +0100
Subject: [PATCH 15/15] gnu: python-traceback2: Add missing dependency.

* gnu/packages/python-xyz.scm (python-traceback2) [propagated-inputs]:
Add python-six.
---
 gnu/packages/python-xyz.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e78016221f..1df9807626 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17266,7 +17266,8 @@ lines are read from a single file.")
     (native-inputs
      `(("python-pbr" ,python-pbr-minimal)))
     (propagated-inputs
-      `(("python-linecache2" ,python-linecache2)))
+      `(("python-linecache2" ,python-linecache2)
+        ("python-six" ,python-six)))
     (home-page
       "https://github.com/testing-cabal/traceback2")
     (synopsis "Backports of the traceback module")
-- 
2.26.2


^ permalink raw reply related	[relevance 64%]

* [bug#45712] [PATCHES] Improve Python package quality
  @ 2021-01-12  9:37 58%     ` Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2021-01-12  9:37 UTC (permalink / raw)
  To: Hartmut Goebel, Ricardo Wurmus; +Cc: 45712

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

Hi Hartmut,

> Please but this int a new line - makeing it easier to copy & paste.
> (Leading emptry lines doe nor effect "from __future__ import").
adopted Ricardo’s suggestion here.

> This looks very uncommon (and make my mind hooking on it). Please use
> this, which is more common and less mindbogling ;-)
Done.

> Any reason for converting the req into a string first? IC,
> "`requirements` must be a string". So I'd move the "str()" to the
> function call:
Yes, the string is used in the error message.

>     if group not in {'console_scripts', 'gui_scripts'}:
> Why not gui-scripts?
> If not adding gui-scripts, just use "if group != 'concolse_scrips':"
I wasn’t aware this exists. Added, thanks!

> Does it make sence to try loading the top-level modules *after* the the
> entry-point? Chances are very high that the entry-points implicitly test
> the top-level modules already.
> IMHO it would make more sense to first try the top-level modules, and
> even stop processing if this fails.
True, I reversed the order. Still, I think continuing with the entry
points might be worth, if it points out more (different) errors. For
small packages this might not be the case, but larger ones often only
re-export specific names in the top-level module, thus testing might
reveal more issues.

> Please add a short explanation why there can be unavailable top-level
> modules.
Done.

> While not having antoher idea, I'm not happy with this name. "loadable"
> is not easy to get. (See also below, where this term is used in commit message.)
> top-level-modules-are-importable?
I’m also not happy with the name, but can’t think of a better one right
now. Anyone?

> AFAIKS the packages only differ by some requirements. So I suggest
> using a function to return the packages. This makes it easier to spot
> the actull differences.
> […]
> (mkdir-p "src/dummy")
> (chdir "src")
Done.

> I would strip this down (version is not required AFAIK) and put it one
> line (her assuming you use (format) for creating the code within a function:
Not sure whether it’s optional or not, [1] does not say it is. No harm
in keeping it?

[1] https://setuptools.readthedocs.io/en/latest/references/keywords.html?highlight=version#keywords

> Arguments are not used?
Fixed.

> Any reason for relaxing this? Why not use python-pytest-6 as input?
Yes, our pytest@6 package reports its version as 0.0.0, so this patch is
required with either package. Or we figure out how to fix pytest@6
(works fine with PEP 517 compliant build system).

> Please rephrase into something like
> Do not validate loadability
Done.

> Dosn't this change fix the checks? So this comment would be obsoltes and
> "#:tests #t" can be removed.
Should’ve been #f, sorry, fixed.

> I suggest keeping the old way, as this is will automatically update to
> upstream changes.
Okay, I’ve added another phase that disables the test manually, because
it fails for me every time.

See attached patchset (v2) or git repository for updated patches.

I’ve also rebuilt all 2284 packages depending on python-build-system.
Currently 426 of them fail to build for any reason (not necessarily
caused by this patchset; I’ve seen some unrelated issues). Due to the
large number of packages failing I suggest moving forward with applying
this first batch and then fixing everything else incrementally, unless
some major package is broken (see attached list). WDYT?

Cheers,
Lars


[-- Attachment #2: 0001-build-system-python-Validate-installed-package.patch --]
[-- Type: text/x-diff, Size: 9127 bytes --]

From 69bd0e11b9a054837e1733858490f0aec3830eca Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 3 Jan 2021 10:30:29 +0100
Subject: [PATCH v2 01/16] build-system/python: Validate installed package
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Adds a new phase validating usalibity of installed Python packages.

* guix/build/python-build-system.scm (validate-script): Add script.
(validate-loadable): New phase.
(%standard-phases): Use it.
* tests/builders.scm (make-python-dummy): Add test package generator.
(check-build-{success,failure}): Add build helper functions.
(python-dummy-*): Add test packages.
("python-build-system: …"): Add tests.
---
 guix/build/python-build-system.scm |  80 +++++++++++++++++++++
 tests/builders.scm                 | 108 ++++++++++++++++++++++++++++-
 2 files changed, 185 insertions(+), 3 deletions(-)

diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm
index 09bd8465c8..3c29efea8b 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -148,6 +148,85 @@
       (format #t "test suite not run~%"))
   #t)
 
+(define validate-script
+  "\
+from __future__ import print_function # Python 2 support.
+import pkg_resources, sys, importlib, traceback
+try:
+    from importlib.machinery import PathFinder
+except ImportError:
+    PathFinder = None
+ret = 0
+# Only check site-packages installed by this package, but not dependencies
+# (which pkg_resources.working_set would include). Path supplied via argv.
+ws = pkg_resources.find_distributions(sys.argv[1])
+for dist in ws:
+    print('validating', repr(dist.project_name), dist.location)
+    try:
+        print('...checking requirements: ', end='')
+        req = str(dist.as_requirement())
+        # dist.activate() is not enough to actually check requirements, we have to
+        # .require() it.
+        pkg_resources.require(req)
+        print('OK')
+    except Exception as e:
+        print('ERROR:', req, e)
+        ret = 1
+        continue
+
+    # Try to load top level modules. This should not have any side-effects.
+    try:
+        metalines = dist.get_metadata_lines('top_level.txt')
+    except KeyError:
+		# distutils (i.e. #:use-setuptools? #f) will not install any metadata.
+        print('WARNING: cannot determine top-level modules')
+        continue
+    for name in metalines:
+        # Only available on Python 3.
+        if PathFinder and PathFinder.find_spec(name) is None:
+            # Ignore unavailable modules, often C modules, which were not
+            # installed at the top-level. Cannot use ModuleNotFoundError,
+            # because it is raised by failed imports too.
+            continue
+        try:
+            print('...trying to load module', name, end=': ')
+            importlib.import_module(name)
+            print('OK')
+        except Exception:
+            print('ERROR:')
+            traceback.print_exc(file=sys.stdout)
+            ret = 1
+            continue
+
+    # Try to load entry points of console scripts too, making sure they work. They
+    # should be removed if they don’t. Other groups may not be safe, as they can
+    # depend on optional packages.
+    for group, v in dist.get_entry_map().items():
+       if group not in {'console_scripts', 'gui_scripts'}:
+           continue
+       for name, ep in v.items():
+           try:
+               print('...trying to load endpoint', group, name, end=': ')
+               ep.load()
+               print('OK')
+           except Exception:
+               print('ERROR:')
+               traceback.print_exc(file=sys.stdout)
+               ret = 1
+               continue
+
+sys.exit(ret)")
+
+(define* (validate-loadable #:key tests? inputs outputs #:allow-other-keys)
+  "Ensure packages depending on this package via setuptools work properly,
+their advertised endpoints work and their top level modules are importable
+without errors."
+  (add-installed-pythonpath inputs outputs)
+  ;; Make sure the working directory is empty (i.e. no Python modules in it)
+  (with-directory-excursion "/tmp"
+    (invoke "python" "-c" validate-script (site-packages inputs outputs)))
+  #t)
+
 (define (python-version python)
   (let* ((version     (last (string-split python #\-)))
          (components  (string-split version #\.))
@@ -267,6 +346,7 @@ installed with setuptools."
     (replace 'install install)
     (add-after 'install 'check check)
     (add-after 'install 'wrap wrap)
+    (add-after 'check 'validate-loadable validate-loadable)
     (add-before 'strip 'rename-pth-file rename-pth-file)))
 
 (define* (python-build #:key inputs (phases %standard-phases)
diff --git a/tests/builders.scm b/tests/builders.scm
index fdcf38ded3..929d1a906e 100644
--- a/tests/builders.scm
+++ b/tests/builders.scm
@@ -21,15 +21,15 @@
   #:use-module (guix download)
   #:use-module (guix build-system)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system python)
   #:use-module (guix store)
+  #:use-module (guix monads)
   #:use-module (guix utils)
   #:use-module (guix base32)
   #:use-module (guix derivations)
   #:use-module (gcrypt hash)
   #:use-module (guix tests)
-  #:use-module ((guix packages)
-                #:select (package?
-                          package-derivation package-native-search-paths))
+  #:use-module (guix packages)
   #:use-module (gnu packages bootstrap)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1)
@@ -78,4 +78,106 @@
 (test-assert "gnu-build-system"
   (build-system? gnu-build-system))
 
+\f
+(define* (make-python-dummy name #:key (setup-py-extra "") (init-py "") (use-setuptools? #t))
+  (package
+    (name (string-append "python-dummy-" name))
+    (version "0.1")
+    (source #f) ; source is generated in 'unpack
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f
+       #:use-setuptools? ,use-setuptools?
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'unpack
+           (lambda _
+             (mkdir-p "src/dummy")
+             (chdir "src")
+             (with-output-to-file "dummy/__init__.py"
+               (lambda _
+                 (display ,init-py)))
+             (with-output-to-file "setup.py"
+               (lambda _
+                 (format #t "\
+~a
+setup(
+     name='dummy-~a',
+     version='0.1',
+     packages=['dummy'],
+     ~a
+     )"
+                    (if ,use-setuptools?
+                      "from setuptools import setup"
+                      "from distutils.core import setup")
+                    ,name ,setup-py-extra)))
+               #t)))))
+    (home-page #f)
+    (synopsis #f)
+    (description #f)
+    (license #f)))
+
+(define python-dummy-ok
+  (make-python-dummy "ok"))
+
+(define python2-dummy-ok
+  (package-with-python2 python-dummy-ok))
+
+;; distutil won’t install any metadata, so make sure our script does not fail
+;; on a otherwise fine package.
+(define python-dummy-no-setuptools
+  (make-python-dummy
+    "no-setuptools" #:use-setuptools? #f))
+
+(define python2-dummy-no-setuptools
+  (package-with-python2 python-dummy-no-setuptools))
+
+(define python-dummy-fail-requirements
+  (make-python-dummy "fail-requirements"
+    #:setup-py-extra "install_requires=['nonexistent'],"))
+
+(define python2-dummy-fail-requirements
+  (package-with-python2 python-dummy-fail-requirements))
+
+(define python-dummy-fail-import
+  (make-python-dummy "fail-import" #:init-py "import nonexistent"))
+
+(define python2-dummy-fail-import
+  (package-with-python2 python-dummy-fail-import))
+
+(define python-dummy-fail-console-script
+  (make-python-dummy "fail-console-script"
+    #:setup-py-extra (string-append "entry_points={'console_scripts': "
+                                    "['broken = dummy:nonexistent']},")))
+
+(define python2-dummy-fail-console-script
+  (package-with-python2 python-dummy-fail-console-script))
+
+(define (check-build-success store p)
+  (unless store (test-skip 1))
+  (test-assert (string-append "python-build-system: " (package-name p))
+    (let* ((drv (package-derivation store p)))
+      (build-derivations store (list drv)))))
+
+(define (check-build-failure store p)
+  (unless store (test-skip 1))
+  (test-assert (string-append "python-build-system: " (package-name p))
+    (not (false-if-exception (package-derivation store python-dummy-fail-requirements)))))
+
+(with-external-store store
+  (for-each (lambda (p) (check-build-success store p))
+            (list
+              python-dummy-ok
+              python-dummy-no-setuptools
+              python2-dummy-ok
+              python2-dummy-no-setuptools))
+  (for-each (lambda (p) (check-build-failure store p))
+            (list
+              python-dummy-fail-requirements
+              python-dummy-fail-import
+              python-dummy-fail-console-script
+              python2-dummy-fail-requirements
+              python2-dummy-fail-import
+              python2-dummy-fail-console-script)))
+
 (test-end "builders")
-- 
2.26.2


[-- Attachment #3: 0002-gnu-pytest-6-Add-missing-propagated-input.patch --]
[-- Type: text/x-diff, Size: 1375 bytes --]

From e99707fb4cea9db88721192e84044dbdf1b1ca9b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:25:56 +0100
Subject: [PATCH v2 02/16] gnu: pytest@6: Add missing propagated-input.

* gnu/packages/check.scm (python-pytest-6) [native-inputs]: Remove
python-iniconfig.
[propagated-inputs]: Move it here.
---
 gnu/packages/check.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 1300f9e1a6..9d1e0b8173 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -964,13 +964,13 @@ and many external plugins.")
     (propagated-inputs
      (append (alist-delete "python-py"
                            (package-propagated-inputs python-pytest))
-             `(("python-py" ,python-py-next))))
+             `(("python-py" ,python-py-next)
+               ("python-iniconfig" ,python-iniconfig))))
     (native-inputs
      (append (alist-delete "python-pytest"
                            (package-native-inputs python-pytest))
              `(("python-pytest" ,python-pytest-6-bootstrap)
-               ("python-toml" ,python-toml)
-               ("python-iniconfig" ,python-iniconfig))))))
+               ("python-toml" ,python-toml))))))
 
 ;; Pytest 4.x are the last versions that support Python 2.
 (define-public python2-pytest
-- 
2.26.2


[-- Attachment #4: 0003-gnu-python-pytest-xdist-Add-missing-input-relax-pyte.patch --]
[-- Type: text/x-diff, Size: 2090 bytes --]

From 23077674975a0194f38ed70d0a912ab52c4af3fe Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:27:55 +0100
Subject: [PATCH v2 03/16] gnu: python-pytest-xdist: Add missing input, relax
 pytest requirement.

* gnu/packages/check.scm: (python-pytest-xdist)
[arguments]: Relax pytest version requirements.
[propagated-inputs]: Add python-pytest-forked.
---
 gnu/packages/check.scm | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 9d1e0b8173..2136b8fc4f 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1216,20 +1216,27 @@ same arguments.")
            #t))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f)) ;FIXME: Some tests are failing.
-       ;; #:phases
-       ;; (modify-phases %standard-phases
-       ;;   (delete 'check)
-       ;;   (add-after 'install 'check
-       ;;     (lambda* (#:key inputs outputs #:allow-other-keys)
-       ;;       (add-installed-pythonpath inputs outputs)
-       ;;       (zero? (system* "py.test" "-v")))))
+     '(#:tests? #f ; Lots of tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-setup-py
+           (lambda _
+             ;; Relax pytest requirement.
+             (substitute* "setup.py"
+               (("pytest>=6\\.0\\.0") "pytest"))
+             #t))
+         (replace 'check
+            (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+              (when tests?
+                (add-installed-pythonpath inputs outputs)
+                (invoke "py.test" "-v")))))))
     (native-inputs
      `(("python-setuptools-scm" ,python-setuptools-scm)))
     (propagated-inputs
      `(("python-execnet" ,python-execnet)
        ("python-pytest" ,python-pytest)
-       ("python-py" ,python-py)))
+       ("python-py" ,python-py)
+       ("python-pytest-forked" ,python-pytest-forked)))
     (home-page
      "https://github.com/pytest-dev/pytest-xdist")
     (synopsis
-- 
2.26.2


[-- Attachment #5: 0004-gnu-python-fixtures-bootstrap-Do-not-validate-loadab.patch --]
[-- Type: text/x-diff, Size: 1111 bytes --]

From 478a266a4299a05835bbfc19099a1f0afc318d8a Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:29:59 +0100
Subject: [PATCH v2 04/16] gnu: python-fixtures-bootstrap: Do not validate
 loadability

* gnu/packages/check.scm (python-fixtures-bootstrap) [arguments]: Delete
'validate-loadable.
---
 gnu/packages/check.scm | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 2136b8fc4f..e4761eb66a 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1541,7 +1541,12 @@ protocol.")))
                (base32
                 "1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))))
     (build-system python-build-system)
-    (arguments `(#:tests? #f))
+    (arguments
+      `(#:tests? #f
+        #:phases
+         (modify-phases %standard-phases
+           ;; Package is not loadable on its own at this stage.
+           (delete 'validate-loadable))))
     (propagated-inputs
      `(("python-pbr-minimal" ,python-pbr-minimal)
        ("python-six" ,python-six)))
-- 
2.26.2


[-- Attachment #6: 0005-gnu-python-pytest-pep8-Fix-package.patch --]
[-- Type: text/x-diff, Size: 1518 bytes --]

From ac7d664c3748afb9059ed3d147c13a9033fff45b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:35:11 +0100
Subject: [PATCH v2 05/16] gnu: python-pytest-pep8: Fix package.

* gnu/packages/check.scm (python-pytest-pep8) [arguments]: Remove
dependency on pytest-cache and add proper 'check phase.
---
 gnu/packages/check.scm | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index e4761eb66a..c12cb98a6c 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2043,7 +2043,19 @@ failures.")
                 "06032agzhw1i9d9qlhfblnl3dw5hcyxhagn7b120zhrszbjzfbh3"))))
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f)) ; Fails with recent pytest and pep8. See upstream issues #8 and #12.
+     `(#:tests? #f ; Fails with recent pytest and pep8. See upstream issues #8 and #12.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-dependencies
+           (lambda _
+             (substitute* "setup.py"
+               (("'pytest-cache', ") "")) ; Included in recent pytest
+             #t))
+         (replace 'check
+            (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+              (when tests?
+                (add-installed-pythonpath inputs outputs)
+                (invoke "pytest" "-v")))))))
     (native-inputs
      `(("python-pytest" ,python-pytest)))
     (propagated-inputs
-- 
2.26.2


[-- Attachment #7: 0006-gnu-python-pyfakefs-Disable-unreliable-test.patch --]
[-- Type: text/x-diff, Size: 1256 bytes --]

From e76db5088bafd7a3788a80a834d4983e0eed0e6a Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 11 Jan 2021 14:44:02 +0100
Subject: [PATCH v2 06/16] gnu: python-pyfakefs: Disable unreliable test

* gnu/packages/check.scm (python-pyfakefs) [arguments]: Add new phase to
skip single test.
---
 gnu/packages/check.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index c12cb98a6c..9ddf656324 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2858,6 +2858,16 @@ grew out of the @dfn{Vc} project.")
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-testsuite
+           (lambda _
+             ;; Time difference is larger than expected.
+             (substitute* "pyfakefs/tests/fake_filesystem_unittest_test.py"
+               (("(\\s+)def test_copy_real_file" all indent)
+                (string-append
+                  indent
+                  "@unittest.skip('disabled by guix')\n"
+                  all)))
+             #t))
          ;; The default test suite does not run these extra tests.
          (add-after 'check 'check-pytest-plugin
            (lambda _
-- 
2.26.2


[-- Attachment #8: 0007-gnu-python-slugify-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 963 bytes --]

From 203cd356f44081a753b1f67ec14ab00ec1bd8520 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:48:36 +0100
Subject: [PATCH v2 07/16] gnu: python-slugify: Add missing input.

* gnu/packages/python-web.scm (python-slugify) [propagated-inputs]: Add
python-text-unidecode.
---
 gnu/packages/python-web.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 622f5fc6e2..e3cf25a687 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4398,7 +4398,8 @@ Python.")
        (sha256
         (base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9"))))
     (propagated-inputs
-     `(("python-unidecode" ,python-unidecode)))
+     `(("python-unidecode" ,python-unidecode)
+       ("python-text-unidecode" ,python-text-unidecode)))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
-- 
2.26.2


[-- Attachment #9: 0008-gnu-python-websockets-Fix-Python-package-name.patch --]
[-- Type: text/x-diff, Size: 1442 bytes --]

From fe3ec027ce3fe198a2cdfe3e1329094f2525fa42 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:49:01 +0100
Subject: [PATCH v2 08/16] gnu: python-websockets: Fix Python package name.

* gnu/packages/python-web.scm (python-websockets) [arguments]: Add new
phase to fix package name.
---
 gnu/packages/python-web.scm | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e3cf25a687..e3318a18ce 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5086,7 +5086,16 @@ Plus all the standard features of requests:
          (base32
           "03s3ml6sbki24aajllf8aily0xzrn929zxi84p50zkkbikdd4raw"))))
     (build-system python-build-system)
-    (arguments '(#:tests? #f))  ; Tests not included in release tarball.
+    (arguments
+     '(#:tests? #f  ; Tests not included in release tarball.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; Python package names use dot as separator.
+             (substitute* "setup.py"
+               (("websockets/extensions") "websockets.extensions"))
+             #t)))))
     (home-page "https://github.com/aaugustin/websockets")
     (synopsis
      "Python implementation of the WebSocket Protocol (RFC 6455 & 7692)")
-- 
2.26.2


[-- Attachment #10: 0009-gnu-python-black-Remove-blackd.patch --]
[-- Type: text/x-diff, Size: 1300 bytes --]

From d8199ab0353aa215d193ca511a63d4eea355b6c6 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:50:18 +0100
Subject: [PATCH v2 09/16] gnu: python-black: Remove blackd.

* gnu/packages/python-xyz.scm (python-black) [arguments]: Add new phase
to prevent installation of blackd.
---
 gnu/packages/python-xyz.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 818a244378..a02960f1c6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -4277,7 +4277,14 @@ matching of file paths.")
              (substitute* "tests/test_black.py"
                (("( *)def test_python38" match indent)
                 (string-append indent "@unittest.skip(\"guix\")\n" match)))
-             #t)))))
+             #t))
+         ;; Remove blackd, because it depends on python-aiohttp and
+         ;; python-aiohttp-cors.
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "setup.py"
+               (("\\s*\"blackd=blackd:patched_main \\[d\\]\",\n") "")
+                (("\"blackd\", ") "")))))))
     (propagated-inputs
      `(("python-click" ,python-click)
        ("python-attrs" ,python-attrs)
-- 
2.26.2


[-- Attachment #11: 0010-gnu-python-traitlets-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 1078 bytes --]

From b7ec4d0705bab46fa682a79de530336e2ff46775 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 13:53:25 +0100
Subject: [PATCH v2 10/16] gnu: python-traitlets: Add missing input.

* gnu/packages/python-xyz.scm (python-traitlets) [propagated-inputs]:
Add python-six.
---
 gnu/packages/python-xyz.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a02960f1c6..4b7fff5750 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -6973,7 +6973,8 @@ cluster down and deletes the throwaway profile.")
          (replace 'check (lambda _ (invoke "pytest" "-vv" "traitlets"))))))
     (propagated-inputs
      `(("python-ipython-genutils" ,python-ipython-genutils)
-       ("python-decorator" ,python-decorator)))
+       ("python-decorator" ,python-decorator)
+       ("python-six" ,python-six)))
     (native-inputs
      `(("python-pytest" ,python-pytest)))
     (properties `((python2-variant . ,(delay python2-traitlets))))
-- 
2.26.2


[-- Attachment #12: 0011-gnu-python-idna-ssl-Add-missing-input.patch --]
[-- Type: text/x-diff, Size: 999 bytes --]

From e17eb838b9d77588200ac6db652e87bcd73e3f87 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:12:56 +0100
Subject: [PATCH v2 11/16] gnu: python-idna-ssl: Add missing input.

* gnu/packages/python-xyz.scm (python-idna-ssl) [propagated-inputs]: Add
python-idna.
---
 gnu/packages/python-xyz.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4b7fff5750..58ad3b6e55 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9517,6 +9517,7 @@ is binding LibSass.")
     (build-system python-build-system)
     (arguments
      `(#:tests? #f))          ;circular dependency with python-aiohttp
+    (propagated-inputs `(("python-idna" ,python-idna)))
     (home-page "https://github.com/aio-libs/idna-ssl")
     (synopsis "Patch @code{ssl.match_hostname} for Unicode(idna) domains support")
     (description "Patch @code{ssl.match_hostname} for Unicode(idna)
-- 
2.26.2


[-- Attachment #13: 0012-gnu-python-twisted-Remove-broken-console-scripts.patch --]
[-- Type: text/x-diff, Size: 1330 bytes --]

From 3372011b15cd28b203590981f5e1c561f977e31f Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:13:53 +0100
Subject: [PATCH v2 12/16] gnu: python-twisted: Remove broken console scripts.

* gnu/packages/python-xyz.scm (python-twisted) [arguments]: Patch
setup.py.
---
 gnu/packages/python-xyz.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 58ad3b6e55..d8b61cd1d2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12716,7 +12716,14 @@ format.")
                 "17d3hnxv9qndagzz63mdpyk99xj63p9gq586vjn0rxk8cl197nym"))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f))                    ; FIXME: some tests fail
+     '(#:tests? #f                    ; FIXME: some tests fail
+       #:phases
+       (modify-phases %standard-phases
+         ;; Remove scripts, because they depend on [conch]
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "src/twisted/python/_setup.py"
+               (("\".+ = twisted\\.conch\\.scripts\\..+\",") "")))))))
     (propagated-inputs
      `(("python-zope-interface" ,python-zope-interface)
        ("python-pyhamcrest" ,python-pyhamcrest)
-- 
2.26.2


[-- Attachment #14: 0013-gnu-python-automat-Remove-broken-console-script.patch --]
[-- Type: text/x-diff, Size: 1332 bytes --]

From 7f644bb845249c32a2504fad0625dd75a6c01ce1 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:15:12 +0100
Subject: [PATCH v2 13/16] gnu: python-automat: Remove broken console script.

* gnu/packages/python-xyz.scm (python-automat) [arguments]: Patch
setup.py.
---
 gnu/packages/python-xyz.scm | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d8b61cd1d2..acd674878a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15151,7 +15151,15 @@ instead of servers and network commands.")
     ;; python-twisted depends on python-automat.  Twisted is optional, but the
     ;; tests fail if it is not available.  Also see
     ;; <https://github.com/glyph/automat/issues/71>.
-    (arguments '(#:tests? #f))
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         ;; Remove script, because it depends on python-twisted.
+         (add-after 'unpack 'remove-entrypoint
+           (lambda _
+             (substitute* "setup.py"
+               (("\"automat-visualize = automat._visualize:tool\"") "")))))))
     (native-inputs
      `(("python-m2r" ,python-m2r)
        ("python-setuptools-scm" ,python-setuptools-scm)
-- 
2.26.2


[-- Attachment #15: 0014-gnu-python-packaging-bootstrap-Remove-dependency.patch --]
[-- Type: text/x-diff, Size: 1414 bytes --]

From ff4f539c9c4cd18e7f5c9bea4f87eec42ee81394 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:16:05 +0100
Subject: [PATCH v2 14/16] gnu: python-packaging-bootstrap: Remove dependency.

* gnu/packages/python-xyz.scm (python-packaging-bootstrap) [arguments]:
Remove dependency from setup.py, which we do not provide for this
variant.
---
 gnu/packages/python-xyz.scm | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index acd674878a..e78016221f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16049,10 +16049,18 @@ information.")
    (package/inherit
     python-packaging
     (name "python-packaging-bootstrap")
+    (arguments
+      (substitute-keyword-arguments (package-arguments python-packaging)
+        ((#:phases phases)
+         `(modify-phases ,phases
+            (add-after 'unpack 'fix-dependencies
+              (lambda* (#:key tests? #:allow-other-keys)
+                (substitute* "setup.py" (("\"six\"") ""))
+                #t))))
+         ((#:tests? _ #f) #f)))
     (native-inputs '())
     (propagated-inputs
-     `(("python-pyparsing" ,python-pyparsing)))
-    (arguments '(#:tests? #f)))))
+     `(("python-pyparsing" ,python-pyparsing))))))
 
 (define-public python2-packaging-bootstrap
   (hidden-package
-- 
2.26.2


[-- Attachment #16: 0015-gnu-python-traceback2-Add-missing-dependency.patch --]
[-- Type: text/x-diff, Size: 999 bytes --]

From 65d2ab65d4dd73e1bdb0248cc41848c55859f98d Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Thu, 7 Jan 2021 14:17:20 +0100
Subject: [PATCH v2 15/16] gnu: python-traceback2: Add missing dependency.

* gnu/packages/python-xyz.scm (python-traceback2) [propagated-inputs]:
Add python-six.
---
 gnu/packages/python-xyz.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e78016221f..1df9807626 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17266,7 +17266,8 @@ lines are read from a single file.")
     (native-inputs
      `(("python-pbr" ,python-pbr-minimal)))
     (propagated-inputs
-      `(("python-linecache2" ,python-linecache2)))
+      `(("python-linecache2" ,python-linecache2)
+        ("python-six" ,python-six)))
     (home-page
       "https://github.com/testing-cabal/traceback2")
     (synopsis "Backports of the traceback module")
-- 
2.26.2


[-- Attachment #17: 0016-gnu-python2-packaging-bootstrap-Add-missing-dependen.patch --]
[-- Type: text/x-diff, Size: 984 bytes --]

From 55aab0eba972c6672be9d8de5e0ec9340b10c243 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 11 Jan 2021 15:19:01 +0100
Subject: [PATCH v2 16/16] gnu: python2-packaging-bootstrap: Add missing
 dependency

* gnu/packages/python-xyz.scm (python2-packaging-bootstrap)
[propagated-inputs]: Add python2-six-bootstrap.
---
 gnu/packages/python-xyz.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1df9807626..434946acfd 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16069,7 +16069,8 @@ information.")
     (name "python2-packaging-bootstrap")
     (native-inputs '())
     (propagated-inputs
-     `(("python-pyparsing" ,python2-pyparsing)))
+     `(("python-pyparsing" ,python2-pyparsing)
+       ("python-six" ,python2-six-bootstrap)))
     (arguments
      `(#:tests? #f
        ,@(package-arguments python2-packaging))))))
-- 
2.26.2


[-- Attachment #18: failing-packages.txt --]
[-- Type: text/plain, Size: 7445 bytes --]

awscli
b4
beets
beets-bandcamp
behave
bpython
buku
calibre
certbot
curseradio
dbxfs
debops
diffoscope
docker-compose
electron-cash
electrum
enjarify
fabric
fdroidserver
fenics
frescobaldi
gandi.cli
gaupol
gitless
gpodder
grit
grocsvs
instantmusic
jrnl
jupyter
keepkey-agent
khmer
ledger-agent
letsencrypt
linkchecker
mailman
miso
mps-youtube
nmoldyn
nototools
offlate
onionshare
openshot
pagekite
patchwork
pbtranscript-tofu
pepr
picard
poetry
poretools
postorius
pre-commit
presentty
protonvpn-cli
ptpython2
pulseaudio-dlna
pybitmessage
pyicoteo
python2-anaconda-client
python2-apache-libcloud
python2-argcomplete
python2-arrow
python2-autograd
python2-axolotl
python2-bcrypt
python2-behave-web-api
python2-betamax
python2-betamax-matchers
python2-bigfloat
python2-biom-format
python2-booleanoperations
python2-botocore
python2-cachecontrol
python2-cairocffi
python2-celery
python2-checkm-genome
python2-clf
python2-cloudpickle
python2-consul
python2-cryptography
python2-cvxopt
python2-cypari2
python2-discogs-client
python2-dns-lexicon
python2-drmaa
python2-dulwich
python2-ecpy
python2-elasticsearch
python2-email-validator
python2-empy
python2-entrypoints
python2-factory-boy
python2-faker
python2-fakeredis
python2-falcon
python2-falcon-cors
python2-fastlmm
python2-fido2
python2-flake8
python2-flake8-polyfill
python2-flask
python2-flask-babel
python2-flask-htmlmin
python2-flask-login
python2-flask-multistatic
python2-flask-wtf
python2-flex
python2-furl
python2-future
python2-git-review
python2-google-api-client
python2-graphql-core
python2-gridmap
python2-guzzle-sphinx-theme
python2-hdf4
python2-html5-parser
python2-htseq
python2-httpbin
python2-ipykernel
python2-ipyparallel
python2-ipython
python2-ipython-cluster-helper
python2-ipywidgets
python2-josepy
python2-jupyter-client
python2-jupyter-console
python2-kivy
python2-kombu
python2-ledgerblue
python2-libadalang
python2-lzstring
python2-mapnik
python2-matplotlib
python2-matplotlib-documentation
python2-mechanicalsoup
python2-mutagen
python2-mwclient
python2-nbconvert
python2-nbxmpp
python2-ndg-httpsclient
python2-nose2
python2-notebook
python2-notify2
python2-numpydoc
python2-numpy-documentation
python2-oauthlib
python2-openid-cla
python2-openid-teams
python2-openpyxl
python2-orator
python2-os-client-config
python2-os-testr
python2-pandas
python2-paramiko
python2-parsedatetime
python2-partd
python2-pathpy
python2-patsy
python2-pendulum
python2-pep517
python2-pgpdump
python2-pika
python2-plastid
python2-plotly
python2-py2neo
python2-pybedtools
python2-pyclipper
python2-pyfakefs
python2-pylibmc
python2-pymysql
python2-pynacl
python2-pynamecheap
python2-pyopenssl
python2-pysnptools
python2-pytest-xdist
python2-radon
python2-rauth
python2-renpy
python2-requests
python2-requests-file
python2-requests-mock
python2-requests-oauthlib
python2-requests-toolbelt
python2-responses
python2-roca-detect
python2-rpython
python2-rq
python2-rst.linker
python2-ruamel.yaml
python2-s3transfer
python2-scikit-learn
python2-scipy
python2-scripttest
python2-seaborn
python2-service-identity
python2-setuptools-scm-git-archive
python2-sh
python2-shapely
python2-sockjs-tornado
python2-sphinx-cloud-sptheme
python2-sphinxcontrib-programoutput
python2-sphinx-repoze-autointerface
python2-statsmodels
python2-stem
python2-stevedore
python2-tables
python2-terminado
python2-tldextract
python2-tornado
python2-translate-toolkit
python2-trollius-redis
python2-twine
python2-urlgrabber
python2-urllib3
python2-utils
python2-validators
python2-warpedlmm
python2-widgetsnbextension
python2-wsgiproxy2
python2-xenon
python2-yubikey-manager
python2-zope-component
python2-zope-configuration
python2-zope-exceptions
python2-zope-i18nmessageid
python2-zope-location
python2-zope-proxy
python2-zope-schema
python2-zope-security
python2-zope-testrunner
python-args
python-aws-xray-sdk
python-bbknn
python-behave-web-api
python-bigfloat
python-btrees
python-cachy
python-clint
python-codacy-coverage
python-cypari2
python-daemux
python-dendropy
python-django-auth-ldap
python-django-bulk-update
python-django-classy-tags
python-django-compressor
python-django-contact-form
python-django-debug-toolbar
python-django-debug-toolbar-alchemy
python-django-extensions
python-django-filter
python-django-haystack
python-django-jinja
python-django-logging-json
python-django-mailman3
python-django-netfields
python-django-redis
python-djangorestframework
python-django-rq
python-django-sekizai
python-django-statici18n
python-django-url-filter
python-docker
python-drmaa
python-duniterpy
python-eliot
python-enum34
python-eventlet
python-faiss
python-fakeredis
python-flasgger
python-flask-restplus
python-flask-session
python-flit
python-funcparserlib
python-graphene
python-gridmap
python-gyp
python-hacking
python-hdf4
python-html5-parser
python-hy
python-hyperkitty
python-internetarchive
python-ipykernel
python-ipyparallel
python-ipython-cluster-helper
python-ipython-documentation
python-ipywidgets
python-jaraco-packaging
python-jose
python-jsonpickle
python-jupyter-client
python-jupyter-console
python-jupyter-kernel-mgmt
python-jupyter-kernel-test
python-jupyter-protocol
python-keyring
python-keyrings.alt
python-keystoneclient
python-kivy
python-ldap
python-lfdfiles
python-libsass
python-logwrap
python-mailman-hyperkitty
python-mamba
python-matplotlib-documentation
python-matrix-synapse-ldap3
python-miniboa
python-moto
python-nautilus
python-nbval
python-ndg-httpsclient
python-notebook
python-numpy-documentation
python-onnx
python-ont-fast5-api
python-openid-cla
python-openid-teams
python-orator
python-os-client-config
python-oslo.config
python-oslo.context
python-oslo.i18n
python-oslo.log
python-oslo.serialization
python-oslosphinx
python-oslo.utils
python-os-testr
python-owslib
python-pafy
python-parallel
python-pari-jupyter
python-pathpy
python-pendulum
python-persistent
python-petsc4py
python-pifpaf
python-plotly
python-py3dns
python-pyacoustid
python-pyclipper
python-pydub
python-pykafka
python-pykka
python-pylibmc
python-pyramid
python-pytest-arraydiff
python-pytest-checkdocs
python-pytest-django
python-pytest-mpl
python-pytest-shutil
python-pytest-virtualenv
python-pytidylib
python-pyxb
python-qdarkstyle
python-qtconsole
python-qtpy
python-radon
python-scripttest
python-setools
python-setuptools-scm-git-archive
python-slepc4py
python-socksipychain
python-sphinx-copybutton
python-stestr
python-swiftclient
python-symengine
python-tempest-lib
python-tortoise-orm
python-translate-toolkit
python-translation-finder
python-trollius-redis
python-trytond-account
python-trytond-account-invoice
python-trytond-account-invoice-stock
python-trytond-account-product
python-trytond-analytic-account
python-trytond-company
python-trytond-country
python-trytond-currency
python-trytond-party
python-trytond-product
python-trytond-purchase
python-trytond-purchase-request
python-trytond-stock
python-trytond-stock-lot
python-trytond-stock-supply
python-txacme
python-typing
python-widgetsnbextension
python-xattr
python-xenon
python-zope-component
python-zope-configuration
python-zope-copy
python-zope-deferredimport
python-zope-exceptions
python-zope-i18nmessageid
python-zope-location
python-zope-proxy
python-zope-schema
python-zope-security
python-zope-testrunner
qutebrowser
rapid-photo-downloader
renpy
reprotest
ribodiff
rtv
silkaj
solaar
synapse
syncthing-gtk
tadbit
taxtastic
tbsp
trezor-agent
tuir
unknown-horizons
virtaal
xpra
you-get
youtube-dl
youtube-dl-gui

^ permalink raw reply related	[relevance 58%]

* [bug#46848] [PATCHES] [core-updates] PEP 517 python-build-system
@ 2021-03-01 13:43 53% Lars-Dominik Braun
  2021-05-15  9:31 54% ` Lars-Dominik Braun
  0 siblings, 1 reply; 200+ results
From: Lars-Dominik Braun @ 2021-03-01 13:43 UTC (permalink / raw)
  To: 46848

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

Hi everyone,

the attached patches switch python-build-system to a PEP 517-based build
system using python-pypa-build.

As discussed previously Python is currently in the process of opening up
for build systems other than setuptools using the API specified in PEP
517. python-pypa-build is a simple tool for building packages using that
new API. It supports setup.py-based builds as a fallback, if no
pyproject.toml is present.

One downside is that this tool is not self-contained and has a few
dependencies. Thus first I bootstrap setuptools using itself (possible
because it bundles all of its own dependencies), then build
python-pypa-build’s dependencies using setuptools (which is fortunately
still possible) and then combine everything into a
python-toolchain(-for-build), which is then used by the build-process.

I can successfully build packages like python-pypa-build and
python-pytest and python-pep517-bootstrap. The latter is using flit as
its build backend. But other packages currently fail because I removed
some arguments.

Cheers,
Lars


[-- Attachment #2: 0001-build-python-Handle-missing-setuptools-in-sanity-che.patch --]
[-- Type: text/x-diff, Size: 1103 bytes --]

From 7ace01faef72f3a48b18fe241fe0524445a154fb Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Fri, 19 Feb 2021 17:22:35 +0100
Subject: [PATCH 01/12] build/python: Handle missing setuptools in
 sanity-check.py

Just skip testing if required dependencies (setuptools) are not
available.

* gnu/packages/aux-files/python/sanity-check.py: Handle ImportError.
---
 gnu/packages/aux-files/python/sanity-check.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/aux-files/python/sanity-check.py b/gnu/packages/aux-files/python/sanity-check.py
index 83b6d583ca..240155cecc 100644
--- a/gnu/packages/aux-files/python/sanity-check.py
+++ b/gnu/packages/aux-files/python/sanity-check.py
@@ -19,9 +19,13 @@
 
 from __future__ import print_function  # Python 2 support.
 import importlib
-import pkg_resources
 import sys
 import traceback
+try:
+    import pkg_resources
+except ImportError:
+    print('Warning: Skipping, because python-setuptools are not available.')
+    sys.exit(0)
 
 try:
     from importlib.machinery import PathFinder
-- 
2.26.2


[-- Attachment #3: 0002-gnu-python-pypa-build-Update-to-0.3.0.patch --]
[-- Type: text/x-diff, Size: 1187 bytes --]

From 66033f14455456d465a3c9f5a2d1f4961cd3b989 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 12:50:42 +0100
Subject: [PATCH 02/12] gnu: python-pypa-build: Update to 0.3.0.

* gnu/packages/python-build.scm (python-pypa-build): Update to 0.3.0.
---
 gnu/packages/python-build.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 140629ca43..92dbda314f 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -118,13 +118,13 @@ Language (TOML) configuration files.")
 (define-public python-pypa-build
   (package
     (name "python-pypa-build")
-    (version "0.1.0")
+    (version "0.3.0")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "build" version))
               (sha256
                (base32
-                "1d6m21lijwm04g50nwgsgj7x3vhblzw7jv05ah8psqgzk20bbch8"))))
+                "1pazq66c35whrqd5b0zcydjvy2rmghi8riljkd67q3bpiln5pf8f"))))
     (build-system python-build-system)
     (arguments
      `(#:tests? #f                      ;to tests in the PyPI release
-- 
2.26.2


[-- Attachment #4: 0003-gnu-python-wheel-Install-entrypoint-scripts.patch --]
[-- Type: text/x-diff, Size: 1651 bytes --]

From 00ef998413dc0fe6605653ae16f65d6377c2ec77 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:02:15 +0100
Subject: [PATCH 03/12] gnu: python-wheel: Install entrypoint scripts

* gnu/packages/python-build.scm (pythont-wheel) [arguments]: Add phase
'patch-enable-entrypoints.
---
 gnu/packages/python-build.scm | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 92dbda314f..232e24f470 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -47,10 +47,17 @@
           "0ii6f34rvpjg3nmw4bc2h7fhdsy38y1h93hghncfs5akfrldmj8h"))))
     (build-system python-build-system)
     (arguments
-     ;; FIXME: The test suite runs "python setup.py bdist_wheel", which in turn
-     ;; fails to find the newly-built bdist_wheel library, even though it is
-     ;; available on PYTHONPATH.  What search path is consulted by setup.py?
-     '(#:tests? #f))
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-enable-entrypoints
+           (lambda _
+             ;; python-wheel tells setuptools to not install entry point scripts
+             ;; by default. Stop doing that, so wheels built contain all data
+             ;; required.
+             (substitute* "wheel/bdist_wheel.py"
+               (("(install_scripts\\.no_ep = )True" all assignment)
+				(string-append assignment "False")))
+             #t)))))
     (home-page "https://bitbucket.org/pypa/wheel/")
     (synopsis "Format for built Python packages")
     (description
-- 
2.26.2


[-- Attachment #5: 0004-gnu-python-setuptools-Bootstrap-using-itself.patch --]
[-- Type: text/x-diff, Size: 1610 bytes --]

From 61313d8ddba30772e2587e3e16ca30d1565d3c7e Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:05:51 +0100
Subject: [PATCH 04/12] gnu: python-setuptools: Bootstrap using itself

* gnu/packages/python-xyz.scm (python-setuptools) [arguments]: Add phase
setting GUIX_PYTHONPATH to source directory.
---
 gnu/packages/python-xyz.scm | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f8afa13f33..79d01f700a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1144,7 +1144,18 @@ other machines, such as over the network.")
     ;; FIXME: Tests require pytest, which itself relies on setuptools.
     ;; One could bootstrap with an internal untested setuptools.
     (arguments
-     `(#:tests? #f))
+     `(#:tests? #f
+       #:python ,python-wrapper
+       #:phases (modify-phases %standard-phases
+                  ;; Use this setuptools’ sources to bootstrap themselves.
+                  (add-before 'build 'set-PYTHONPATH
+                    (lambda _
+                      (format #t "current working dir ~s~%" (getcwd))
+                      (setenv "GUIX_PYTHONPATH"
+                              (string-append ".:" (getenv "GUIX_PYTHONPATH")))
+                      #t)))))
+    ;; Not required when not building a wheel
+    ;(propagated-inputs `(("python-wheel" ,python-wheel)))
     (home-page "https://pypi.org/project/setuptools/")
     (synopsis
      "Library designed to facilitate packaging Python projects")
-- 
2.26.2


[-- Attachment #6: 0005-python-build-Switch-to-PEP-517-based-build.patch --]
[-- Type: text/x-diff, Size: 24575 bytes --]

From 7a99aaa40e65fde58ee2e78ad7d3e0ccd6d169ae Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:08:58 +0100
Subject: [PATCH 05/12] python-build: Switch to PEP 517-based build

* gnu/packages/python-commencement.scm: New file, containing
python-toolchain.
* gnu/local.mk: Add it.
* gnu/packages/python.scm (python): Disable installing bundled
pip/setuptools.
* guix/build/python-build-system.scm: Rewrite using python-pypa-build.
* guix/build-system/python.scm (default-python): Switch to
python-toolchain
(lower): Remove unused parameter.

XXX: rationale
---
 gnu/local.mk                         |   1 +
 gnu/packages/python-commencement.scm | 175 +++++++++++++++++++
 gnu/packages/python.scm              |   2 +-
 guix/build-system/python.scm         |   8 +-
 guix/build/python-build-system.scm   | 249 ++++++++++++++++++---------
 5 files changed, 342 insertions(+), 93 deletions(-)
 create mode 100644 gnu/packages/python-commencement.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 202677fed1..ef2532cb5d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -463,6 +463,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/python.scm			\
   %D%/packages/python-build.scm			\
   %D%/packages/python-check.scm			\
+  %D%/packages/python-commencement.scm		\
   %D%/packages/python-compression.scm		\
   %D%/packages/python-crypto.scm		\
   %D%/packages/python-science.scm		\
diff --git a/gnu/packages/python-commencement.scm b/gnu/packages/python-commencement.scm
new file mode 100644
index 0000000000..2ced3079bc
--- /dev/null
+++ b/gnu/packages/python-commencement.scm
@@ -0,0 +1,175 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2017, 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Timothy Sample <samplet@ngyro.com>
+;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages python-commencement)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module (guix build-system trivial)
+  #:use-module (guix build-system python)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-build)
+  #:use-module (gnu packages python-xyz)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-26))
+
+;; Python toolchain and all packages required to bootstrap it.
+
+(define-public python-toolchain
+  (package
+    (name "python-toolchain")
+    (version (package-version python))
+    (source #f)
+    (build-system trivial-build-system)
+    (arguments
+     '(#:modules ((guix build union))
+       #:builder (begin
+                   (use-modules (ice-9 match)
+                                (srfi srfi-1)
+                                (srfi srfi-26)
+                                (guix build union))
+
+                   (let ((out (assoc-ref %outputs "out")))
+                     (union-build out (filter-map (match-lambda
+                                                ((_ . directory) directory))
+                                              %build-inputs))
+                     #t))))
+    (inputs
+     `(("python" ,python-wrapper)
+       ("python-setuptools" ,python-setuptools)
+       ("python-pip" ,python-pip))) ; XXX Maybe virtualenv/venv too? It kind of
+                                    ; defeats the purpose of guix, but is used
+                                    ; alot in local development.
+    (native-search-paths
+     (package-native-search-paths python))
+    (search-paths
+     (package-search-paths python))
+    (license (package-license python)) ; XXX
+    (synopsis "Python toolchain")
+    (description
+     "Python toolchain including Python itself, setuptools and pip.  Use this
+package if you need a fully-fledged Python toolchain instead of just the
+interpreter.")
+    (home-page (package-home-page python))))
+
+;; Python 3 toolchain for python-build-system. We cannot use python-toolchain
+;; here, since we’d need to bootstrap python-pip somehow.
+(define-public python-toolchain-for-build
+  (package
+    (inherit python-toolchain)
+    (name "python-toolchain-for-build")
+    (inputs
+      `(("python" ,python-wrapper)
+        ("python-setuptools" ,python-setuptools)
+        ("python-pypa-build" ,python-pypa-build-from-setuptools)))))
+
+;; Python 3 toolchain to bootstrap python-pypa-build
+(define-public python-toolchain-only-setuptools
+  (package
+    (inherit python-toolchain)
+    (name "python-toolchain-only-setuptools")
+    (inputs
+      `(("python" ,python-wrapper)
+        ("python-setuptools" ,python-setuptools)))))
+
+(define-public python-pypa-build-from-setuptools
+  (package
+	(inherit python-pypa-build)
+    (name "python-pypa-build-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools))
+    (propagated-inputs
+      `(("python-pep517" ,python-pep517-from-setuptools)
+        ("python-packaging" ,python-packaging-from-setuptools)))))
+
+(define-public python-pep517-from-setuptools
+  (package
+	(inherit python-pep517-bootstrap)
+    (name "python-pep517-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       #:phases (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda _
+             (substitute* "setup.py"
+               (("distutils\\.core") "setuptools"))
+             #t)))))
+    (propagated-inputs
+     `(("python-toml" ,python-toml-from-setuptools)
+       ("python-wheel" ,python-wheel-from-setuptools)))
+	;; Drop cyclic dependency.
+	(native-inputs '())))
+
+(define-public python-toml-from-setuptools
+  (package
+    (inherit python-toml)
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-toml)))))
+
+(define-public python-packaging-from-setuptools
+  (package
+    (inherit python-packaging-bootstrap)
+    (name "python-packaging-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-packaging-bootstrap)))
+    (propagated-inputs
+     `(("python-pyparsing" ,python-pyparsing-from-setuptools)
+       ("python-six" ,python-six-from-setuptools)))))
+
+(define-public python-pyparsing-from-setuptools
+  (package
+    (inherit python-pyparsing)
+    (name "python-pyparsing-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-pyparsing)))))
+
+(define-public python-six-from-setuptools
+  (package
+    (inherit python-six-bootstrap)
+    (name "python-six-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-six-bootstrap)))))
+
+(define-public python-wheel-from-setuptools
+  (package
+    (inherit python-wheel)
+    (name "python-wheel-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-wheel)))))
+
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 8e8f46467b..ca5ce667ef 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -182,7 +182,7 @@
        (list "--enable-shared"          ;allow embedding
              "--with-system-expat"      ;for XML support
              "--with-system-ffi"        ;build ctypes
-             "--with-ensurepip=install" ;install pip and setuptools
+             "--with-ensurepip=no"      ;do not install pip and setuptools
              "--enable-unicode=ucs4"
 
              ;; Prevent the installed _sysconfigdata.py from retaining a reference
diff --git a/guix/build-system/python.scm b/guix/build-system/python.scm
index 2bb6fa87ca..998ea9323d 100644
--- a/guix/build-system/python.scm
+++ b/guix/build-system/python.scm
@@ -65,8 +65,8 @@ extension, such as '.tar.gz'."
 (define (default-python)
   "Return the default Python package."
   ;; Lazily resolve the binding to avoid a circular dependency.
-  (let ((python (resolve-interface '(gnu packages python))))
-    (module-ref python 'python-wrapper)))
+  (let ((python (resolve-interface '(gnu packages python-commencement))))
+    (module-ref python 'python-toolchain-for-build)))
 
 (define (default-python2)
   "Return the default Python 2 package."
@@ -172,8 +172,6 @@ pre-defined variants."
 (define* (python-build store name inputs
                        #:key
                        (tests? #t)
-                       (test-target "test")
-                       (use-setuptools? #t)
                        (configure-flags ''())
                        (phases '(@ (guix build python-build-system)
                                    %standard-phases))
@@ -199,9 +197,7 @@ provides a 'setup.py' file as its build system."
                                   source))
                      #:configure-flags ,configure-flags
                      #:system ,system
-                     #:test-target ,test-target
                      #:tests? ,tests?
-                     #:use-setuptools? ,use-setuptools?
                      #:phases ,phases
                      #:outputs %outputs
                      #:search-paths ',(map search-path-specification->sexp
diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm
index 8ade1d5911..a5731511a9 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -34,6 +34,7 @@
   #:use-module (ice-9 format)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-35)
   #:export (%standard-phases
             add-installed-pythonpath
             site-packages
@@ -108,30 +109,17 @@
 ;; "--single-version-externally-managed" is set, thus the .egg-info directory
 ;; and the scripts defined in entry-points will always be created.
 
+;; Base error type.
+(define-condition-type &python-build-error &error
+  python-build-error?)
 
-(define setuptools-shim
-  ;; Run setup.py with "setuptools" being imported, which will patch
-  ;; "distutils". This is needed for packages using "distutils" instead of
-  ;; "setuptools" since the former does not understand the
-  ;; "--single-version-externally-managed" flag.
-  ;; Python code taken from pip 9.0.1 pip/utils/setuptools_build.py
-  (string-append
-   "import setuptools, tokenize;__file__='setup.py';"
-   "f=getattr(tokenize, 'open', open)(__file__);"
-   "code=f.read().replace('\\r\\n', '\\n');"
-   "f.close();"
-   "exec(compile(code, __file__, 'exec'))"))
-
-(define (call-setuppy command params use-setuptools?)
-  (if (file-exists? "setup.py")
-      (begin
-         (format #t "running \"python setup.py\" with command ~s and parameters ~s~%"
-                command params)
-         (if use-setuptools?
-             (apply invoke "python" "-c" setuptools-shim
-                    command params)
-             (apply invoke "python" "./setup.py" command params)))
-      (error "no setup.py found")))
+;; Raised when 'check cannot find a valid test system in the inputs.
+(define-condition-type &test-system-not-found &python-build-error
+  test-system-not-found?)
+
+;; Raised when multiple wheels are created by 'build.
+(define-condition-type &cannot-extract-multiple-wheels &python-build-error
+  cannot-extract-multiple-wheels?)
 
 (define* (sanity-check #:key tests? inputs outputs #:allow-other-keys)
   "Ensure packages depending on this package via setuptools work properly,
@@ -142,23 +130,51 @@ without errors."
     (with-directory-excursion "/tmp"
       (invoke "python" sanity-check.py (site-packages inputs outputs)))))
 
-(define* (build #:key use-setuptools? #:allow-other-keys)
+(define* (build #:key outputs #:allow-other-keys)
   "Build a given Python package."
-  (call-setuppy "build" '() use-setuptools?)
+
+  (define pyproject-build (which "pyproject-build"))
+
+  (define (build-pep517)
+    ;; XXX: should probably use a different path, outside of source directory,
+    ;; maybe secondary output “wheel”?
+    (mkdir-p "dist")
+    (invoke pyproject-build "--outdir" "dist" "--no-isolation" "--wheel" "."))
+
+      ;; XXX Would be nice, if we could use bdist_wheel here to remove extra
+      ;; code path in 'install, but that depends on python-wheel.
+  (define (build-setuptools)
+    (invoke "python" "setup.py" "build"))
+
+  (if pyproject-build
+    (build-pep517)
+    (build-setuptools))
   #t)
 
-(define* (check #:key tests? test-target use-setuptools? #:allow-other-keys)
+(define* (check #:key inputs outputs tests? #:allow-other-keys)
   "Run the test suite of a given Python package."
   (if tests?
-      ;; Running `setup.py test` creates an additional .egg-info directory in
-      ;; build/lib in some cases, e.g. if the source is in a sub-directory
-      ;; (given with `package_dir`). This will by copied to the output, too,
-      ;; so we need to remove.
-      (let ((before (find-files "build" "\\.egg-info$" #:directories? #t)))
-        (call-setuppy test-target '() use-setuptools?)
-        (let* ((after (find-files "build" "\\.egg-info$" #:directories? #t))
-               (inter (lset-difference string=? after before)))
-          (for-each delete-file-recursively inter)))
+    ;; Unfortunately with PEP 517 there is no common method to specify test
+    ;; systems. Guess test system based on inputs instead.
+    (let ((pytest (which "pytest"))
+            (have-setup-py (file-exists? "setup.py")))
+        ;; Prefer pytest
+        ;; XXX: support nose
+        (cond
+          (pytest
+            (begin
+              (format #t "using pytest~%")
+              (invoke pytest "-vv"))) ; XXX: support skipping tests based on name/extra arguments?
+          ;; But fall back to setup.py, which should work for most
+          ;; packages. XXX: would be nice not to depend on setup.py here? fails
+          ;; more often than not to find any tests at all. Maybe we can run
+          ;; `python -m unittest`?
+          (have-setup-py
+            (begin
+              (format #t "using setup.py~%")
+                (invoke "python" "setup.py" "test" "-v")))
+          ;; The developer should explicitly disable tests in this case.
+          (#t (raise (condition (&test-system-not-found))))))
       (format #t "test suite not run~%"))
   #t)
 
@@ -195,31 +211,109 @@ running checks after installing the package."
                                 "/bin:"
                                 (getenv "PATH"))))
 
-(define* (install #:key inputs outputs (configure-flags '()) use-setuptools?
-                  #:allow-other-keys)
-  "Install a given Python package."
-  (let* ((out (python-output outputs))
-         (python (assoc-ref inputs "python"))
-         (major-minor (map string->number
-                           (take (string-split (python-version python) #\.) 2)))
-         (<3.7? (match major-minor
-                   ((major minor)
-                    (or (< major 3) (and (= major 3) (< minor 7))))))
-         (params (append (list (string-append "--prefix=" out)
-                               "--no-compile")
-                         (if use-setuptools?
-                             ;; distutils does not accept these flags
-                             (list "--single-version-externally-managed"
-                                   "--root=/")
-                             '())
-                         configure-flags)))
-    (call-setuppy "install" params use-setuptools?)
-    ;; Rather than produce potentially non-reproducible .pyc files on Pythons
-    ;; older than 3.7, whose 'compileall' module lacks the
-    ;; '--invalidation-mode' option, do not generate any.
-    (unless <3.7?
-      (invoke "python" "-m" "compileall" "--invalidation-mode=unchecked-hash"
-              out))))
+(define* (install #:key inputs outputs (configure-flags '()) #:allow-other-keys)
+  "Install a wheel file according to PEP 427"
+  ;; See https://www.python.org/dev/peps/pep-0427/#installing-a-wheel-distribution-1-0-py32-none-any-whl
+  (let* ((site-dir (site-packages inputs outputs))
+         (out (assoc-ref outputs "out")))
+    (define (extract file)
+      "Extract wheel (ZIP file) into site-packages directory"
+      ;; Use Python’s zipfile to avoid extra dependency
+      (invoke "python" "-m" "zipfile" "-e" file site-dir))
+
+    (define python-hashbang
+      (string-append "#!" (assoc-ref inputs "python") "/bin/python"))
+
+    (define (move-data source destination)
+      (mkdir-p (dirname destination))
+      (rename-file source destination))
+
+    (define (move-script source destination)
+      "Move executable script file from .data/scripts to out/bin and replace
+temporary hashbang"
+	  (move-data source destination)
+      ;; ZIP does not save/restore permissions, make executable
+      ;; XXX: might not be a file, but directory with subdirectories
+      (chmod destination #o755)
+      (substitute* destination (("#!python") python-hashbang)))
+
+    ;; Python’s distutils.command.install defines this mapping from source to
+    ;; destination mapping.
+    (define install-schemes
+      `(("scripts" "bin" ,move-script)
+        ;; XXX: Why does Python not use share/ here?
+        ("data" "share" ,move-data)))
+
+    (define (expand-data-directory directory)
+      "Move files from all .data subdirectories to their respective
+destinations."
+      (for-each
+        (match-lambda ((source destination function)
+          (let ((source-path (string-append directory "/" source))
+                (destination-path (string-append out "/" destination)))
+            (when (file-exists? source-path)
+              (begin
+                ;; This assumes only files exist in the scripts/ directory.
+                (for-each
+                  (lambda (file)
+                    (apply
+                      function
+                      (list
+                        (string-append source-path "/" file)
+                        (string-append destination-path "/" file))))
+                  (scandir source-path (negate (cut member <> '("." "..")))))
+                (rmdir source-path))))))
+        install-schemes))
+    
+  (define pyproject-build (which "pyproject-build"))
+
+  (define (list-directories base predicate)
+    ;; Cannot use find-files here, because it’s recursive.
+    (scandir
+      base
+      (lambda (name)
+        (let ((stat (lstat (string-append base "/" name))))
+        (and
+          (not (member name '("." "..")))
+          (eq? (stat:type stat) 'directory)
+          (predicate name stat))))))
+
+  (define (install-pep517)
+    "Install a wheel generated by a PEP 517-compatible builder."
+    (let ((wheels (find-files "dist" "\\.whl$"))) ; XXX: do not recurse
+      (when (> (length wheels) 1) ; This code does not support multiple wheels
+                                  ; yet, because their outputs would have to be
+                                  ; merged properly.
+        (raise (condition (&cannot-extract-multiple-wheels))))
+      (for-each extract wheels))
+    (let ((datadirs (map
+					  (cut string-append site-dir "/" <>)
+					  (list-directories site-dir (file-name-predicate "\\.data$")))))
+      (for-each (lambda (directory)
+                  (expand-data-directory directory)
+                  (rmdir directory))
+                datadirs)))
+
+    (define (install-setuptools)
+      "Install using setuptools."
+      (let ((out (assoc-ref outputs "out")))
+        (invoke "python" "setup.py"
+				"install"
+				"--prefix" out
+				"--single-version-externally-managed"
+				"--root=/")))
+
+    (if pyproject-build
+      (install-pep517)
+      (install-setuptools))
+    #t))
+
+(define* (compile-bytecode #:key inputs outputs (configure-flags '()) #:allow-other-keys)
+  "Compile installed byte-code in site-packages."
+  (let ((site-dir (site-packages inputs outputs)))
+    (invoke "python" "-m" "compileall" site-dir)
+    ;; XXX: We could compile with -O and -OO too here, at the cost of more space.
+    #t))
 
 (define* (wrap #:key inputs outputs #:allow-other-keys)
   (define (list-of-files dir)
@@ -243,29 +337,12 @@ running checks after installing the package."
                             files)))
               bindirs)))
 
-(define* (rename-pth-file #:key name inputs outputs #:allow-other-keys)
-  "Rename easy-install.pth to NAME.pth to avoid conflicts between packages
-installed with setuptools."
-  ;; Even if the "easy-install.pth" is not longer created, we kept this phase.
-  ;; There still may be packages creating an "easy-install.pth" manually for
-  ;; some good reason.
-  (let* ((site-packages (site-packages inputs outputs))
-         (easy-install-pth (string-append site-packages "/easy-install.pth"))
-         (new-pth (string-append site-packages "/" name ".pth")))
-    (when (file-exists? easy-install-pth)
-      (rename-file easy-install-pth new-pth))))
-
-(define* (ensure-no-mtimes-pre-1980 #:rest _)
-  "Ensure that there are no mtimes before 1980-01-02 in the source tree."
-  ;; Rationale: patch-and-repack creates tarballs with timestamps at the POSIX
-  ;; epoch, 1970-01-01 UTC.  This causes problems with Python packages,
-  ;; because Python eggs are ZIP files, and the ZIP format does not support
-  ;; timestamps before 1980.
-  (let ((early-1980 315619200))  ; 1980-01-02 UTC
-    (ftw "." (lambda (file stat flag)
-               (unless (<= early-1980 (stat:mtime stat))
-                 (utime file early-1980 early-1980))
-               #t))))
+(define* (set-SOURCE-DATE-EPOCH #:rest _)
+  "Set the 'SOURCE_DATE_EPOCH' environment variable.  This is used by tools
+that incorporate timestamps as a way to tell them to use a fixed timestamp.
+See https://reproducible-builds.org/specs/source-date-epoch/."
+  (setenv "SOURCE_DATE_EPOCH" "315619200") ;; python-wheel respects this variable and sets pre-1980 times on files in zip files, which is unsupported
+  #t)
 
 (define* (enable-bytecode-determinism #:rest _)
   "Improve determinism of pyc files."
@@ -292,11 +369,11 @@ by Cython."
   ;; prefix directory.  The check phase is moved after the installation phase
   ;; to ease testing the built package.
   (modify-phases gnu:%standard-phases
-    (add-after 'unpack 'ensure-no-mtimes-pre-1980 ensure-no-mtimes-pre-1980)
-    (add-after 'ensure-no-mtimes-pre-1980 'enable-bytecode-determinism
+    (add-after 'unpack 'enable-bytecode-determinism
       enable-bytecode-determinism)
     (add-after 'enable-bytecode-determinism 'ensure-no-cythonized-files
       ensure-no-cythonized-files)
+    (replace 'set-SOURCE-DATE-EPOCH set-SOURCE-DATE-EPOCH)
     (delete 'bootstrap)
     (delete 'configure)                 ;not needed
     (replace 'build build)
@@ -308,7 +385,7 @@ by Cython."
     (add-after 'add-install-to-path 'wrap wrap)
     (add-after 'wrap 'check check)
     (add-after 'check 'sanity-check sanity-check)
-    (add-before 'strip 'rename-pth-file rename-pth-file)))
+    (add-before 'check 'compile-bytecode compile-bytecode)))
 
 (define* (python-build #:key inputs (phases %standard-phases)
                        #:allow-other-keys #:rest args)
-- 
2.26.2


[-- Attachment #7: 0006-gnu-Add-python-pytoml.patch --]
[-- Type: text/x-diff, Size: 1325 bytes --]

From 14b70dea3d21684e7fdb66dd072031cef3214b07 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:17:10 +0100
Subject: [PATCH 06/12] gnu: Add python-pytoml.

* gnu/packages/python-build.scm (python-pytoml): Add new variable.
---
 gnu/packages/python-build.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 232e24f470..a6a310177c 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -173,3 +173,20 @@ implementation developed for Poetry.  This project is intended to be
 a light weight, fully compliant, self-contained package allowing PEP 517
 compatible build front-ends to build Poetry managed projects.")
     (license license:expat)))
+
+(define-public python-pytoml
+  (package
+    (name "python-pytoml")
+    (version "0.1.21")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pytoml" version))
+        (sha256
+          (base32
+            "1rv1byiw82k7mj6aprcrqi2vdabs801y97xhfnrz7kxds34ggv4f"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/avakar/pytoml")
+    (synopsis "A parser for TOML-0.4.0")
+    (description "A parser for TOML-0.4.0")
+    (license license:expat)))
-- 
2.26.2


[-- Attachment #8: 0007-gnu-Add-python-flit-core.patch --]
[-- Type: text/x-diff, Size: 1643 bytes --]

From e8b1f40157b3d884bb2fc3e3d10bbfbd469c67b9 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:18:17 +0100
Subject: [PATCH 07/12] gnu: Add python-flit-core.

* gnu/packages/python-build.scm (python-flit-core): New variable.
---
 gnu/packages/python-build.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index a6a310177c..f767704a78 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -190,3 +190,30 @@ compatible build front-ends to build Poetry managed projects.")
     (synopsis "A parser for TOML-0.4.0")
     (description "A parser for TOML-0.4.0")
     (license license:expat)))
+
+(define-public python-flit-core
+  (package
+    (name "python-flit-core")
+    (version "3.0.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "flit_core" version))
+        (sha256
+          (base32
+            "0bbw84r33gwi0xyp7m8dzp2dzpjs4harj3l5wrbxkmp2awh0ard4"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; No tests.
+       #:tests? #f))
+    (propagated-inputs
+      `(("python-pytoml" ,python-pytoml)))
+    (home-page "https://github.com/takluyver/flit")
+    (synopsis
+      "Simplified packaging of Python modules, distribution-building parts")
+    (description
+      "Flit is a simple way to put Python packages and modules on PyPI.  It
+tries to require less thought about packaging and help you avoid common
+mistakes.  Distribution-building parts of Flit.")
+    (license license:bsd-3)))
+
-- 
2.26.2


[-- Attachment #9: 0008-gnu-python-pep517-bootstrap-Build-using-flit-core.patch --]
[-- Type: text/x-diff, Size: 1596 bytes --]

From 316c25f310cad4dd8f0cb73a914a4776b1b1375c Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:20:48 +0100
Subject: [PATCH 08/12] gnu: python-pep517-bootstrap: Build using flit-core.

* gnu/packages/python-build.scm (python-pep517-bootstrap) [arguments]:
Relax dependency on flit-core version.
[native-inputs]: Add flit-core.
---
 gnu/packages/python-build.scm | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index f767704a78..f74a3ee49e 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -110,10 +110,21 @@ Language (TOML) configuration files.")
           "0zqidxah03qpnp6zkg3zd1kmd5f79hhdsfmlc0cldaniy80qddxf"))))
      (build-system python-build-system)
      (arguments
-      `(#:tests? #f))                     ;to avoid circular dependencies
+     `(#:tests? #f ; To avoid circular dependencies.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'relax-dependency
+           (lambda _
+             (substitute* "pyproject.toml"
+               (("flit_core >=2,<3")
+                "flit_core >=2,<4"))
+             #t)))))
      (propagated-inputs
       `(("python-toml" ,python-toml)
         ("python-wheel" ,python-wheel)))
+     (native-inputs
+     `(;; Build system.
+       ("python-flit-core" ,python-flit-core)))
      (home-page "https://github.com/pypa/pep517")
      (synopsis "Wrappers to build Python packages using PEP 517 hooks")
      (description
-- 
2.26.2


[-- Attachment #10: 0009-gnu-python-iniconfig-Add-missing-build-input.patch --]
[-- Type: text/x-diff, Size: 992 bytes --]

From c8898a6a282daaa2cceabfac96e417f7b09e8d5f Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:23:53 +0100
Subject: [PATCH 09/12] gnu: python-iniconfig: Add missing build input.

* gnu/packages/python-xyz.scm (python-iniconfig) [native-inputs] Add
setuptools-scm.
---
 gnu/packages/python-xyz.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 79d01f700a..d598a380a9 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15704,6 +15704,7 @@ in other versions.")
         (base32
          "0ckzngs3scaa1mcfmsi1w40a1l8cxxnncscrxzjjwjyisx8z0fmw"))))
     (build-system python-build-system)
+    (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm)))
     (home-page "https://github.com/RonnyPfannschmidt/iniconfig")
     (synopsis "Simple INI-file parser")
     (description "The @code{iniconfig} package provides a small and simple
-- 
2.26.2


[-- Attachment #11: 0010-gnu-Add-python-u-msgpack.patch --]
[-- Type: text/x-diff, Size: 1739 bytes --]

From 8f5c9398ac1a6ac1871d5cf8a1efbe6a70ed4a1b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:16:07 +0100
Subject: [PATCH 10/12] gnu: Add python-u-msgpack.

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

The redundant -python postfix from the original package name has been
removed.
---
 gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d598a380a9..ab3c6d301e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23659,3 +23659,27 @@ Application Programming Interface based on the Open Inventor 2.1 API.")
 Crayons automatically wraps a given string in the foreground color and
 restores the original state after the string is printed.")
     (license license:expat)))
+
+(define-public python-u-msgpack
+  (package
+    (name "python-u-msgpack")
+    (version "2.7.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "u-msgpack-python" version))
+        (sha256
+          (base32
+            "0lcmlr7gc4dydpxn6l5bdcq40c3ghf8mv1sjqyj72wdpr8rx9rxp"))))
+    (build-system python-build-system)
+    (home-page
+      "https://github.com/vsergeev/u-msgpack-python")
+    (synopsis
+      "Portable, lightweight MessagePack serializer and deserializer")
+    (description
+      "A portable, lightweight MessagePack serializer and deserializer written
+in pure Python.  u-msgpack-python is fully compliant with the latest MessagePack
+specification. In particular, it supports the new binary, UTF-8 string,
+application-defined ext, and timestamp types.")
+    (license license:expat)))
+
-- 
2.26.2


[-- Attachment #12: 0011-gnu-Add-python-pytest-expect.patch --]
[-- Type: text/x-diff, Size: 1831 bytes --]

From 39eef77658f400ccfceb65b6fcd3f4996ae90807 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:20:03 +0100
Subject: [PATCH 11/12] gnu: Add python-pytest-expect.

* gnu/packages/python-check.scm (python-pytest-expect): New variable.
---
 gnu/packages/python-check.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 9849b16685..4139f3cdde 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1251,3 +1251,31 @@ help in debugging failures and optimizing the scheduler to improve speed.")
     (description "A pytest plugin for Sanic.  It helps you to test your
 code asynchronously.")
     (license license:expat)))
+
+(define-public python-pytest-expect
+  (package
+    (name "python-pytest-expect")
+    (version "1.1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pytest-expect" version))
+        (sha256
+          (base32
+            "0iyq3zd1g5ffaz2wv6mskjfn84sfbyh0j209glcrh1s50hkldd1n"))))
+    (build-system python-build-system)
+    (arguments `(#:tests? #f)) ; no tests via pypi
+    (propagated-inputs
+      `(("python-pytest" ,python-pytest) ; package declares this dependency
+        ("python-u-msgpack" ,python-u-msgpack)))
+    (home-page
+      "https://github.com/gsnedders/pytest-expect")
+    (synopsis
+      "Py.test plugin to store test expectations and mark tests based on them")
+    (description
+      "A py.test plugin that stores test expectations by saving the set of
+failing tests, allowing them to be marked as xfail when running them in future.
+The tests expectations are stored such that they can be distributed alongside
+the tests.")
+    (license license:expat)))
+
-- 
2.26.2


[-- Attachment #13: 0012-gnu-python-html5lib-Fix-tests-with-pytest-6.patch --]
[-- Type: text/x-diff, Size: 1880 bytes --]

From 4ed7eba12c80dd33f20626ddb81abc34dd667ab3 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:23:07 +0100
Subject: [PATCH 12/12] gnu: python-html5lib: Fix tests with pytest 6.

* gnu/packages/python-web.scm (python-html5lib) [source]: Add upstream
patch.
[native-inputs]: Add test dependencies.
[arguments]: Remove unsupported #:test-target.
---
 gnu/packages/python-web.scm | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 947c200253..c484d7ba36 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1020,13 +1020,27 @@ storage.")
         (uri (pypi-uri "html5lib" version))
         (sha256
           (base32
-            "0vqlhk0hgbsfkh7ybmby93xhlx8dq6pr5blf356ka3z2c41b9rdj"))))
+            "0vqlhk0hgbsfkh7ybmby93xhlx8dq6pr5blf356ka3z2c41b9rdj"))
+        (patches
+          (list
+            ;; Adds Pytest 6 support.
+            (origin
+              (method url-fetch)
+              (uri (string-append
+                     "https://github.com/html5lib/"
+                     "html5lib-python/commit/"
+                     "2c19b9899ab3a3e8bd0ca35e5d78544334204169.patch"))
+              (file-name "python-html5lib-support-pytest6.patch")
+              (sha256
+                (base32
+                  "0jg2ry0439q8n7j1mf4p2hdq54i704pq9scv4wwa2pp3cwvb6dvg")))))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-six" ,python-six)
        ("python-webencodings" ,python-webencodings)))
-    (arguments
-     `(#:test-target "check"))
+    (native-inputs
+      `(("python-pytest" ,python-pytest)
+        ("python-pytest-expect" ,python-pytest-expect)))
     (home-page
       "https://github.com/html5lib/html5lib-python")
     (synopsis
-- 
2.26.2


^ permalink raw reply related	[relevance 53%]

* [bug#46862] Giara - A free-software client for Reddit
@ 2021-03-01 21:44 97% Raghav Gururajan via Guix-patches via
    0 siblings, 1 reply; 200+ results
From: Raghav Gururajan via Guix-patches via @ 2021-03-01 21:44 UTC (permalink / raw)
  To: 46862


[-- Attachment #1.1.1: Type: text/plain, Size: 0 bytes --]



[-- Attachment #1.1.2: 0001-gnu-Add-python-betamax-serializers.patch --]
[-- Type: text/x-patch, Size: 1573 bytes --]

From 20c12e445cdca94ca8277b89d16c69ad5cd1af79 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 15:10:06 -0500
Subject: [PATCH 1/5] gnu: Add python-betamax-serializers.

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

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index c23741825b..ac96310cd0 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -40,6 +40,27 @@
   #:use-module (guix download)
   #:use-module (guix build-system python))
 
+(define-public python-betamax-serializers
+  (package
+    (name "python-betamax-serializers")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (pypi-uri "betamax-serializers" version))
+       (sha256
+        (base32 "0ja9isbjmzzhxdj69s0kdsvw8nkp073w6an6a4liy5vk3fdl2p1l"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-pyyaml" ,python-pyyaml)))
+    (synopsis "Set of third-party serializers for Betamax")
+    (description "Betamax-Serializers are an experimental set of Serializers for
+Betamax that may possibly end up in the main package.")
+    (home-page "https://gitlab.com/betamax/serializers")
+    (license license:asl2.0)))
+
 (define-public python-coveralls
   (package
     (name "python-coveralls")
-- 
2.30.1


[-- Attachment #1.1.3: 0002-gnu-Add-python-testfixtures.patch --]
[-- Type: text/x-patch, Size: 2166 bytes --]

From 2bc948be9324add1b6b15795c5d65dda2d956d6e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 15:33:33 -0500
Subject: [PATCH 2/5] gnu: Add python-testfixtures.

* gnu/packages/python-check.scm (python-testfixtures): New variable.
---
 gnu/packages/python-check.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index ac96310cd0..10b35846f5 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -28,7 +28,9 @@
 (define-module (gnu packages python-check)
   #:use-module (gnu packages)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages django)
   #:use-module (gnu packages openstack)
+  #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages web)
@@ -40,6 +42,32 @@
   #:use-module (guix download)
   #:use-module (guix build-system python))
 
+(define-public python-testfixtures
+  (package
+    (name "python-testfixtures")
+    (version "6.17.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (pypi-uri "testfixtures" version))
+       (sha256
+        (base32 "1nlv2hz20czjp4a811ichl5kwg99rh84l0mw9wq4rk3idzfs1hsy"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))          ; PyTest-Django fails to build in master
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ;;("python-pytest-django" ,python-pytest-django)
+       ("python-twine" ,python-twine)
+       ("python-wheel" ,python-wheel)))
+    (synopsis "Tests components for Python")
+    (description "Testfixtures is a collection of helpers and mock objects that
+are useful when writing automated tests in Python.")
+    (home-page "https://testfixtures.readthedocs.io/en/latest/")
+    (license license:expat)))
+
 (define-public python-betamax-serializers
   (package
     (name "python-betamax-serializers")
-- 
2.30.1


[-- Attachment #1.1.4: 0003-gnu-Add-python-prawcore.patch --]
[-- Type: text/x-patch, Size: 1723 bytes --]

From 8ff9766b7228d5772c5b7f5449031163e8e7ecd1 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 15:37:23 -0500
Subject: [PATCH 3/5] gnu: Add python-prawcore.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index ab3769b360..27b31143ea 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -91,6 +91,32 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
 
+(define-public python-prawcore
+  (package
+    (name "python-prawcore")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (pypi-uri "prawcore" version))
+       (sha256
+        (base32 "1l9nrn4s03xl8fvkyybdk86bm9cyyk43alkxf9g014a9ynvdk65l"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-betamax-matchers" ,python-betamax-matchers)
+       ("python-betamax-serializers" ,python-betamax-serializers)
+       ("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)
+       ("python-testfixtures" ,python-testfixtures)))
+    (propagated-inputs
+     `(("python-requests" ,python-requests)))
+    (synopsis "Core component of PRAW")
+    (description "PRAWcore is a low-level communication layer used by PRAW.")
+    (home-page "https://praw.readthedocs.io/en/latest/")
+    (license license:bsd-2)))
+
 (define-public python-aiohttp
   (package
     (name "python-aiohttp")
-- 
2.30.1


[-- Attachment #1.1.5: 0004-gnu-Add-python-praw.patch --]
[-- Type: text/x-patch, Size: 1806 bytes --]

From a5e10670128fb2a7fcffa4a03e979231cc403a6d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 16:01:21 -0500
Subject: [PATCH 4/5] gnu: Add python-praw.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 27b31143ea..9acafd14e3 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -117,6 +117,34 @@
     (home-page "https://praw.readthedocs.io/en/latest/")
     (license license:bsd-2)))
 
+(define-public python-praw
+  (package
+    (name "python-praw")
+    (version "7.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (pypi-uri "praw" version))
+       (sha256
+        (base32 "0ll1a0n8xs8gykizdsfrw63jp6bc39ab0pk3yzwcak96fyxh0ij3"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))    ; https://github.com/praw-dev/praw/issues/1699
+    (native-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-betamax-matchers" ,python-betamax-matchers)
+       ("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-prawcore" ,python-prawcore)
+       ("python-websocket-client" ,python-websocket-client)))
+    (synopsis "Python Reddit API Wrapper")
+    (description "PRAW is a Python package that allows for simple access to
+Reddit’s API.  It aims to be easy to use and internally follows all of Reddit’s
+API rules.")
+    (home-page "https://praw.readthedocs.io/en/latest/")
+    (license license:bsd-2)))
+
 (define-public python-aiohttp
   (package
     (name "python-aiohttp")
-- 
2.30.1


[-- Attachment #1.1.6: 0005-gnu-Add-giara.patch --]
[-- Type: text/x-patch, Size: 3563 bytes --]

From d7a3665d04a70e1d0a09da805a3d3974e8c9ce5c Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 16:40:12 -0500
Subject: [PATCH 5/5] gnu: Add giara.

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

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 3e9fdbb7f6..cbceb36dea 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -164,13 +164,80 @@
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages textutils)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages vim)
+  #:use-module (gnu packages webkit)
   #:use-module (gnu packages xml)
   #:use-module ((srfi srfi-1) #:select (delete-duplicates)))
 
+(define-public giara
+  (package
+    (name "giara")
+    (version "0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+         (url "https://gitlab.gnome.org/World/giara")
+         (commit version)))
+       (file-name
+        (git-file-name name version))
+       (sha256
+        (base32 "004qmkfrgd37axv0b6hfh6v7nx4pvy987k5yv4bmlmkj9sbqm6f9"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'wrap-programs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/"))
+                    (lib (string-append out "/lib/python"
+                                        ,(version-major+minor
+                                          (package-version python))
+                                        "/site-packages")))
+               (for-each
+                (lambda (program)
+                  (wrap-program program
+                    `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,lib))
+                    `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
+                (append
+                 (map (lambda (prog) (string-append bin prog))
+                      '("giara"))))
+               #t))))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("gtk+:bin" ,gtk+ "bin")
+       ("pkg-config" ,pkg-config)
+       ("xmllint" ,libxml2)))
+    (inputs
+     `( ;; ("appstream-cli" ,appstream-cli)
+       ("glib" ,glib)
+       ("gtk+" ,gtk+)
+       ("gtksourceview" ,gtksourceview)
+       ("libhandy" ,libhandy)
+       ("python" ,python)
+       ("python-beautifulsoup" ,python-beautifulsoup4)
+       ("python-dateutil" ,python-dateutil)
+       ("python-mistune" ,python-mistune)
+       ("python-pillow" ,python-pillow)
+       ("python-praw" ,python-praw)
+       ("python-pycairo" ,python-pycairo)
+       ("python-pygobject" ,python-pygobject)
+       ("python-requests" ,python-requests)
+       ("webkitgtk" ,webkitgtk)))
+    (synopsis "Client for Reddit")
+    (description "Giara is a reddit app, built with Python, GTK and Handy.")
+    (home-page "https://giara.gabmus.org/")
+    (license license:gpl3+)))
+
 (define-public qhttp
   (package
     (name "qhttp")
-- 
2.30.1


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply related	[relevance 97%]

* [bug#46921] [PATCHES] Update python-sanic and dependencies
@ 2021-03-04 14:15 88% Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2021-03-04 14:15 UTC (permalink / raw)
  To: 46921


[-- Attachment #1.1: Type: text/plain, Size: 414 bytes --]

Hi,

attached patches update python-sanic to version 20.12.2, as
well as some of its dependencies, which cause few rebuilds.

Cheers,
Lars

-- 
Lars-Dominik Braun
Wissenschaftlicher Mitarbeiter/Research Associate

www.leibniz-psychology.org
ZPID - Leibniz-Institut für Psychologie /
ZPID - Leibniz Institute for Psychology
Universitätsring 15
D-54296 Trier - Germany
Tel.: +49–651–201-4964

[-- Attachment #1.2: 0001-gnu-python-ujson-Update-to-4.0.2.patch --]
[-- Type: text/x-diff, Size: 1163 bytes --]

From b83137f57b9d75f02ba1e8899b864ccefc2f7e4b Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Thu, 4 Mar 2021 14:45:26 +0100
Subject: [PATCH 1/4] gnu: python-ujson: Update to 4.0.2.

* gnu/packages/python-xyz.scm (python-ujson): Update to 4.0.2.
---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0b981be7c1..0baa69afa6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21101,14 +21101,14 @@ register custom encoders and decoders.")
 (define-public python-ujson
   (package
     (name "python-ujson")
-    (version "4.0.1")
+    (version "4.0.2")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "ujson" version))
         (sha256
          (base32
-          "1lr9lbm76y3ah1463jggwg2hjcb709mpns5f752wxxbgnd0n5kr6"))
+          "0k9w0kypy7vlskzzp2vsjswaw8lbqdrplzkbflxki9vqwglsj5f6"))
         (modules '((guix build utils)))
         (snippet
          '(begin (delete-file-recursively "deps") #t))))
-- 
2.25.1


[-- Attachment #1.3: 0002-gnu-python-aiofiles-Update-to-0.6.0.patch --]
[-- Type: text/x-diff, Size: 1184 bytes --]

From c4cbcf311eb9ceb72516dd5c8a3e089eca835898 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Thu, 4 Mar 2021 14:46:25 +0100
Subject: [PATCH 2/4] gnu: python-aiofiles: Update to 0.6.0.

* gnu/packages/python-xyz.scm (python-aiofiles): Update to 0.6.0.
---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0baa69afa6..9123dedd47 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23586,14 +23586,14 @@ process.")
 (define-public python-aiofiles
   (package
     (name "python-aiofiles")
-    (version "0.5.0")
+    (version "0.6.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "aiofiles" version))
         (sha256
           (base32
-            "1bqmv019x16qa3zah0z915cw6z4va3fjs60fk2s7vyah3gyvrrlq"))))
+            "14m01kjxm2j7zyljjj6xlhlgygcsriymbx730gc5jp9xglaina70"))))
     (build-system python-build-system)
     (home-page "https://github.com/Tinche/aiofiles")
     (synopsis "File support for @code{asyncio}")
-- 
2.25.1


[-- Attachment #1.4: 0003-gnu-python-pytest-sanic-Update-to-1.7.0.patch --]
[-- Type: text/x-diff, Size: 1827 bytes --]

From acb4d8fdee4daa4374acadc059564be1ccba93dd Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Thu, 4 Mar 2021 14:47:22 +0100
Subject: [PATCH 3/4] gnu: python-pytest-sanic: Update to 1.7.0.

* gnu/packages/python-check.scm (python-pytest-sanic) [version]: Update to
1.7.0.
[propagated-inputs]: Replace python-aiohttp with python-httpx and add
python-websockets.
---
 gnu/packages/python-check.scm | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 15efdd3297..3eb561c89a 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1237,22 +1237,23 @@ help in debugging failures and optimizing the scheduler to improve speed.")
 (define-public python-pytest-sanic
   (package
     (name "python-pytest-sanic")
-    (version "1.6.2")
+    (version "1.7.0")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "pytest-sanic" version))
               (sha256
                 (base32
-                  "02ajd8z77ahi69kzkz200qgxrb4s2j4qb6k8j9ds1kz6qa6fsa34"))))
+                  "0hm7im77dgqfk8k34qbbfhimg8hifl4zwpa2s3mgbknrjvyw5qpx"))))
     (build-system python-build-system)
     (arguments
      ;; Tests depend on python-sanic.
      `(#:tests? #f))
     (propagated-inputs
-      `(("python-aiohttp" ,python-aiohttp)
+      `(("python-httpx" ,python-httpx)
         ("python-async-generator"
          ,python-async-generator)
-        ("python-pytest" ,python-pytest)))
+        ("python-pytest" ,python-pytest)
+        ("python-websockets" ,python-websockets)))
     (home-page
       "https://github.com/yunstanford/pytest-sanic")
     (synopsis "Pytest plugin for Sanic")
-- 
2.25.1


[-- Attachment #1.5: 0004-gnu-python-sanic-Update-to-20.12.2.patch --]
[-- Type: text/x-diff, Size: 2659 bytes --]

From 570715163b6a7686061cd24deaa007b3fb48c602 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Thu, 4 Mar 2021 14:48:28 +0100
Subject: [PATCH 4/4] gnu: python-sanic: Update to 20.12.2.

* gnu/packages/python-web.scm (python-sanic) [version]: Update to 20.12.2.
[arguments]: Relax dependency versions.
[native-inputs]: Add python-pytest-asyncio.
[home-page]: Update.
[synopsis]: Remove Python version.
[description]: Ditto.
---
 gnu/packages/python-web.scm | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b0268e5a31..edfff0c6a3 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -5658,14 +5658,14 @@ as a Python package.")
 (define-public python-sanic
   (package
     (name "python-sanic")
-    (version "20.9.1")
+    (version "20.12.2")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "sanic" version))
        (sha256
         (base32
-         "06p0lsxqbfbka2yaqlpp0bg5pf7ma44zi6kq7qbb6hhry48dp1w6"))))
+         "1c02gdp1j18xny9jd33fp0w57qqi7g66zwmaykv2dhcks96f5mxr"))))
     (build-system python-build-system)
     (arguments
      '(#:phases
@@ -5674,9 +5674,8 @@ as a Python package.")
            ;; Allow using recent dependencies.
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "setup.py"
-               (("httpcore==0.3.0") "httpcore")
                (("pytest==5.2.1") "pytest")
-               (("multidict==5.0.0") "multidict")
+               (("multidict>=5.0,<6.0") "multidict")
                (("httpx==0\\.15\\.4") "httpx"))
              #t))
          (replace 'check
@@ -5702,14 +5701,15 @@ as a Python package.")
        ("python-pytest-benchmark" ,python-pytest-benchmark)
        ("python-pytest-sanic" ,python-pytest-sanic)
        ("python-pytest-sugar" ,python-pytest-sugar)
+       ("python-pytest-asyncio" ,python-pytest-asyncio)
        ("python-urllib3" ,python-urllib3)
        ("python-uvicorn" ,python-uvicorn)))
     (home-page
-     "https://github.com/huge-success/sanic/")
+     "https://github.com/sanic-org/sanic/")
     (synopsis
-     "Async Python 3.6+ web server/framework")
+     "Async Python web server/framework")
     (description
-     "Sanic is a Python 3.6+ web server and web framework
+     "Sanic is a Python web server and web framework
 that's written to go fast.  It allows the usage of the
 @code{async/await} syntax added in Python 3.5, which makes
 your code non-blocking and speedy.")
-- 
2.25.1


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

^ permalink raw reply related	[relevance 88%]

* [bug#42885] [PATCH 22/27] gnu: python-html5lib: Add python-chardet input.
  @ 2021-03-10  9:00 70% ` Brendan Tildesley
  0 siblings, 0 replies; 200+ results
From: Brendan Tildesley @ 2021-03-10  9:00 UTC (permalink / raw)
  To: 42885

* gnu/packages/python-web.scm: python-chardet to
propragated-inputs. html5lib uses this as a fallback for encoding
detection, and Calibre tests for its being there, so ad it.
---
 gnu/packages/python-web.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b0268e5a31..c527cfad90 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1041,7 +1041,8 @@ storage.")
     (build-system python-build-system)
     (propagated-inputs
      `(("python-six" ,python-six)
-       ("python-webencodings" ,python-webencodings)))
+       ("python-webencodings" ,python-webencodings)
+       ("python-chardet" ,python-chardet)))
     (arguments
      `(#:test-target "check"))
     (home-page
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#46862] Giara - A free-software client for Reddit (v2)
  @ 2021-03-10 13:02 91%   ` Raghav Gururajan via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: Raghav Gururajan via Guix-patches via @ 2021-03-10 13:02 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 46862


[-- Attachment #1.1.1: Type: text/plain, Size: 650 bytes --]

Hi Efraim!

> It definitely launched much faster than on my pinephone. A couple of comments inlined.
> 
> Also, I wasn't able to login to giara. I got redirected to icecat and
> was able to login and press authorize as expected, but nothing happened
> with the giara window and it stayed at 'waiting for authorization'. I'm
> not sure if it's because I'm not running a GTK desktop, but I didn't
> investigate too far.

It appears to be an API issue. Probably reddit changed something in 
their back-end, like youtube. I'll contact Giara's author.

I have applied your suggested changes and attached v2 with this email.

Regards,
RG.

[-- Attachment #1.1.2: 0001-gnu-Add-python-betamax-serializers.patch --]
[-- Type: text/x-patch, Size: 1584 bytes --]

From 44e3361a78bbcbe5c48b57fe584b23c1cd1dfda5 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Wed, 10 Mar 2021 06:43:09 -0500
Subject: [PATCH 1/5] gnu: Add python-betamax-serializers.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b0268e5a31..b3a1d3ac67 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3228,6 +3228,26 @@ Betamax.")
 (define-public python2-betamax-matchers
   (package-with-python2 python-betamax-matchers))
 
+(define-public python-betamax-serializers
+  (package
+    (name "python-betamax-serializers")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "betamax-serializers" version))
+       (sha256
+        (base32 "0ja9isbjmzzhxdj69s0kdsvw8nkp073w6an6a4liy5vk3fdl2p1l"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-pyyaml" ,python-pyyaml)))
+    (synopsis "Set of third-party serializers for Betamax")
+    (description "Betamax-Serializers are an experimental set of Serializers for
+Betamax that may possibly end up in the main package.")
+    (home-page "https://gitlab.com/betamax/serializers")
+    (license license:asl2.0)))
+
 (define-public python-s3transfer
   (package
     (name "python-s3transfer")
-- 
2.30.1


[-- Attachment #1.1.3: 0001-gnu-qtsolutions-Enable-examples.patch --]
[-- Type: text/x-patch, Size: 5605 bytes --]

From a1507241c457b9ee3d1474b71849112637a3c6a2 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Wed, 10 Mar 2021 03:09:38 -0500
Subject: [PATCH] gnu: qtsolutions: Enable examples.

* gnu/packages/qt.scm (qtsolutions) [arguments]: Modify phases
'patch-source and 'install.
---
 gnu/packages/qt.scm | 62 ++++++++++++++++++++++++++++++++-------------
 1 file changed, 44 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index d921aa87fe..8409fc1803 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2497,18 +2497,18 @@ securely.  It will not store any data unencrypted unless explicitly requested.")
              (with-directory-excursion "qtsingleapplication/src"
                (for-each delete-file
                          (find-files "." "qtlockedfile.*\\.(h|cpp)"))
-                 (substitute* "qtsingleapplication.pri"
-                   ;; Add include path of LockedFile.
-                   (("INCLUDEPATH \\+=")
-                    "INCLUDEPATH += ../../qtlockedfile/src")
-                   ;; Link library of LockedFile.
-                   (("LIBS \\+=")
-                    "LIBS += -lQtSolutions_LockedFile"))
-                 (substitute* '("qtlocalpeer.h" "qtlocalpeer.cpp")
-                   (("#include \"qtlockedfile.*\\.cpp\"") "")
-                   ;; Unwrap namespace added in the vendoring process.
-                   (("QtLP_Private::QtLockedFile")
-                    "QtLockedFile")))
+               (substitute* "qtsingleapplication.pri"
+                 ;; Add include path of LockedFile.
+                 (("INCLUDEPATH \\+=")
+                  "INCLUDEPATH += ../../qtlockedfile/src")
+                 ;; Link library of LockedFile.
+                 (("LIBS \\+=")
+                  "LIBS += -lQtSolutions_LockedFile"))
+               (substitute* '("qtlocalpeer.h" "qtlocalpeer.cpp")
+                 (("#include \"qtlockedfile.*\\.cpp\"") "")
+                 ;; Unwrap namespace added in the vendoring process.
+                 (("QtLP_Private::QtLockedFile")
+                  "QtLockedFile")))
              #t))))
       (build-system gnu-build-system)
       (arguments
@@ -2524,16 +2524,32 @@ securely.  It will not store any data unencrypted unless explicitly requested.")
          (modify-phases %standard-phases
            (add-after 'unpack 'patch-source
              (lambda* (#:key outputs #:allow-other-keys)
+               ;; Rename example to examples, in qtlockedfile,
+               ;; so that it gets picked up during install phase.
+               (with-directory-excursion "qtlockedfile"
+                 (rename-file "example" "examples")
+                 (rename-file "examples/example.pro" "examples/examples.pro")
+                 (substitute* "qtlockedfile.pro"
+                   (("SUBDIRS\\+=example") "SUBDIRS+=examples")))
                (substitute* (find-files "." "common.pri")
+                 ;; Patch run-path for binaries.
+                 (("QMAKE_RPATHDIR \\+= \\$\\$?.*_LIBDIR")
+                  (string-append "QMAKE_RPATHDIR += "
+                                 (assoc-ref outputs "out") "/lib"))
                  ;; Remove unnecessary prefixes/suffixes in library names.
                  (("qt5") "qt")
                  (("-head") ""))
-               ;; Disable building of examples.
-               (substitute* (find-files "." "\\.pro$")
+               ;; Disable building of examples for QtSingleApplication.
+               (substitute* "qtsingleapplication/qtsingleapplication.pro"
                  (("SUBDIRS\\+=examples") ""))
-               ;; Fix deprecated functions.
-               (substitute* "qtsoap/src/qtsoap.cpp"
-                 (("toAscii") "toUtf8"))
+               (with-directory-excursion "qtsoap/src"
+                 ;; Patch Qt imports for QtSoap.
+                 (substitute* "qtsoap.pri"
+                   (("QT \\+= xml network")
+                    "QT += core gui widgets xml network"))
+                 ;; Fix deprecated functions.
+                 (substitute* "qtsoap.cpp"
+                   (("toAscii") "toUtf8")))
                #t))
            (replace 'configure
              (lambda _
@@ -2560,7 +2576,17 @@ securely.  It will not store any data unencrypted unless explicitly requested.")
                               (assoc-ref copy:%standard-phases 'install)
                               #:install-plan
                               '(("src" "include" #:include-regexp ("\\.h$"))
-                                ("lib" "lib"))
+                                ("lib" "lib")
+                                ("examples" "bin"
+                                 #:include ("examples" "canvas_typed"
+                                            "canvas_variant" "decoration"
+                                            "demo" "extension"
+                                            "object_controller" "simple"
+                                            "controller" "interactive"
+                                            "httpservice" "console"
+                                            "loader" "trivial"
+                                            "easter" "google"
+                                            "population")))
                               args)))
                          '("qtlockedfile" "qtpropertybrowser" "qtservice"
                            "qtsingleapplication" "qtsoap")))))))
-- 
2.30.1


[-- Attachment #1.1.4: 0002-gnu-Add-python-testfixtures.patch --]
[-- Type: text/x-patch, Size: 2136 bytes --]

From da0e44fc2f610b20063471f2c40b4bd330d11507 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Wed, 10 Mar 2021 06:49:48 -0500
Subject: [PATCH 2/5] gnu: Add python-testfixtures.

* gnu/packages/python-check.scm (python-testfixtures): New variable.
---
 gnu/packages/python-check.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 15efdd3297..039fbaf554 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -29,7 +29,9 @@
 (define-module (gnu packages python-check)
   #:use-module (gnu packages)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages django)
   #:use-module (gnu packages openstack)
+  #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages web)
@@ -41,6 +43,31 @@
   #:use-module (guix download)
   #:use-module (guix build-system python))
 
+(define-public python-testfixtures
+  (package
+    (name "python-testfixtures")
+    (version "6.17.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "testfixtures" version))
+       (sha256
+        (base32 "1nlv2hz20czjp4a811ichl5kwg99rh84l0mw9wq4rk3idzfs1hsy"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))          ; PyTest-Django fails to build in master
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-cov" ,python-pytest-cov)
+       ;;("python-pytest-django" ,python-pytest-django)
+       ("python-twine" ,python-twine)
+       ("python-wheel" ,python-wheel)))
+    (synopsis "Tests components for Python")
+    (description "Testfixtures is a collection of helpers and mock objects that
+are useful when writing automated tests in Python.")
+    (home-page "https://testfixtures.readthedocs.io/en/latest/")
+    (license license:expat)))
+
 (define-public python-coveralls
   (package
     (name "python-coveralls")
-- 
2.30.1


[-- Attachment #1.1.5: 0003-gnu-Add-python-prawcore.patch --]
[-- Type: text/x-patch, Size: 1712 bytes --]

From dc26c30cc35abfed45ad68beb7e93399947c7517 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 15:37:23 -0500
Subject: [PATCH 3/5] gnu: Add python-prawcore.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b3a1d3ac67..fa479ff7dd 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -91,6 +91,31 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (srfi srfi-1))
 
+(define-public python-prawcore
+  (package
+    (name "python-prawcore")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "prawcore" version))
+       (sha256
+        (base32 "1l9nrn4s03xl8fvkyybdk86bm9cyyk43alkxf9g014a9ynvdk65l"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-betamax-matchers" ,python-betamax-matchers)
+       ("python-betamax-serializers" ,python-betamax-serializers)
+       ("python-mock" ,python-mock)
+       ("python-pytest" ,python-pytest)
+       ("python-testfixtures" ,python-testfixtures)))
+    (propagated-inputs
+     `(("python-requests" ,python-requests)))
+    (synopsis "Core component of PRAW")
+    (description "PRAWcore is a low-level communication layer used by PRAW.")
+    (home-page "https://praw.readthedocs.io/en/latest/")
+    (license license:bsd-2)))
+
 (define-public python-aiohttp
   (package
     (name "python-aiohttp")
-- 
2.30.1


[-- Attachment #1.1.6: 0004-gnu-Add-python-praw.patch --]
[-- Type: text/x-patch, Size: 2426 bytes --]

From 60bc56b8473d3648e35d1a222fbd80cb5d0e6fb1 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 1 Mar 2021 16:01:21 -0500
Subject: [PATCH 4/5] gnu: Add python-praw.

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index fa479ff7dd..e4152e6463 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -116,6 +116,49 @@
     (home-page "https://praw.readthedocs.io/en/latest/")
     (license license:bsd-2)))
 
+(define-public python-praw
+  (package
+    (name "python-praw")
+    (version "7.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "praw" version))
+       (sha256
+        (base32 "0ll1a0n8xs8gykizdsfrw63jp6bc39ab0pk3yzwcak96fyxh0ij3"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-failing-tests
+           (lambda _
+             (with-directory-excursion "tests"
+               ;; Require networking.
+               (for-each delete-file-recursively
+                         '("integration/models" "unit/models"))
+               ;; https://github.com/praw-dev/praw/issues/1699
+               ;; #issuecomment-795336704
+               (delete-file "unit/test_config.py"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (invoke "pytest"))
+             #t)))))
+    (native-inputs
+     `(("python-betamax" ,python-betamax)
+       ("python-betamax-matchers" ,python-betamax-matchers)
+       ("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-prawcore" ,python-prawcore)
+       ("python-websocket-client" ,python-websocket-client)))
+    (synopsis "Python Reddit API Wrapper")
+    (description "PRAW is a Python package that allows for simple access to
+Reddit’s API.  It aims to be easy to use and internally follows all of Reddit’s
+API rules.")
+    (home-page "https://praw.readthedocs.io/en/latest/")
+    (license license:bsd-2)))
+
 (define-public python-aiohttp
   (package
     (name "python-aiohttp")
-- 
2.30.1


[-- Attachment #1.1.7: 0005-gnu-Add-giara.patch --]
[-- Type: text/x-patch, Size: 3582 bytes --]

From 249a4ece2948a3ba2f9edb1f7db0f0f07d1831e7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Wed, 10 Mar 2021 07:54:40 -0500
Subject: [PATCH 5/5] gnu: Add giara.

* gnu/packages/syndication.scm (giara): New variable.
---
 gnu/packages/syndication.scm | 59 ++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm
index 79dbb77018..8e0b871e3d 100644
--- a/gnu/packages/syndication.scm
+++ b/gnu/packages/syndication.scm
@@ -23,6 +23,7 @@
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix packages)
+  #:use-module (guix utils)
   #:use-module (guix build-system cargo)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
@@ -36,6 +37,7 @@
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -59,6 +61,63 @@
   #:use-module (gnu packages xml)
   #:use-module (srfi srfi-1))
 
+(define-public giara
+  (package
+    (name "giara")
+    (version "0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.gnome.org/World/giara")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "004qmkfrgd37axv0b6hfh6v7nx4pvy987k5yv4bmlmkj9sbqm6f9"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'wrap-programs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/"))
+                    (lib (string-append out "/lib/python"
+                                        ,(version-major+minor
+                                          (package-version python))
+                                        "/site-packages")))
+               (wrap-program (string-append bin "giara")
+                 `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH") ,lib))
+                 `("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))))
+             #t)))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("gtk+:bin" ,gtk+ "bin")
+       ("pkg-config" ,pkg-config)
+       ("xmllint" ,libxml2)))
+    (inputs
+     `(("glib" ,glib)
+       ("gtk+" ,gtk+)
+       ("gtksourceview" ,gtksourceview)
+       ("libhandy" ,libhandy)
+       ("python" ,python)
+       ("python-beautifulsoup" ,python-beautifulsoup4)
+       ("python-dateutil" ,python-dateutil)
+       ("python-mistune" ,python-mistune)
+       ("python-pillow" ,python-pillow)
+       ("python-praw" ,python-praw)
+       ("python-pycairo" ,python-pycairo)
+       ("python-pygobject" ,python-pygobject)
+       ("python-requests" ,python-requests)
+       ("webkitgtk" ,webkitgtk)))
+    (synopsis "Client for Reddit")
+    (description "Giara is a reddit app, built with Python, GTK and Handy.")
+    (home-page "https://giara.gabmus.org/")
+    (license license:gpl3+)))
+
 (define-public newsboat
   (package
     (name "newsboat")
-- 
2.30.1


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply related	[relevance 91%]

* [bug#47165] [PATCH 07/25] gnu: python2-fask-babel: Remove package.
    2021-03-15 15:55 70% ` [bug#47165] [PATCH 06/25] gnu: python2-flask-wtf: " zimoun
@ 2021-03-15 15:55 70% ` zimoun
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 08/25] gnu: python2-flask-htmlmin: " zimoun
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 09/25] gnu: python2-flask-login: " zimoun
  3 siblings, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-fask-babel): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 45ae69ee78..1378629304 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1018,9 +1018,6 @@ support for Flask.  This is based on the Python babel module as well as pytz -
 both of which are installed automatically if you install this library.")
     (license license:bsd-3)))
 
-(define-public python2-flask-babel
-  (package-with-python2 python-flask-babel))
-
 (define-public python-flask-cors
   (package
     (name "python-flask-cors")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 08/25] gnu: python2-flask-htmlmin: Remove package.
    2021-03-15 15:55 70% ` [bug#47165] [PATCH 06/25] gnu: python2-flask-wtf: " zimoun
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 07/25] gnu: python2-fask-babel: " zimoun
@ 2021-03-15 15:55 70% ` zimoun
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 09/25] gnu: python2-flask-login: " zimoun
  3 siblings, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-flask-htmlmin): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1378629304..d5f55e3d59 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3596,9 +3596,6 @@ It comes with safe defaults and easily configurable options.")
      "Minify @code{text/html} MIME type responses when using @code{Flask}.")
     (license license:bsd-3)))
 
-(define-public python2-flask-htmlmin
-  (package-with-python2 python-flask-htmlmin))
-
 (define-public python-jsmin
   (package
     (name "python-jsmin")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 09/25] gnu: python2-flask-login: Remove package.
                     ` (2 preceding siblings ...)
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 08/25] gnu: python2-flask-htmlmin: " zimoun
@ 2021-03-15 15:55 70% ` zimoun
  3 siblings, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-flask-login): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d5f55e3d59..110324d689 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3649,9 +3649,6 @@ handles the common tasks of logging in, logging out, and remembering your
 users' sessions over extended periods of time.")
     (license license:expat)))
 
-(define-public python2-flask-login
-  (package-with-python2 python-flask-login))
-
 (define-public python-oauth2client
   (package
     (name "python-oauth2client")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 06/25] gnu: python2-flask-wtf: Remove package.
  @ 2021-03-15 15:55 70% ` zimoun
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 07/25] gnu: python2-fask-babel: " zimoun
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-flask-wtf): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e327b3b030..45ae69ee78 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2961,9 +2961,6 @@ presume or force a developer to use a particular tool or library.")
 upload, and reCAPTCHA.")
     (license license:bsd-3)))
 
-(define-public python2-flask-wtf
-  (package-with-python2 python-flask-wtf))
-
 (define-public python-flask-multistatic
   (package
     (name "python-flask-multistatic")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 12/25] gnu: python2-flask: Remove package.
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 10/25] gnu: python2-flask-multistatic: Remove package zimoun
@ 2021-03-15 15:55 70%   ` zimoun
  2021-03-15 15:55 70%   ` [bug#47165] [PATCH 13/25] gnu: python2-furl: " zimoun
  1 sibling, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-flask): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8706caa42a..1c4017a067 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2923,9 +2923,6 @@ and Jinja2 template engine.  It is called a micro framework because it does not
 presume or force a developer to use a particular tool or library.")
     (license license:bsd-3)))
 
-(define-public python2-flask
-  (package-with-python2 python-flask))
-
 (define-public python-flask-wtf
   (package
     (name "python-flask-wtf")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 10/25] gnu: python2-flask-multistatic: Remove package.
  @ 2021-03-15 15:55 70% ` zimoun
  2021-03-15 15:55 70%   ` [bug#47165] [PATCH 12/25] gnu: python2-flask: " zimoun
  2021-03-15 15:55 70%   ` [bug#47165] [PATCH 13/25] gnu: python2-furl: " zimoun
  0 siblings, 2 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-flask-multistatic): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 110324d689..8706caa42a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2978,9 +2978,6 @@ upload, and reCAPTCHA.")
 for overriding static files.")
     (license license:gpl3+)))
 
-(define-public python2-flask-multistatic
-  (package-with-python2 python-flask-multistatic))
-
 (define-public python-cookies
   (package
     (name "python-cookies")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 13/25] gnu: python2-furl: Remove package.
  2021-03-15 15:55 70% ` [bug#47165] [PATCH 10/25] gnu: python2-flask-multistatic: Remove package zimoun
  2021-03-15 15:55 70%   ` [bug#47165] [PATCH 12/25] gnu: python2-flask: " zimoun
@ 2021-03-15 15:55 70%   ` zimoun
  1 sibling, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:55 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-furl): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1c4017a067..7a3b8cc344 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -623,9 +623,6 @@ over a different origin than that of the web application.")
 @code{urllib} and @code{urlparse} modules for manipulating URLs.")
     (license license:unlicense)))
 
-(define-public python2-furl
-  (package-with-python2 python-furl))
-
 (define-public python-httplib2
   (package
     (name "python-httplib2")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47165] [PATCH 25/25] gnu: python2-wsgiproxy2: Remove package.
  @ 2021-03-15 15:56 70% ` zimoun
  0 siblings, 0 replies; 200+ results
From: zimoun @ 2021-03-15 15:56 UTC (permalink / raw)
  To: 47165; +Cc: zimoun

* gnu/packages/python-web.scm (python2-wsgiproxy2): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7a3b8cc344..defd97ba00 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2825,9 +2825,6 @@ It also includes code to sign requests and pass private data,
 and to spawn subprocesses to handle requests.")
     (license license:expat)))
 
-(define-public python2-wsgiproxy2
- (package-with-python2 python-wsgiproxy2))
-
 (define-public python-pastedeploy
   (package
     (name "python-pastedeploy")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#47722] [PATCH] gnu: python-mechanicalsoup: Update to 1.0.0
@ 2021-04-12 10:22 86% Ekaitz Zarraga
  0 siblings, 0 replies; 200+ results
From: Ekaitz Zarraga @ 2021-04-12 10:22 UTC (permalink / raw)
  To: 47722

From 3fe85d531c56e025868eb90def1b491a9fa32a60 Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Mon, 12 Apr 2021 12:15:44 +0200
Subject: [PATCH] gnu: python-mechanicalsoup: Update to 1.0.0

    * gnu/packages/python-web.scm (python-mechanicalsoup): Update to
    1.0.0.
    (python-machanicalsoup): Enable tests
---
 gnu/packages/python-web.scm | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c79fa1bfc4..e842112e97 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -40,6 +40,7 @@
 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
+;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -795,29 +796,27 @@ object graph to and from JSON.")
 (define-public python-mechanicalsoup
   (package
     (name "python-mechanicalsoup")
-    (version "0.11.0")
+    (version "1.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "MechanicalSoup" version))
        (sha256
-        (base32 "0k59wwk75q7nz6i6gynvzhagy02ql0bv7py3qqcwgjw7607yq4i7"))))
+        (base32 "01sddjxy3rznh63hnl5lbv1hhk6xyiviwmkiw4x7v4ap35fb3lrp"))))
     (build-system python-build-system)
-    (arguments
-     ;; TODO: Enable tests when python-flake8@3.5 hits master.
-     `(#:tests? #f))
     (propagated-inputs
      `(("python-beautifulsoup4" ,python-beautifulsoup4)
        ("python-lxml" ,python-lxml)
        ("python-requests" ,python-requests)
        ("python-six" ,python-six)))
-    ;; (native-inputs
-    ;;  ;; For tests.
-    ;;  `(("python-pytest-flake8" ,python-pytest-flake8)
-    ;;    ("python-pytest-httpbin" ,python-pytest-httpbin)
-    ;;    ("python-pytest-mock" ,python-pytest-mock)
-    ;;    ("python-pytest-runner" ,python-pytest-runner)
-    ;;    ("python-requests-mock" ,python-requests-mock)))
+       (native-inputs
+        ;; For tests.
+        `(("python-pytest-flake8"  ,python-pytest-flake8)
+          ("python-pytest-httpbin" ,python-pytest-httpbin)
+          ("python-pytest-cov"     ,python-pytest-cov)
+          ("python-pytest-mock"    ,python-pytest-mock)
+          ("python-pytest-runner"  ,python-pytest-runner)
+          ("python-requests-mock"  ,python-requests-mock)))
     (home-page "https://mechanicalsoup.readthedocs.io/")
     (synopsis "Python library for automating website interaction")
     (description
--
2.31.0






^ permalink raw reply related	[relevance 86%]

* [bug#47864] [PATCH 3/3] gnu: Add flask-combo-jsonapi.
  @ 2021-04-18  6:57 66% ` david larsson
  0 siblings, 0 replies; 200+ results
From: david larsson @ 2021-04-18  6:57 UTC (permalink / raw)
  To: 47864

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: 0003-gnu-Add-flask-combo-jsonapi.patch --]
[-- Type: text/x-diff; name=0003-gnu-Add-flask-combo-jsonapi.patch, Size: 2556 bytes --]

From 7e1c3d4e0c52a73c2369406c9165d0fff176a831 Mon Sep 17 00:00:00 2001
From: methuselah-0 <david.larsson@selfhosted.xyz>
Date: Wed, 31 Mar 2021 17:35:36 +0200
Subject: [PATCH 3/3] gnu: Add flask-combo-jsonapi.

* gnu/packages/python-web.scm (python-flask-combo-jsonapi): New variable.
---
 gnu/packages/python-web.scm | 40 +++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c7dd18ad19..8154ae82f7 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -40,6 +40,7 @@
 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
+;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -5894,3 +5895,42 @@ your code non-blocking and speedy.")
      "Socks is a library providing core proxy (SOCKS4, SOCKS5, HTTP tunneling)
  functionality.")
     (license license:asl2.0)))
+
+(define-public python-flask-combo-jsonapi
+  (package
+    (name "python-flask-combo-jsonapi")
+    (version "1.0.6")
+    (source
+     (origin
+        (method url-fetch)
+        (uri (string-append
+              "https://github.com/AdCombo/flask-combo-jsonapi/archive/"
+              version ".tar.gz"))
+        (sha256
+         (base32
+           "1ik5j4cc20q6ismpdzpb1a01wpdhm9vrnlmqzxxz2qqw6vazilna"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-flask" ,python-flask)
+       ("python-marshmallow" ,python-marshmallow-3.2)
+       ("python-marshmallow-jsonapi"
+        ,python-marshmallow-jsonapi-0.22)
+       ("python-apispec" ,python-apispec)
+       ("python-simplejson" ,python-simplejson)
+       ("python-six" ,python-six)
+       ("python-sqlalchemy" ,python-sqlalchemy)))
+    (native-inputs
+     `(("python-coverage" ,python-coverage)
+       ("python-coveralls" ,python-coveralls)
+       ("python-pytest-runner" ,python-pytest-runner)
+       ("python-pytest" ,python-pytest)))
+    (home-page
+     "https://github.com/AdCombo/flask-combo-jsonapi")
+    (synopsis
+     "Flask extension to create REST web api according to JSONAPI 1.0
+ specification")
+    (description
+     "Flask extension to create REST web api according to JSONAPI 1.0
+ specification with Flask, Marshmallow and data provider
+ of your choice (SQLAlchemy, MongoDB, ...)")
+    (license license:expat))) ; MIT license
-- 
2.30.2


^ permalink raw reply related	[relevance 66%]

* [bug#47906] [PATCH 09/22] gnu: Add python-tinycss.
  @ 2021-04-20  5:22 65% ` Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2021-04-20  5:22 UTC (permalink / raw)
  To: 47906; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-tinycss): New variable.
---
This package is deprecated by the author but it's required by qstylizer.

 gnu/packages/python-web.scm | 45 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 44 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1e57165509..8b9c223a41 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -37,7 +37,7 @@
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
 ;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
-;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
@@ -4557,6 +4557,49 @@ library to create slugs from unicode strings while keeping it DRY.")
     (description "Generate complex HTML+JS pages with Python")
     (license license:expat)))
 
+(define-public python-tinycss
+  (package
+    (name "python-tinycss")
+    (version "0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "tinycss" version))
+       (sha256
+        (base32 "0vkifr595h28ymkjhrswwf0bm23lhznh5f44xyp7x7jy1ssnyc0j"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-flake8-isort
+           ;; Flake8 and isort tests fail.
+           (lambda _
+             (substitute* "setup.cfg" ((" --flake8 --isort") ""))
+             #t))
+         (replace 'check
+           (lambda _
+             ;; Disable failing test.
+             (invoke "python" "-m" "pytest" "-k"
+                     "not test_speedups"))))))
+    (native-inputs
+     `(("python-pytest-cov" ,python-pytest-cov)
+       ("python-pytest-flake8" ,python-pytest-flake8)
+       ("python-pytest-isort" ,python-pytest-isort)
+       ("python-pytest-runner" ,python-pytest-runner)))
+    (home-page "https://tinycss.readthedocs.io/")
+    (synopsis "Complete yet simple CSS parser for Python")
+    (description
+     "@code{tinycss} is a complete yet simple CSS parser for Python.  It
+supports the full syntax and error handling for CSS 2.1 as well as some CSS 3
+modules:
+
+@itemize
+@item CSS Color 3
+@item CSS Fonts 3
+@item CSS Paged Media 3
+@end itemize")
+    (license license:bsd-3)))
+
 (define-public python-tinycss2
   (package
     (name "python-tinycss2")
-- 
2.31.1





^ permalink raw reply related	[relevance 65%]

* [bug#47910] [PATCH] gnu: python-wtforms: Update to 2.3.3.
@ 2021-04-20 17:28 57% jgart via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: jgart via Guix-patches via @ 2021-04-20 17:28 UTC (permalink / raw)
  To: 47910; +Cc: Tobias Geerinckx-Rice, ben

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

Hi Guix,

This is related to 47260.

Attached is a patch for an upgrade to python-wtforms 2.3.3.

Tests are currently disabled in the attached patch. 

I added a when form in the code for when we are ready to enable the tests.

I'm getting the following error when I try to run the tests with tox:

error: [Errno 13] Permission denied: 'WTForms-2.3.3/setup.cfg'

Should I be using make-file-writable on the above or is this a different issue?

I have not been able to successfully run all the tests without using tox manually. 

See the comment I placed in the patch with a link to the github issue that I opened upstream.

Help and/or advice with testing this is much appreciated. 

What is the consensus for using tox with guix?

I see only one other package in the guix source tree that is currently invoking tox and that package is broken: python-funcparserlib.

python-hy is also broken (it depends on python-funcparserlib and fails because of it)

I think Tobias is currently working on those.

all the best,

jgart

[-- Attachment #2: 0001-gnu-python-wtforms-Update-to-2.3.3.patch --]
[-- Type: application/octet-stream, Size: 3086 bytes --]

From 7104474743af0575e68293384612458abe866917 Mon Sep 17 00:00:00 2001
From: jgart <jgart@dismail.de>
Date: Mon, 19 Apr 2021 03:09:57 -0400
Subject: [PATCH] gnu: python-wtforms: Update to 2.3.3.

    * gnu/packages/python-xyz.scm (python-wtforms): Update to 2.3.3.

    Co-authored-by: Ben Sturmfels <ben@sturm.com.au>
---
 gnu/packages/python-web.scm | 39 ++++++++++++++++++++++---------------
 1 file changed, 23 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4f34502e86..533086d8f9 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3000,7 +3000,7 @@ presume or force a developer to use a particular tool or library.")
        ("python-babel" ,python-babel)
        ("python-wtforms" ,python-wtforms)))
     (native-inputs
-     `(("python-pytest" ,python-pytest)))
+     `(("python-tox" ,python-tox)))
     (home-page "https://github.com/lepture/flask-wtf")
     (synopsis "Simple integration of Flask and WTForms")
     (description "Flask-WTF integrates Flask and WTForms, including CSRF, file
@@ -4122,29 +4122,36 @@ addon modules.")
 (define-public python-wtforms
   (package
     (name "python-wtforms")
-    (version "2.1")
+    (version "2.3.3")
     (source
      (origin
-       (method url-fetch)
-       (uri (pypi-uri "WTForms" version ".zip"))
+       (method git-fetch)
+       (uri (git-reference 
+            (url "https://github.com/wtforms/wtforms")
+            (commit version)))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0vyl26y9cg409cfyj8rhqxazsdnd0jipgjw06civhrd53yyi1pzz"))))
+         "0aix0655k8cbylpxi6lgyakigg51iy6bhj248g7d26d0mcpwl6mi"))))
     (build-system python-build-system)
     (arguments
-     '(#:phases
+     `(#:tests? #f
+       #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'remove-django-test
-           ;; Don't fail the tests when the inputs for the optional tests cannot be found.
-           (lambda _
-             (substitute*
-               "tests/runtests.py"
-               (("'ext_django.tests', 'ext_sqlalchemy', 'ext_dateutil', 'locale_babel'") "")
-               (("sys.stderr.write(\"### Disabled test '%s', dependency not found\n\" % name)") ""))
-             #t)))))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               ;; see https://github.com/wtforms/wtforms/issues/687
+               (invoke "tox"))))))) 
     (native-inputs
-     `(("unzip" ,unzip)))
-    (home-page "http://wtforms.simplecodes.com/")
+     `(("python-tox" ,python-tox)
+       ("python-babel" ,python-babel)
+       ("python-pytest" ,python-pytest)
+       ("python-coverage" ,python-coverage)))
+    (propagated-inputs
+     `(("python-markupsafe" ,python-markupsafe)
+       ("python-email-validator" ,python-email-validator)))
+    (home-page "http://wtforms.readthedocs.io")
     (synopsis
      "Form validation and rendering library for Python web development")
     (description
-- 
2.29.3


^ permalink raw reply related	[relevance 57%]

* [bug#48006] [PATCH] gnu: Add python-stripe.
@ 2021-04-24 20:47 66% jgart via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: jgart via Guix-patches via @ 2021-04-24 20:47 UTC (permalink / raw)
  To: 48006
  Cc: Oliver Loaiza, Ekaitz Zarraga, rprior, leo, Raghav Gururajan,
	Roberto Beltran

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

Hi Guix!

Here is our efforts so far from today's meetup.

Attached is a patch for python-stripe.

https://github.com/stripe/stripe-python

all the best,

jgart

[-- Attachment #2: 0001-gnu-Add-python-stripe.patch --]
[-- Type: application/octet-stream, Size: 1860 bytes --]

From b478dcf548ec2bb0cc0c4f682bb4d2f314b9ed6b Mon Sep 17 00:00:00 2001
From: LibreMiami <packaging-guix@libremiami.org>
Date: Sat, 24 Apr 2021 16:22:20 -0400
Subject: [PATCH] gnu: Add python-stripe.

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

Co-authored-by: jgart <jgart@dismail.de>
Co-authored-by: BonfaceKilz <me@bonfacemunyoki.com>
Co-authored-by: Raghav Gururajan <rg@raghavgururajan.name>
---
 gnu/packages/python-web.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4f34502e86..d9d35510e4 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1685,6 +1685,31 @@ connection to each user.")
     (license license:asl2.0)
     (properties `((python2-variant . ,(delay python2-tornado))))))
 
+(define-public python-stripe
+  (package
+    (name "python-stripe")
+    (version "2.56.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "stripe" version))
+       (sha256
+        (base32
+         "0z3p8n004spmmzbla2xyikf28bc5fsl6i5056pqja3gfipxh9y9g"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:tests? #f)) ; tests require network access
+    (propagated-inputs
+      `(("python-requests" ,python-requests)))
+    (home-page "https://stripe.com")
+    (synopsis "Python bindings for the Stripe API")
+    (description
+"The Stripe Python library provides convenient access to the Stripe API
+from applications written in the Python language.  It includes a pre-defined set
+of classes for API resources that initialize themselves dynamically from API
+responses which makes it compatible with a wide range of versions of the Stripe API.")
+    (license license:expat)))
+
 (define-public python-tornado-6
   (package
     (name "python-tornado")
-- 
2.31.1


^ permalink raw reply related	[relevance 66%]

* [bug#48256] [PATCH] gnu: python-pycurl: Migrate uri from bintray.
@ 2021-05-06 15:09 94% Greg Hogan
  0 siblings, 0 replies; 200+ results
From: Greg Hogan @ 2021-05-06 15:09 UTC (permalink / raw)
  To: 48256


[-- Attachment #1.1: Type: text/plain, Size: 1425 bytes --]

The bintray service provided by jfrog is no longer available and all
downloads have been removed.

From 1c75b182fb48894da8d1be58084b8c63811ff8c3 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 6 May 2021 15:03:54 +0000
Subject: [PATCH] gnu: python-pycurl: Migrate uri from bintray.

* gnu/packages/python-web.scm (python-pycurl)[source]: Download from pypi.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f13fb5b5c2..3d9bc390bf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -41,6 +41,7 @@
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
+;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1206,8 +1207,7 @@ Amazon S3 compatible object storage server.")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "https://dl.bintray.com/pycurl/pycurl/pycurl-"
-                           version ".tar.gz"))
+       (uri (pypi-uri "pycurl" version))
        (sha256
         (base32 "1cwlb76vddqp2mxqvjbhf367caddzy82rhangddjjhjqaj8x4zgc"))))
     (build-system python-build-system)
--
2.31.1

[-- Attachment #1.2: Type: text/html, Size: 2183 bytes --]

[-- Attachment #2: 0001-gnu-python-pycurl-Migrate-uri-from-bintray.patch --]
[-- Type: application/octet-stream, Size: 1291 bytes --]

From 1c75b182fb48894da8d1be58084b8c63811ff8c3 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 6 May 2021 15:03:54 +0000
Subject: [PATCH] gnu: python-pycurl: Migrate uri from bintray.

* gnu/packages/python-web.scm (python-pycurl)[source]: Download from pypi.
---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index f13fb5b5c2..3d9bc390bf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -41,6 +41,7 @@
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
+;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1206,8 +1207,7 @@ Amazon S3 compatible object storage server.")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "https://dl.bintray.com/pycurl/pycurl/pycurl-"
-                           version ".tar.gz"))
+       (uri (pypi-uri "pycurl" version))
        (sha256
         (base32 "1cwlb76vddqp2mxqvjbhf367caddzy82rhangddjjhjqaj8x4zgc"))))
     (build-system python-build-system)
-- 
2.31.1


^ permalink raw reply related	[relevance 94%]

* [bug#48263] [PATCH 1/2] gnu: python-hypercorn: Rename to hypercorn.
@ 2021-05-06 19:17 70% Vinicius Monego
  2021-05-06 19:20 68% ` [bug#48263] [PATCH 2/2] gnu: hypercorn: Update to 0.11.2 Vinicius Monego
  0 siblings, 1 reply; 200+ results
From: Vinicius Monego @ 2021-05-06 19:17 UTC (permalink / raw)
  To: 48263; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (python-hypercorn): Rename to hypercorn.
---
This package provides the same use case for "gunicorn" that we have and both are used as binaries. I keep the inputs propagated because hypercorn also exposes some functionality over a module. See https://pgjones.gitlab.io/hypercorn/how_to_guides/api_usage.html for reference.

 gnu/packages/python-web.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4f34502e86..223aca85a6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -37,7 +37,7 @@
 ;;; Copyright © 2020 Holger Peters <holger.peters@posteo.de>
 ;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
 ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
-;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
@@ -1575,9 +1575,9 @@ choose to use, ensuring that you can communicate via WebSockets, as defined in
 RFC6455, regardless of your programming paradigm.")
     (license license:expat)))
 
-(define-public python-hypercorn
+(define-public hypercorn
   (package
-    (name "python-hypercorn")
+    (name "hypercorn")
     (version "0.10.2")
     (source
      (origin
-- 
2.31.1





^ permalink raw reply related	[relevance 70%]

* [bug#48263] [PATCH 2/2] gnu: hypercorn: Update to 0.11.2.
  2021-05-06 19:17 70% [bug#48263] [PATCH 1/2] gnu: python-hypercorn: Rename to hypercorn Vinicius Monego
@ 2021-05-06 19:20 68% ` Vinicius Monego
  0 siblings, 0 replies; 200+ results
From: Vinicius Monego @ 2021-05-06 19:20 UTC (permalink / raw)
  To: 48263; +Cc: Vinicius Monego

* gnu/packages/python-web.scm (hypercorn): Update to 0.11.2.
(python-h11): Update to 0.12.0.
[arguments]: Add 'test-target' keyword. Do not replace check phase.
[native-inputs]: Add python-pytest-runner.
---
Both packages have to updated at the same time or the hypercorn tests will fail (if either is updated first). I rebuilt the h11 dependents succesfully.

 gnu/packages/python-web.scm | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 223aca85a6..59702ac62e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -892,22 +892,19 @@ 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
-       (modify-phases %standard-phases
-         (replace 'check
-           (lambda _
-             (invoke "pytest" "-vv"))))))
+     `(#:test-target "pytest"))
     (native-inputs
-     `(("python-pytest" ,python-pytest)))
+     `(("python-pytest" ,python-pytest)
+       ("python-pytest-runner" ,python-pytest-runner)))
     (home-page "https://github.com/python-hyper/h11")
     (synopsis "Pure-Python, bring-your-own-I/O implementation of HTTP/1.1")
     (description
@@ -1578,13 +1575,13 @@ RFC6455, regardless of your programming paradigm.")
 (define-public hypercorn
   (package
     (name "hypercorn")
-    (version "0.10.2")
+    (version "0.11.2")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "Hypercorn" version))
        (sha256
-        (base32 "15dgy47a18w2ls3hwykra1cyf7yzxmfjqnsqml482p12cxr2xwqr"))))
+        (base32 "16kai5d12f05jr89mj611zslxqri4cd7ixcgd6yhl211qlcyg8av"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
-- 
2.31.1





^ permalink raw reply related	[relevance 68%]

* [bug#46848] [PATCHES] [core-updates] PEP 517 python-build-system
  2021-03-01 13:43 53% [bug#46848] [PATCHES] [core-updates] PEP 517 python-build-system Lars-Dominik Braun
@ 2021-05-15  9:31 54% ` Lars-Dominik Braun
  0 siblings, 0 replies; 200+ results
From: Lars-Dominik Braun @ 2021-05-15  9:31 UTC (permalink / raw)
  To: 46848

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

Hi,

I rebased my changes on top of the current core-updates HEAD.

Cheers,
Lars


[-- Attachment #2: 0001-build-python-Handle-missing-setuptools-in-sanity-che.patch --]
[-- Type: text/x-diff, Size: 1103 bytes --]

From 9d9c417fba869913366a12c89b7309ecc402777d Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Fri, 19 Feb 2021 17:22:35 +0100
Subject: [PATCH 01/14] build/python: Handle missing setuptools in
 sanity-check.py

Just skip testing if required dependencies (setuptools) are not
available.

* gnu/packages/aux-files/python/sanity-check.py: Handle ImportError.
---
 gnu/packages/aux-files/python/sanity-check.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/aux-files/python/sanity-check.py b/gnu/packages/aux-files/python/sanity-check.py
index 83b6d583ca..240155cecc 100644
--- a/gnu/packages/aux-files/python/sanity-check.py
+++ b/gnu/packages/aux-files/python/sanity-check.py
@@ -19,9 +19,13 @@
 
 from __future__ import print_function  # Python 2 support.
 import importlib
-import pkg_resources
 import sys
 import traceback
+try:
+    import pkg_resources
+except ImportError:
+    print('Warning: Skipping, because python-setuptools are not available.')
+    sys.exit(0)
 
 try:
     from importlib.machinery import PathFinder
-- 
2.26.3


[-- Attachment #3: 0002-gnu-python-pypa-build-Update-to-0.3.0.patch --]
[-- Type: text/x-diff, Size: 1187 bytes --]

From 5cdfe3f6de27be54eeaa5c507a62319c3783ff1a Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 12:50:42 +0100
Subject: [PATCH 02/14] gnu: python-pypa-build: Update to 0.3.0.

* gnu/packages/python-build.scm (python-pypa-build): Update to 0.3.0.
---
 gnu/packages/python-build.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 59ee91aa9c..25e2f1e60f 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -136,13 +136,13 @@ Language (TOML) configuration files.")
 (define-public python-pypa-build
   (package
     (name "python-pypa-build")
-    (version "0.1.0")
+    (version "0.3.0")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "build" version))
               (sha256
                (base32
-                "1d6m21lijwm04g50nwgsgj7x3vhblzw7jv05ah8psqgzk20bbch8"))))
+                "1pazq66c35whrqd5b0zcydjvy2rmghi8riljkd67q3bpiln5pf8f"))))
     (build-system python-build-system)
     (arguments
      `(#:tests? #f                      ;to tests in the PyPI release
-- 
2.26.3


[-- Attachment #4: 0003-gnu-python-wheel-Install-entrypoint-scripts.patch --]
[-- Type: text/x-diff, Size: 1651 bytes --]

From 9516a9e734009f7e38acb37a51f704de9e6198ef Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:02:15 +0100
Subject: [PATCH 03/14] gnu: python-wheel: Install entrypoint scripts

* gnu/packages/python-build.scm (pythont-wheel) [arguments]: Add phase
'patch-enable-entrypoints.
---
 gnu/packages/python-build.scm | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 25e2f1e60f..bbd273e5de 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -49,10 +49,17 @@
           "0ii6f34rvpjg3nmw4bc2h7fhdsy38y1h93hghncfs5akfrldmj8h"))))
     (build-system python-build-system)
     (arguments
-     ;; FIXME: The test suite runs "python setup.py bdist_wheel", which in turn
-     ;; fails to find the newly-built bdist_wheel library, even though it is
-     ;; available on PYTHONPATH.  What search path is consulted by setup.py?
-     '(#:tests? #f))
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-enable-entrypoints
+           (lambda _
+             ;; python-wheel tells setuptools to not install entry point scripts
+             ;; by default. Stop doing that, so wheels built contain all data
+             ;; required.
+             (substitute* "wheel/bdist_wheel.py"
+               (("(install_scripts\\.no_ep = )True" all assignment)
+				(string-append assignment "False")))
+             #t)))))
     (home-page "https://bitbucket.org/pypa/wheel/")
     (synopsis "Format for built Python packages")
     (description
-- 
2.26.3


[-- Attachment #5: 0004-gnu-python-setuptools-Bootstrap-using-itself.patch --]
[-- Type: text/x-diff, Size: 1610 bytes --]

From 19349bf56a88feb5ebc0d24c4f3324e776b2f5ff Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:05:51 +0100
Subject: [PATCH 04/14] gnu: python-setuptools: Bootstrap using itself

* gnu/packages/python-xyz.scm (python-setuptools) [arguments]: Add phase
setting GUIX_PYTHONPATH to source directory.
---
 gnu/packages/python-xyz.scm | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index eebb44b9dc..8f472dea42 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1390,7 +1390,18 @@ other machines, such as over the network.")
     ;; FIXME: Tests require pytest, which itself relies on setuptools.
     ;; One could bootstrap with an internal untested setuptools.
     (arguments
-     `(#:tests? #f))
+     `(#:tests? #f
+       #:python ,python-wrapper
+       #:phases (modify-phases %standard-phases
+                  ;; Use this setuptools’ sources to bootstrap themselves.
+                  (add-before 'build 'set-PYTHONPATH
+                    (lambda _
+                      (format #t "current working dir ~s~%" (getcwd))
+                      (setenv "GUIX_PYTHONPATH"
+                              (string-append ".:" (getenv "GUIX_PYTHONPATH")))
+                      #t)))))
+    ;; Not required when not building a wheel
+    ;(propagated-inputs `(("python-wheel" ,python-wheel)))
     (home-page "https://pypi.org/project/setuptools/")
     (synopsis
      "Library designed to facilitate packaging Python projects")
-- 
2.26.3


[-- Attachment #6: 0005-python-build-Switch-to-PEP-517-based-build.patch --]
[-- Type: text/x-diff, Size: 24126 bytes --]

From 0e023d986fe6a093d5f13923b84c54a674fd2278 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:08:58 +0100
Subject: [PATCH 05/14] python-build: Switch to PEP 517-based build

* gnu/packages/python-commencement.scm: New file, containing
python-toolchain.
* gnu/local.mk: Add it.
* gnu/packages/python.scm (python): Disable installing bundled
pip/setuptools.
* guix/build/python-build-system.scm: Rewrite using python-pypa-build.
* guix/build-system/python.scm (default-python): Switch to
python-toolchain
(lower): Remove unused parameter.

XXX: rationale
---
 gnu/local.mk                         |   1 +
 gnu/packages/python-commencement.scm | 175 +++++++++++++++++++
 gnu/packages/python.scm              |   2 +-
 guix/build-system/python.scm         |   6 +-
 guix/build/python-build-system.scm   | 249 ++++++++++++++++++---------
 5 files changed, 343 insertions(+), 90 deletions(-)
 create mode 100644 gnu/packages/python-commencement.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 0e1e83b3d5..e1e41adff7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -465,6 +465,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/python.scm			\
   %D%/packages/python-build.scm			\
   %D%/packages/python-check.scm			\
+  %D%/packages/python-commencement.scm		\
   %D%/packages/python-compression.scm		\
   %D%/packages/python-crypto.scm		\
   %D%/packages/python-science.scm		\
diff --git a/gnu/packages/python-commencement.scm b/gnu/packages/python-commencement.scm
new file mode 100644
index 0000000000..2ced3079bc
--- /dev/null
+++ b/gnu/packages/python-commencement.scm
@@ -0,0 +1,175 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2017, 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Timothy Sample <samplet@ngyro.com>
+;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages python-commencement)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module (guix build-system trivial)
+  #:use-module (guix build-system python)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-build)
+  #:use-module (gnu packages python-xyz)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-26))
+
+;; Python toolchain and all packages required to bootstrap it.
+
+(define-public python-toolchain
+  (package
+    (name "python-toolchain")
+    (version (package-version python))
+    (source #f)
+    (build-system trivial-build-system)
+    (arguments
+     '(#:modules ((guix build union))
+       #:builder (begin
+                   (use-modules (ice-9 match)
+                                (srfi srfi-1)
+                                (srfi srfi-26)
+                                (guix build union))
+
+                   (let ((out (assoc-ref %outputs "out")))
+                     (union-build out (filter-map (match-lambda
+                                                ((_ . directory) directory))
+                                              %build-inputs))
+                     #t))))
+    (inputs
+     `(("python" ,python-wrapper)
+       ("python-setuptools" ,python-setuptools)
+       ("python-pip" ,python-pip))) ; XXX Maybe virtualenv/venv too? It kind of
+                                    ; defeats the purpose of guix, but is used
+                                    ; alot in local development.
+    (native-search-paths
+     (package-native-search-paths python))
+    (search-paths
+     (package-search-paths python))
+    (license (package-license python)) ; XXX
+    (synopsis "Python toolchain")
+    (description
+     "Python toolchain including Python itself, setuptools and pip.  Use this
+package if you need a fully-fledged Python toolchain instead of just the
+interpreter.")
+    (home-page (package-home-page python))))
+
+;; Python 3 toolchain for python-build-system. We cannot use python-toolchain
+;; here, since we’d need to bootstrap python-pip somehow.
+(define-public python-toolchain-for-build
+  (package
+    (inherit python-toolchain)
+    (name "python-toolchain-for-build")
+    (inputs
+      `(("python" ,python-wrapper)
+        ("python-setuptools" ,python-setuptools)
+        ("python-pypa-build" ,python-pypa-build-from-setuptools)))))
+
+;; Python 3 toolchain to bootstrap python-pypa-build
+(define-public python-toolchain-only-setuptools
+  (package
+    (inherit python-toolchain)
+    (name "python-toolchain-only-setuptools")
+    (inputs
+      `(("python" ,python-wrapper)
+        ("python-setuptools" ,python-setuptools)))))
+
+(define-public python-pypa-build-from-setuptools
+  (package
+	(inherit python-pypa-build)
+    (name "python-pypa-build-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools))
+    (propagated-inputs
+      `(("python-pep517" ,python-pep517-from-setuptools)
+        ("python-packaging" ,python-packaging-from-setuptools)))))
+
+(define-public python-pep517-from-setuptools
+  (package
+	(inherit python-pep517-bootstrap)
+    (name "python-pep517-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       #:phases (modify-phases %standard-phases
+         (add-after 'unpack 'patch
+           (lambda _
+             (substitute* "setup.py"
+               (("distutils\\.core") "setuptools"))
+             #t)))))
+    (propagated-inputs
+     `(("python-toml" ,python-toml-from-setuptools)
+       ("python-wheel" ,python-wheel-from-setuptools)))
+	;; Drop cyclic dependency.
+	(native-inputs '())))
+
+(define-public python-toml-from-setuptools
+  (package
+    (inherit python-toml)
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-toml)))))
+
+(define-public python-packaging-from-setuptools
+  (package
+    (inherit python-packaging-bootstrap)
+    (name "python-packaging-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-packaging-bootstrap)))
+    (propagated-inputs
+     `(("python-pyparsing" ,python-pyparsing-from-setuptools)
+       ("python-six" ,python-six-from-setuptools)))))
+
+(define-public python-pyparsing-from-setuptools
+  (package
+    (inherit python-pyparsing)
+    (name "python-pyparsing-from-setuptools")
+    (arguments
+     `(#:tests? #f
+       #:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-pyparsing)))))
+
+(define-public python-six-from-setuptools
+  (package
+    (inherit python-six-bootstrap)
+    (name "python-six-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-six-bootstrap)))))
+
+(define-public python-wheel-from-setuptools
+  (package
+    (inherit python-wheel)
+    (name "python-wheel-from-setuptools")
+    (arguments
+     `(#:python ,python-toolchain-only-setuptools
+       ,@(package-arguments python-wheel)))))
+
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index b2ec486d7a..38a1ebe49f 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -183,7 +183,7 @@
        (list "--enable-shared"          ;allow embedding
              "--with-system-expat"      ;for XML support
              "--with-system-ffi"        ;build ctypes
-             "--with-ensurepip=install" ;install pip and setuptools
+             "--with-ensurepip=no"      ;do not install pip and setuptools
              "--enable-unicode=ucs4"
 
              ;; Prevent the installed _sysconfigdata.py from retaining a reference
diff --git a/guix/build-system/python.scm b/guix/build-system/python.scm
index efade6f74b..4a23b42628 100644
--- a/guix/build-system/python.scm
+++ b/guix/build-system/python.scm
@@ -67,8 +67,8 @@ extension, such as '.tar.gz'."
 (define (default-python)
   "Return the default Python package."
   ;; Lazily resolve the binding to avoid a circular dependency.
-  (let ((python (resolve-interface '(gnu packages python))))
-    (module-ref python 'python-wrapper)))
+  (let ((python (resolve-interface '(gnu packages python-commencement))))
+    (module-ref python 'python-toolchain-for-build)))
 
 (define (default-python2)
   "Return the default Python 2 package."
@@ -172,9 +172,9 @@ pre-defined variants."
 (define* (python-build name inputs
                        #:key source
                        (tests? #t)
+                       (configure-flags ''())
                        (test-target "test")
                        (use-setuptools? #t)
-                       (configure-flags ''())
                        (phases '%standard-phases)
                        (outputs '("out"))
                        (search-paths '())
diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm
index 5b1339d14c..fbc90d3655 100644
--- a/guix/build/python-build-system.scm
+++ b/guix/build/python-build-system.scm
@@ -34,6 +34,7 @@
   #:use-module (ice-9 format)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-35)
   #:export (%standard-phases
             add-installed-pythonpath
             site-packages
@@ -108,30 +109,17 @@
 ;; "--single-version-externally-managed" is set, thus the .egg-info directory
 ;; and the scripts defined in entry-points will always be created.
 
+;; Base error type.
+(define-condition-type &python-build-error &error
+  python-build-error?)
 
-(define setuptools-shim
-  ;; Run setup.py with "setuptools" being imported, which will patch
-  ;; "distutils". This is needed for packages using "distutils" instead of
-  ;; "setuptools" since the former does not understand the
-  ;; "--single-version-externally-managed" flag.
-  ;; Python code taken from pip 9.0.1 pip/utils/setuptools_build.py
-  (string-append
-   "import setuptools, tokenize;__file__='setup.py';"
-   "f=getattr(tokenize, 'open', open)(__file__);"
-   "code=f.read().replace('\\r\\n', '\\n');"
-   "f.close();"
-   "exec(compile(code, __file__, 'exec'))"))
-
-(define (call-setuppy command params use-setuptools?)
-  (if (file-exists? "setup.py")
-      (begin
-         (format #t "running \"python setup.py\" with command ~s and parameters ~s~%"
-                command params)
-         (if use-setuptools?
-             (apply invoke "python" "-c" setuptools-shim
-                    command params)
-             (apply invoke "python" "./setup.py" command params)))
-      (error "no setup.py found")))
+;; Raised when 'check cannot find a valid test system in the inputs.
+(define-condition-type &test-system-not-found &python-build-error
+  test-system-not-found?)
+
+;; Raised when multiple wheels are created by 'build.
+(define-condition-type &cannot-extract-multiple-wheels &python-build-error
+  cannot-extract-multiple-wheels?)
 
 (define* (sanity-check #:key tests? inputs outputs #:allow-other-keys)
   "Ensure packages depending on this package via setuptools work properly,
@@ -142,23 +130,51 @@ without errors."
     (with-directory-excursion "/tmp"
       (invoke "python" sanity-check.py (site-packages inputs outputs)))))
 
-(define* (build #:key use-setuptools? #:allow-other-keys)
+(define* (build #:key outputs #:allow-other-keys)
   "Build a given Python package."
-  (call-setuppy "build" '() use-setuptools?)
+
+  (define pyproject-build (which "pyproject-build"))
+
+  (define (build-pep517)
+    ;; XXX: should probably use a different path, outside of source directory,
+    ;; maybe secondary output “wheel”?
+    (mkdir-p "dist")
+    (invoke pyproject-build "--outdir" "dist" "--no-isolation" "--wheel" "."))
+
+      ;; XXX Would be nice, if we could use bdist_wheel here to remove extra
+      ;; code path in 'install, but that depends on python-wheel.
+  (define (build-setuptools)
+    (invoke "python" "setup.py" "build"))
+
+  (if pyproject-build
+    (build-pep517)
+    (build-setuptools))
   #t)
 
-(define* (check #:key tests? test-target use-setuptools? #:allow-other-keys)
+(define* (check #:key inputs outputs tests? #:allow-other-keys)
   "Run the test suite of a given Python package."
   (if tests?
-      ;; Running `setup.py test` creates an additional .egg-info directory in
-      ;; build/lib in some cases, e.g. if the source is in a sub-directory
-      ;; (given with `package_dir`). This will by copied to the output, too,
-      ;; so we need to remove.
-      (let ((before (find-files "build" "\\.egg-info$" #:directories? #t)))
-        (call-setuppy test-target '() use-setuptools?)
-        (let* ((after (find-files "build" "\\.egg-info$" #:directories? #t))
-               (inter (lset-difference string=? after before)))
-          (for-each delete-file-recursively inter)))
+    ;; Unfortunately with PEP 517 there is no common method to specify test
+    ;; systems. Guess test system based on inputs instead.
+    (let ((pytest (which "pytest"))
+            (have-setup-py (file-exists? "setup.py")))
+        ;; Prefer pytest
+        ;; XXX: support nose
+        (cond
+          (pytest
+            (begin
+              (format #t "using pytest~%")
+              (invoke pytest "-vv"))) ; XXX: support skipping tests based on name/extra arguments?
+          ;; But fall back to setup.py, which should work for most
+          ;; packages. XXX: would be nice not to depend on setup.py here? fails
+          ;; more often than not to find any tests at all. Maybe we can run
+          ;; `python -m unittest`?
+          (have-setup-py
+            (begin
+              (format #t "using setup.py~%")
+                (invoke "python" "setup.py" "test" "-v")))
+          ;; The developer should explicitly disable tests in this case.
+          (#t (raise (condition (&test-system-not-found))))))
       (format #t "test suite not run~%"))
   #t)
 
@@ -195,31 +211,109 @@ running checks after installing the package."
                                 "/bin:"
                                 (getenv "PATH"))))
 
-(define* (install #:key inputs outputs (configure-flags '()) use-setuptools?
-                  #:allow-other-keys)
-  "Install a given Python package."
-  (let* ((out (python-output outputs))
-         (python (assoc-ref inputs "python"))
-         (major-minor (map string->number
-                           (take (string-split (python-version python) #\.) 2)))
-         (<3.7? (match major-minor
-                   ((major minor)
-                    (or (< major 3) (and (= major 3) (< minor 7))))))
-         (params (append (list (string-append "--prefix=" out)
-                               "--no-compile")
-                         (if use-setuptools?
-                             ;; distutils does not accept these flags
-                             (list "--single-version-externally-managed"
-                                   "--root=/")
-                             '())
-                         configure-flags)))
-    (call-setuppy "install" params use-setuptools?)
-    ;; Rather than produce potentially non-reproducible .pyc files on Pythons
-    ;; older than 3.7, whose 'compileall' module lacks the
-    ;; '--invalidation-mode' option, do not generate any.
-    (unless <3.7?
-      (invoke "python" "-m" "compileall" "--invalidation-mode=unchecked-hash"
-              out))))
+(define* (install #:key inputs outputs (configure-flags '()) #:allow-other-keys)
+  "Install a wheel file according to PEP 427"
+  ;; See https://www.python.org/dev/peps/pep-0427/#installing-a-wheel-distribution-1-0-py32-none-any-whl
+  (let* ((site-dir (site-packages inputs outputs))
+         (out (assoc-ref outputs "out")))
+    (define (extract file)
+      "Extract wheel (ZIP file) into site-packages directory"
+      ;; Use Python’s zipfile to avoid extra dependency
+      (invoke "python" "-m" "zipfile" "-e" file site-dir))
+
+    (define python-hashbang
+      (string-append "#!" (assoc-ref inputs "python") "/bin/python"))
+
+    (define (move-data source destination)
+      (mkdir-p (dirname destination))
+      (rename-file source destination))
+
+    (define (move-script source destination)
+      "Move executable script file from .data/scripts to out/bin and replace
+temporary hashbang"
+	  (move-data source destination)
+      ;; ZIP does not save/restore permissions, make executable
+      ;; XXX: might not be a file, but directory with subdirectories
+      (chmod destination #o755)
+      (substitute* destination (("#!python") python-hashbang)))
+
+    ;; Python’s distutils.command.install defines this mapping from source to
+    ;; destination mapping.
+    (define install-schemes
+      `(("scripts" "bin" ,move-script)
+        ;; XXX: Why does Python not use share/ here?
+        ("data" "share" ,move-data)))
+
+    (define (expand-data-directory directory)
+      "Move files from all .data subdirectories to their respective
+destinations."
+      (for-each
+        (match-lambda ((source destination function)
+          (let ((source-path (string-append directory "/" source))
+                (destination-path (string-append out "/" destination)))
+            (when (file-exists? source-path)
+              (begin
+                ;; This assumes only files exist in the scripts/ directory.
+                (for-each
+                  (lambda (file)
+                    (apply
+                      function
+                      (list
+                        (string-append source-path "/" file)
+                        (string-append destination-path "/" file))))
+                  (scandir source-path (negate (cut member <> '("." "..")))))
+                (rmdir source-path))))))
+        install-schemes))
+    
+  (define pyproject-build (which "pyproject-build"))
+
+  (define (list-directories base predicate)
+    ;; Cannot use find-files here, because it’s recursive.
+    (scandir
+      base
+      (lambda (name)
+        (let ((stat (lstat (string-append base "/" name))))
+        (and
+          (not (member name '("." "..")))
+          (eq? (stat:type stat) 'directory)
+          (predicate name stat))))))
+
+  (define (install-pep517)
+    "Install a wheel generated by a PEP 517-compatible builder."
+    (let ((wheels (find-files "dist" "\\.whl$"))) ; XXX: do not recurse
+      (when (> (length wheels) 1) ; This code does not support multiple wheels
+                                  ; yet, because their outputs would have to be
+                                  ; merged properly.
+        (raise (condition (&cannot-extract-multiple-wheels))))
+      (for-each extract wheels))
+    (let ((datadirs (map
+					  (cut string-append site-dir "/" <>)
+					  (list-directories site-dir (file-name-predicate "\\.data$")))))
+      (for-each (lambda (directory)
+                  (expand-data-directory directory)
+                  (rmdir directory))
+                datadirs)))
+
+    (define (install-setuptools)
+      "Install using setuptools."
+      (let ((out (assoc-ref outputs "out")))
+        (invoke "python" "setup.py"
+				"install"
+				"--prefix" out
+				"--single-version-externally-managed"
+				"--root=/")))
+
+    (if pyproject-build
+      (install-pep517)
+      (install-setuptools))
+    #t))
+
+(define* (compile-bytecode #:key inputs outputs (configure-flags '()) #:allow-other-keys)
+  "Compile installed byte-code in site-packages."
+  (let ((site-dir (site-packages inputs outputs)))
+    (invoke "python" "-m" "compileall" site-dir)
+    ;; XXX: We could compile with -O and -OO too here, at the cost of more space.
+    #t))
 
 (define* (wrap #:key inputs outputs #:allow-other-keys)
   (define (list-of-files dir)
@@ -243,29 +337,12 @@ running checks after installing the package."
                             files)))
               bindirs)))
 
-(define* (rename-pth-file #:key name inputs outputs #:allow-other-keys)
-  "Rename easy-install.pth to NAME.pth to avoid conflicts between packages
-installed with setuptools."
-  ;; Even if the "easy-install.pth" is not longer created, we kept this phase.
-  ;; There still may be packages creating an "easy-install.pth" manually for
-  ;; some good reason.
-  (let* ((site-packages (site-packages inputs outputs))
-         (easy-install-pth (string-append site-packages "/easy-install.pth"))
-         (new-pth (string-append site-packages "/" name ".pth")))
-    (when (file-exists? easy-install-pth)
-      (rename-file easy-install-pth new-pth))))
-
-(define* (ensure-no-mtimes-pre-1980 #:rest _)
-  "Ensure that there are no mtimes before 1980-01-02 in the source tree."
-  ;; Rationale: patch-and-repack creates tarballs with timestamps at the POSIX
-  ;; epoch, 1970-01-01 UTC.  This causes problems with Python packages,
-  ;; because Python eggs are ZIP files, and the ZIP format does not support
-  ;; timestamps before 1980.
-  (let ((early-1980 315619200))  ; 1980-01-02 UTC
-    (ftw "." (lambda (file stat flag)
-               (unless (<= early-1980 (stat:mtime stat))
-                 (utime file early-1980 early-1980))
-               #t))))
+(define* (set-SOURCE-DATE-EPOCH #:rest _)
+  "Set the 'SOURCE_DATE_EPOCH' environment variable.  This is used by tools
+that incorporate timestamps as a way to tell them to use a fixed timestamp.
+See https://reproducible-builds.org/specs/source-date-epoch/."
+  (setenv "SOURCE_DATE_EPOCH" "315619200") ;; python-wheel respects this variable and sets pre-1980 times on files in zip files, which is unsupported
+  #t)
 
 (define* (enable-bytecode-determinism #:rest _)
   "Improve determinism of pyc files."
@@ -292,11 +369,11 @@ by Cython."
   ;; prefix directory.  The check phase is moved after the installation phase
   ;; to ease testing the built package.
   (modify-phases gnu:%standard-phases
-    (add-after 'unpack 'ensure-no-mtimes-pre-1980 ensure-no-mtimes-pre-1980)
-    (add-after 'ensure-no-mtimes-pre-1980 'enable-bytecode-determinism
+    (add-after 'unpack 'enable-bytecode-determinism
       enable-bytecode-determinism)
     (add-after 'enable-bytecode-determinism 'ensure-no-cythonized-files
       ensure-no-cythonized-files)
+    (replace 'set-SOURCE-DATE-EPOCH set-SOURCE-DATE-EPOCH)
     (delete 'bootstrap)
     (delete 'configure)                 ;not needed
     (replace 'build build)
@@ -308,7 +385,7 @@ by Cython."
     (add-after 'add-install-to-path 'wrap wrap)
     (add-after 'wrap 'check check)
     (add-after 'check 'sanity-check sanity-check)
-    (add-before 'strip 'rename-pth-file rename-pth-file)))
+    (add-before 'check 'compile-bytecode compile-bytecode)))
 
 (define* (python-build #:key inputs (phases %standard-phases)
                        #:allow-other-keys #:rest args)
-- 
2.26.3


[-- Attachment #7: 0006-gnu-Add-python-pytoml.patch --]
[-- Type: text/x-diff, Size: 1325 bytes --]

From 881a8e817a1fe21a39bcfdc3e5be2d2ac7760cb9 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:17:10 +0100
Subject: [PATCH 06/14] gnu: Add python-pytoml.

* gnu/packages/python-build.scm (python-pytoml): Add new variable.
---
 gnu/packages/python-build.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index bbd273e5de..238fc8b3a5 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -191,3 +191,20 @@ implementation developed for Poetry.  This project is intended to be
 a light weight, fully compliant, self-contained package allowing PEP 517
 compatible build front-ends to build Poetry managed projects.")
     (license license:expat)))
+
+(define-public python-pytoml
+  (package
+    (name "python-pytoml")
+    (version "0.1.21")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pytoml" version))
+        (sha256
+          (base32
+            "1rv1byiw82k7mj6aprcrqi2vdabs801y97xhfnrz7kxds34ggv4f"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/avakar/pytoml")
+    (synopsis "A parser for TOML-0.4.0")
+    (description "A parser for TOML-0.4.0")
+    (license license:expat)))
-- 
2.26.3


[-- Attachment #8: 0007-gnu-Add-python-flit-core.patch --]
[-- Type: text/x-diff, Size: 1643 bytes --]

From 545fa78c3a42f5cc22ccc9ea70e0ff1f9bcebe5c Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:18:17 +0100
Subject: [PATCH 07/14] gnu: Add python-flit-core.

* gnu/packages/python-build.scm (python-flit-core): New variable.
---
 gnu/packages/python-build.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 238fc8b3a5..8940e6490b 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -208,3 +208,30 @@ compatible build front-ends to build Poetry managed projects.")
     (synopsis "A parser for TOML-0.4.0")
     (description "A parser for TOML-0.4.0")
     (license license:expat)))
+
+(define-public python-flit-core
+  (package
+    (name "python-flit-core")
+    (version "3.0.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "flit_core" version))
+        (sha256
+          (base32
+            "0bbw84r33gwi0xyp7m8dzp2dzpjs4harj3l5wrbxkmp2awh0ard4"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; No tests.
+       #:tests? #f))
+    (propagated-inputs
+      `(("python-pytoml" ,python-pytoml)))
+    (home-page "https://github.com/takluyver/flit")
+    (synopsis
+      "Simplified packaging of Python modules, distribution-building parts")
+    (description
+      "Flit is a simple way to put Python packages and modules on PyPI.  It
+tries to require less thought about packaging and help you avoid common
+mistakes.  Distribution-building parts of Flit.")
+    (license license:bsd-3)))
+
-- 
2.26.3


[-- Attachment #9: 0008-gnu-python-pep517-bootstrap-Build-using-flit-core.patch --]
[-- Type: text/x-diff, Size: 1596 bytes --]

From 4ffe19ccc9b6d077c811cfbdd715d10a79730e8f Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:20:48 +0100
Subject: [PATCH 08/14] gnu: python-pep517-bootstrap: Build using flit-core.

* gnu/packages/python-build.scm (python-pep517-bootstrap) [arguments]:
Relax dependency on flit-core version.
[native-inputs]: Add flit-core.
---
 gnu/packages/python-build.scm | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index 8940e6490b..c53d49c287 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -128,10 +128,21 @@ Language (TOML) configuration files.")
           "0zqidxah03qpnp6zkg3zd1kmd5f79hhdsfmlc0cldaniy80qddxf"))))
      (build-system python-build-system)
      (arguments
-      `(#:tests? #f))                     ;to avoid circular dependencies
+     `(#:tests? #f ; To avoid circular dependencies.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'relax-dependency
+           (lambda _
+             (substitute* "pyproject.toml"
+               (("flit_core >=2,<3")
+                "flit_core >=2,<4"))
+             #t)))))
      (propagated-inputs
       `(("python-toml" ,python-toml)
         ("python-wheel" ,python-wheel)))
+     (native-inputs
+     `(;; Build system.
+       ("python-flit-core" ,python-flit-core)))
      (home-page "https://github.com/pypa/pep517")
      (synopsis "Wrappers to build Python packages using PEP 517 hooks")
      (description
-- 
2.26.3


[-- Attachment #10: 0009-gnu-python-iniconfig-Add-missing-build-input.patch --]
[-- Type: text/x-diff, Size: 992 bytes --]

From f1eea04f204dc0fef64675ac2605f42535aa0815 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sun, 28 Feb 2021 13:23:53 +0100
Subject: [PATCH 09/14] gnu: python-iniconfig: Add missing build input.

* gnu/packages/python-xyz.scm (python-iniconfig) [native-inputs] Add
setuptools-scm.
---
 gnu/packages/python-xyz.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8f472dea42..47466d31f0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17110,6 +17110,7 @@ in other versions.")
         (base32
          "0ckzngs3scaa1mcfmsi1w40a1l8cxxnncscrxzjjwjyisx8z0fmw"))))
     (build-system python-build-system)
+    (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm)))
     (home-page "https://github.com/RonnyPfannschmidt/iniconfig")
     (synopsis "Simple INI-file parser")
     (description "The @code{iniconfig} package provides a small and simple
-- 
2.26.3


[-- Attachment #11: 0010-gnu-Add-python-u-msgpack.patch --]
[-- Type: text/x-diff, Size: 1705 bytes --]

From 271997517b2b03aec44e8b158c911412caccf7bf Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:16:07 +0100
Subject: [PATCH 10/14] gnu: Add python-u-msgpack.

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

The redundant -python postfix from the original package name has been
removed.
---
 gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 47466d31f0..fdc9bd85b7 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -25575,3 +25575,27 @@ is the cythonized version of @code{fractions.Fraction}.")
      "@code{pathvalidate} is a Python library to sanitize/validate strings
 representing paths or filenames.")
     (license license:expat)))
+
+(define-public python-u-msgpack
+  (package
+    (name "python-u-msgpack")
+    (version "2.7.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "u-msgpack-python" version))
+        (sha256
+          (base32
+            "0lcmlr7gc4dydpxn6l5bdcq40c3ghf8mv1sjqyj72wdpr8rx9rxp"))))
+    (build-system python-build-system)
+    (home-page
+      "https://github.com/vsergeev/u-msgpack-python")
+    (synopsis
+      "Portable, lightweight MessagePack serializer and deserializer")
+    (description
+      "A portable, lightweight MessagePack serializer and deserializer written
+in pure Python.  u-msgpack-python is fully compliant with the latest MessagePack
+specification. In particular, it supports the new binary, UTF-8 string,
+application-defined ext, and timestamp types.")
+    (license license:expat)))
+
-- 
2.26.3


[-- Attachment #12: 0011-gnu-Add-python-pytest-expect.patch --]
[-- Type: text/x-diff, Size: 1835 bytes --]

From 77f5e2e445e01c3ce7b1c9484ca27ba86b9d5def Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:20:03 +0100
Subject: [PATCH 11/14] gnu: Add python-pytest-expect.

* gnu/packages/python-check.scm (python-pytest-expect): New variable.
---
 gnu/packages/python-check.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index ff29f5d7ce..80fb5f704a 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1515,3 +1515,31 @@ allows one to create a set of tests using @emph{pairwise combinations} method,
 reducing a number of combinations of variables into a lesser set that covers
 most situations.")
     (license license:expat)))
+
+(define-public python-pytest-expect
+  (package
+    (name "python-pytest-expect")
+    (version "1.1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pytest-expect" version))
+        (sha256
+          (base32
+            "0iyq3zd1g5ffaz2wv6mskjfn84sfbyh0j209glcrh1s50hkldd1n"))))
+    (build-system python-build-system)
+    (arguments `(#:tests? #f)) ; no tests via pypi
+    (propagated-inputs
+      `(("python-pytest" ,python-pytest) ; package declares this dependency
+        ("python-u-msgpack" ,python-u-msgpack)))
+    (home-page
+      "https://github.com/gsnedders/pytest-expect")
+    (synopsis
+      "Py.test plugin to store test expectations and mark tests based on them")
+    (description
+      "A py.test plugin that stores test expectations by saving the set of
+failing tests, allowing them to be marked as xfail when running them in future.
+The tests expectations are stored such that they can be distributed alongside
+the tests.")
+    (license license:expat)))
+
-- 
2.26.3


[-- Attachment #13: 0012-gnu-python-html5lib-Fix-tests-with-pytest-6.patch --]
[-- Type: text/x-diff, Size: 1899 bytes --]

From 2e2eb3c05f285f3bfc4c990309584eb98503cd91 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 14:23:07 +0100
Subject: [PATCH 12/14] gnu: python-html5lib: Fix tests with pytest 6.

* gnu/packages/python-web.scm (python-html5lib) [source]: Add upstream
patch.
[native-inputs]: Add test dependencies.
[arguments]: Remove unsupported #:test-target.
---
 gnu/packages/python-web.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8b31368424..8ab783bbb3 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1079,7 +1079,20 @@ storage.")
         (uri (pypi-uri "html5lib" version))
         (sha256
           (base32
-            "0vqlhk0hgbsfkh7ybmby93xhlx8dq6pr5blf356ka3z2c41b9rdj"))))
+            "0vqlhk0hgbsfkh7ybmby93xhlx8dq6pr5blf356ka3z2c41b9rdj"))
+        (patches
+          (list
+            ;; Adds Pytest 6 support.
+            (origin
+              (method url-fetch)
+              (uri (string-append
+                     "https://github.com/html5lib/"
+                     "html5lib-python/commit/"
+                     "2c19b9899ab3a3e8bd0ca35e5d78544334204169.patch"))
+              (file-name "python-html5lib-support-pytest6.patch")
+              (sha256
+                (base32
+                  "0jg2ry0439q8n7j1mf4p2hdq54i704pq9scv4wwa2pp3cwvb6dvg")))))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-six" ,python-six)
@@ -1088,6 +1101,9 @@ storage.")
        ("python-chardet" ,python-chardet)))
     (arguments
      `(#:test-target "check"))
+    (native-inputs
+      `(("python-pytest" ,python-pytest)
+        ("python-pytest-expect" ,python-pytest-expect)))
     (home-page
       "https://github.com/html5lib/html5lib-python")
     (synopsis
-- 
2.26.3


[-- Attachment #14: 0013-gnu-python-libxml2-Fix-build.patch --]
[-- Type: text/x-diff, Size: 1145 bytes --]

From 312ee407e5d878da99098753ba24641c2c468451 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 17:18:50 +0100
Subject: [PATCH 13/14] gnu: python-libxml2: Fix build.

* gnu/packages/xml.scm (python-libxml2) [#:phases]: Replace setuptools
and do not exit at the end of setup.py.
---
 gnu/packages/xml.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index 9accd08a7e..9d93d21e27 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -370,7 +370,10 @@ It uses libxml2 to access the XML files.")
                  (format #f "ROOT = r'~a'" libxml2))
                 ;; For 'iconv.h'.
                 (("/opt/include")
-                 (string-append glibc "/include"))))
+                 (string-append glibc "/include"))
+                (("distutils\\.core") "setuptools")
+                ;; python-pypa-build does not like it if setup.py exits.
+                (("sys\\.exit\\(0\\)") "")))
             #t)))))
     (inputs `(("libxml2" ,libxml2)))
     (synopsis "Python bindings for the libxml2 library")))
-- 
2.26.3


[-- Attachment #15: 0014-gnu-scons-Remove-obsolete-argument.patch --]
[-- Type: text/x-diff, Size: 1090 bytes --]

From ec72099a90b0fc7f6538f578ab3e28411391dacb Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Mon, 1 Mar 2021 17:21:35 +0100
Subject: [PATCH 14/14] gnu: scons: Remove obsolete argument.

* gnu/packages/python-xyz.scm (scons) [arguments]: Remove #:use-setuptools?
argument.
---
 gnu/packages/python-xyz.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index fdc9bd85b7..a61451f8ea 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2641,8 +2641,7 @@ and is not compatible with JSON.")
                "1xy8jrwz87y589ihcld4hv7wn122sjbz914xn8h50ww77wbhk8hn"))))
     (build-system python-build-system)
     (arguments
-     `(#:use-setuptools? #f                ; still relies on distutils
-       #:tests? #f                         ; no 'python setup.py test' command
+     `(#:tests? #f                         ; no 'python setup.py test' command
        #:phases
        (modify-phases %standard-phases
          (add-before 'build 'bootstrap
-- 
2.26.3


^ permalink raw reply related	[relevance 54%]

* [bug#48514] [PATCH] gnu: Add python-domain-connect-dyndns.
@ 2021-05-19  2:19 74% Mekeor Melire
  0 siblings, 0 replies; 200+ results
From: Mekeor Melire @ 2021-05-19  2:19 UTC (permalink / raw)
  To: 48514

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

Hello Guix!

It's been long time since my last contribution. (Namely, almost 4
years!) But now I got three little package declarations for you, which
can be used to update DNS records of domains from certain
domain-providers. For example, I'm using a well known, pretty common
German domain-provider and found this python-script to be most
comfortable to use. It is based on a new, open standard, called "Domain
Connect", developed, used and supported by many common DNS/domain
providers (see <https://www.domainconnect.org/dns-providers/>). That was
just to argue why I think these packages have a value for the public
(and not just my private self).

See you
Mekeor


[-- Attachment #2: 0001-gnu-Add-python-domain-connect-dyndns.patch --]
[-- Type: text/x-patch, Size: 5491 bytes --]

From 488d77b3a6542598264ba964a723cf2c7d6e646f Mon Sep 17 00:00:00 2001
From: Mekeor Melire <mekeor@posteo.de>
Date: Wed, 19 May 2021 03:45:08 +0200
Subject: [PATCH] gnu: Add python-domain-connect-dyndns.

* gnu/packages/python-web.scm (python-publicsuffixlist, python-domain-connect,
python-domain-connect-dyndns): New variables.
---
 gnu/packages/python-web.scm | 103 ++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b7411d21fa..41c8971c8c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -42,6 +42,7 @@
 ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
 ;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
+;;; Copyright © 2021 Mekeor Melire <mekeor@posteo.de>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4066,6 +4067,108 @@ List.  Forked from and using the same API as the publicsuffix package.")
 (define-public python2-publicsuffix2
   (package-with-python2 python-publicsuffix2))
 
+(define-public python-publicsuffixlist
+  (package
+    (name "python-publicsuffixlist")
+    (version "0.7.7")
+    (home-page "https://github.com/ko-zu/psl")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit "bff8d6a87b6bd3f6894e9211a9ee3c995ccfdcfc")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "1nzvw6n702y1v1z5b62lv2rnlqjr3hjpal2750sg8s713fxvxlzz"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f))
+    (synopsis "Parse the Public Suffix List")
+    (description "Parse and use a given list of public suffix domains.")
+    (license license:mpl2.0)))
+
+(define-public python-domain-connect
+  (package
+    (name "python-domain-connect")
+    (version "0.0.9")
+    (home-page "https://github.com/Domain-Connect/domainconnect_python")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "1xji0svamw961c7zgs1453cw2b9w94mk5qrfvqyb592l6yhmmm62"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'only-single-number-versions
+           (lambda _
+             (substitute* '("setup.py" "requirements.txt")
+               (("(.*)([0-9]+)\\.[0-9]+\\.[0-9]+(.*)" all begin number end)
+                (string-append begin number end "\n"))))))))
+    (propagated-inputs
+     `(("python-cffi" ,python-cffi)
+       ("python-cryptography" ,python-cryptography)
+       ("python-dnspython" ,python-dnspython)
+       ("python-future" ,python-future)
+       ("python-publicsuffix" ,python-publicsuffix)
+       ("python-publicsuffixlist" ,python-publicsuffixlist)
+       ("python-pycparser" ,python-pycparser)
+       ("python-six" ,python-six)))
+    (synopsis "Update DNS record of a domain per Domain Connect standard")
+    (description "This library provides \"Domain Connect\" for Python, which
+can be used to update DNS records of domains.")
+    (license license:expat)))
+
+(define-public python-domain-connect-dyndns
+  (package
+    (name "python-domain-connect-dyndns")
+    (version "0.0.9")
+    (home-page "https://github.com/Domain-Connect/DomainConnectDDNS-Python")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+         (url home-page)
+          (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "024wxhfifl14j8s973lg6ls6s80grf9sm417kd2rpy1a90p89dnk"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'only-single-number-versions
+           (lambda _
+             (substitute* '("setup.py" "requirements.txt")
+               (("(.*)([0-9]+)\\.[0-9]+\\.[0-9]+(.*)" all begin number end)
+                (string-append begin number end "\n"))))))))
+    (propagated-inputs
+     `(("python-certifi" ,python-certifi)
+       ("python-cffi" ,python-cffi)
+       ("python-chardet" ,python-chardet)
+       ("python-cryptography" ,python-cryptography)
+       ("python-dnspython" ,python-dnspython)
+       ("python-domain-connect" ,python-domain-connect)
+       ("python-future" ,python-future)
+       ("python-idna" ,python-idna)
+       ("python-publicsuffix" ,python-publicsuffix)
+       ("python-pycparser" ,python-pycparser)
+       ("python-requests" ,python-requests)
+       ("python-six" ,python-six)
+       ("python-urllib3" ,python-urllib3)
+       ("python-validators" ,python-validators)))
+    (synopsis "Update DNS record of a domain per Domain Connect standard")
+    (description "This package provides a client for the open standard
+\"Domain Connect\" which can be used to update DNS records of domains.")
+    (license license:expat)))
+
 (define-public python-werkzeug
   (package
     (name "python-werkzeug")
-- 
2.30.2


^ permalink raw reply related	[relevance 74%]

* [bug#48887] Lot of python package patches
@ 2021-06-06 19:26 86% Ryan Sundberg via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: Ryan Sundberg via Guix-patches via @ 2021-06-06 19:26 UTC (permalink / raw)
  To: 48887

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

Hello Guix devs,

Attached are 55 patches for various python packages, centered around the
openstack libs. There are some new packages in here and some mere
upgrades. Where viable I enabled tests on the packages, and fixed some
previous packages which had tests disabled.

In some cases dependency version issues had to be patched up. Some of
these openstack packages particularly had some diamond dependency issues
which had to be resolved.

Sincerely,

Ryan Sundberg


[-- Attachment #2: 0055-python-doc8-upgrade-to-0.8.1-latest.patch --]
[-- Type: text/x-patch, Size: 1006 bytes --]

From f45457b447c38d771aa7294cc09354d9dc0db38b Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 11 May 2021 01:33:29 -0700
Subject: [PATCH 55/55] python-doc8: upgrade to 0.8.1 (latest)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 604d20b97e..08937bb26c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -4021,14 +4021,14 @@ format.")
 (define-public python-doc8
   (package
     (name "python-doc8")
-    (version "0.8.0")
+    (version "0.8.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "doc8" version))
        (sha256
         (base32
-         "0hw5w8mpgsp51qg8nnq28p7y1jiksvz7a0axnn5bkgss3af9zy1d"))))
+         "04ic108p5wlgfqds17ai8bgf17i25ps5w7csza7z0z40k0jz27ad"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
-- 
2.31.1


[-- Attachment #3: 0054-python-httplib2-upgrade-to-latest-0.19.1.patch --]
[-- Type: text/x-patch, Size: 1380 bytes --]

From 7bd028b81a5fd613cf451204ec84397449c3853e Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 11 May 2021 01:21:28 -0700
Subject: [PATCH 54/55] python-httplib2: upgrade to latest (0.19.1)

---
 gnu/packages/python-web.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index af33cc25d1..1d65b2b0a8 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -628,15 +628,20 @@ over a different origin than that of the web application.")
 (define-public python-httplib2
   (package
     (name "python-httplib2")
-    (version "0.9.2")
+    (version "0.19.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "httplib2" version))
        (sha256
         (base32
-         "126rsryvw9vhbf3qmsfw9lf4l4xm2srmgs439lgma4cpag4s3ay3"))))
+         "0gakbnnplyi5dvgyd0d8kblqxc54ryp0w43a7563shx7xiz624hb"))))
     (build-system python-build-system)
+    (arguments
+      ; TODO package test dependencies and patch fixed versions in test-requirements.txt
+      `(#:tests? #f))
+    (propagated-inputs
+     `(("python-pyparsing" ,python-pyparsing)))
     (home-page "https://github.com/jcgregorio/httplib2")
     (synopsis "Comprehensive HTTP client library")
     (description
-- 
2.31.1


[-- Attachment #4: 0053-python-oauth2client-upgrade-to-latest-4.1.3.patch --]
[-- Type: text/x-patch, Size: 1082 bytes --]

From d2722be98bef2f2244713a080bf4cc2434947594 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 11 May 2021 00:11:53 -0700
Subject: [PATCH 53/55] python-oauth2client: upgrade to latest (4.1.3)

---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7dd3184a69..af33cc25d1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3719,14 +3719,14 @@ users' sessions over extended periods of time.")
 (define-public python-oauth2client
   (package
     (name "python-oauth2client")
-    (version "4.0.0")
+    (version "4.1.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "oauth2client" version))
        (sha256
         (base32
-         "1irqqap2zibysf8dba8sklfqikia579srd0phm5n754ni0h59gl0"))))
+         "1inc3j4hjhjvadn78xd2pwmkmmxcv5q6vlm4d2azd1qj8lg791nl"))))
     (build-system python-build-system)
     (arguments
      `(#:tests? #f))
-- 
2.31.1


[-- Attachment #5: 0052-python-paste-upgrade-to-latest-3.5.0.patch --]
[-- Type: text/x-patch, Size: 1562 bytes --]

From ec526c7be73cfaa34501e79ecca58203531cd241 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 23:57:16 -0700
Subject: [PATCH 52/55] python-paste: upgrade to latest (3.5.0)

---
 gnu/packages/python-web.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index a32c501d0a..7dd3184a69 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4183,14 +4183,14 @@ available in Django, but is a standalone package.")
 (define-public python-paste
   (package
     (name "python-paste")
-    (version "3.0.6")
+    (version "3.5.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "Paste" version))
        (sha256
         (base32
-         "14lbi9asn5agsdf7r97prkjpz7amgmp529lbvfhf0nv881xczah6"))
+         "17f3zppjjprs2jnklvzkz23mh9jdn6b1f445mvrjdm4ivi15q28v"))
        (patches (search-patches "python-paste-remove-timing-test.patch"))
        (modules '((guix build utils)))
        (snippet
@@ -4198,6 +4198,9 @@ available in Django, but is a standalone package.")
            ;; This test calls out to the internet.
            (delete-file "tests/test_proxy.py") #t))))
     (build-system python-build-system)
+    (arguments
+      ; TODO Tests fail to load modules defined by this package.
+      `(#:tests? #f))
     (native-inputs
      `(("python-pytest" ,python-pytest)
        ("python-pytest-runner" ,python-pytest-runner)
-- 
2.31.1


[-- Attachment #6: 0051-python-swiftclient-upgrade-to-latest-3.11.1.patch --]
[-- Type: text/x-patch, Size: 1994 bytes --]

From 112098fb9edfa200b82cf0b108d74ab71afab029 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 23:20:58 -0700
Subject: [PATCH 51/55] python-swiftclient: upgrade to latest (3.11.1)

---
 gnu/packages/openstack.scm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 638d4e5436..ab9600e889 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -1068,15 +1068,22 @@ LDAP.")
 (define-public python-swiftclient
   (package
     (name "python-swiftclient")
-    (version "2.6.0")
+    (version "3.11.1")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "python-swiftclient" version))
         (sha256
          (base32
-          "1j33l4z9vqh0scfncl4fxg01zr1hgqxhhai6gvcih1gccqm4nd7p"))))
+          "0494f7ghk58r4lmq92c2aaixv00qswqgkwx49mgj2gkdcxcrv486"))))
     (build-system python-build-system)
+    (arguments
+      `(#:phases
+        (modify-phases %standard-phases
+          (replace 'check
+                   (lambda _
+                     (invoke "stestr" "run")
+                     #t)))))
     (native-inputs
      `(("python-pbr" ,python-pbr)
        ("python-sphinx" ,python-sphinx)
@@ -1085,10 +1092,13 @@ LDAP.")
        ("python-discover" ,python-discover)
        ("python-hacking" ,python-hacking)
        ("python-mock" ,python-mock)
+       ("python-openstacksdk" ,python-openstacksdk)
        ("python-oslosphinx" ,python-oslosphinx)
+       ("python-stestr", python-stestr)
        ("python-keystoneclient" ,python-keystoneclient)
        ("python-testrepository" ,python-testrepository)
-       ("python-testtools" ,python-testtools)))
+       ("python-testtools" ,python-testtools)
+       ("which" ,which)))
     (propagated-inputs
      `(("python-requests" ,python-requests)
        ("python-six" ,python-six)))
-- 
2.31.1


[-- Attachment #7: 0050-python-openstacksdk-new-package.patch --]
[-- Type: text/x-patch, Size: 4545 bytes --]

From 99c44d82ed19a3eb657f41134fd4d8eca8eaa999 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 22:47:19 -0700
Subject: [PATCH 50/55] python-openstacksdk: new package

---
 gnu/packages/openstack.scm                    | 66 +++++++++++++++++++
 .../python-openstacksdk-requirements.patch    | 13 ++++
 2 files changed, 79 insertions(+)
 create mode 100644 gnu/packages/patches/python-openstacksdk-requirements.patch

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index ac6d7f816d..638d4e5436 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -27,6 +27,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages check)
   #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages monitoring)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-crypto)
@@ -999,6 +1000,71 @@ LDAP.")
       "Import exceptions from potentially bundled packages in requests.")
     (license asl2.0)))
 
+(define-public python-openstacksdk
+  (package
+    (name "python-openstacksdk")
+    (version "0.56.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "openstacksdk" version))
+        (sha256
+          (base32
+            "0nzn1q93333shwn5fnz69lh6cq0im1d3vwwmkw2yy0snd9s36xlw"))
+        (patches (search-patches "python-openstacksdk-requirements.patch"))))
+    (build-system python-build-system)
+    (arguments
+      `(; Tests are unstable due to timeouts (3785 pass, 5 fail)
+        #:tests? #f
+        ;#:phases
+        ;(modify-phases %standard-phases
+        ;  (replace 'check
+        ;           (lambda _
+        ;             (invoke "stestr" "run")
+        ;             #t)))
+        ))
+    (native-inputs
+      `(("python-hacking" ,python-hacking)
+        ("python-coverage" ,python-coverage)
+        ("python-ddt" ,python-ddt)
+        ("python-fixtures" ,python-fixtures)
+        ("python-jsonschema" , python-jsonschema)
+        ("python-prometheus-client" ,python-prometheus-client)
+        ("python-oslo.config" ,python-oslo.config)
+        ("python-oslotest" ,python-oslotest)
+        ("python-requests-mock" ,python-requests-mock)
+        ("python-statsd" ,python-statsd)
+        ("python-stestr" ,python-stestr)
+        ("python-testscenarios" ,python-testscenarios)
+        ("python-testtools" ,python-testtools)
+        ("which" ,which)))
+    (propagated-inputs
+      `(("python-appdirs" ,python-appdirs)
+        ("python-cryptography" ,python-cryptography)
+        ("python-decorator" ,python-decorator)
+        ("python-dogpile.cache" ,python-dogpile.cache)
+        ("python-importlib-metadata"
+         ,python-importlib-metadata)
+        ("python-iso8601" ,python-iso8601)
+        ("python-jmespath" ,python-jmespath)
+        ("python-jsonpatch" ,python-jsonpatch)
+        ("python-keystoneauth1" ,python-keystoneauth1)
+        ("python-munch" ,python-munch)
+        ("python-netifaces" ,python-netifaces)
+        ("python-os-service-types"
+         ,python-os-service-types)
+        ("python-pbr" ,python-pbr)
+        ("python-pyyaml" ,python-pyyaml)
+        ("python-requestsexceptions"
+         ,python-requestsexceptions)))
+    (home-page
+      "https://docs.openstack.org/openstacksdk/")
+    (synopsis
+      "An SDK for building applications to work with OpenStack")
+    (description
+      "An SDK for building applications to work with OpenStack")
+    (license asl2.0)))
+
 (define-public python-swiftclient
   (package
     (name "python-swiftclient")
diff --git a/gnu/packages/patches/python-openstacksdk-requirements.patch b/gnu/packages/patches/python-openstacksdk-requirements.patch
new file mode 100644
index 0000000000..e53d2084a4
--- /dev/null
+++ b/gnu/packages/patches/python-openstacksdk-requirements.patch
@@ -0,0 +1,13 @@
+diff --git a/test-requirements.txt b/test-requirements.txt
+index 3f22c9d1..1fc940b7 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -1,7 +1,7 @@
+ # The order of packages is significant, because pip processes them in the order
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+-hacking>=3.1.0,<4.0.0 # Apache-2.0
++hacking>=3.1.0 # Apache-2.0
+ 
+ coverage!=4.4,>=4.0 # Apache-2.0
+ ddt>=1.0.1 # MIT
-- 
2.31.1


[-- Attachment #8: 0049-python-requestsexceptions-new-package.patch --]
[-- Type: text/x-patch, Size: 2514 bytes --]

From 77a72a4f598df83b370fb24573b5263ad4b1ac74 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 22:45:38 -0700
Subject: [PATCH 49/55] python-requestsexceptions: new package

---
 gnu/packages/openstack.scm                    | 23 +++++++++++++++++++
 ...thon-requestsexceptions-requirements.patch | 10 ++++++++
 2 files changed, 33 insertions(+)
 create mode 100644 gnu/packages/patches/python-requestsexceptions-requirements.patch

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 30501cf3e0..ac6d7f816d 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -976,6 +976,29 @@ SQLite for its identity store database, with the option to connect to external
 LDAP.")
     (license asl2.0)))
 
+(define-public python-requestsexceptions
+  (package
+    (name "python-requestsexceptions")
+    (version "1.4.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "requestsexceptions" version))
+        (sha256
+          (base32
+            "0r9hp9yzgj8r81q5gc6r8sgxldqc09xi6ax0b7a6dw0qfv3wp5dh"))
+        (patches (search-patches "python-requestsexceptions-requirements.patch"))))
+    (build-system python-build-system)
+    (native-inputs
+      `(("python-hacking" ,python-hacking)
+        ("python-pbr" ,python-pbr)))
+    (home-page "http://www.openstack.org/")
+    (synopsis
+      "Import exceptions from potentially bundled packages in requests.")
+    (description
+      "Import exceptions from potentially bundled packages in requests.")
+    (license asl2.0)))
+
 (define-public python-swiftclient
   (package
     (name "python-swiftclient")
diff --git a/gnu/packages/patches/python-requestsexceptions-requirements.patch b/gnu/packages/patches/python-requestsexceptions-requirements.patch
new file mode 100644
index 0000000000..fdffa43432
--- /dev/null
+++ b/gnu/packages/patches/python-requestsexceptions-requirements.patch
@@ -0,0 +1,10 @@
+diff --git a/test-requirements.txt b/test-requirements.txt
+index e069914..ea88824 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -1,4 +1,4 @@
+ # The order of packages is significant, because pip processes them in the order
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+-hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
++hacking!=0.13.0,>=0.12.0 # Apache-2.0
-- 
2.31.1


[-- Attachment #9: 0048-python-munch-upgrade-to-latest-2.5.0.patch --]
[-- Type: text/x-patch, Size: 1334 bytes --]

From 3078f3df5e1974a256a956e49c48551f72dbca62 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 08:47:20 -0700
Subject: [PATCH 48/55] python-munch: upgrade to latest (2.5.0)

---
 gnu/packages/python-xyz.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0eb15e1fa5..604d20b97e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -5147,15 +5147,20 @@ Numeric.")
 (define-public python-munch
   (package
     (name "python-munch")
-    (version "2.0.4")
+    (version "2.5.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "munch" version))
         (sha256
          (base32
-          "1cmqg91xnqx8gvnh4pmp0bfl1dfcm65d5p9mg73zz8pkjhx6h80l"))))
+          "1lnvlic9g68hcmgdnv5bzp0nx2bf1kjclj54gx0s7nyl4ipmywrd"))))
     (build-system python-build-system)
+    (native-inputs
+      `(("python-pbr" ,python-pbr)
+        ("python-pytest" ,python-pytest)))
+    (propagated-inputs
+      `(("python-six" ,python-six)))
     (home-page "https://github.com/Infinidat/munch")
     (synopsis "Dot-accessible dictionary")
     (description "Munch is a dot-accessible dictionary similar to JavaScript
-- 
2.31.1


[-- Attachment #10: 0047-python-decorator-upgrade-to-latest-4.4.2.patch --]
[-- Type: text/x-patch, Size: 1143 bytes --]

From c7631117b73da091b79d5a6cab68e8456060bf50 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 08:11:19 -0700
Subject: [PATCH 47/55] python-decorator: upgrade to latest (4.4.2)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7e73a097f1..0eb15e1fa5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -6986,13 +6986,13 @@ PNG, PostScript, PDF, and SVG file output.")
 (define-public python-decorator
   (package
     (name "python-decorator")
-    (version "4.3.0")
+    (version "4.4.2")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "decorator" version))
        (sha256
-        (base32 "0308djallnh00v112y5b7nadl657ysmkp6vc8xn51d6yzc9zm7n3"))))
+        (base32 "1rxzhk5zwiggk45hl53zydvy70lk654kg0nc1p54090p402jz9p3"))))
     (build-system python-build-system)
     (home-page "https://pypi.org/project/decorator/")
     (synopsis "Python module to simplify usage of decorators")
-- 
2.31.1


[-- Attachment #11: 0046-python-statsd-new-package.patch --]
[-- Type: text/x-patch, Size: 2193 bytes --]

From 8afb9bc3684e9e379b1b55472c8d616d3cc01740 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 07:58:08 -0700
Subject: [PATCH 46/55] python-statsd: new package

---
 .../patches/python-statsd-requirements.patch  | 11 ++++++++
 gnu/packages/python-xyz.scm                   | 25 +++++++++++++++++++
 2 files changed, 36 insertions(+)
 create mode 100644 gnu/packages/patches/python-statsd-requirements.patch

diff --git a/gnu/packages/patches/python-statsd-requirements.patch b/gnu/packages/patches/python-statsd-requirements.patch
new file mode 100644
index 0000000000..f0cf869aa7
--- /dev/null
+++ b/gnu/packages/patches/python-statsd-requirements.patch
@@ -0,0 +1,11 @@
+diff --git a/requirements.txt b/requirements.txt
+index 6aa9af6..9488982 100644
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -1,3 +1,3 @@
+-mock==1.0.1
+-nose==1.2.1
+-flake8==1.7.0
++mock>=1.0.1
++nose>=1.2.1
++flake8>=1.7.0
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6b0ab4a9f1..7e73a097f1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26174,3 +26174,28 @@ representing paths or filenames.")
     (description
       "A caching front-end based on the Dogpile lock.")
     (license license:expat)))
+
+(define-public python-statsd
+  (package
+    (name "python-statsd")
+    (version "3.3")
+    (source
+      (origin
+        (method git-fetch)
+        (uri 
+          (git-reference
+            (url "https://github.com/jsocol/pystatsd.git")
+            (commit (string-append "v" version))))
+        (sha256
+          (base32
+            "1i9mfpq8f9aciqzkkz4irgvz8vs9nwjcfhvrj6ak2cgqchszsiaf"))
+        (patches (search-patches "python-statsd-requirements.patch"))))
+    (build-system python-build-system)
+    (native-inputs
+      `(("python-flake8" ,python-flake8)
+        ("python-mock" ,python-mock)
+        ("python-nose" ,python-nose)))
+    (home-page "https://github.com/jsocol/pystatsd")
+    (synopsis "A simple statsd client.")
+    (description "A simple statsd client.")
+    (license license:expat)))
-- 
2.31.1


[-- Attachment #12: 0045-python-dogpile.cache-new-package.patch --]
[-- Type: text/x-patch, Size: 1684 bytes --]

From 16eca7de16841393cc842a6fd7e0eb7468da0b90 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 10 May 2021 07:01:51 -0700
Subject: [PATCH 45/55] python-dogpile.cache: new package

---
 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 8a6bffc46f..6b0ab4a9f1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26146,3 +26146,31 @@ representing paths or filenames.")
     (synopsis "High-level interface to Kerberos")
     (description "High-level interface to Kerberos")
     (license license:asl2.0)))
+
+(define-public python-dogpile.cache
+  (package
+    (name "python-dogpile.cache")
+    (version "1.1.2")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "dogpile.cache" version))
+        (sha256
+          (base32
+            "0iba1cdam6hclkqhhhhfaii8qvb84qbnka362gpvgpm3f934cd11"))))
+    (build-system python-build-system)
+    (arguments
+      ; TODO package test dependencies.
+      ; The test code also looks like it includes integration tests for redis
+      ; and memcache which will require networking.
+      `(#:tests? #f))
+    (propagated-inputs
+      `(("python-decorator" ,python-decorator)
+        ("python-stevedore" ,python-stevedore)))
+    (home-page
+      "https://github.com/sqlalchemy/dogpile.cache")
+    (synopsis
+      "A caching front-end based on the Dogpile lock.")
+    (description
+      "A caching front-end based on the Dogpile lock.")
+    (license license:expat)))
-- 
2.31.1


[-- Attachment #13: 0044-python-six-upgrade-to-1.16.0-latest.patch --]
[-- Type: text/x-patch, Size: 1034 bytes --]

From 6dc81df59916747ed64d1a22d303a822663c7e30 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 9 May 2021 00:42:28 -0700
Subject: [PATCH 44/55] python-six: upgrade to 1.16.0 (latest)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f19f71fec4..8a6bffc46f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2245,14 +2245,14 @@ in the current session, Python, and the OS.")
 (define-public python-six
   (package
     (name "python-six")
-    (version "1.14.0")
+    (version "1.16.0")
     (source
      (origin
       (method url-fetch)
       (uri (pypi-uri "six" version))
       (sha256
        (base32
-        "02lw67hprv57hyg3cfy02y3ixjk3nzwc0dx3c4ynlvkfwkfdnsr3"))))
+        "09n9qih9rpj95q3r4a40li7hk6swma11syvgwdc68qm1fxsc6q8y"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
-- 
2.31.1


[-- Attachment #14: 0043-python-moto-upgrade-to-2.0.6-latest.patch --]
[-- Type: text/x-patch, Size: 1133 bytes --]

From 7755a22a2d43d1795aa6e09eb24d08680a0178d6 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 9 May 2021 00:22:35 -0700
Subject: [PATCH 43/55] python-moto: upgrade to 2.0.6 (latest)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c0baa64ca0..f19f71fec4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12489,13 +12489,13 @@ text.")
   (package
     (name "python-moto")
     ;; XXX: Use a pre-release for compatibility with latest botocore & friends.
-    (version "1.3.16.dev134")
+    (version "2.0.6")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "moto" version))
               (sha256
                (base32
-                "1pix0c7zszjwzfy88n1rpih9vkdm25nqcvz93z850xvgwb4v81bd"))))
+                "146xchkhfkbj4faf4ap9g8sxzdipscjm2y44gasanv206xl1g0kr"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
-- 
2.31.1


[-- Attachment #15: 0042-awscli-upgrade-to-latest-1.19.69.patch --]
[-- Type: text/x-patch, Size: 1156 bytes --]

From 7d0e9f72db866eadfebfa33d3cfa7fb5072fc7bd Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 23:52:47 -0700
Subject: [PATCH 42/55] awscli: upgrade to latest (1.19.69)

---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2fd56df6ed..a32c501d0a 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2850,14 +2850,14 @@ supports url redirection and retries, and also gzip and deflate decoding.")
   (package
     ;; Note: updating awscli typically requires updating botocore as well.
     (name "awscli")
-    (version "1.18.203")
+    (version "1.19.69")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri name version))
        (sha256
         (base32
-         "128zg24961j8nmnq2dxqg6a7zwh3qgv87cmvclsdqwwih9nigxv9"))))
+         "0n4ly2gkgakywn306wixz2pwnzvnpp0cb5ys8lxwqp6am6dzh0w1"))))
     (build-system python-build-system)
     (arguments
      ;; FIXME: The 'pypi' release does not contain tests.
-- 
2.31.1


[-- Attachment #16: 0041-python-s3transfer-upgrade-to-latest-0.4.2.patch --]
[-- Type: text/x-patch, Size: 2201 bytes --]

From 928c160138de011b10c959ca7b1fc2951450a94c Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 23:52:17 -0700
Subject: [PATCH 41/55] python-s3transfer: upgrade to latest (0.4.2)

---
 gnu/packages/python-web.scm | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 2bb5605111..2fd56df6ed 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -3391,26 +3391,17 @@ Betamax that may possibly end up in the main package.")
 (define-public python-s3transfer
   (package
     (name "python-s3transfer")
-    (version "0.3.3")
+    (version "0.4.2")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "s3transfer" version))
               (sha256
                (base32
-                "1nzp5kwmy9669334shcz9ipg89jgpdqhrmbkgdg18r7wmvi3f6lj"))))
+                "1cp169vz9rvng7dwbn33fgdbl3b014zpsdqsnfxxw7jm2r5jy0nb"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'patch
-           (lambda _
-             ;; There's a small issue with one test with Python 3.8, this
-             ;; change has been suggested upstream:
-             ;; https://github.com/boto/s3transfer/pull/164
-             (substitute* "tests/unit/test_s3transfer.py"
-               (("super\\(FailedDownloadParts, self\\)\\.submit\\(function\\)")
-                "futures.Future()"))
-             #t))
          (replace 'check
            (lambda _
              ;; Some of the 'integration' tests require network access or
@@ -3422,8 +3413,7 @@ Betamax that may possibly end up in the main package.")
        ("python-mock" ,python-mock)
        ("python-nose" ,python-nose)))
     (propagated-inputs
-     `(("python-botocore" ,python-botocore)
-       ("python-urllib3" ,python-urllib3)))
+     `(("python-botocore" ,python-botocore)))
     (synopsis "Amazon S3 Transfer Manager")
     (description "S3transfer is a Python library for managing Amazon S3
 transfers.")
-- 
2.31.1


[-- Attachment #17: 0040-python-boto3-upgrade-to-latest-1.17.69.patch --]
[-- Type: text/x-patch, Size: 1638 bytes --]

From b9fbbbee7abf7fcbe759564d9014eceef536fdf8 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 23:51:18 -0700
Subject: [PATCH 40/55] python-boto3: upgrade to latest (1.17.69)

---
 gnu/packages/python-xyz.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 709a629d66..c0baa64ca0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12894,7 +12894,7 @@ interface to the Amazon Web Services (AWS) API.")
 (define-public python-boto3
   (package
     (name "python-boto3")
-    (version "1.16.22")
+    (version "1.17.69")
     (home-page "https://github.com/boto/boto3")
     (source (origin
               (method git-fetch)
@@ -12902,7 +12902,7 @@ interface to the Amazon Web Services (AWS) API.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0h20hgl4yfl58g75qhb6ibrdmzn47md3srgar7hask14cjmfhfy3"))))
+                "08h4ihqgg6lmznl3l2vj8cly7ln82f4y0brab5h4cayskpgfhvi0"))))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -12914,7 +12914,8 @@ interface to the Amazon Web Services (AWS) API.")
     (build-system python-build-system)
     (native-inputs
      `(("python-nose" ,python-nose)
-       ("python-mock" ,python-mock)))
+       ("python-mock" ,python-mock)
+       ("python-wheel" ,python-wheel)))
     (propagated-inputs
      `(("python-botocore" ,python-botocore)
        ("python-jmespath" ,python-jmespath)
-- 
2.31.1


[-- Attachment #18: 0039-python-botocore-upgrade-to-latest-1.20.69.patch --]
[-- Type: text/x-patch, Size: 1115 bytes --]

From e923c26735b7f0c714f4f361317832cfbf9d2031 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 23:49:58 -0700
Subject: [PATCH 39/55] python-botocore: upgrade to latest (1.20.69)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 102780483e..709a629d66 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -12866,14 +12866,14 @@ This software is unmaintained, and new projects 
should use @code{boto3} instead.
   ;; are compatible.
   (package
     (name "python-botocore")
-    (version "1.19.22")
+    (version "1.20.69")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "botocore" version))
        (sha256
         (base32
-         "0iim86x7c6hqmvd61ygz6x6x9glnsfbnyzv2y67qjdcdx8jpkmw7"))))
+         "10k0vg39psz4vccpig8nz2d7nmmm0lxpwhrb50yy7v33fxvx753y"))))
     (build-system python-build-system)
     (arguments
      ;; FIXME: Many tests are failing.
-- 
2.31.1


[-- Attachment #19: 0038-python-keystoneclient-upgrade-to-latest-4.2.0-and-fi.patch --]
[-- Type: text/x-patch, Size: 3454 bytes --]

From 445ed41b9678a0d2af1c5e7a2bfdffe4e0efad61 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:55:27 -0700
Subject: [PATCH 38/55] python-keystoneclient: upgrade to latest (4.2.0) and
 fix tests

---
 gnu/packages/openstack.scm | 39 ++++++++++++++++++--------------------
 1 file changed, 18 insertions(+), 21 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index df17c4233c..30501cf3e0 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -921,50 +921,47 @@ handling.")
 (define-public python-keystoneclient
   (package
     (name "python-keystoneclient")
-    (version "1.8.1")
+    (version "4.2.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "python-keystoneclient" version))
         (sha256
          (base32
-          "1w4csvkah67rfpxylxnvs2s3594i0f9isy8pf4gnsqs5zirvjaa4"))))
+          "12jsiw82x2zcn8sf78xisf85kr28gl3jqj46a0wxx59v91p44j02"))))
     (build-system python-build-system)
     (arguments
-     '(#:tests? #f)) ; FIXME: Many tests are failing.
+      `(#:phases
+        (modify-phases %standard-phases
+          (replace 'check
+                   (lambda _
+                     (invoke "stestr" "run")
+                     #t)))))
     (native-inputs
-     `(("python-sphinx" ,python-sphinx)
-       ;; and some packages for the tests
-       ("openssl" ,openssl)
+     `(("openssl" ,openssl)
+       ("python-bandit" ,python-bandit)
        ("python-coverage" ,python-coverage)
-       ("python-discover" ,python-discover)
        ("python-fixtures" ,python-fixtures)
-       ("python-hacking" ,python-hacking)
-       ("python-keyring" ,python-keyring)
+       ("python-flake8-docstrings" ,python-flake8-docstrings)
        ("python-lxml" ,python-lxml)
-       ("python-mock" ,python-mock)
-       ("python-mox3" ,python-mox3)
        ("python-oauthlib" ,python-oauthlib)
-       ("python-oslosphinx" ,python-oslosphinx)
+       ("python-os-client-config" ,python-os-client-config)
        ("python-oslotest" ,python-oslotest)
-       ("python-pycrypto" ,python-pycrypto)
        ("python-requests-mock" ,python-requests-mock)
-       ("python-temptest-lib" ,python-tempest-lib)
-       ("python-testrepository" ,python-testrepository)
+       ("python-tempest-lib" ,python-tempest-lib)
+       ("python-stestr" ,python-stestr)
        ("python-testresources" ,python-testresources)
+       ("python-testscenarios" ,python-testscenarios)
        ("python-testtools" ,python-testtools)
-       ("python-webob" ,python-webob)))
+       ("which" ,which)))
     (propagated-inputs
-     `(("python-babel" ,python-babel)
-       ("python-debtcollector" ,python-debtcollector)
-       ("python-iso8601" ,python-iso8601)
-       ("python-netaddr" ,python-netaddr)
+     `(("python-debtcollector" ,python-debtcollector)
+       ("python-keystoneauth1" ,python-keystoneauth1)
        ("python-oslo.config" ,python-oslo.config)
        ("python-oslo.i18n" ,python-oslo.i18n)
        ("python-oslo.serialization" ,python-oslo.serialization)
        ("python-oslo.utils" ,python-oslo.utils)
        ("python-pbr" ,python-pbr)
-       ("python-prettytable" ,python-prettytable)
        ("python-requests" ,python-requests)
        ("python-six" ,python-six)
        ("python-stevedore" ,python-stevedore)))
-- 
2.31.1


[-- Attachment #20: 0037-python-keystoneauth1-new-package.patch --]
[-- Type: text/x-patch, Size: 4539 bytes --]

From a60ced7ac200938ea44011b5c836da8785d53469 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:53:49 -0700
Subject: [PATCH 37/55] python-keystoneauth1: new package

---
 gnu/packages/openstack.scm                    | 63 +++++++++++++++++++
 .../python-keystoneauth1-requirements.patch   | 21 +++++++
 2 files changed, 84 insertions(+)
 create mode 100644 gnu/packages/patches/python-keystoneauth1-requirements.patch

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 87cd42ab70..df17c4233c 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -24,6 +24,7 @@
 
 (define-module (gnu packages openstack)
   #:use-module (gnu packages)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages check)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages python)
@@ -855,6 +856,68 @@ handling.")
       "Python library for consuming OpenStack sevice-types-authority data")
     (license asl2.0)))
 
+(define-public python-keystoneauth1
+  (package
+    (name "python-keystoneauth1")
+    (version "4.3.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "keystoneauth1" version))
+        (sha256
+          (base32
+            "0r4ach6adh7z1kq9k378aii9mgn1kmg6iicvclqlyhnilqq58q4k"))
+        ; Remove max versions from requirements
+        (patches (search-patches "python-keystoneauth1-requirements.patch"))))
+    (build-system python-build-system)
+    (arguments
+      `(#:phases
+        (modify-phases %standard-phases
+          (replace 'check
+                   (lambda _
+                     (invoke "stestr" "run")
+                     #t)))))
+    (propagated-inputs
+      `(("python-iso8601" ,python-iso8601)
+        ("python-os-service-types"
+         ,python-os-service-types)
+        ("python-pbr" ,python-pbr)
+        ("python-requests" ,python-requests)
+        ("python-six" ,python-six)
+        ("python-stevedore" ,python-stevedore)))
+    (native-inputs
+      `(("python-bandit" ,python-bandit)
+        ("python-betamax" ,python-betamax)
+        ("python-coverage" ,python-coverage)
+        ("python-fixtures" ,python-fixtures)
+        ("python-flake8-docstrings"
+         ,python-flake8-docstrings)
+        ("python-flake8-import-order"
+         ,python-flake8-import-order)
+        ("python-hacking" ,python-hacking)
+        ("python-lxml" ,python-lxml)
+        ("python-oauthlib" ,python-oauthlib)
+        ("python-oslo.config" ,python-oslo.config)
+        ("python-oslo.utils" ,python-oslo.utils)
+        ("python-oslotest" ,python-oslotest)
+        ("python-pycodestyle" ,python-pycodestyle)
+        ("python-pyyaml" ,python-pyyaml)
+        ("python-reno" ,python-reno)
+        ("python-requests-kerberos"
+         ,python-requests-kerberos)
+        ("python-requests-mock" ,python-requests-mock)
+        ("python-stestr" ,python-stestr)
+        ("python-testresources" ,python-testresources)
+        ("python-testtools" ,python-testtools)
+        ("which" ,which)))
+    (home-page
+      "https://docs.openstack.org/keystoneauth/latest/")
+    (synopsis
+      "Authentication Library for OpenStack Identity")
+    (description
+      "Authentication Library for OpenStack Identity")
+    (license #f)))
+
 (define-public python-keystoneclient
   (package
     (name "python-keystoneclient")
diff --git a/gnu/packages/patches/python-keystoneauth1-requirements.patch 
b/gnu/packages/patches/python-keystoneauth1-requirements.patch
new file mode 100644
index 0000000000..e5599047e9
--- /dev/null
+++ b/gnu/packages/patches/python-keystoneauth1-requirements.patch
@@ -0,0 +1,21 @@
+diff --git a/test-requirements.txt b/test-requirements.txt
+index bb35c19..8bf74c6 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -2,12 +2,12 @@
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+ 
+-hacking>=3.0.1,<3.1.0 # Apache-2.0
+-flake8-docstrings==0.2.1.post1 # MIT
++hacking>=3.0.1 # Apache-2.0
++flake8-docstrings>=0.2.1.post1 # MIT
+ flake8-import-order>=0.17.1 #LGPLv3
+-pycodestyle>=2.0.0,<2.6.0 # MIT
++pycodestyle>=2.0.0 # MIT
+ 
+-bandit<1.6.0,>=1.1.0 # Apache-2.0
++bandit>=1.1.0 # Apache-2.0
+ coverage!=4.4,>=4.0 # Apache-2.0
+ fixtures>=3.0.0 # Apache-2.0/BSD
+ oslo.config>=5.2.0 # Apache-2.0
-- 
2.31.1


[-- Attachment #21: 0036-python-os-service-types-new-package.patch --]
[-- Type: text/x-patch, Size: 1554 bytes --]

From 54c36aedac3c8fd848500ce2a66b0a937f170bd5 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:52:06 -0700
Subject: [PATCH 36/55] python-os-service-types: new package

---
 gnu/packages/openstack.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index fdfada734b..87cd42ab70 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -831,6 +831,30 @@ functions, such as encoding, exception handling, string manipulation, and time
 handling.")
     (license asl2.0)))
 
+(define-public python-os-service-types
+  (package
+    (name "python-os-service-types")
+    (version "1.7.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "os-service-types" version))
+        (sha256
+          (base32
+            "0v4chwr5jykkvkv4w7iaaic7gb06j6ziw7xrjlwkcf92m2ch501i"))))
+    (build-system python-build-system)
+    (arguments
+      ; TODO package test dependencies
+      `(#:tests? #f))
+    (propagated-inputs `(("python-pbr" ,python-pbr)))
+    (home-page
+      "https://docs.openstack.org/os-service-types/latest/")
+    (synopsis
+      "Python library for consuming OpenStack sevice-types-authority data")
+    (description
+      "Python library for consuming OpenStack sevice-types-authority data")
+    (license asl2.0)))
+
 (define-public python-keystoneclient
   (package
     (name "python-keystoneclient")
-- 
2.31.1


[-- Attachment #22: 0035-python-flake8-import-order-new-package.patch --]
[-- Type: text/x-patch, Size: 1856 bytes --]

From 093b38da966f8a591160ac5ba6587b311ee4e50c Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:43:45 -0700
Subject: [PATCH 35/55] python-flake8-import-order: new package

---
 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 f27c6170f5..102780483e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9509,6 +9509,34 @@ the same line (which can be introduced by the code 
formatting tool Black), or
 unnecessary plus operators for explicit string literal concatenation.")
     (license license:expat)))
 
+(define-public python-flake8-import-order
+  (package
+    (name "python-flake8-import-order")
+    (version "0.18.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "flake8-import-order" version))
+        (sha256
+          (base32
+            "14kfvsagqc6lrplvf3x58ia6x744bk8fj91wmk0hcipa8naw73d2"))))
+    (build-system python-build-system)
+    (native-inputs
+      `(("python-pytest", python-pytest)
+        ("python-flake8", python-flake8)
+        ("python-pycodestyle", python-pycodestyle)
+        ("python-pylama", python-pylama)))
+    (propagated-inputs
+      `(("python-pycodestyle" ,python-pycodestyle)
+        ("python-setuptools" ,python-setuptools)))
+    (home-page
+      "https://github.com/PyCQA/flake8-import-order")
+    (synopsis
+      "Flake8 and pylama plugin that checks the ordering of import statements.")
+    (description
+      "Flake8 and pylama plugin that checks the ordering of import statements.")
+    (license license:lgpl3)))
+
 (define-public python-flake8-polyfill
   (package
     (name "python-flake8-polyfill")
-- 
2.31.1


[-- Attachment #23: 0034-python-pylama-new-package.patch --]
[-- Type: text/x-patch, Size: 3393 bytes --]

From 782e3b1f71befb60022d8be0f3424ecb0d905ed2 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:37:25 -0700
Subject: [PATCH 34/55] python-pylama: new package

---
 .../patches/python-pylama-eradicate.patch     | 32 ++++++++++++++++++
 gnu/packages/python-xyz.scm                   | 33 +++++++++++++++++++
 2 files changed, 65 insertions(+)
 create mode 100644 gnu/packages/patches/python-pylama-eradicate.patch

diff --git a/gnu/packages/patches/python-pylama-eradicate.patch b/gnu/packages/patches/python-pylama-eradicate.patch
new file mode 100644
index 0000000000..33bfcee324
--- /dev/null
+++ b/gnu/packages/patches/python-pylama-eradicate.patch
@@ -0,0 +1,32 @@
+diff --git a/pylama/lint/pylama_eradicate.py b/pylama/lint/pylama_eradicate.py
+index 3a00425..645eaaf 100644
+--- a/pylama/lint/pylama_eradicate.py
++++ b/pylama/lint/pylama_eradicate.py
+@@ -1,5 +1,5 @@
+ """Commented-out code checking."""
+-from eradicate import commented_out_code_line_numbers
++from eradicate import Eradicator
+ from pylama.lint import Linter as Abstract
+ 
+ try:
+@@ -19,7 +19,7 @@ class Linter(Abstract):
+         :return list: List of errors.
+         """
+         code = converter(code)
+-        line_numbers = commented_out_code_line_numbers(code)
++        line_numbers = Eradicator().commented_out_code_line_numbers(code)
+         lines = code.split('\n')
+ 
+         result = []
+diff --git a/requirements-test.txt b/requirements-test.txt
+index f9ce65b..c84248e 100644
+--- a/requirements-test.txt
++++ b/requirements-test.txt
+@@ -2,6 +2,6 @@
+ 
+ ipdb
+ pytest
+-eradicate   >= 1.0
++eradicate   >= 2.0
+ radon       >= 1.4.2
+ mypy        ; python_version >= '3.5'
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d0d67a0184..f27c6170f5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -505,6 +505,39 @@ threads.")
 task of adding retry behavior to just about anything.")
     (license license:asl2.0)))
 
+(define-public python-pylama
+  (package
+    (name "python-pylama")
+    (version "7.7.1")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/klen/pylama.git")
+               (commit version)))
+        (sha256
+          (base32
+            "1hza43s8b3znq2vcihyvsyw6j19lm42rjn87i056j8kgrmkfil8w"))
+        (patches (search-patches "python-pylama-eradicate.patch"))))
+    (build-system python-build-system)
+    (native-inputs
+      `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+      `(("python-astroid" ,python-astroid)
+        ("python-eradicate" ,python-eradicate)
+        ("python-mccabe" ,python-mccabe)
+        ("python-mypy" ,python-mypy)
+        ("python-pycodestyle" ,python-pycodestyle)
+        ("python-pydocstyle" ,python-pydocstyle)
+        ("python-pylint", python-pylint)
+        ("python-pyflakes" ,python-pyflakes)
+        ("python-radon" ,python-radon)))
+    (home-page "https://pylama.readthedocs.io/")
+    (synopsis "pylama -- Code audit tool for python")
+    (description
+      "pylama -- Code audit tool for python")
+    (license license:lgpl3)))
+
 (define-public python-pytelegrambotapi
   (package
     (name "python-pytelegrambotapi")
-- 
2.31.1


[-- Attachment #24: 0033-python-requests-kerberos-new-package.patch --]
[-- Type: text/x-patch, Size: 1808 bytes --]

From e91b8837b8ad22e878a22dde8f58357a883e5b06 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:34:00 -0700
Subject: [PATCH 33/55] python-requests-kerberos: new package

---
 gnu/packages/python-web.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 8f6a820b04..2bb5605111 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2524,6 +2524,36 @@ than Python’s urllib2 library.")
 (define-public python2-requests
   (package-with-python2 python-requests))
 
+(define-public python-requests-kerberos
+  (package
+    (name "python-requests-kerberos")
+    (version "0.12.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "requests-kerberos" version))
+        (sha256
+          (base32
+            "1zaj1bs1bpla7324h85q0kfsrfg4mswkhcc1gva2lg65859g28cx"))))
+    (build-system python-build-system)
+    (arguments
+      ; Tests fail to load module tests_requests_kerberos
+      `(#:tests? #f))
+    (native-inputs
+      `(("python-mock" ,python-mock)))
+    (propagated-inputs
+      `(("python-cryptography" ,python-cryptography)
+        ("python-pykerberos" ,python-pykerberos)
+        ("python-requests" ,python-requests)
+        ("python-winkerberos" ,python-winkerberos)))
+    (home-page
+      "https://github.com/requests/requests-kerberos")
+    (synopsis
+      "A Kerberos authentication handler for python-requests")
+    (description
+      "A Kerberos authentication handler for python-requests")
+    (license license:isc)))
+
 (define-public python-requests-unixsocket
   (package
     (name "python-requests-unixsocket")
-- 
2.31.1


[-- Attachment #25: 0032-python-winkerberos-new-package.patch --]
[-- Type: text/x-patch, Size: 1616 bytes --]

From 109789196b4b514c929f5e7b021c12b0e4d162a9 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:31:47 -0700
Subject: [PATCH 32/55] python-winkerberos: new package

---
 gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1acfff262e..d0d67a0184 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26041,6 +26041,31 @@ representing paths or filenames.")
     (description "Run-time type checker for Python")
     (license license:expat)))
 
+(define-public python-winkerberos
+  (package
+    (name "python-winkerberos")
+    (version "0.8.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "winkerberos" version ".zip"))
+        (sha256
+          (base32
+            "1nh45r0h2fnwcg334b0icy05h0l30y0hr5p1vjzy1pyz4xmpgy9a"))))
+    ; This is a windows package. Skip building it and just provide
+    ; the package so the dependency may be resolved.
+    (build-system trivial-build-system)
+    (arguments
+      `(#:builder (begin (mkdir %output) #t)))
+    (native-inputs `(("unzip" ,unzip)))
+    (home-page
+      "https://github.com/mongodb-labs/winkerberos")
+    (synopsis
+      "High level interface to SSPI for Kerberos client auth")
+    (description
+      "High level interface to SSPI for Kerberos client auth")
+    (license license:asl2.0)))
+
 (define-public python-pykerberos
   (package
     (name "python-pykerberos")
-- 
2.31.1


[-- Attachment #26: 0031-python-pykerberos-new-package.patch --]
[-- Type: text/x-patch, Size: 1273 bytes --]

From 6dcc75adfe8e577d1d11e70b5d7465eb4d51d8b6 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sat, 8 May 2021 22:31:17 -0700
Subject: [PATCH 31/55] python-pykerberos: new package

---
 gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c096be93d8..1acfff262e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26040,3 +26040,22 @@ representing paths or filenames.")
     (synopsis "Run-time type checker for Python")
     (description "Run-time type checker for Python")
     (license license:expat)))
+
+(define-public python-pykerberos
+  (package
+    (name "python-pykerberos")
+    (version "1.2.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pykerberos" version))
+        (sha256
+          (base32
+            "0v47p840myqgc7hr4lir72xshcfpa0w8j9n077h3njpqyn6wlbag"))))
+    (build-system python-build-system)
+    (inputs
+     `(("mit-krb5" ,mit-krb5)))
+    (home-page "")
+    (synopsis "High-level interface to Kerberos")
+    (description "High-level interface to Kerberos")
+    (license license:asl2.0)))
-- 
2.31.1


[-- Attachment #27: 0030-python-flake8-docstrings-new-package-via-guix-import.patch --]
[-- Type: text/x-patch, Size: 1592 bytes --]

From 2eb650d4eb1db2e8a1fd51b2fc62c7dca00f9d94 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Fri, 7 May 2021 08:16:34 -0700
Subject: [PATCH 30/55] python-flake8-docstrings: new package (via guix import)

---
 gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0a1a8ba5b2..c096be93d8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9428,6 +9428,29 @@ These should be used in preference to using a backslash for line continuation.
 @end quotation")
     (license license:asl2.0)))
 
+(define-public python-flake8-docstrings
+  (package
+    (name "python-flake8-docstrings")
+    (version "1.6.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "flake8-docstrings" version))
+        (sha256
+          (base32
+            "0jy3i9q57kl45gpwlfdvhigsa7gbx5hjyp055bkghjh60siwdrwz"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-flake8" ,python-flake8)
+        ("python-pydocstyle" ,python-pydocstyle)))
+    (home-page
+      "https://gitlab.com/pycqa/flake8-docstrings")
+    (synopsis
+      "Extension for flake8 which uses pydocstyle to check docstrings")
+    (description
+      "Extension for flake8 which uses pydocstyle to check docstrings")
+    (license license:expat)))
+
 (define-public python-flake8-implicit-str-concat
   (package
     (name "python-flake8-implicit-str-concat")
-- 
2.31.1


[-- Attachment #28: 0029-python-kombu-upgrade-to-latest-5.0.2.patch --]
[-- Type: text/x-patch, Size: 1551 bytes --]

From a93b05f108b38bfc14739e4baf227e6737f54cd8 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Thu, 6 May 2021 02:41:42 -0700
Subject: [PATCH 29/55] python-kombu: upgrade to latest (5.0.2)

---
 gnu/packages/python-xyz.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 707fac83f5..0a1a8ba5b2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13152,14 +13152,14 @@ applications.")
 (define-public python-kombu
   (package
     (name "python-kombu")
-    (version "4.2.2")
+    (version "5.0.2")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "kombu" version))
        (sha256
         (base32
-         "15k8f7mzqr049sg9vi48m19vjykviafk3f0p5xzgw9by0x0kyxjj"))))
+         "0g5c0lg2abva1d8nrc824jk5fcvf8kbbbvhb8xyx86271ax5z5pl"))))
     (build-system python-build-system)
     (native-inputs
      `(("python-mock" ,python-mock)
@@ -13168,9 +13168,7 @@ applications.")
        ("python-pytest-sugar" ,python-pytest-sugar)
        ("python-pytz" ,python-pytz)))
     (propagated-inputs
-     `(("python-anyjson" ,python-anyjson)
-       ("python-amqp" ,python-amqp)
-       ("python-redis" ,python-redis)))
+     `(("python-amqp" ,python-amqp)))
     (home-page "https://kombu.readthedocs.io")
     (synopsis "Message passing library for Python")
     (description "The aim of Kombu is to make messaging in Python as easy as
-- 
2.31.1


[-- Attachment #29: 0028-python-amqp-upgrade-to-latest-5.0.6.patch --]
[-- Type: text/x-patch, Size: 1380 bytes --]

From 26363b2514cedca1d52bf5c24721417ae71dd03a Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Thu, 6 May 2021 02:37:22 -0700
Subject: [PATCH 28/55] python-amqp: upgrade to latest (5.0.6)

---
 gnu/packages/python-xyz.scm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1055887921..707fac83f5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13081,17 +13081,21 @@ and provides a uniform API regardless of which JSON implementation is used.")
 (define-public python-amqp
   (package
     (name "python-amqp")
-    (version "2.3.2")
+    (version "5.0.6")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "amqp" version))
        (sha256
         (base32
-         "1sv600dgqwpimr6i1g59y9hpn50mc236gdqkr7zin13kvlpx0g87"))))
+         "1hk8jli0s8dinxwihskzbwqlrancsgfxh1hjpzw32k5kyaa6xq83"))))
     (build-system python-build-system)
+    (arguments
+      ; Tests require networking - disabled.
+      `(#:tests? #f))
     (native-inputs
      `(("python-case" ,python-case)
+       ("python-pytest-rerunfailures" ,python-pytest-rerunfailures)
        ("python-pytest-sugar" ,python-pytest-sugar)
        ("python-mock" ,python-mock)))
     (propagated-inputs
-- 
2.31.1


[-- Attachment #30: 0027-python-pytest-rerunfailures-new-package.patch --]
[-- Type: text/x-patch, Size: 1552 bytes --]

From b20a0a99b14fec49b5af3ff86fdc0d58fbd85644 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Thu, 6 May 2021 02:21:38 -0700
Subject: [PATCH 27/55] python-pytest-rerunfailures: new package

---
 gnu/packages/python-check.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index 122098ae17..1e801ca282 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -1519,3 +1519,26 @@ or use cases.  Design is based on supporting slow, 
io-bound testing with often
 tedious system under test configuration that can benefit from running several
 tests at one time.")
     (license license:expat)))
+
+(define-public python-pytest-rerunfailures
+  (package
+    (name "python-pytest-rerunfailures")
+    (version "9.1.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "pytest-rerunfailures" version))
+        (sha256
+          (base32
+            "1wi711wn0xdzd8zwpirsd4p5ycpf2krymdaf84c3j6qjzhbimc8w"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-pytest" ,python-pytest)
+        ("python-setuptools" ,python-setuptools)))
+    (home-page
+      "https://github.com/pytest-dev/pytest-rerunfailures")
+    (synopsis
+      "pytest plugin to re-run tests to eliminate flaky failures")
+    (description
+      "pytest plugin to re-run tests to eliminate flaky failures")
+    (license #f)))
-- 
2.31.1


[-- Attachment #31: 0026-python-vine-upgrade-to-5.0.0-latest.patch --]
[-- Type: text/x-patch, Size: 1098 bytes --]

From 37fadd7d049f2fa107df00d1ef65d4d7f65e5521 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Thu, 6 May 2021 02:09:52 -0700
Subject: [PATCH 26/55] python-vine: upgrade to 5.0.0 (latest)

---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4637062f90..1055887921 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3611,14 +3611,14 @@ provides Python-specific tags that represent an arbitrary Python object.")
 (define-public python-vine
   (package
     (name "python-vine")
-    (version "1.1.4")
+    (version "5.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "vine" version))
        (sha256
         (base32
-         "0wkskb2hb494v9gixqnf4bl972p4ibcmxdykzpwjlfa5picns4aj"))))
+         "0zk3pm0g7s4qfn0gk28lfmsyplvisaxi6826cgpq5njkm4j1cfvx"))))
     (build-system python-build-system)
     (native-inputs
      `(("python-pytest" ,python-pytest)
-- 
2.31.1


[-- Attachment #32: 0025-python-eventlet-upgrade-to-latest-0.31.0.patch --]
[-- Type: text/x-patch, Size: 1232 bytes --]

From 249154c0d0659f69b86d51b17689123a923ab9ec Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Thu, 6 May 2021 00:15:44 -0700
Subject: [PATCH 25/55] python-eventlet: upgrade to latest (0.31.0)

---
 gnu/packages/python-xyz.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a2bd3eec7b..4637062f90 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2162,17 +2162,17 @@ standard.")
 (define-public python-eventlet
   (package
     (name "python-eventlet")
-    (version "0.25.1")
+    (version "0.31.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "eventlet" version))
        (sha256
         (base32
-         "1hgz8jq19wlz8vwqj900ry8cjv578nz4scc91mlc8944yid6573c"))))
+         "0yq13vqd1y5jygyk8ji0z6h8llpagzbrfcdrhzy8gph3q3nc4vmk"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-dnspython" ,python-dnspython)
+     `(("python-dnspython" ,python-dnspython-1.16)
        ("python-greenlet" ,python-greenlet)
        ("python-monotonic" ,python-monotonic)))
     (arguments
-- 
2.31.1


[-- Attachment #33: 0024-python-oslo.i18n-upgrade-to-latest-5.0.1.patch --]
[-- Type: text/x-patch, Size: 1325 bytes --]

From 67c16c60322a973df22815980141d74e10405689 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Wed, 5 May 2021 23:53:57 -0700
Subject: [PATCH 24/55] python-oslo.i18n: upgrade to latest (5.0.1)

---
 gnu/packages/openstack.scm | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 9964e90ae9..fdfada734b 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -525,21 +525,18 @@ pipeline and used by various modules such as logging.")
 (define-public python-oslo.i18n
   (package
     (name "python-oslo.i18n")
-    (version "3.20.0")
+    (version "5.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "oslo.i18n" version))
        (sha256
         (base32
-         "0kjcdw4bk3mi4vqmqwhhq053kxbbbj05si6nwxd1pzx33z067ky3"))))
+         "0nq3dr2kbrawqvp9q9i8i44z9jliq98i2b9h4dsl6p7p60gbg11l"))))
     (build-system python-build-system)
     (arguments 
       ; Disable tests, due to the cicrular dependency on oslo.config.
       `(#:tests? #f))
-    (propagated-inputs
-     `(("python-babel" ,python-babel)
-       ("python-six" ,python-six)))
     (native-inputs
      `(("python-pbr" ,python-pbr)
        ;; Tests
-- 
2.31.1


[-- Attachment #34: 0023-python-oslo.serialization-upgrade-to-latest-4.1.0.patch --]
[-- Type: text/x-patch, Size: 3322 bytes --]

From 2f66c990b9b632fd92465b7b0ee9ff92c1d391b2 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Wed, 5 May 2021 23:46:12 -0700
Subject: [PATCH 23/55] python-oslo.serialization: upgrade to latest (4.1.0)

---
 gnu/packages/openstack.scm | 33 ++++++++++++++++++---------------
 1 file changed, 18 insertions(+), 15 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 6d40b18ac7..9964e90ae9 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -631,53 +631,56 @@ handlers and support for context specific logging (like resource id’s etc).")
 (define python-oslo.serialization-deps-patch
   (plain-file "python-oslo.serialization-deps.patch"
 "diff --git a/test-requirements.txt b/test-requirements.txt
-index 72ae4ff..4b76d25 100644
+index 145e8f7..7227d6c 100644
 --- a/test-requirements.txt
 +++ b/test-requirements.txt
 @@ -1,7 +1,7 @@
  # The order of packages is significant, because pip processes them in the order
  # of appearance. Changing the order has an impact on the overall integration
  # process, which may cause wedges in the gate later.
--hacking>=1.1.0,<1.2.0 # Apache-2.0
-+hacking>=1.1.0 # Apache-2.0
- ipaddress>=1.0.17;python_version<'3.3' # PSF
- mock>=2.0.0 # BSD
+-hacking>=3.0.1,<3.1.0 # Apache-2.0
++hacking>=3.0.1 # Apache-2.0
  netaddr>=0.7.18 # BSD
+ stestr>=2.0.0 # Apache-2.0
+ 
+@@ -10,6 +10,6 @@ oslo.i18n>=3.15.3 # Apache-2.0
+ coverage!=4.4,>=4.0 # Apache-2.0
+ 
+ # Bandit security code scanner
+-bandit>=1.6.0,<1.7.0 # Apache-2.0
++bandit>=1.6.0 # Apache-2.0
+ 
+ pre-commit>=2.6.0 # MIT
 "))
 
 (define-public python-oslo.serialization
   (package
     (name "python-oslo.serialization")
-    (version "2.29.3")
+    (version "4.1.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "oslo.serialization" version))
        (sha256
         (base32
-         "0sf2lgfi2kgcz5xif6lphipcphzfnygsyxfc226qjfnn788ql72m"))
+         "0yakvsja145y89j3r7njg826ig0rmyrw5mnvf35qav40vya7gk6f"))
        (patches (list python-oslo.serialization-deps-patch))))
     (build-system python-build-system)
     (propagated-inputs
       `(("python-msgpack" ,python-msgpack)
-        ("python-netaddr" ,python-netaddr)
         ("python-oslo.utils" ,python-oslo.utils)
-        ("python-six" ,python-six)
         ("python-pytz" ,python-pytz)))
     (native-inputs
       `(("python-pbr" ,python-pbr)
         ;; Tests.
         ("python-bandit" ,python-bandit)
         ("python-coverage" ,python-coverage)
-        ("python-flake8" ,python-flake8)
         ("python-hacking" ,python-hacking)
-        ("python-ipaddress" ,python-ipaddress)
-        ("python-mock" ,python-mock)
-        ("python-openstackdocstheme" ,python-openstackdocstheme)
+        ("python-netaddr" ,python-netaddr)
         ("python-oslo.i18n" ,python-oslo.i18n)
         ("python-oslotest" ,python-oslotest)
-        ("python-reno" ,python-reno)
-        ("python-sphinx" ,python-sphinx)
+        ("python-packaging" ,python-packaging)
+        ("python-pre-commit" ,python-pre-commit)
         ("python-stestr" ,python-stestr)))
     (home-page "https://launchpad.net/oslo")
     (synopsis "Oslo serialization library")
-- 
2.31.1


[-- Attachment #35: 0022-python-requests-upgrade-2.25.0-2.25.1.patch --]
[-- Type: text/x-patch, Size: 1083 bytes --]

From 37934ea74acab829b42c554041bf7bc37db33916 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Wed, 5 May 2021 22:11:44 -0700
Subject: [PATCH 22/55] python-requests: upgrade 2.25.0 -> 2.25.1

---
 gnu/packages/python-web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 81cd4daea2..8f6a820b04 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2482,13 +2482,13 @@ APIs.")
 (define-public python-requests
   (package
     (name "python-requests")
-    (version "2.25.0")
+    (version "2.25.1")
     (source (origin
              (method url-fetch)
              (uri (pypi-uri "requests" version))
              (sha256
               (base32
-               "1y6mb8c0ipd64d5axq2p368yxndp3f966hmabjka2q2a5y9hn6kz"))))
+               "015qflyqsgsz09gnar69s6ga74ivq5kch69s4qxz3904m7a3v5r7"))))
     (build-system python-build-system)
     (propagated-inputs
      `(("python-certifi" ,python-certifi)
-- 
2.31.1


[-- Attachment #36: 0021-python-tenacity-upgrade-to-latest-7.0.0.patch --]
[-- Type: text/x-patch, Size: 1464 bytes --]

From 3f33292591040e6b19b04bf92594d33d0fc45fc7 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Wed, 5 May 2021 21:41:39 -0700
Subject: [PATCH 21/55] python-tenacity: upgrade to latest (7.0.0)

---
 gnu/packages/python-xyz.scm | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 24c3582005..a2bd3eec7b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -477,19 +477,20 @@ threads.")
 (define-public python-tenacity
   (package
     (name "python-tenacity")
-    (version "6.1.0")
+    (version "7.0.0")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "tenacity" version))
               (sha256
                (base32
-                "1j36v9fcpmmd4985ix0cwnvcq71rkrn5cjiiv0id9vkl4kpxh0gv"))))
+                "1q8s6sgg9j6kp698fkm0g5ja4filbmlnzyldw9zn91drsgsnxlav"))))
     (build-system python-build-system)
     (native-inputs
-     `(("python-setuptools-scm" ,python-setuptools-scm)
+     `(("python-pytest" ,python-pytest)
+       ("python-setuptools-scm" ,python-setuptools-scm)
        ("python-sphinx" ,python-sphinx)
        ("python-tornado" ,python-tornado)
-       ("python-pytest" ,python-pytest)))
+       ("python-typeguard" ,python-typeguard)))
     (propagated-inputs
      `(("python-six" ,python-six)))
     (arguments
-- 
2.31.1


[-- Attachment #37: 0020-Add-python-typeguard-package-via-guix-import.patch --]
[-- Type: text/x-patch, Size: 1493 bytes --]

From ecebea7bdc95c3410729a9b600b1685b0478e09a Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Wed, 5 May 2021 21:36:32 -0700
Subject: [PATCH 20/55] Add python-typeguard package (via guix import)

---
 gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b77a897108..24c3582005 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -25992,3 +25992,25 @@ representing paths or filenames.")
     (description
       "Python for Win32 (pywin32) extensions, which provides access to many of the Windows APIs from Python. This is a stub to fix guix import pypy for this package.")
     (license #f)))
+
+(define-public python-typeguard
+  (package
+    (name "python-typeguard")
+    (version "2.12.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "typeguard" version))
+        (sha256
+          (base32
+            "1vs7y44mqixvl9fv863gdm79kqx8l6svmnqw89dlcqxsrka7z9zw"))))
+    (build-system python-build-system)
+    (native-inputs
+      `(("python-mypy" ,python-mypy)
+        ("python-pytest" ,python-pytest)
+        ("python-typing-extensions"
+         ,python-typing-extensions)))
+    (home-page "")
+    (synopsis "Run-time type checker for Python")
+    (description "Run-time type checker for Python")
+    (license license:expat)))
-- 
2.31.1


[-- Attachment #38: 0019-python-lxml-upgrade-to-latest-4.6.3.patch --]
[-- Type: text/x-patch, Size: 1770 bytes --]

From f88686cee2991cc3b116f856930c0473de08f65f Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 4 May 2021 22:28:06 -0700
Subject: [PATCH 19/55] python-lxml: upgrade to latest (4.6.3)

---
 gnu/packages/xml.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index 9743086b1e..e7ea0f4cf3 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -68,6 +68,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages perl-check)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages web)
   #:use-module ((guix licenses) #:prefix license:)
@@ -2592,13 +2593,13 @@ because lxml.etree already has it's own implementation of XPath 1.0.")
 (define-public python-lxml
   (package
     (name "python-lxml")
-    (version "4.4.2")
+    (version "4.6.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "lxml" version))
        (sha256
-        (base32 "01nvb5j8vs9nk4z5s3250b1m22b4d08kffa36if3g1mdygdrvxpg"))))
+        (base32 "0s14r1w2x9sdlcsw8mxiqgw4rz5zs5lpqpxrfyn4a1mkndqqbdrr"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -2607,7 +2608,8 @@ because lxml.etree already has it's own implementation of XPath 1.0.")
                       (invoke "make" "test"))))))
     (inputs
      `(("libxml2" ,libxml2)
-       ("libxslt" ,libxslt)))
+       ("libxslt" ,libxslt)
+       ("python-cython" ,python-cython)))
     (home-page "https://lxml.de/")
     (synopsis "Python XML processing library")
     (description
-- 
2.31.1


[-- Attachment #39: 0018-python-reno-upgrade-to-latest-3.3.0.patch --]
[-- Type: text/x-patch, Size: 2418 bytes --]

From 61a5d760c74a181cd852ab715250b2122e77b814 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 4 May 2021 01:01:09 -0700
Subject: [PATCH 18/55] python-reno: upgrade to latest (3.3.0)

---
 gnu/packages/openstack.scm | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 36e1f36364..6d40b18ac7 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -689,13 +689,13 @@ in transmittable and storable formats, such as JSON 
and MessagePack.")
 (define-public python-reno
   (package
     (name "python-reno")
-    (version "2.7.0")
+    (version "3.3.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "reno" version))
         (sha256
-          (base32 "0gwzi5dvacqx43smxl3rd1z33npn7gfhm50bvgmq90fib2q431wc"))))
+          (base32 "0mba3vnpqc0y02b668963xp75vdx9al6g0l2nna49r8rcvv7z19x"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
@@ -706,18 +706,20 @@ in transmittable and storable formats, such as JSON 
and MessagePack.")
              (invoke "git" "init"))))))
     (propagated-inputs
       `(("python-dulwich" ,python-dulwich)
+        ("python-packaging" ,python-packaging)
         ("python-pbr" ,python-pbr)
-        ("python-pyyaml" ,python-pyyaml)
-        ("python-six" ,python-six)))
+        ("python-pyyaml" ,python-pyyaml)))
     (native-inputs
-      `(("python-testtools" ,python-testtools)
+      `(("git" ,git-minimal)
+        ("gnupg" ,gnupg)
+        ("python-coverage" ,python-coverage)
+        ("python-subunit" ,python-subunit)
+        ("python-openstackdocstheme" ,python-openstackdocstheme)
+        ("python-stestr" ,python-stestr)
         ("python-testscenarios" ,python-testscenarios)
-        ("python-testrepository" ,python-testrepository)
-        ("python-mock" ,python-mock)
+        ("python-testtools" ,python-testtools)
         ("python-docutils" ,python-docutils)
-        ("python-sphinx" ,python-sphinx)
-        ("gnupg" ,gnupg)
-        ("git" ,git-minimal)))
+        ("python-sphinx" ,python-sphinx)))
     (home-page "https://docs.openstack.org/reno/latest/")
     (synopsis "Release notes manager")
     (description "Reno is a tool for storing release notes in a git repository
-- 
2.31.1


[-- Attachment #40: 0017-python-openstackdocstheme-upgrade-to-latest-2.2.7-an.patch --]
[-- Type: text/x-patch, Size: 2547 bytes --]

From 3f9f2537f0f6ac030768fcdad27a51e319b94b02 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Tue, 4 May 2021 00:57:41 -0700
Subject: [PATCH 17/55] python-openstackdocstheme: upgrade to latest (2.2.7)
 and enable tests

---
 gnu/packages/openstack.scm | 31 ++++++++++++++++++++++++-------
 1 file changed, 24 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index f4fb214f32..36e1f36364 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -215,26 +215,43 @@ Google mox framework} to Python 3.  It was meant to 
be as compatible
 with mox as possible, but small enhancements have been made.")
     (license asl2.0)))
 
+(define python-openstackdocstheme-requirements-patch
+  ; Remove maximum versions
+  (plain-file "requirements.patch"
+"diff --git a/test-requirements.txt b/test-requirements.txt
+index dbb099e..be1491c 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -2,7 +2,7 @@
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+ 
+-hacking>=3.0.1,<3.1.0 # Apache-2.0
++hacking>=3.0.1 # Apache-2.0
+ 
+ # this is required for the docs build jobs
+ sphinx>=2.0.0,!=2.1.0 # BSD
+"))
+
 (define-public python-openstackdocstheme
   (package
     (name "python-openstackdocstheme")
-    (version "1.18.1")
+    (version "2.2.7")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "openstackdocstheme" version))
               (sha256
                (base32
-                "1ki5204rjdqjvr8xr9w2qc1z6b6d2i5jas0i70xzkf9njlzjzv2r"))))
+                "0wk3pw2gwwidjwwbc2c6f7szm65mvqfcx2p4q4rwfdvk4w0grb5y"))
+              (patches (list python-openstackdocstheme-requirements-patch))))
     (build-system python-build-system)
-    (arguments
-     ;; FIXME: Tests require an old version of python-hacking, which in
-     ;; turn depends on mox3 which depends on this package.
-     `(#:tests? #f))
     (propagated-inputs
      `(("python-dulwich" ,python-dulwich)
+       ("python-hacking" ,python-hacking)
        ("python-pbr" ,python-pbr)))
     (native-inputs
-     `(("python-sphinx" ,python-sphinx)))
+     `(("python-pre-commit" ,python-pre-commit)
+       ("python-sphinx" ,python-sphinx)))
     (home-page "https://docs.openstack.org/openstackdocstheme/latest/")
     (synopsis "OpenStack Docs Theme")
     (description
-- 
2.31.1


[-- Attachment #41: 0016-Update-python-oslo.config-dependencies.patch --]
[-- Type: text/x-patch, Size: 3741 bytes --]

From 5706a2237587d9f436256e927ea21d4e6ba7b2a1 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 3 May 2021 22:49:27 -0700
Subject: [PATCH 16/55] Update python-oslo.config dependencies

---
 gnu/packages/openstack.scm | 46 +++++++++++++++++++++++++++++++++-----
 1 file changed, 41 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 92cdd62078..f4fb214f32 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -390,6 +390,33 @@ common features used in Tempest.")
 ;;; Packages from the Oslo library
 ;;;
 
+(define python-oslo.config-requirements.patch
+  ; Patch out the circular dependency on oslo.log, and max version on hacking
+  (plain-file "python-oslo.config-requirements.patch"
+"diff --git a/test-requirements.txt b/test-requirements.txt
+index 8cb29d3..c54edef 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -2,7 +2,7 @@
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+ 
+-hacking>=3.0.1,<3.1.0 # Apache-2.0
++hacking>=3.0.1 # Apache-2.0
+ 
+ fixtures>=3.0.0 # Apache-2.0/BSD
+ testscenarios>=0.4 # Apache-2.0/BSD
+@@ -14,7 +14,7 @@ mypy>=0.720 # MIT
+ # oslo.log can't be a runtime dep because it would cause a circular dependency,
+ # but we can optionally make use of it so we want to have it installed in our
+ # test environment.
+-oslo.log>=3.36.0  # Apache-2.0
++# oslo.log>=3.36.0  # Apache-2.0
+ 
+ # when we can require tox>= 1.4, this can go into tox.ini:
+ #  [testenv:cover]
+"))
+
 (define-public python-oslo.config
   (package
     (name "python-oslo.config")
@@ -400,15 +427,18 @@ common features used in Tempest.")
        (uri (pypi-uri "oslo.config" version))
        (sha256
         (base32
-         "0a1gk2b83bk2hzn35wm4q85xqi8wplakmgii59i84qkv33m11nys"))))
+         "0a1gk2b83bk2hzn35wm4q85xqi8wplakmgii59i84qkv33m11nys"))
+       (patches (list python-oslo.config-requirements.patch))))
     (build-system python-build-system)
     (arguments
+      ; This test suite is objectively broken, even with all dependencies resolved.
       `(#:tests? #f))
     (propagated-inputs
      `(("python-debtcollector" ,python-debtcollector)
        ("python-netaddr" ,python-netaddr)
        ("python-oslo.i18n" ,python-oslo.i18n)
        ("python-pbr" ,python-pbr)
+       ("python-requests" ,python-requests)
        ("python-rfc3986" ,python-rfc3986)
        ("python-six" ,python-six)
        ("python-stevedore" ,python-stevedore)
@@ -416,12 +446,18 @@ common features used in Tempest.")
     (native-inputs
      `(("python-bandit" ,python-bandit)
        ("python-coverage" ,python-coverage)
-       ("python-mock" ,python-mock)
-       ("python-openstackdocstheme" ,python-openstackdocstheme)
+       ("python-docutils" ,python-docutils)
+       ("python-hacking" ,python-hacking)
+       ;("python-mock" ,python-mock)
+       ("python-mypy" ,python-mypy)
+       ;("python-openstackdocstheme" ,python-openstackdocstheme)
        ("python-oslotest" ,python-oslotest)
-       ("python-reno" ,python-reno)
+       ("python-pre-commit" ,python-pre-commit)
+       ("python-requests-mock" ,python-requests-mock)
+       ;("python-reno" ,python-reno)
        ("python-sphinx" ,python-sphinx)
-       ("python-testrepository" ,python-testrepository)
+       ("python-stestr" ,python-stestr)
+       ;("python-testrepository" ,python-testrepository)
        ("python-testscenarios" ,python-testscenarios)
        ("python-testtools" ,python-testtools)))
     (home-page "https://launchpad.net/oslo")
-- 
2.31.1


[-- Attachment #42: 0015-python-oslo.config-Update-to-latest-8.6.0.patch --]
[-- Type: text/x-patch, Size: 1056 bytes --]

From c34f01a4967d6dbd546ed28925216a66b9242bf6 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 3 May 2021 21:19:11 -0700
Subject: [PATCH 15/55] python-oslo.config: Update to latest (8.6.0)

---
 gnu/packages/openstack.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 2c894f66b6..92cdd62078 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -393,14 +393,14 @@ common features used in Tempest.")
 (define-public python-oslo.config
   (package
     (name "python-oslo.config")
-    (version "5.2.0")
+    (version "8.6.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "oslo.config" version))
        (sha256
         (base32
-         "0ymf7jxbq29fifyvkwhfiys1qvljqfxdw8ajwzwaf3yiqidgpxqd"))))
+         "0a1gk2b83bk2hzn35wm4q85xqi8wplakmgii59i84qkv33m11nys"))))
     (build-system python-build-system)
     (arguments
       `(#:tests? #f))
-- 
2.31.1


[-- Attachment #43: 0014-python-oslo.log-include-python-packaging-dependency.patch --]
[-- Type: text/x-patch, Size: 857 bytes --]

From a45cf8d910ee9c2d936ea43ba641f7a205b9caf5 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 3 May 2021 20:09:33 -0700
Subject: [PATCH 14/55] python-oslo.log: include python-packaging dependency

---
 gnu/packages/openstack.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index a3f6728c6d..2c894f66b6 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -562,6 +562,7 @@ index ac16453..5eda8f4 100644
       ("python-hacking" ,python-hacking)
       ("python-mock" ,python-mock)
       ("python-oslotest" ,python-oslotest)
+      ("python-packaging" ,python-packaging)
       ("python-stestr" ,python-stestr)
       ("python-subunit" ,python-subunit)
       ("python-testrepository" ,python-testrepository)
-- 
2.31.1


[-- Attachment #44: 0013-python-packaging-upgrade-to-20.9.patch --]
[-- Type: text/x-patch, Size: 4978 bytes --]

From 3e37f4487a96ec05ed5cde28aeee9e65f587b85f Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 3 May 2021 00:42:08 -0700
Subject: [PATCH 13/55] python-packaging: upgrade to 20.9

The included patch file is merged upstream and removed here.
---
 .../patches/python-packaging-test-arch.patch  | 65 -------------------
 gnu/packages/python-xyz.scm                   |  7 +-
 2 files changed, 2 insertions(+), 70 deletions(-)
 delete mode 100644 gnu/packages/patches/python-packaging-test-arch.patch

diff --git a/gnu/packages/patches/python-packaging-test-arch.patch b/gnu/packages/patches/python-packaging-test-arch.patch
deleted file mode 100644
index df80a62544..0000000000
--- a/gnu/packages/patches/python-packaging-test-arch.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-Fix tests that are "hard coded" to expect x86_64 output by mocking the platform interface.
-
-Submitted upstream:
-https://github.com/pypa/packaging/pull/176
-
-diff --git a/tests/test_tags.py b/tests/test_tags.py
-index 1eacf68..0a3f1b4 100644
---- a/tests/test_tags.py
-+++ b/tests/test_tags.py
-@@ -435,37 +435,43 @@ class TestManylinuxPlatform:
-         linux_platform = list(tags._linux_platforms(is_32bit=False))
-         assert linux_platform == ["linux_x86_64"]
- 
--    def test_linux_platforms_manylinux1(self, monkeypatch):
-+    def test_linux_platforms_manylinux1(self, is_x86, monkeypatch):
-         monkeypatch.setattr(
-             tags, "_is_manylinux_compatible", lambda name, _: name == 
"manylinux1"
-         )
--        if platform.system() != "Linux":
-+        if platform.system() != "Linux" or not is_x86:
-             monkeypatch.setattr(distutils.util, "get_platform", lambda: 
"linux_x86_64")
-+            monkeypatch.setattr(platform, "machine", lambda: "x86_64")
-         platforms = list(tags._linux_platforms(is_32bit=False))
--        assert platforms == ["manylinux1_x86_64", "linux_x86_64"]
-+        arch = platform.machine()
-+        assert platforms == ["manylinux1_" + arch, "linux_" + arch]
- 
--    def test_linux_platforms_manylinux2010(self, monkeypatch):
-+    def test_linux_platforms_manylinux2010(self, is_x86, monkeypatch):
-         monkeypatch.setattr(
-             tags, "_is_manylinux_compatible", lambda name, _: name == 
"manylinux2010"
-         )
--        if platform.system() != "Linux":
-+        if platform.system() != "Linux" or not is_x86:
-             monkeypatch.setattr(distutils.util, "get_platform", lambda: 
"linux_x86_64")
-+            monkeypatch.setattr(platform, "machine", lambda: "x86_64")
-         platforms = list(tags._linux_platforms(is_32bit=False))
--        expected = ["manylinux2010_x86_64", "manylinux1_x86_64", "linux_x86_64"]
-+        arch = platform.machine()
-+        expected = ["manylinux2010_" + arch, "manylinux1_" + arch, "linux_" + arch]
-         assert platforms == expected
- 
--    def test_linux_platforms_manylinux2014(self, monkeypatch):
-+    def test_linux_platforms_manylinux2014(self, is_x86, monkeypatch):
-         monkeypatch.setattr(
-             tags, "_is_manylinux_compatible", lambda name, _: name == 
"manylinux2014"
-         )
--        if platform.system() != "Linux":
-+        if platform.system() != "Linux" or not is_x86:
-             monkeypatch.setattr(distutils.util, "get_platform", lambda: 
"linux_x86_64")
-+            monkeypatch.setattr(platform, "machine", lambda: "x86_64")
-         platforms = list(tags._linux_platforms(is_32bit=False))
-+        arch = platform.machine()
-         expected = [
--            "manylinux2014_x86_64",
--            "manylinux2010_x86_64",
--            "manylinux1_x86_64",
--            "linux_x86_64",
-+            "manylinux2014_" + arch,
-+            "manylinux2010_" + arch,
-+            "manylinux1_" + arch,
-+            "linux_" + arch,
-         ]
-         assert platforms == expected
- 
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1aa59fab2c..b77a897108 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17748,17 +17748,14 @@ several utilities, as well as an API for building localization tools.")
 (define-public python-packaging
   (package
     (name "python-packaging")
-    (version "20.0")
+    (version "20.9")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "packaging" version))
-        ;; XXX: The URL in the patch file is wrong, it should be
-        ;; <https://github.com/pypa/packaging/pull/256>.
-        (patches (search-patches "python-packaging-test-arch.patch"))
         (sha256
          (base32
-          "1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy"))))
+          "1rgadxvzvhac6wqa512bfj313ww6q3n18i9glzf67j0d6b0plcjv"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
-- 
2.31.1


[-- Attachment #45: 0012-python-oslo.utils-upgrade-to-latest-4.8.0.patch --]
[-- Type: text/x-patch, Size: 1086 bytes --]

From ae25e91ca55511dcd21ff9f6f746a643349f5e78 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Mon, 3 May 2021 00:04:04 -0700
Subject: [PATCH 12/55] python-oslo.utils: upgrade to latest (4.8.0)

---
 gnu/packages/openstack.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index d986298dd2..a3f6728c6d 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -734,14 +734,14 @@ for debugging, and better support for mocking results.")
 (define-public python-oslo.utils
   (package
     (name "python-oslo.utils")
-    (version "3.36.2")
+    (version "4.8.0")
     (source
       (origin
         (method url-fetch)
         (uri (pypi-uri "oslo.utils" version))
         (sha256
           (base32
-           "1ipjcgg9z697wmibhcbg5lqpk5gafakdx4qkff3w255zr0mvw04r"))))
+           "1nry07c6ri1lzg4jlak9q9j38kvd98cjbrsvnwlj42gdkch12c8r"))))
     (build-system python-build-system)
     (arguments
       `(#:tests? #f))
-- 
2.31.1


[-- Attachment #46: 0011-python-oslo.log-bring-to-working-order-upgrade-to-4..patch --]
[-- Type: text/x-patch, Size: 2643 bytes --]

From 2d7dbc55d156fdca4ab98d1c924f929a594c9339 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 23:39:19 -0700
Subject: [PATCH 11/55] python-oslo.log: bring to working order, upgrade to
 4.4.0

---
 gnu/packages/openstack.scm | 36 +++++++++++++++++++++++++++++++++---
 1 file changed, 33 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 45f1621f47..d986298dd2 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -506,17 +506,43 @@ internationalization (i18n) features, especially translation for text strings
 in an application or library.")
     (license asl2.0)))
 
+(define python-oslo.log-requirements-patch
+  (plain-file "python-oslo.log-requirements.patch"
+"diff --git a/test-requirements.txt b/test-requirements.txt
+index ac16453..5eda8f4 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -2,7 +2,7 @@
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+ 
+-hacking>=2.0.0,<2.1.0 # Apache-2.0
++hacking>=2.0.0 # Apache-2.0
+ 
+ stestr>=2.0.0 # Apache-2.0
+ testtools>=2.3.0 # MIT
+@@ -11,6 +11,6 @@ oslotest>=3.3.0 # Apache-2.0
+ coverage>=4.5.1 # Apache-2.0
+ 
+ # Bandit security code scanner
+-bandit>=1.6.0,<1.7.0 # Apache-2.0
++bandit>=1.6.0 # Apache-2.0
+ 
+ fixtures>=3.0.0 # Apache-2.0/BSD
+"))
+
 (define-public python-oslo.log
   (package
   (name "python-oslo.log")
-  (version "3.36.0")
+  (version "4.4.0")
   (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "oslo.log" version))
       (sha256
         (base32
-          "0h7hplf1h8k24v75m3mq1jlrl74x5ynyr4hwgffsg5campxnza4x"))))
+          "0j24g2sirpgbw7dnrkxb78j687byc8c40mrvhhbqx7ydk4qbx0q8"))
+      (patches (list python-oslo.log-requirements-patch))))
   (build-system python-build-system)
   (propagated-inputs
    `(("python-dateutil" ,python-dateutil)
@@ -531,8 +557,12 @@ in an application or library.")
      ("python-pyinotify" ,python-pyinotify)
      ("python-six" ,python-six)))
   (native-inputs
-    `(("python-mock" ,python-mock)
+    `(("python-bandit" ,python-bandit)
+      ("python-coverage" ,python-coverage)
+      ("python-hacking" ,python-hacking)
+      ("python-mock" ,python-mock)
       ("python-oslotest" ,python-oslotest)
+      ("python-stestr" ,python-stestr)
       ("python-subunit" ,python-subunit)
       ("python-testrepository" ,python-testrepository)
       ("python-testtools" ,python-testtools)))
-- 
2.31.1


[-- Attachment #47: 0010-python-pbr-upgrade-to-latest-5.6.0.patch --]
[-- Type: text/x-patch, Size: 955 bytes --]

From 8258a75fe217ed8c1d37cc3860ba95bb07ca43ed Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 23:29:55 -0700
Subject: [PATCH 10/55] python-pbr: upgrade to latest (5.6.0)

---
 gnu/packages/python-xyz.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 13f8586e87..1aa59fab2c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2992,6 +2992,14 @@ code introspection, and logging.")
   (package
     (inherit python-pbr-minimal)
     (name "python-pbr")
+    (version "5.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pbr" version))
+       (sha256
+        (base32
+         "1p8hhyrvbax131w7sjpjgpyk8z4w4w009702n4jncybvg7kh7ps2"))))
     (arguments
      `(#:tests? #f)) ;; Most tests seem to use the Internet.
     (propagated-inputs
-- 
2.31.1


[-- Attachment #48: 0009-Bring-python-oslo.serialization-package-back-in-orde.patch --]
[-- Type: text/x-patch, Size: 2970 bytes --]

From 3f2ff57857c27969b8b95e6cc89a03ddd25701d3 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 22:59:10 -0700
Subject: [PATCH 09/55] Bring python-oslo.serialization package back in order

Upgrade minor version to 2.29.3 from 2.24.0
---
 gnu/packages/openstack.scm | 33 ++++++++++++++++++++++++++++++---
 1 file changed, 30 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index bde6b22831..45f1621f47 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -544,17 +544,35 @@ configuration for all OpenStack projects.  It also provides custom formatters,
 handlers and support for context specific logging (like resource id’s etc).")
   (license asl2.0)))
 
+(define python-oslo.serialization-deps-patch
+  (plain-file "python-oslo.serialization-deps.patch"
+"diff --git a/test-requirements.txt b/test-requirements.txt
+index 72ae4ff..4b76d25 100644
+--- a/test-requirements.txt
++++ b/test-requirements.txt
+@@ -1,7 +1,7 @@
+ # The order of packages is significant, because pip processes them in the order
+ # of appearance. Changing the order has an impact on the overall integration
+ # process, which may cause wedges in the gate later.
+-hacking>=1.1.0,<1.2.0 # Apache-2.0
++hacking>=1.1.0 # Apache-2.0
+ ipaddress>=1.0.17;python_version<'3.3' # PSF
+ mock>=2.0.0 # BSD
+ netaddr>=0.7.18 # BSD
+"))
+
 (define-public python-oslo.serialization
   (package
     (name "python-oslo.serialization")
-    (version "2.24.0")
+    (version "2.29.3")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "oslo.serialization" version))
        (sha256
         (base32
-         "08bxkp98c617y58x630xq44iiffm7f0f3cwh6zbnlkgq0zgh7jk1"))))
+         "0sf2lgfi2kgcz5xif6lphipcphzfnygsyxfc226qjfnn788ql72m"))
+       (patches (list python-oslo.serialization-deps-patch))))
     (build-system python-build-system)
     (propagated-inputs
       `(("python-msgpack" ,python-msgpack)
@@ -565,9 +583,18 @@ handlers and support for context specific logging (like resource id’s etc).")
     (native-inputs
       `(("python-pbr" ,python-pbr)
         ;; Tests.
+        ("python-bandit" ,python-bandit)
+        ("python-coverage" ,python-coverage)
+        ("python-flake8" ,python-flake8)
+        ("python-hacking" ,python-hacking)
+        ("python-ipaddress" ,python-ipaddress)
         ("python-mock" ,python-mock)
+        ("python-openstackdocstheme" ,python-openstackdocstheme)
         ("python-oslo.i18n" ,python-oslo.i18n)
-        ("python-oslotest" ,python-oslotest)))
+        ("python-oslotest" ,python-oslotest)
+        ("python-reno" ,python-reno)
+        ("python-sphinx" ,python-sphinx)
+        ("python-stestr" ,python-stestr)))
     (home-page "https://launchpad.net/oslo")
     (synopsis "Oslo serialization library")
     (description
-- 
2.31.1


[-- Attachment #49: 0008-Upgrade-python-hacking-to-4.1.0-patch-diamond-depend.patch --]
[-- Type: text/x-patch, Size: 1757 bytes --]

From fe7d5f2a86b37376abe82f904c34f382122ba77b Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 22:47:35 -0700
Subject: [PATCH 08/55] Upgrade python-hacking to 4.1.0; patch diamond
 dependency on flake8

---
 gnu/packages/openstack.scm | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 75eab66544..bde6b22831 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -39,6 +39,7 @@
   #:use-module (gnu packages xml)
   #:use-module (guix build-system python)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module ((guix licenses)
                 #:select (asl2.0))
   #:use-module (guix packages)
@@ -137,6 +138,17 @@ strategies that help you collect your technical debt 
in a non-destructive
 manner.")
     (license asl2.0)))
 
+(define python-hacking-patch-requirements
+  (plain-file "python-hacking-patch-requirements.patch"
+"diff --git a/requirements.txt b/requirements.txt
+index 8367022..1442b66 100644
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -1 +1 @@
+-flake8<3.9.0,>=3.8.0 # MIT
++flake8>=3.8.0 # MIT
+"))
+
 (define-public python-hacking
   (package
     (name "python-hacking")
@@ -147,7 +159,8 @@ manner.")
        (uri (pypi-uri "hacking" version))
        (sha256
         (base32
-         "0fg19rlcky3n1y1ri61xyjp7534yzf8r102z9dw3zqg93f4kj20m"))))
+         "0fg19rlcky3n1y1ri61xyjp7534yzf8r102z9dw3zqg93f4kj20m"))
+       (patches (list python-hacking-patch-requirements))))
     (build-system python-build-system)
      (propagated-inputs
      `(("python-flake8" ,python-flake8-3.8)))
-- 
2.31.1


[-- Attachment #50: 0007-Disable-tests-on-python-oslo.utils-missing-deps.patch --]
[-- Type: text/x-patch, Size: 874 bytes --]

From 2e522bdd9855d4f3f9c15261966e7c87b255aac1 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 14:52:58 -0700
Subject: [PATCH 07/55] Disable tests on python-oslo.utils: missing deps

---
 gnu/packages/openstack.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 58c98c4cea..75eab66544 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -673,6 +673,8 @@ for debugging, and better support for mocking results.")
           (base32
            "1ipjcgg9z697wmibhcbg5lqpk5gafakdx4qkff3w255zr0mvw04r"))))
     (build-system python-build-system)
+    (arguments
+      `(#:tests? #f))
     (propagated-inputs
       `(("python-debtcollector" ,python-debtcollector)
         ("python-oslo.i18n" ,python-oslo.i18n)
-- 
2.31.1


[-- Attachment #51: 0006-Disable-python-oslo.config-failing-tests.patch --]
[-- Type: text/x-patch, Size: 834 bytes --]

From 9dd8cbfd279aca9bc9a5507140e8013f40302a4f Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 14:42:31 -0700
Subject: [PATCH 06/55] Disable python-oslo.config failing tests

---
 gnu/packages/openstack.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index b38ff888d0..58c98c4cea 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -389,6 +389,8 @@ common features used in Tempest.")
         (base32
          "0ymf7jxbq29fifyvkwhfiys1qvljqfxdw8ajwzwaf3yiqidgpxqd"))))
     (build-system python-build-system)
+    (arguments
+      `(#:tests? #f))
     (propagated-inputs
      `(("python-debtcollector" ,python-debtcollector)
        ("python-netaddr" ,python-netaddr)
-- 
2.31.1


[-- Attachment #52: 0005-Disable-python-oslo.i18n-tests-due-to-circular-depen.patch --]
[-- Type: text/x-patch, Size: 1445 bytes --]

From fc9cec3da364feb572d13c2baa821549500aa252 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 14:31:52 -0700
Subject: [PATCH 05/55] Disable python-oslo.i18n tests due to circular
 dependency

---
 gnu/packages/openstack.scm | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 09e20ee3d5..b38ff888d0 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -466,6 +466,9 @@ pipeline and used by various modules such as logging.")
         (base32
          "0kjcdw4bk3mi4vqmqwhhq053kxbbbj05si6nwxd1pzx33z067ky3"))))
     (build-system python-build-system)
+    (arguments 
+      ; Disable tests, due to the cicrular dependency on oslo.config.
+      `(#:tests? #f))
     (propagated-inputs
      `(("python-babel" ,python-babel)
        ("python-six" ,python-six)))
@@ -475,7 +478,8 @@ pipeline and used by various modules such as logging.")
        ("python-bandit" ,python-bandit)
        ("python-mock" ,python-mock)
        ("python-mox3" ,python-mox3)
-       ("python-oslo.config" ,python-oslo.config)
+       ; This has a circular dependency on oslo.config.
+       ; ("python-oslo.config" ,python-oslo.config)
        ("python-oslotest" ,python-oslotest)
        ("python-reno" ,python-reno)
        ("python-testscenarios" ,python-testscenarios)))
-- 
2.31.1


[-- Attachment #53: 0004-python-oslo.i18n-requires-python-oslo.config-for-tes.patch --]
[-- Type: text/x-patch, Size: 888 bytes --]

From 2cb1f6ec4838bf00d6a944f4bd2eeac4c7b39678 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 14:09:29 -0700
Subject: [PATCH 04/55] python-oslo.i18n requires python-oslo.config for
 testing

---
 gnu/packages/openstack.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index fe427b6cbe..09e20ee3d5 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -475,6 +475,7 @@ pipeline and used by various modules such as logging.")
        ("python-bandit" ,python-bandit)
        ("python-mock" ,python-mock)
        ("python-mox3" ,python-mox3)
+       ("python-oslo.config" ,python-oslo.config)
        ("python-oslotest" ,python-oslotest)
        ("python-reno" ,python-reno)
        ("python-testscenarios" ,python-testscenarios)))
-- 
2.31.1


[-- Attachment #54: 0003-python-oslo.il8n-requires-python-reno-for-testing.patch --]
[-- Type: text/x-patch, Size: 892 bytes --]

From 97b612e0552ea7861a8ec33cac79c568f5585b8b Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 14:02:47 -0700
Subject: [PATCH 03/55] python-oslo.il8n requires python-reno for testing

---
 gnu/packages/openstack.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index daf3c5a61c..fe427b6cbe 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -476,6 +476,7 @@ pipeline and used by various modules such as logging.")
        ("python-mock" ,python-mock)
        ("python-mox3" ,python-mox3)
        ("python-oslotest" ,python-oslotest)
+       ("python-reno" ,python-reno)
        ("python-testscenarios" ,python-testscenarios)))
     (home-page "https://launchpad.net/oslo")
     (synopsis "Oslo internationalization (i18n) library")
-- 
2.31.1


[-- Attachment #55: 0002-python-oslo.i18n-requires-python-bandit-for-testing.patch --]
[-- Type: text/x-patch, Size: 808 bytes --]

From 58a334309cdd81385d77ef77cb73e6b4096cacc2 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 13:57:42 -0700
Subject: [PATCH 02/55] python-oslo.i18n requires python-bandit for testing

---
 gnu/packages/openstack.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 6e36d298f5..daf3c5a61c 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -472,6 +472,7 @@ pipeline and used by various modules such as logging.")
     (native-inputs
      `(("python-pbr" ,python-pbr)
        ;; Tests
+       ("python-bandit" ,python-bandit)
        ("python-mock" ,python-mock)
        ("python-mox3" ,python-mox3)
        ("python-oslotest" ,python-oslotest)
-- 
2.31.1


[-- Attachment #56: 0001-python-pywin32-package-stub.patch --]
[-- Type: text/x-patch, Size: 1655 bytes --]

From db803f7da375715d63c2294b72ff6f19fc9c3f88 Mon Sep 17 00:00:00 2001
From: Ryan Sundberg <ryan@arctype.co>
Date: Sun, 2 May 2021 12:36:07 -0700
Subject: [PATCH 01/55] python-pywin32 package stub

---
 gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6a6d7f4b26..13f8586e87 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -25962,3 +25962,28 @@ is the cythonized version of @code{fractions.Fraction}.")
      "@code{pathvalidate} is a Python library to sanitize/validate strings
 representing paths or filenames.")
     (license license:expat)))
+
+(define-public python-pywin32-stub
+  (package
+    (name "python-pywin32")
+    (version "b300")
+    (source
+      (origin
+        (method git-fetch)
+        (uri 
+          (git-reference
+            (url "https://github.com/mhammond/pywin32.git")
+            (commit version)))
+        (sha256
+          (base32
+            "1pyjg3q1117arzz6ncq34r39c694v2wcnmbqw68wczxlfp431d46"))))
+    (build-system trivial-build-system)
+    (arguments
+      `(#:builder (begin (mkdir %output) #t)))
+    (home-page
+      "https://github.com/mhammond/pywin32")
+    (synopsis
+      "Python for Win32 (pywin32) extensions, which provides access to many of the Windows APIs from Python.")
+    (description
+      "Python for Win32 (pywin32) extensions, which provides access to many of the Windows APIs from Python. This is a stub to fix guix import pypy for this package.")
+    (license #f)))
-- 
2.31.1


^ permalink raw reply related	[relevance 86%]

* [bug#48922] [PATCH 06/10] gnu: python2-mechanicalsoup: Remove package.
  @ 2021-06-08 14:37 70% ` zimoun
  0 siblings, 0 replies; 200+ results
From: zimoun @ 2021-06-08 14:37 UTC (permalink / raw)
  To: 48922; +Cc: maxim.cournoyer, zimoun

* gnu/packages/python-web.scm (python2-mechanicalsoup): Delete.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 81cd4daea2..86a732fa1b 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -826,9 +826,6 @@ websites.  It automatically stores and sends cookies, follows redirects, and can
 follow links and submit forms.  It doesn’t do JavaScript.")
     (license license:expat)))
 
-(define-public python2-mechanicalsoup
-  (package-with-python2 python-mechanicalsoup))
-
 (define-public python-hyperframe
   (package
     (name "python-hyperframe")
-- 
2.30.1





^ permalink raw reply related	[relevance 70%]

* [bug#48954] [PATCH] gnu: python-lint-cfn: Fix non-reproducible test suite
@ 2021-06-11  4:12 71% Ryan Sundberg via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: Ryan Sundberg via Guix-patches via @ 2021-06-11  4:12 UTC (permalink / raw)
  To: 48954; +Cc: Ryan Sundberg

Some tests for python-cfn-lint are dependent on the date the tests are run,
which can cause the tests to spontaneously start failing. See
https://github.com/aws-cloudformation/cfn-lint/issues/1705 for the upstream
discssion. This patch removes the unstable test cases.

* gnu/packages/python-web.scm: Patch python-cfn-lint tests

Signed-off-by: Ryan Sundberg <ryan@arctype.co>
---
 ...n-lint-disable-nonreproducible-tests.patch | 42 +++++++++++++++++++
 gnu/packages/python-web.scm                   |  6 ++-
 2 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/python-cfn-lint-disable-nonreproducible-tests.patch

diff --git a/gnu/packages/patches/python-cfn-lint-disable-nonreproducible-tests.patch b/gnu/packages/patches/python-cfn-lint-disable-nonreproducible-tests.patch
new file mode 100644
index 0000000000..e9fb1bda45
--- /dev/null
+++ b/gnu/packages/patches/python-cfn-lint-disable-nonreproducible-tests.patch
@@ -0,0 +1,42 @@
+diff --git a/test/integration/test_quickstart_templates.py b/test/integration/test_quickstart_templates.py
+index 41058b29..d859b6d1 100644
+--- a/test/integration/test_quickstart_templates.py
++++ b/test/integration/test_quickstart_templates.py
+@@ -59,16 +59,6 @@ class TestQuickStartTemplates(BaseCliTestCase):
+             'filename': 'test/fixtures/templates/quickstart/openshift_master.yaml',
+             'results_filename': 'test/fixtures/results/quickstart/openshift_master.json',
+             'exit_code': 8,
+-        },
+-        {
+-            'filename': 'test/fixtures/templates/quickstart/openshift.yaml',
+-            'results_filename': 'test/fixtures/results/quickstart/openshift.json',
+-            'exit_code': 14,
+-        },
+-        {
+-            'filename': 'test/fixtures/templates/quickstart/cis_benchmark.yaml',
+-            'results_filename': 'test/fixtures/results/quickstart/cis_benchmark.json',
+-            'exit_code': 6,
+         }
+     ]
+ 
+diff --git a/test/integration/test_quickstart_templates_non_strict.py b/test/integration/test_quickstart_templates_non_strict.py
+index 7372fb0b..85637c91 100644
+--- a/test/integration/test_quickstart_templates_non_strict.py
++++ b/test/integration/test_quickstart_templates_non_strict.py
+@@ -19,16 +19,6 @@ class TestQuickStartTemplates(BaseCliTestCase):
+             'filename': 'test/fixtures/templates/quickstart/nist_application.yaml',
+             'results_filename': 'test/fixtures/results/quickstart/non_strict/nist_application.json',
+             'exit_code': 12,
+-        },
+-        {
+-            'filename': 'test/fixtures/templates/quickstart/openshift.yaml',
+-            'results_filename': 'test/fixtures/results/quickstart/non_strict/openshift.json',
+-            'exit_code': 12,
+-        },
+-        {
+-            'filename': 'test/fixtures/templates/quickstart/cis_benchmark.yaml',
+-            'results_filename': 'test/fixtures/results/quickstart/non_strict/cis_benchmark.json',
+-            'exit_code': 4,
+         }
+     ]
+ 
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1d65b2b0a8..9c05052a7d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -475,7 +475,11 @@ emit information from within their applications to the AWS X-Ray service.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0nqs0fmj3hd7pnd9hkb4z57jvi2iv82hh6n3xxba6i6p8zgx75q4"))))
+                "0nqs0fmj3hd7pnd9hkb4z57jvi2iv82hh6n3xxba6i6p8zgx75q4"))
+              ;; Some test cases for this program are dependent on the date the
+              ;; tests are run. Disable those tests.
+              ;; See https://github.com/aws-cloudformation/cfn-lint/issues/1705
+              (patches (search-patches "python-cfn-lint-disable-nonreproducible-tests.patch"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
-- 
2.31.1





^ permalink raw reply related	[relevance 71%]

* [bug#49123] [PATCH 13/24] gnu: python-socks: Update to 1.2.4.
                     ` (2 preceding siblings ...)
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 11/24] gnu: python-h11: Update to 0.12.0 slg via Guix-patches via
@ 2021-06-20  1:07 70% ` slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 14/24] gnu: python-aiohttp-socks: Update to 0.6.0 slg via Guix-patches via
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* 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(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 000603d332..cf4bdc2dab 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6023,14 +6023,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.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49123] [PATCH 09/24] gnu: python-hyperframe: Update to 6.0.1.
  @ 2021-06-20  1:07 70% ` slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 10/24] gnu: python-h2: Update to 4.0.0 slg via Guix-patches via
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* 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(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 86a732fa1b..1a391a5060 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -829,13 +829,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.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49123] [PATCH 14/24] gnu: python-aiohttp-socks: Update to 0.6.0.
                     ` (3 preceding siblings ...)
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 13/24] gnu: python-socks: Update to 1.2.4 slg via Guix-patches via
@ 2021-06-20  1:07 70% ` slg via Guix-patches via
  2021-06-20  1:07 69% ` [bug#49123] [PATCH 15/24] gnu: Add python-aioresponses slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 16/24] gnu: python-hpack: Update to 4.0.0 slg via Guix-patches via
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* 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(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index cf4bdc2dab..d4a959aacf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -238,14 +238,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.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49123] [PATCH 15/24] gnu: Add python-aioresponses.
                     ` (4 preceding siblings ...)
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 14/24] gnu: python-aiohttp-socks: Update to 0.6.0 slg via Guix-patches via
@ 2021-06-20  1:07 69% ` slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 16/24] gnu: python-hpack: Update to 4.0.0 slg via Guix-patches via
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

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

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d4a959aacf..3a01a8c33c 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -6054,3 +6054,31 @@ your code non-blocking and speedy.")
      "Socks is a library providing core proxy (SOCKS4, SOCKS5, HTTP tunneling)
  functionality.")
     (license license:asl2.0)))
+
+(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
+     `(#:tests? #f)) ;; Tests make http requests
+    (propagated-inputs
+     `(("python-aiohttp" ,python-aiohttp)))
+    (native-inputs
+     `(("python-pbr" ,python-pbr)))
+    (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:x11)))
-- 
2.32.0





^ permalink raw reply related	[relevance 69%]

* [bug#49123] [PATCH 10/24] gnu: python-h2: Update to 4.0.0.
    2021-06-20  1:07 70% ` [bug#49123] [PATCH 09/24] gnu: python-hyperframe: Update to 6.0.1 slg via Guix-patches via
@ 2021-06-20  1:07 70% ` slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 11/24] gnu: python-h11: Update to 0.12.0 slg via Guix-patches via
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* gnu/packages/python-web.scm (python-h2): Update to 4.0.0.
* gnu/packages/python-web.scm (python-h2): Update home-page
---
 gnu/packages/python-web.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 1a391a5060..4ef8d71f45 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -919,13 +919,13 @@ and that could be anything you want.")
 (define-public python-h2
   (package
     (name "python-h2")
-    (version "3.2.0")
+    (version "4.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "h2" version))
        (sha256
-        (base32 "051gg30aca26rdxsmr9svwqm06pdz9bv21ch4n0lgi7jsvml2pw7"))))
+        (base32 "0gar809k91d04ky3fqjidfxgbcdnj9hmm09csmz8aynnkl4wfymv"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
@@ -939,7 +939,7 @@ and that could be anything you want.")
     (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





^ permalink raw reply related	[relevance 70%]

* [bug#49123] [PATCH 16/24] gnu: python-hpack: Update to 4.0.0.
                     ` (5 preceding siblings ...)
  2021-06-20  1:07 69% ` [bug#49123] [PATCH 15/24] gnu: Add python-aioresponses slg via Guix-patches via
@ 2021-06-20  1:07 70% ` slg via Guix-patches via
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* gnu/packages/python-web.scm (python-hpack): Update to 4.0.0.
---
 gnu/packages/python-web.scm | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 3a01a8c33c..76f6b85529 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -857,7 +857,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.
@@ -867,7 +867,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
@@ -875,10 +875,7 @@ into HTTP/2 frames.")
          (replace 'check
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (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





^ permalink raw reply related	[relevance 70%]

* [bug#49123] [PATCH 11/24] gnu: python-h11: Update to 0.12.0.
    2021-06-20  1:07 70% ` [bug#49123] [PATCH 09/24] gnu: python-hyperframe: Update to 6.0.1 slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 10/24] gnu: python-h2: Update to 4.0.0 slg via Guix-patches via
@ 2021-06-20  1:07 70% ` slg via Guix-patches via
  2021-06-20  1:07 70% ` [bug#49123] [PATCH 13/24] gnu: python-socks: Update to 1.2.4 slg via Guix-patches via
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 200+ results
From: slg via Guix-patches via @ 2021-06-20  1:07 UTC (permalink / raw)
  To: 49123; +Cc: slg

* 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(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4ef8d71f45..000603d332 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -891,13 +891,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.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49189] [PATCH 9/9] gnu: python2-wsgiproxy2: Remove package.
  @ 2021-06-23 15:52 70% ` zimoun
  0 siblings, 0 replies; 200+ results
From: zimoun @ 2021-06-23 15:52 UTC (permalink / raw)
  To: 49189; +Cc: zimoun

* gnu/packages/python-web.scm (python2-wsgiproxy2): Remove variable.
---
 gnu/packages/python-web.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index d0a4ee9c16..5cddd37d5d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2882,9 +2882,6 @@ It also includes code to sign requests and pass private data,
 and to spawn subprocesses to handle requests.")
     (license license:expat)))
 
-(define-public python2-wsgiproxy2
- (package-with-python2 python-wsgiproxy2))
-
 (define-public python-pastedeploy
   (package
     (name "python-pastedeploy")
-- 
2.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49272] [PATCH 05/10] gnu: python2-terminado: Remove package.
  @ 2021-06-29 13:11 70% ` zimoun
  0 siblings, 0 replies; 200+ results
From: zimoun @ 2021-06-29 13:11 UTC (permalink / raw)
  To: 49272; +Cc: zimoun

* gnu/packages/python-web.scm (python2-terminado): Remove variable.
---
 gnu/packages/python-web.scm | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 5cddd37d5d..656f310dc1 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -1772,17 +1772,7 @@ web framework, either via the basic or digest authentication schemes.")
     (synopsis "Terminals served to term.js using Tornado websockets")
     (description "This package provides a Tornado websocket backend for the
 term.js Javascript terminal emulator library.")
-    (license license:bsd-2)
-    (properties `((python2-variant . ,(delay python2-terminado))))))
-
-(define-public python2-terminado
-  (let ((terminado (package-with-python2 (strip-python2-variant python-terminado))))
-    (package/inherit terminado
-      (propagated-inputs
-       `(("python2-backport-ssl-match-hostname"
-          ,python2-backport-ssl-match-hostname)
-         ("python2-futures" ,python2-futures)
-          ,@(package-propagated-inputs terminado))))))
+    (license license:bsd-2)))
 
 (define-public python-wsgi-intercept
   (package
-- 
2.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#49327] [PATCH core-updates 124/128] gnu: gunicorn: Add 'bash' input for 'wrap-program'.
  @ 2021-07-02 10:13 70%   ` Maxime Devos
  0 siblings, 0 replies; 200+ results
From: Maxime Devos @ 2021-07-02 10:13 UTC (permalink / raw)
  To: 49327; +Cc: Maxime Devos

It is required for cross-compilation.

* gnu/packages/python-web.scm
  (gunicorn)[inputs]: Add 'bash-minimal'.
---
 gnu/packages/python-web.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index b7fc487bb5..902ab6f7fd 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -66,6 +66,7 @@
   #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages bash)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
@@ -4773,6 +4774,8 @@ event loop.  It is implemented in Cython and uses libuv under the hood.")
                    ,(map (lambda (output)
                            (string-append output sitedir))
                          (list python out))))))))))
+    (inputs
+     `(("bash" ,bash-minimal))) ;; for wrap-program
     (native-inputs
      `(("binutils" ,binutils)  ;; for ctypes.util.find_library()
        ("python-aiohttp" ,python-aiohttp)
-- 
2.32.0





^ permalink raw reply related	[relevance 70%]

* [bug#47459] [PATCH] * gnu/packages/web.scm (brython): New variable.
  @ 2021-07-05 19:48 64% ` jgart via Guix-patches via
  0 siblings, 0 replies; 200+ results
From: jgart via Guix-patches via @ 2021-07-05 19:48 UTC (permalink / raw)
  To: 47459; +Cc: jgart, Léo Le Bouter, Ryan Prior, Andrea Pierré,
	LibreMiami

From: LibreMiami <packaging-guix@libremiami.org>

Co-authored-by: Andrea Pierré <a.pierre@zaclys.net>
Co-authored-by: jgart <jgart@dismail.de>
Co-authored-by: Léo Le Bouter <lle-bout@zaclys.net>
Co-authored-by: Ryan Prior <rprior@protonmail.com>
---
 gnu/packages/python-web.scm | 48 +++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index e4d1326fb8..9b692c2ade 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -329,6 +329,54 @@ communicate with each other, and positioned as an asynchronous successor to
 WSGI.  This package includes libraries for implementing ASGI servers.")
     (license license:bsd-3)))
 
+(define-public brython
+  (package
+    (name "brython")
+    (version "3.9.5")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+              (url "https://github.com/brython-dev/brython")
+              (commit version)))
+        (file-name (git-file-name name version))
+        (sha256
+          (base32
+            "0ikxhvgy1zdg8zrdx2bajp1v7r9dhk6v9jan20i05ahvm9s8gfd6"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python" ,python)))
+    (arguments
+     `(#:tests? #f ; tests require npm packages
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Write access is required for minifying javascript files.
+             (for-each make-file-writable
+                (find-files "." "\\.js$"))
+
+             ;; Patch build scripts to reference source directory properly.
+             (substitute* (find-files "scripts" "\\.py$")
+               (("os\\.path\\.dirname\\(os\\.getcwd\\(\\)\\)")
+                (string-append "\"" (getcwd) "\"")))
+
+             (invoke "python3" "scripts/make_dist.py")
+             #t))
+         (replace 'install
+           (lambda args
+             ;; setup.py is within 'setup' subdirectory
+             (with-directory-excursion "setup"
+               (invoke "python3" "setup.py" "sdist")
+               (apply (assoc-ref %standard-phases 'install) args))
+             #t)))))
+    (home-page "http://brython.info")
+    (synopsis "Run python code in a web browser")
+    (description
+"@code{Brython} is a compliant implementation of Python 3 that allows
+writing end-user applications in Python that run in the browser.")
+    (license license:bsd-3)))
+
 (define-public python-css-html-js-minify
   (package
     (name "python-css-html-js-minify")
-- 
2.31.1





^ permalink raw reply related	[relevance 64%]

Results 1-200 of ~600   | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2017-12-16 10:09 54% [bug#29733] Add virtaal (translation app) Mark Meyer
2018-02-15 15:21 70% [bug#30468] [PATCH] gnu: python-elasticsearch: Update to 6.1.1 Pjotr Prins
2018-02-16 15:37 68% [bug#30486] [PATCH] gnu: Add python-boto3 and python2-boto3 Thompson, David
2018-03-20 15:51 57% [bug#30880] Change my copyright name ng0
2018-04-16 21:46     [bug#31121] [PATCH 1/3] gnu: Add python2-urlgrabber Tomáš Čech
2018-04-17 21:38 70% ` Tomáš Čech
2018-04-22 23:04     [bug#31241] [PATCH 01/13] gnu: python-attrs: Update to 17.4.0 Nicolas Goaziou
2018-04-22 23:04 70% ` [bug#31241] [PATCH 02/13] gnu: Add python-async-generator Nicolas Goaziou
2018-04-22 23:04 70% ` [bug#31241] [PATCH 03/13] gnu: Add python-pycares Nicolas Goaziou
2018-04-22 23:04 70% ` [bug#31241] [PATCH 04/13] gnu: Add python-async-timeout Nicolas Goaziou
2018-04-22 23:04 70% ` [bug#31241] [PATCH 09/13] gnu: Add python-aiodns Nicolas Goaziou
2018-04-22 23:04 70% ` [bug#31241] [PATCH 12/13] gnu: Add python-aiohttp Nicolas Goaziou
2018-05-23  8:35 70% [bug#31562] [PATCH 1/5] gnu: Add python2-oauth2client Mathieu Othacehe
2018-05-23  8:35 70% ` [bug#31563] [PATCH 2/5] gnu: Add python-google-api-client Mathieu Othacehe
2018-08-29  4:10     [bug#32565] [PATCH] Add python-falcon Maxim Cournoyer
     [not found]     ` <handler.32565.B.153551583314214.ack@debbugs.gnu.org>
2018-08-29  4:36       ` [bug#32565] [PATCH] Add python-falcon-cors Maxim Cournoyer
2018-08-30 13:29 89%     ` [bug#32565] [PATCHv2] Add python-falcon and python-falcon-cors Maxim Cournoyer
2018-09-02 19:55 89%     ` [bug#32565] [PATCHv3] Add python-falcon, python-falcon-cors Maxim Cournoyer
2018-10-23 19:10     [bug#33131] [PATCH 1/4] gnu: Add python-readlike Tobias Geerinckx-Rice
2018-10-23 19:10 67% ` [bug#33131] [PATCH 3/4] gnu: Add python-mechanicalsoup Tobias Geerinckx-Rice
2018-10-28  9:21     [bug#33185] [PATCH 0/7] Add patchwork package and service Christopher Baines
2018-10-28  9:26 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
2018-10-28  9:26 70%   ` [bug#33185] [PATCH 2/7] gnu: Add python-slimit Christopher Baines
2018-11-04 10:44 70% ` [bug#33185] [PATCH 1/7] gnu: Add python-jsmin Christopher Baines
2018-11-04 10:44 70%   ` [bug#33185] [PATCH 2/7] gnu: Add python-slimit Christopher Baines
2019-01-19 23:49 96% [bug#34139] Update electrum, add python-aiohttp-socks and python-aiorpcx Vagrant Cascadian
2019-01-25 21:20     ` Ludovic Courtès
2019-01-31 22:35 95%   ` Vagrant Cascadian
2019-01-26  0:25     [bug#34204] [PATCH 0/3] Mkdocs and its dependencies Mathieu Lirzin
2019-01-26  0:28 70% ` [bug#34204] [PATCH 1/3] gnu: python-tornado: Update to 5.1.1 Mathieu Lirzin
2019-01-26  0:28 70%   ` [bug#34204] [PATCH 2/3] gnu: Add Python LiveReload Mathieu Lirzin
2019-02-17 20:57     [bug#34515] [PATCH 01/13] gnu: Add python-humanize Leo Famulari
2019-02-17 20:57 69% ` [bug#34515] [PATCH 03/13] gnu: Add python-hyperlink Leo Famulari
2019-02-17 20:57 70% ` [bug#34515] [PATCH 06/13] gnu: Add python-treq Leo Famulari
2019-02-17 20:57 68% ` [bug#34515] [PATCH 10/13] gnu: Add python-autobahn Leo Famulari
2019-02-18  8:27       ` Ricardo Wurmus
2019-02-19  4:23 86%     ` Leo Famulari
2019-03-14 14:19 57% [bug#34857] gnunet updates (gnunet,gnunet-gtk,gnurl,libextractor) ng0
2019-04-27  9:36     [bug#35446] [PATCH 01/26] gnu: Use 'license:' prefix in (gnu packages web) Brendan Tildesley
2019-04-27  9:36 70% ` [bug#35446] [PATCH 02/26] gnu: Add python-css-parser, python2-css-parser Brendan Tildesley
2019-04-27  9:36 70% ` [bug#35446] [PATCH 14/26] gnu: Add python-html2text, python2-html2text Brendan Tildesley
2019-05-03 16:42     [bug#35446] [PATCH v2 01/24] gnu: calibre: Update to 3.41.3 Brendan Tildesley
2019-05-03 16:42 70% ` [bug#35446] [PATCH v2 07/24] gnu: Add python-html2text, python2-html2text Brendan Tildesley
2019-05-03 16:42 78% ` [bug#35446] [PATCH v2 24/24] Correct email and license info for Brendan Tildesley Brendan Tildesley
2019-05-12 22:09     [bug#35705] [PATCH 0/9] Sphinx 2.0 Marius Bakke
2019-05-12 22:12 39% ` [bug#35705] [PATCH 1/9] gnu: Move Sphinx and friends to (gnu packages sphinx) Marius Bakke
2019-05-28 10:56 70% [bug#35948] [PATCH 1/3] gnu: python-flask: Update to 1.0.3 h.nasajpour
2019-05-28 10:57 70% [bug#35950] [PATCH 2/3] gnu: python-flask-restful: Update to 0.12.1 h.nasajpour
2019-05-28 19:32 89% ` Danny Milosavljevic
2019-05-28 10:57 70% [bug#35949] [PATCH 3/3] gnu: Add python-flask-cors h.nasajpour
2019-05-28 12:56 70% [bug#35957] [PATCH] gnu: python-werkzeug: Update to 0.15.4 h.nasajpour
2019-05-28 19:37 89% ` Danny Milosavljevic
2019-06-13 15:01     [bug#36194] [PATCH 00/10] Add csvkit Pierre Langlois
2019-06-13 15:06 89% ` [bug#36194] [PATCH 01/10] gnu: Add python-slugify Pierre Langlois
2019-06-21 10:42 87%   ` [bug#36194] [PATCH 01/10 v2] " Pierre Langlois
2019-07-11 20:48     [bug#36608] [PATCH] Update docker-compose to 1.24.1 Jacob MacDonald
2019-07-11 20:51 70% ` [bug#36608] [PATCH 2/9] " Jacob MacDonald
2019-07-11 20:51 70% ` [bug#36608] [PATCH 4/9] " Jacob MacDonald
2019-07-12 21:33 89% [bug#36625] [PATCH 1/2] gnu: python-aiorpcx: Update to 0.18.3 Arne Babenhauserheide
2019-07-12 21:33 89% ` [bug#36624] [PATCH 2/2] gnu: python-aiohttp: Update to 3.5.4 Arne Babenhauserheide
2019-07-12 21:41     [bug#36628] Minor fixes for pngcrush and python-aiorpcx Arne Babenhauserheide
2019-07-12 21:41 89% ` [bug#36629] [PATCH 2/2] gnu: python-aiorpcx: capitalize description Arne Babenhauserheide
2019-08-30 14:23     [bug#37234] [PATCH 00/21] MLflow Marius Bakke
2019-08-30 14:25 60% ` [bug#37234] [PATCH 01/21] gnu: Add python-gunicorn Marius Bakke
2019-08-30 14:25 68%   ` [bug#37234] [PATCH 02/21] gnu: Add python-databricks-cli Marius Bakke
2019-08-30 14:25 70%   ` [bug#37234] [PATCH 04/21] gnu: Add python-querystring-parser Marius Bakke
2019-08-30 14:25 70%   ` [bug#37234] [PATCH 05/21] gnu: Add python-minio Marius Bakke
2019-08-30 14:25 70%   ` [bug#37234] [PATCH 11/21] gnu: Add python-jsonpickle Marius Bakke
2019-08-30 14:25 63%   ` [bug#37234] [PATCH 13/21] gnu: Add python-aws-xray-sdk Marius Bakke
2019-08-30 14:25 70%   ` [bug#37234] [PATCH 14/21] gnu: Add python-jsondiff Marius Bakke
2019-08-30 14:25 67%   ` [bug#37234] [PATCH 15/21] gnu: Add python-jose Marius Bakke
2019-08-30 14:25 69%   ` [bug#37234] [PATCH 17/21] gnu: Add python-aws-sam-translator Marius Bakke
2019-08-30 14:25 68%   ` [bug#37234] [PATCH 18/21] gnu: Add python-cfn-lint Marius Bakke
2019-09-27 22:16 70% [bug#37535] [PATCH] gnu: Add python-flask-cors Hamzeh Nasajpour
2019-10-04  6:55     [bug#37613] [PATCH 0/1] gnu: Add python-httpie Tanguy Le Carrour
2019-10-04  6:57 69% ` [bug#37613] [PATCH 1/1] " Tanguy Le Carrour
2019-10-14 11:43 67% ` [bug#37613] [PATCH] " Tanguy Le Carrour
2019-10-04 11:08     [bug#37617] [PATCH 1/6] gnu: Add python-pytest-isort Hartmut Goebel
2019-10-04 11:08 65% ` [bug#37617] [PATCH 2/6] gnu: Add python-tinycss2 Hartmut Goebel
2019-10-04 11:08 69% ` [bug#37617] [PATCH 3/6] gnu: Add python-cssselect2 Hartmut Goebel
2019-10-11 16:34     [bug#37704] [PATCH 0/9] gnu: Add python-poetry Tanguy Le Carrour
2019-10-11 16:41 69% ` [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5 Tanguy Le Carrour
2019-10-14 15:19 69% ` Tanguy Le Carrour
2019-10-28  9:46     [bug#37704] [PATCH 1/9] gnu: python-cleo: Update to 0.6.8 Tanguy Le Carrour
2019-10-28  9:46 70% ` [bug#37704] [PATCH 8/9] gnu: python-cachecontrol: Update to 0.12.5 Tanguy Le Carrour
2019-10-28 14:41     [bug#37704] [PATCH v4 1/9] gnu: python-cleo: Update to 0.6.8 Tanguy Le Carrour
2019-10-28 14:41 70% ` [bug#37704] [PATCH v4 8/9] gnu: python-cachecontrol: Update to 0.12.5 Tanguy Le Carrour
2019-11-17 22:03 81% [bug#38251] [PATCH 1/1] gnu: Add gunicorn Hartmut Goebel
2020-01-05 20:43 65% [bug#38957] [PATCH] gnu: Add python-pywinrm Alexandros Theodotou
2020-01-06  9:22     ` Brett Gilio
2020-01-08 15:02 66%   ` Alexandros Theodotou
2020-01-13 14:41     [bug#39113] [PATCH 1/2] gnu: python-pygments: Update to 2.5.2 Josh Holland
2020-01-13 14:41 70% ` [bug#39114] [PATCH 2/2] gnu: httpie: Update to 2.0.0 Josh Holland
2020-01-14  1:52     [bug#39128] [PATCH] Add offlate Julien Lepiller
2020-01-14  1:57     ` [bug#39128] [PATCH 01/12] gnu: Add python-pyenchant Julien Lepiller
2020-01-14  1:57 64%   ` [bug#39128] [PATCH 04/12] gnu: Add python-translation-finder Julien Lepiller
2020-01-14  1:57 70%   ` [bug#39128] [PATCH 06/12] gnu: Add python-gitlab Julien Lepiller
2020-02-02 19:35 62% [bug#39396] [PATCH] gnu: Add grip Jakub Kądziołka
2020-02-02 22:51 86% ` [bug#39396] [PATCH v2 1/2] gnu: Add python-path-and-address Jakub Kądziołka
2020-02-02 22:51 85% ` [bug#39396] [PATCH v2 2/2] gnu: Add grip Jakub Kądziołka
2020-02-25 19:28 83% [bug#39792] [PATCH] gnu: awscli: Update to 1.18.6 Evan Straw
2020-02-25 19:56 82% ` [bug#39792] [PATCH v2] " Evan Straw
2020-03-08 14:10     [bug#39777] [PATCH V2 01/10] gnu: python-pexpect: Update to 4.8.0 Tanguy Le Carrour
2020-03-08 14:10 70% ` [bug#39777] [PATCH V2 07/10] gnu: python-cachecontrol: Add missing propagated-input Tanguy Le Carrour
2020-03-09  8:18     [bug#39777] [PATCH V3 01/11] gnu: python-pexpect: Update to 4.8.0 Tanguy Le Carrour
2020-03-09  8:18 70% ` [bug#39777] [PATCH V3 07/11] gnu: python-cachecontrol: Add missing propagated-input Tanguy Le Carrour
2020-03-19 17:30     [bug#39777] [PATCH V4 01/10] gnu: python-pexpect: Update to 4.8.0 Tanguy Le Carrour
2020-03-19 17:30 70% ` [bug#39777] [PATCH V4 05/10] gnu: python-cachecontrol: Add missing propagated-input Tanguy Le Carrour
2020-03-21  8:06 70% [bug#40165] Subject: [PATCH] gnu: Add python-flask-markdown pinoaffe
2020-03-21 11:26     [bug#39777] [PATCH V5 01/14] gnu: python-pexpect: Update to 4.8.0 Tanguy Le Carrour
2020-03-21 11:26 70% ` [bug#39777] [PATCH V5 05/14] gnu: python-cachecontrol: Add missing propagated-input Tanguy Le Carrour
2020-03-22 23:36     [bug#38957] [PATCH 1/4] gnu: Add python-kerberos Christopher Baines
2020-03-22 23:36 70% ` [bug#38957] [PATCH 3/4] gnu: Add python-requests_ntlm Christopher Baines
2020-03-27 13:10 91% [bug#40251] [PATCH] Enable tests for python-aiohttp Lars-Dominik Braun
2020-03-28  9:33 70% [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
2020-03-28  9:36 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
2020-11-22 17:52 70% ` [bug#40270] [PATCH 1/2] gnu: Add python-flask-markdown pinoaffe
2020-11-22 19:15 70% ` [bug#40270] [PATCH 2/2] gnu: Add python-flask-session pinoaffe
2020-04-25  7:58 99% [bug#40846] [PATCH] gnu: Bump python-webob and python-pastedeploy versions Holger Peters
2020-05-02 14:44 70% [bug#41027] [PATCH core-updates] gnu: python-s3transfer: Fix build with Python 3.8 Christopher Baines
2020-05-09 15:52 70% [bug#41153] [PATCH] Added python-vf-1 Ron Nazarov
2020-05-10 11:11 70% [bug#41172] [PATCH] gnu: Add python-vf-1 Ron Nazarov
2020-05-11 11:25 60% [bug#41186] change name, remove url comment in darcs Nikita Gillmann
2020-05-12  8:46 89% [bug#41203] [PATCH] gnu: Add python-websockets Edouard Klein
2020-05-12 11:29 89% [bug#41206] [PATCH] gnu: Add python-selenium Edouard Klein
2020-05-13  7:52 89% [bug#41227] [PATCH] gnu: Add python-random-user-agent Edouard Klein
2020-05-16 11:15     [bug#41331] [PATCH] Add python-pyramid Holger Peters
2020-05-16 16:43 70% ` [bug#41331] [PATCH 1/2] gnu: python-webob: Update to 1.8.6 Holger Peters
2020-05-16 16:43 49%   ` [bug#41331] [PATCH 2/2] gnu: Add python-pyramid and dependencies Holger Peters
2020-05-20  7:02     [bug#41416] [PATCH 0/8] gnu: Add python-pyramid Holger Peters
2020-05-20  7:07 70% ` [bug#41416] [PATCH 1/8] gnu: python-webob: Update to 1.8.6 Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 2/8] gnu: Add python-venusian Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 3/8] gnu: Add python-zope-deprecation Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 4/8] gnu: Add python-translationstring Holger Peters
2020-05-20  7:07 69%   ` [bug#41416] [PATCH 5/8] gnu: Add python-plaster Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 6/8] gnu: Add python-plaster-pastedeploy Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 7/8] gnu: Add python-hupper Holger Peters
2020-05-20  7:07 70%   ` [bug#41416] [PATCH 8/8] gnu: Add python-pyramid Holger Peters
2020-05-22 15:06 70% [bug#41459] [PATCH] gnu: Add python-flask-restx Edouard Klein
2020-06-02  9:45 65% ` [bug#41459] (no subject) Edouard Klein
2020-05-29  7:40 70% [bug#41593] [PATCH 1/1] gnu: python-furl: Update to 2.0.0 Hamzeh Nasajpour
2020-06-11 14:59     [bug#41807] [PATCHES] Add python-sanic and dependencies paul
2020-06-11 20:41 79% ` paul
2020-06-17  6:49     ` Lars-Dominik Braun
2020-10-20 10:58 73%   ` paul
2020-11-13  8:59 89%     ` Lars-Dominik Braun
2020-06-11 15:13     [bug#41807] [PATCH 01/26] gnu: Add python-outcome Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 08/26] gnu: Add python-httptools Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 10/26] gnu: Add python-h11 Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 11/26] gnu: Add python-hpack Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 12/26] gnu: Add python-hyperframe Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 13/26] gnu: Add python-h2 Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 14/26] gnu: Add python-hstspreload Giacomo Leidi
2020-06-11 15:13 70% ` [bug#41807] [PATCH 24/26] gnu: Add python-httpx Giacomo Leidi
2020-06-11 15:13 67% ` [bug#41807] [PATCH 26/26] gnu: Add python-sanic Giacomo Leidi
2020-07-09  7:48 70% [bug#42288] [PATCH] gnu: httpie: Update to 2.2.0 Tanguy Le Carrour
2020-07-24  8:16     [bug#42511] [PATCH 0/2] gnu: python-cookiecutter: Update to 1.7.2 Tanguy Le Carrour
2020-07-24  8:17 77% ` [bug#42511] [PATCH 1/2] gnu: python-slugify: Update to 4.0.1 Tanguy Le Carrour
2020-07-25 17:23 74% ` [bug#42511] [PATCH v2 " Tanguy Le Carrour
2020-07-27 20:08 74% ` [bug#42511] [PATCH v3 1/3] " Tanguy Le Carrour
2020-08-05 15:12 68% [bug#42717] [PATCH 1/3] gnu: Add python-hyperframe Vinicius Monego
2020-08-05 15:12 68% ` [bug#42719] [PATCH 2/3] gnu: Add python-hpack Vinicius Monego
2020-08-05 15:12 68% ` [bug#42718] [PATCH 3/3] gnu: Add python-h2 Vinicius Monego
2020-08-16 20:04 70% [bug#42894] [PATCH 1/4] gnu: Add python-h11 Vinicius Monego
2020-08-16 20:07 69% ` [bug#42894] [PATCH 2/4] gnu: Add python-wsproto Vinicius Monego
2020-08-16 20:07 69%   ` [bug#42894] [PATCH 3/4] gnu: Add python-priority Vinicius Monego
2020-08-16 20:07 67%   ` [bug#42894] [PATCH 4/4] gnu: Add python-hypercorn Vinicius Monego
2020-08-25 17:37     [bug#43045] [PATCH 1/7] gnu: Add python-pure-protobuf Leo Prikler
2020-08-25 17:37 70% ` [bug#43045] [PATCH 4/7] gnu: Add python-requests-toolbelt-0.9.1 Leo Prikler
2020-08-25 17:37 70% ` [bug#43045] [PATCH 5/7] gnu: Add python-cloudscraper Leo Prikler
2020-09-06  5:45 67% [bug#43233] [PATCH 01/10] gnu: Add python-httptools Vinicius Monego
2020-09-06  5:46 67% ` [bug#43233] [PATCH 02/10] gnu: Add python-uvloop Vinicius Monego
2020-09-06  5:46 66%   ` [bug#43233] [PATCH 05/10] gnu: Add python-uvicorn Vinicius Monego
2020-09-06  5:46 61%   ` [bug#43233] [PATCH 09/10] gnu: Add python-httpcore Vinicius Monego
2020-09-06  5:46 59%   ` [bug#43233] [PATCH 10/10] gnu: Add python-httpx Vinicius Monego
2020-09-12 14:26     [bug#43354] [PATCH 00/55] Django upgrade Marius Bakke
2020-09-12 14:28 70% ` [bug#43354] [PATCH 01/55] gnu: Add python-asgiref Marius Bakke
2020-09-12 14:28 69%   ` [bug#43354] [PATCH 13/55] gnu: Add python-css-html-js-minify Marius Bakke
2020-09-12 14:28 70%   ` [bug#43354] [PATCH 18/55] gnu: python-webassets: Update to 2.0 Marius Bakke
2020-09-16 15:10 70% [bug#43449] [PATCH] gnu: Add python-requests-ftp Konrad Hinsen
2020-09-17  7:27 70% ` Konrad Hinsen
2020-09-16 19:54 70% [bug#43454] [PATCH 1/2] gnu: Add python-apiron Vinicius Monego
2020-09-16 19:57 70% ` [bug#43454] [PATCH 2/2] gnu: Add python-beren Vinicius Monego
2020-09-22 23:27     [bug#43574] [PATCH 1/3] gnu: python-trio: Update to 0.17.0 Vinicius Monego
2020-09-22 23:30 70% ` [bug#43574] [PATCH 2/3] gnu: python-httpcore: Update to 0.11.0 Vinicius Monego
2020-09-22 23:30 70%   ` [bug#43574] [PATCH 3/3] gnu: python-httpx: Update to 0.15.0 Vinicius Monego
2020-09-27 21:38 70% [bug#43656] [PATCH] gnu: python-httpx: Update to 0.15.4 Vinicius Monego
2020-10-22 14:42 70% [bug#44138] [PATCH] gnu: Add python-imap-tools Reza Alizadeh Majd
2020-10-29  9:47 68% [bug#44302] [PATCH] gnu: httpie: Update to 2.3.0 Tanguy Le Carrour
2020-11-02 16:07 70% [bug#44392] [PATCH] gnu: httpie: Add 'lint-hidden-cve' property Tanguy Le Carrour
2020-12-01  8:58 65% [bug#44984] [PATCH] gnu: electrum: Update to 4.0.5 dftxbs3e
2020-12-01 11:25     [bug#44987] [PATCH 1/7] gnu: Add python-helpdev dftxbs3e
2020-12-01 11:25 70% ` [bug#44987] [PATCH 5/7] gnu: python-aiohttp-socks: Update to 0.5.5 dftxbs3e
2020-12-01 11:55     [bug#44990] [PATCH 1/8] gnu: Add python-qtpy dftxbs3e
2020-12-01 11:55 70% ` [bug#44990] [PATCH 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 dftxbs3e
2020-12-11 19:53     [bug#44990] [PATCH v2 1/8] gnu: Add python-qtpy Léo Le Bouter via Guix-patches via
2020-12-11 19:53 70% ` [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 Léo Le Bouter via Guix-patches via
2020-12-11 20:00     [bug#44990] [PATCH v2 1/8] gnu: Add python-qtpy Léo Le Bouter via Guix-patches via
2020-12-11 20:01 70% ` [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 Léo Le Bouter via Guix-patches via
2020-12-11 20:18     [bug#44990] [PATCH v2 1/8] gnu: Add python-qtpy John Doe
2020-12-11 20:18 70% ` [bug#44990] [PATCH v2 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 John Doe
2020-12-12 20:36 70% [bug#45213] [PATCH] gnu: python-httpx: Update to 0.16.1 Vinicius Monego
2020-12-17 10:10 96% [bug#45289] [PATCHES] Fix python-sanic Lars-Dominik Braun
2020-12-21  8:18     [bug#44990] [PATCH v2 1/8] gnu: Add python-qtpy Efraim Flashner
2020-12-27 22:13     ` [bug#44990] [PATCH v3 0/8] gnu: electrum: Update to 4.0.9 John Doe
2020-12-27 22:13 70%   ` [bug#44990] [PATCH v3 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 John Doe
2020-12-27 22:26     ` [bug#44990] [PATCH v4 0/8] gnu: electrum: Update to 4.0.9 John Doe
2020-12-27 22:26 70%   ` [bug#44990] [PATCH v4 6/8] gnu: python-aiohttp-socks: Update to 0.5.5 John Doe
2020-12-24 15:22 70% [bug#45406] [PATCH] gnu: awscli: updating to version 1.18.203 Vincent Legoll
2021-01-07 13:26 64% [bug#45712] [PATCHES] Improve Python package quality Lars-Dominik Braun
2021-01-08 12:19     ` Ricardo Wurmus
2021-01-08 11:37       ` Hartmut Goebel
2021-01-12  9:37 58%     ` Lars-Dominik Braun
2021-03-01 13:43 53% [bug#46848] [PATCHES] [core-updates] PEP 517 python-build-system Lars-Dominik Braun
2021-05-15  9:31 54% ` Lars-Dominik Braun
2021-03-01 21:44 97% [bug#46862] Giara - A free-software client for Reddit Raghav Gururajan via Guix-patches via
2021-03-09  7:59     ` Efraim Flashner
2021-03-10 13:02 91%   ` [bug#46862] Giara - A free-software client for Reddit (v2) Raghav Gururajan via Guix-patches via
2021-03-04 14:15 88% [bug#46921] [PATCHES] Update python-sanic and dependencies Lars-Dominik Braun
2021-03-10  9:00     [bug#42885] [PATCH 01/27] gnu: python-sip: Update to 5.5.0. Add python-sip-4 Brendan Tildesley
2021-03-10  9:00 70% ` [bug#42885] [PATCH 22/27] gnu: python-html5lib: Add python-chardet input Brendan Tildesley
2021-03-15 15:53     [bug#47165] [PATCH 00/25] some Python 2 removals zimoun
2021-03-15 15:55 70% ` [bug#47165] [PATCH 10/25] gnu: python2-flask-multistatic: Remove package zimoun
2021-03-15 15:55 70%   ` [bug#47165] [PATCH 12/25] gnu: python2-flask: " zimoun
2021-03-15 15:55 70%   ` [bug#47165] [PATCH 13/25] gnu: python2-furl: " zimoun
2021-03-15 15:55     [bug#47165] [PATCH 01/25] gnu: python2-arrow: " zimoun
2021-03-15 15:55 70% ` [bug#47165] [PATCH 06/25] gnu: python2-flask-wtf: " zimoun
2021-03-15 15:55 70% ` [bug#47165] [PATCH 07/25] gnu: python2-fask-babel: " zimoun
2021-03-15 15:55 70% ` [bug#47165] [PATCH 08/25] gnu: python2-flask-htmlmin: " zimoun
2021-03-15 15:55 70% ` [bug#47165] [PATCH 09/25] gnu: python2-flask-login: " zimoun
2021-03-15 15:56     [bug#47165] [PATCH 20/25] gnu: python2-sh: " zimoun
2021-03-15 15:56 70% ` [bug#47165] [PATCH 25/25] gnu: python2-wsgiproxy2: " zimoun
2021-03-29  4:23     [bug#47459] [PATCH] gnu: Add brython jgart via Guix-patches via
2021-07-05 19:48 64% ` [bug#47459] [PATCH] * gnu/packages/web.scm (brython): New variable jgart via Guix-patches via
2021-04-12 10:22 86% [bug#47722] [PATCH] gnu: python-mechanicalsoup: Update to 1.0.0 Ekaitz Zarraga
2021-04-18  6:44     [bug#47864] [PATCH 0/3] gnu: Add flask-combo-jsonapi david larsson
2021-04-18  6:57 66% ` [bug#47864] [PATCH 3/3] " david larsson
2021-04-20  5:22     [bug#47906] [PATCH 01/22] gnu: Add python-spyder-kernels Vinicius Monego
2021-04-20  5:22 65% ` [bug#47906] [PATCH 09/22] gnu: Add python-tinycss Vinicius Monego
2021-04-20 17:28 57% [bug#47910] [PATCH] gnu: python-wtforms: Update to 2.3.3 jgart via Guix-patches via
2021-04-24 20:47 66% [bug#48006] [PATCH] gnu: Add python-stripe jgart via Guix-patches via
2021-05-06 15:09 94% [bug#48256] [PATCH] gnu: python-pycurl: Migrate uri from bintray Greg Hogan
2021-05-06 19:17 70% [bug#48263] [PATCH 1/2] gnu: python-hypercorn: Rename to hypercorn Vinicius Monego
2021-05-06 19:20 68% ` [bug#48263] [PATCH 2/2] gnu: hypercorn: Update to 0.11.2 Vinicius Monego
2021-05-19  2:19 74% [bug#48514] [PATCH] gnu: Add python-domain-connect-dyndns Mekeor Melire
2021-06-06 19:26 86% [bug#48887] Lot of python package patches Ryan Sundberg via Guix-patches via
2021-06-08 14:37     [bug#48922] [PATCH 01/10] gnu: python2-bigfloat: Remove package zimoun
2021-06-08 14:37 70% ` [bug#48922] [PATCH 06/10] gnu: python2-mechanicalsoup: " zimoun
2021-06-11  4:12 71% [bug#48954] [PATCH] gnu: python-lint-cfn: Fix non-reproducible test suite Ryan Sundberg via Guix-patches via
2021-06-20  1:07     [bug#49123] [PATCH 01/24] gnu: Add pyotherside slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 09/24] gnu: python-hyperframe: Update to 6.0.1 slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 10/24] gnu: python-h2: Update to 4.0.0 slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 11/24] gnu: python-h11: Update to 0.12.0 slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 13/24] gnu: python-socks: Update to 1.2.4 slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 14/24] gnu: python-aiohttp-socks: Update to 0.6.0 slg via Guix-patches via
2021-06-20  1:07 69% ` [bug#49123] [PATCH 15/24] gnu: Add python-aioresponses slg via Guix-patches via
2021-06-20  1:07 70% ` [bug#49123] [PATCH 16/24] gnu: python-hpack: Update to 4.0.0 slg via Guix-patches via
2021-06-23 15:52     [bug#49189] [PATCH 1/9] gnu: python2-larch: Remove package zimoun
2021-06-23 15:52 70% ` [bug#49189] [PATCH 9/9] gnu: python2-wsgiproxy2: " zimoun
2021-06-29 13:11     [bug#49272] [PATCH 01/10] gnu: python2-nbconvert: " zimoun
2021-06-29 13:11 70% ` [bug#49272] [PATCH 05/10] gnu: python2-terminado: " zimoun
2021-07-02 10:04     [bug#49327] [PATCH core-updates 000/128] Add 'bash' input for 'wrap-program' Maxime Devos
2021-07-02 10:12     ` [bug#49327] [PATCH core-updates 092/128] gnu: lightdm-gtk-wreeter: " Maxime Devos
2021-07-02 10:13 70%   ` [bug#49327] [PATCH core-updates 124/128] gnu: gunicorn: " Maxime Devos

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