emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/srht 27875889c0 4/4: Remove srht-git--else, srht-paste-


From: ELPA Syncer
Subject: [elpa] externals/srht 27875889c0 4/4: Remove srht-git--else, srht-paste--else.
Date: Fri, 3 Nov 2023 18:59:01 -0400 (EDT)

branch: externals/srht
commit 27875889c030bc8b65fc61477d24564bb91c15d2
Author: Aleksandr Vityazev <avityazev@posteo.org>
Commit: Aleksandr Vityazev <avityazev@posteo.org>

    Remove srht-git--else, srht-paste--else.
    
    * lisp/srht-git: Adapt interactive commands to changes.
    * lisp/srht-paste: Adapt interactive commands to changes.
---
 lisp/srht-git.el   | 51 ++++++++++++++++++++++-----------------------------
 lisp/srht-paste.el | 49 +++++++++++++++++++++----------------------------
 2 files changed, 43 insertions(+), 57 deletions(-)

diff --git a/lisp/srht-git.el b/lisp/srht-git.el
index d71f4c09a2..83f707f532 100644
--- a/lisp/srht-git.el
+++ b/lisp/srht-git.el
@@ -200,29 +200,6 @@ DOMAIN is the domain name of the Sourcehut instance."
 (defvar srht-git-repo-name-history nil
   "History variable.")
 
-(defun srht-git--else (domain plz-error)
-  "An optional callback function.
-Called when the request fails with two arguments, a ‘plz-error’ struct 
PLZ-ERROR
-and domain name DOMAIN."
-  (pcase-let* (((cl-struct plz-error response) plz-error)
-               ((cl-struct plz-response status body) response))
-    (pcase status
-      (201 (srht-with-json-read-from-string body
-             (map (:name repo-name)
-                  (:owner (map (:canonical_name username))))
-             (let ((url (srht--make-uri
-                         domain 'git (format "/%s/%s" username repo-name) 
nil)))
-               (srht-copy-url url)
-               (srht-browse-url url))
-             (srht-retrive (srht-git-repos domain)
-                           :then (lambda (resp)
-                                   (srht-put srht-git-repos domain resp)))))
-      (204 (srht-retrive (srht-git-repos domain)
-                         :then (lambda (resp)
-                                 (srht-put srht-git-repos domain resp)
-                                 (message "Deleted!"))))
-      (_ (error "Unkown error with status %s: %S" status plz-error)))))
-
 ;;;###autoload
 (defun srht-git-repo-create (domain visibility name description)
   "Create the NAME repository on an instance with the domain name DOMAIN.
@@ -237,8 +214,18 @@ Set VISIBILITY and DESCRIPTION."
                               :visibility visibility
                               :name name
                               :description description)
-               :then (lambda (_r))
-               :else (lambda (err) (srht-git--else domain err))))
+               :then (lambda (results)
+                       (pcase-let* (((map (:name repo-name)
+                                          (:owner (map (:canonical_name 
username))))
+                                     results)
+                                    (url (srht--make-uri
+                                          domain 'git
+                                          (format "/%s/%s" username repo-name) 
nil)))
+                         (srht-copy-url url)
+                         (srht-browse-url url)
+                         (srht-retrive (srht-git-repos domain)
+                                       :then (lambda (resp)
+                                               (srht-put srht-git-repos domain 
resp)))))))
 
 (defun srht-git--find-info (domain repo-name)
   "Find repository information by REPO-NAME from the DOMAIN instance."
@@ -268,7 +255,6 @@ Set VISIBILITY, NEW-NAME and DESCRIPTION."
                                 :visibility visibility
                                 :name new-name
                                 :description description)
-                 :else (lambda (err) (srht-git--else domain err))
                  :then (lambda (_resp)
                          ;; NOTE: resp examle
                          ;; (:id 110277
@@ -292,9 +278,16 @@ Set VISIBILITY, NEW-NAME and DESCRIPTION."
      (list instance (srht-git--repo-name-read instance))))
   (when (yes-or-no-p
          (format "This action cannot be undone.\n Delete %s repository?" 
repo-name))
-    (srht-delete (srht-git-repo domain repo-name)
-                 :then (lambda (_r))
-                 :else (lambda (err) (srht-git--else domain err)))))
+    (srht-delete
+     (srht-git-repo domain repo-name)
+     :as 'string
+     :then (lambda (_r)
+             (srht-retrive
+              (srht-git-repos domain)
+              :then (lambda (resp)
+                      (srht-put srht-git-repos domain resp)
+                      (message (format "Sourcehut %s git repository deleted!" 
repo-name)
+                               )))))))
 
 (provide 'srht-git)
 ;;; srht-git.el ends here
diff --git a/lisp/srht-paste.el b/lisp/srht-paste.el
index d1571a25ff..5b5f3f390a 100644
--- a/lisp/srht-paste.el
+++ b/lisp/srht-paste.el
@@ -110,29 +110,6 @@ the whole buffer."
       (buffer-substring-no-properties (region-beginning) (region-end))
     (buffer-string)))
 
-(defun srht-paste--else (domain plz-error)
-  "An optional callback function.
-Called when the request fails with one argument, a ‘plz-error’ struct PLZ-ERROR
-and domain name DOMAIN."
-  (pcase-let* (((cl-struct plz-error response) plz-error)
-               ((cl-struct plz-response status body) response))
-    (pcase status
-      (201 (srht-with-json-read-from-string body
-             (map (:sha sha)
-                  (:user (map (:canonical_name username))))
-             (let ((url (srht--make-uri
-                         domain 'paste (format "/%s/%s" username sha) nil)))
-               (srht-copy-url url)
-               (srht-browse-url url)
-               (srht-retrive (srht-pastes domain)
-                             :then (lambda (resp)
-                                     (srht-put srht-paste-all-pastes domain 
resp))))))
-      (204 (srht-retrive (srht-pastes domain)
-                         :then (lambda (resp)
-                                 (srht-put srht-paste-all-pastes domain resp)
-                                 (message "Deleted!"))))
-      (_ (error "Unkown error with status %s: %S" status plz-error)))))
-
 ;;;###autoload
 (defun srht-paste-region (domain visibility filename)
   "Paste region or buffer to Sourcehut instance with DOMAIN.
@@ -148,8 +125,18 @@ Set FILENAME and VISIBILITY."
                  :visibility visibility
                  :filename filename
                  :contents content)
-     :then (lambda (_r))
-     :else (lambda (err) (srht-paste--else domain err)))))
+     :then
+     (lambda (results)
+       (pcase-let* (((map (:sha sha)
+                          (:user (map (:canonical_name username))))
+                     results)
+                    (url (srht--make-uri
+                          domain 'paste (format "/%s/%s" username sha) nil)))
+         (srht-copy-url url)
+         (srht-browse-url url)
+         (srht-retrive (srht-pastes domain)
+                       :then (lambda (resp)
+                               (srht-put srht-paste-all-pastes domain 
resp))))))))
 
 ;;;###autoload
 (defun srht-paste-delete (domain sha)
@@ -157,9 +144,15 @@ Set FILENAME and VISIBILITY."
   (interactive
    (let ((instance (srht-read-domain "Instance: ")))
      (list instance (srht-paste--sha instance))))
-  (srht-delete (srht-paste domain sha)
-               :then (lambda (_r))
-               :else (lambda (err) (srht-paste--else domain err))))
+  (srht-delete
+   (srht-paste domain sha)
+   :as 'string
+   :then (lambda (_r)
+           (srht-retrive
+            (srht-pastes domain)
+            :then (lambda (resp)
+                    (srht-put srht-paste-all-pastes domain resp)
+                    (message "Deleted!"))))))
 
 ;;;###autoload
 (defun srht-paste-copy-url (domain)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]