summary refs log tree commit diff
path: root/gnu/packages/python-web.scm
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-07-13 23:34:58 +0200
committerMarius Bakke <marius@gnu.org>2022-07-13 23:34:58 +0200
commit4442a5db773f79e05c37e014c63b4298e7de666b (patch)
tree880a6fdce7b288eaa506828b9b500191ca60ce24 /gnu/packages/python-web.scm
parent5b48591176a08bddfd0147bd854785fb4f6a62ba (diff)
parentb160795a0b65d67ff5d64447f1b97c2f009517a0 (diff)
downloadguix-4442a5db773f79e05c37e014c63b4298e7de666b.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/python-web.scm')
-rw-r--r--gnu/packages/python-web.scm132
1 files changed, 89 insertions, 43 deletions
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 4f67131a2b..aa30e42c58 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -51,6 +51,8 @@
 ;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
 ;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
 ;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
+;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
+;;; Copyright © 2022 Luis Henrique Gomes Higino <luishenriquegh2701@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2071,9 +2073,10 @@ connection to each user.")
      '(#:phases
        (modify-phases %standard-phases
          (replace 'check
-           (lambda _
-             (invoke "python" "-m" "tornado.test.runtests")
-             #t)))))
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (setenv "ASYNC_TEST_TIMEOUT" "25")   ; Like in tox.ini.
+               (invoke "python" "-m" "tornado.test.runtests")))))))
     (native-inputs
      (list python-certifi))
     (home-page "https://www.tornadoweb.org/")
@@ -5187,50 +5190,46 @@ 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
-       (list python-docopt
-             python-flask
-             python-markdown
-             python-path-and-address
-             python-pygments
-             python-requests))
-      (native-inputs
-       (list python-pytest python-responses))
-      (arguments
-       `(#:phases
-         (modify-phases %standard-phases
-           (replace '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
+  (package
+    (name "grip")
+    (version "4.6.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/joeyespo/grip")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0vhimd99zw7s1fihwr6yfij6ywahv9gdrfcf5qljvzh75mvzcwh8"))))
+    (build-system python-build-system)
+    (propagated-inputs (list python-docopt
+                             python-flask
+                             python-markdown
+                             python-path-and-address
+                             python-pygments
+                             python-requests))
+    (native-inputs (list python-pytest python-responses))
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (replace 'check
+                 (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+                   (when tests?
+                     (add-installed-pythonpath inputs outputs)
+                     (setenv "PATH"
+                             (string-append (getenv "PATH") ":"
+                                            #$output "/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))))
+    (license license:expat)))
 
 (define-public python-port-for
   (package
@@ -7555,3 +7554,50 @@ resources using Web Application Description Language (WADL) files as guides.")
 @end itemize")
     (license license:expat)))
 
+(define-public python-http-client
+  (package
+    (name "python-http-client")
+    (version "3.3.7")
+    (home-page "https://github.com/sendgrid/python-http-client")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0z0ziw3f4zw5fj4spiwhhs2x8qs3i5999ry2p6a5sc8b1lkkj2zi"))
+              (snippet #~(begin
+                           (use-modules (guix build utils))
+                           (delete-file "tests/profile.py")))))
+    (build-system python-build-system)
+    (synopsis "HTTP REST client for Python")
+    (description
+     "This package provides access to any RESTful or RESTful-like API.")
+    (license license:expat)))
+
+(define-public python-sendgrid
+  (package
+    (name "python-sendgrid")
+    (version "6.9.7")
+    (home-page "https://github.com/sendgrid/sendgrid-python/")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0kvp4gm3bpcsj2mkv05pgvlcv1jlsfhcljcv61wz5kq9d273h7rg"))))
+    (build-system python-build-system)
+    (arguments
+     (list #:tests? #f))       ;241/340 tests fail due to attempted web access
+    (propagated-inputs (list python-http-client python-starkbank-ecdsa))
+    (synopsis "SendGrid API library for Python")
+    (description
+     "The @code{sendgrid} Python library allows access to the
+SendGrid Web API v3.  Version 3+ of the library provides full support for all
+SendGrid Web API v3 endpoints, including the new v3 /mail/send.")
+    (license license:expat)))