Subject: [PATCH] gnu: Add python-canvasapi.
From: John Kehayias <[email-masked]>
To: Guix-patches <[email-masked]>
Date: Fri, 24 Dec 2021 15:44:14 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

This is a patch to add the canvasapi python package, that lets you communicate with Instructure's Canvas platform (used at universities for course materials). I've tested it builds and works.

From 4aa7894d3786c1fe490d97b4b05c267956302d83 Mon Sep 17 00:00:00 2001
From: John Kehayias <[email-masked]>
Date: Fri, 24 Dec 2021 10:34:21 -0500
Subject: [PATCH] gnu: Add python-canvasapi.

* gnu/packages/python-web.scm (python-canvasapi): 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 61a34bfc63..d2026af2c6 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -47,6 +47,7 @@
 ;;; Copyright © 2021 Arun Isaac <[email-masked]>
 ;;; Copyright © 2021 jgart <[email-masked]>
 ;;; Copyright © 2021 Alice Brenon <[email-masked]>
+;;; Copyright © 2021 John Kehayias <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4198,6 +4199,25 @@ (define-public python-yarl
 for URL parsing and changing.")
     (license license:asl2.0)))
 
+(define-public python-canvasapi
+  (package
+    (name "python-canvasapi")
+    (version "2.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "canvasapi" version))
+       (sha256
+        (base32 "0qizqj5l6bgfmw41hhh1d1iypv5y1lb3r6v0yks957dc7ivxp1sh"))))
+    (build-system python-build-system)
+    (propagated-inputs (list python-pytz python-requests))
+    (home-page "https://github.com/ucfopen/canvasapi")
+    (synopsis "API wrapper for the Canvas LMS")
+    (description "CanvasAPI is a Python library for accessing
+Instructure’s Canvas LMS API.  The library enables developers to
+programmatically manage Canvas courses, users, gradebooks, and more.")
+    (license license:expat)))
+
 (define-public python-google
   (package
     (name "python-google")
-- 
2.34.1