From 5ac3f569ee480be555cd99efd553ab4832512ed5 Mon Sep 17 00:00:00 2001 From: Andreas Gerler Date: Wed, 21 May 2025 14:57:34 +0200 Subject: [PATCH] update request --- elpa/request-20230127.417/request-pkg.el | 2 - .../request-autoloads.el | 38 ++++----- elpa/request-20250219.2213/request-pkg.el | 9 +++ .../request.el | 78 ++++++++++++------- elpa/request-readme.txt | 11 --- 5 files changed, 77 insertions(+), 61 deletions(-) delete mode 100644 elpa/request-20230127.417/request-pkg.el rename elpa/{request-20230127.417 => request-20250219.2213}/request-autoloads.el (91%) create mode 100644 elpa/request-20250219.2213/request-pkg.el rename elpa/{request-20230127.417 => request-20250219.2213}/request.el (97%) delete mode 100644 elpa/request-readme.txt diff --git a/elpa/request-20230127.417/request-pkg.el b/elpa/request-20230127.417/request-pkg.el deleted file mode 100644 index 0054698c..00000000 --- a/elpa/request-20230127.417/request-pkg.el +++ /dev/null @@ -1,2 +0,0 @@ -;;; Generated package description from request.el -*- no-byte-compile: t -*- -(define-package "request" "20230127.417" "Compatible layer for URL request" '((emacs "24.4")) :commit "01e338c335c07e4407239619e57361944a82cb8a" :authors '(("Takafumi Arakaki ")) :maintainers '(("Takafumi Arakaki ")) :maintainer '("Takafumi Arakaki ") :url "https://github.com/tkf/emacs-request") diff --git a/elpa/request-20230127.417/request-autoloads.el b/elpa/request-20250219.2213/request-autoloads.el similarity index 91% rename from elpa/request-20230127.417/request-autoloads.el rename to elpa/request-20250219.2213/request-autoloads.el index 4ab73860..96c7ea46 100644 --- a/elpa/request-20230127.417/request-autoloads.el +++ b/elpa/request-20250219.2213/request-autoloads.el @@ -1,12 +1,14 @@ -;;; request-autoloads.el --- automatically extracted autoloads -*- lexical-binding: t -*- -;; +;;; request-autoloads.el --- automatically extracted autoloads (do not edit) -*- lexical-binding: t -*- +;; Generated by the `loaddefs-generate' function. + +;; This file is part of GNU Emacs. + ;;; Code: -(add-to-list 'load-path (directory-file-name - (or (file-name-directory #$) (car load-path)))) +(add-to-list 'load-path (or (and load-file-name (directory-file-name (file-name-directory load-file-name))) (car load-path))) + -;;;### (autoloads nil "request" "request.el" (0 0 0 0)) ;;; Generated autoloads from request.el (autoload 'request-response-header "request" "\ @@ -22,8 +24,7 @@ Examples:: (request-response-header response \"unknown-field\") ; => nil -\(fn RESPONSE FIELD-NAME)" nil nil) - +(fn RESPONSE FIELD-NAME)") (autoload 'request-response-headers "request" "\ Return RESPONSE headers as an alist. I would have chosen a function name that wasn't so suggestive that @@ -31,8 +32,7 @@ I would have chosen a function name that wasn't so suggestive that as there's already precedent with `request-response-header', I hew to consistency. -\(fn RESPONSE)" nil nil) - +(fn RESPONSE)") (autoload 'request "request" "\ Main entry requesting URL with property list SETTINGS as follow. @@ -183,31 +183,31 @@ and requests.request_ (Python). .. _jQuery.ajax: https://api.jquery.com/jQuery.ajax/ .. _requests.request: https://docs.python-requests.org -\(fn URL &rest SETTINGS &key (PARAMS nil) (DATA nil) (HEADERS nil) (ENCODING \\='utf-8) (ERROR nil) (SYNC nil) (RESPONSE (make-request-response)) &allow-other-keys)" nil nil) - +(fn URL &rest SETTINGS &key (PARAMS nil) (DATA nil) (HEADERS nil) (ENCODING \\='utf-8) (ERROR nil) (SYNC nil) (RESPONSE (make-request-response)) &allow-other-keys)") (function-put 'request 'lisp-indent-function 'defun) - (autoload 'request-untrampify-filename "request" "\ Return FILE as the local file name. -\(fn FILE)" nil nil) - +(fn FILE)") (autoload 'request-abort "request" "\ Abort request for RESPONSE (the object returned by `request'). Note that this function invoke ERROR and COMPLETE callbacks. Callbacks may not be called immediately but called later when associated process is exited. -\(fn RESPONSE)" nil nil) - +(fn RESPONSE)") (register-definition-prefixes "request" '("request-")) - -;;;*** +;;; End of scraped data + +(provide 'request-autoloads) + ;; Local Variables: ;; version-control: never ;; no-byte-compile: t ;; no-update-autoloads: t -;; coding: utf-8 +;; no-native-compile: t +;; coding: utf-8-emacs-unix ;; End: + ;;; request-autoloads.el ends here diff --git a/elpa/request-20250219.2213/request-pkg.el b/elpa/request-20250219.2213/request-pkg.el new file mode 100644 index 00000000..8166d85e --- /dev/null +++ b/elpa/request-20250219.2213/request-pkg.el @@ -0,0 +1,9 @@ +;; -*- no-byte-compile: t; lexical-binding: nil -*- +(define-package "request" "20250219.2213" + "Compatible layer for URL request." + '((emacs "24.4")) + :url "https://github.com/tkf/emacs-request" + :commit "6f419b5cdd2dfa83675ae53f04d8463d00a533f8" + :revdesc "6f419b5cdd2d" + :authors '(("Takafumi Arakaki" . "aka.tkfatgmail.com")) + :maintainers '(("Takafumi Arakaki" . "aka.tkfatgmail.com"))) diff --git a/elpa/request-20230127.417/request.el b/elpa/request-20250219.2213/request.el similarity index 97% rename from elpa/request-20230127.417/request.el rename to elpa/request-20250219.2213/request.el index 785db5ae..ed2a968f 100644 --- a/elpa/request-20230127.417/request.el +++ b/elpa/request-20250219.2213/request.el @@ -6,10 +6,9 @@ ;; Author: Takafumi Arakaki ;; URL: https://github.com/tkf/emacs-request -;; Package-Version: 20230127.417 -;; Package-Commit: 01e338c335c07e4407239619e57361944a82cb8a ;; Package-Requires: ((emacs "24.4")) -;; Version: 0.3.3 +;; Package-Version: 20250219.2213 +;; Package-Revision: 6f419b5cdd2d ;; This file is NOT part of GNU Emacs. @@ -1155,33 +1154,54 @@ See info entries on sentinels regarding PROC and EVENT." (or error (and (numberp code) (>= code 400) `(error . (http ,code))))) (apply #'request--callback buffer settings)))))) -(cl-defun request--curl-sync (url &rest settings &key response &allow-other-keys) +(cl-defun request--curl-sync + (url &rest settings &key response &allow-other-keys) "Internal synchronous curl call to URL with SETTINGS bespeaking RESPONSE." - (let (finished) - (prog1 (apply #'request--curl url - :semaphore (lambda (&rest _) (setq finished t)) - settings) - (cl-loop with buf = (request-response--buffer response) - with interval = 0.05 - with timeout = 5 - with maxiter = (truncate (/ timeout interval)) - with iter = 0 - until (or (>= iter maxiter) finished) - do (accept-process-output nil interval) - for proc = (get-buffer-process buf) - if (or (not proc) (not (process-live-p proc))) - ;; only run the clock if lollygagging - ;; (before or after process lifetime) - do (cl-incf iter) - end - finally (when (>= iter maxiter) - (let ((m "request--curl-sync: semaphore never called")) - (princ (format "%s %S %s\n" - m - buf - (buffer-live-p buf)) - #'external-debugging-output) - (request-log 'error m))))))) + (let + ((finished nil)) + (prog1 + (apply #'request--curl url + :semaphore + (lambda + (&rest _) + (setq finished t)) + settings) + (let* + ((buffer + (request-response--buffer response)) + (interval 0.05) + (timeout + (or + (plist-get settings :timeout) + 30)) + (time-spent 0)) + (while + (and + (not finished) + (< time-spent timeout) + (buffer-live-p buffer) + (get-buffer-process buffer)) + (accept-process-output nil interval) + (setq time-spent + (+ time-spent interval))) + + (when + (and + (not finished) + (>= time-spent timeout)) + (setf + (request-response-error-thrown response) + (cons 'error "Timeout")) + (setf + (request-response-symbol-status response) + 'timeout) + (when + (and + (buffer-live-p buffer) + (get-buffer-process buffer)) + (funcall + (request--choose-backend 'terminate-process) + (get-buffer-process buffer)))))))) (defun request--curl-get-cookies (host localpart secure) "Return entry for HOST LOCALPART SECURE in cookie jar." diff --git a/elpa/request-readme.txt b/elpa/request-readme.txt deleted file mode 100644 index d0354754..00000000 --- a/elpa/request-readme.txt +++ /dev/null @@ -1,11 +0,0 @@ -Request.el is a HTTP request library with multiple backends. It -supports url.el which is shipped with Emacs and curl command line -program. User can use curl when s/he has it, as curl is more reliable -than url.el. Library author can use request.el to avoid imposing -external dependencies such as curl to users while giving richer -experience for users who have curl. - -Following functions are adapted from GNU Emacs source code. -Free Software Foundation holds the copyright of them. -* `request--process-live-p' -* `request--url-default-expander' -- 2.47.3