Function: gulp-send-requests

gulp-send-requests is an interactive and byte-compiled function defined in gulp.el.gz.

Signature

(gulp-send-requests DIR &optional TIME)

Documentation

Send requests for updates to the authors of Lisp packages in directory DIR.

For each maintainer, the message consists of gulp-request-header, followed by the list of packages (with modification times if the optional prefix argument TIME is non-nil), concluded with gulp-request-end.

You can't edit the messages, but you can confirm whether to send each one.

The list of addresses for which you decided not to send mail is left in the *gulp* buffer at the end.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/obsolete/gulp.el.gz
(defun gulp-send-requests (dir &optional time)
  "Send requests for updates to the authors of Lisp packages in directory DIR.
For each maintainer, the message consists of `gulp-request-header',
followed by the list of packages (with modification times if the optional
prefix argument TIME is non-nil), concluded with `gulp-request-end'.

You can't edit the messages, but you can confirm whether to send each one.

The list of addresses for which you decided not to send mail
is left in the `*gulp*' buffer at the end."
  (interactive "DRequest updates for Lisp directory: \nP")
  (with-current-buffer (get-buffer-create gulp-tmp-buffer)
    (let ((m-p-alist (gulp-create-m-p-alist
		      (directory-files dir nil "\\`[^=].*\\.el\\'" t)
		      dir))
	  ;; Temporarily inhibit undo in the *gulp* buffer.
	  (buffer-undo-list t)
	  mail-setup-hook msg node)
      (setq m-p-alist
	    (sort m-p-alist
		  (function (lambda (a b)
			      (string< (car a) (car b))))))
      (while (setq node (car m-p-alist))
	(setq msg (gulp-create-message (cdr node) time))
	(setq mail-setup-hook
	      (lambda ()
		(mail-subject)
		(insert "It's time for Emacs updates again")
		(goto-char (point-max))
		(insert msg)))
	(mail nil (car node))
	(goto-char (point-min))
	(if (y-or-n-p "Send? ") (mail-send)
	  (kill-this-buffer)
	  (set-buffer gulp-tmp-buffer)
	  (insert (format "%s\n\n" node)))
	(setq m-p-alist (cdr m-p-alist))))
    (set-buffer gulp-tmp-buffer)
    (setq buffer-undo-list nil)))