aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2012-11-10 15:19:43 -0800
committerGlenn Morris2012-11-10 15:19:43 -0800
commit714cebd1b148c3eeff5d6ddb05e4fdc9d747475a (patch)
tree97eb6053548f53b6aa3a944677fbfaccca5b12fb
parent6baf66d53bbedd85a443e0d69d1f4311a93f0677 (diff)
downloademacs-714cebd1b148c3eeff5d6ddb05e4fdc9d747475a.tar.gz
emacs-714cebd1b148c3eeff5d6ddb05e4fdc9d747475a.zip
Remove report-emacs-bug-query-existing-bugs (use debbugs from GNU ELPA instead)
* lisp/mail/emacsbug.el (report-emacs-bug-tracker-url) (report-emacs-bug-bug-alist, report-emacs-bug-choice-widget) (report-emacs-bug-create-existing-bugs-buffer) (report-emacs-bug-parse-query-results) (report-emacs-bug-query-existing-bugs): Remove. Fixes: debbugs:7449
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/mail/emacsbug.el89
2 files changed, 6 insertions, 89 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2773ea1690d..c5c4369ef17 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,11 @@
12012-11-10 Glenn Morris <rgm@gnu.org> 12012-11-10 Glenn Morris <rgm@gnu.org>
2 2
3 * mail/emacsbug.el (report-emacs-bug-tracker-url)
4 (report-emacs-bug-bug-alist, report-emacs-bug-choice-widget)
5 (report-emacs-bug-create-existing-bugs-buffer)
6 (report-emacs-bug-parse-query-results)
7 (report-emacs-bug-query-existing-bugs): Remove. (Bug#7449)
8
3 * term.el (term-default-fg-color, term-default-bg-color): 9 * term.el (term-default-fg-color, term-default-bg-color):
4 Make obsolete, rather than just saying "deprecated" in the doc. 10 Make obsolete, rather than just saying "deprecated" in the doc.
5 11
diff --git a/lisp/mail/emacsbug.el b/lisp/mail/emacsbug.el
index a7a167d01bd..1d9d098e71c 100644
--- a/lisp/mail/emacsbug.el
+++ b/lisp/mail/emacsbug.el
@@ -60,10 +60,6 @@
60 60
61;; User options end here. 61;; User options end here.
62 62
63(defvar report-emacs-bug-tracker-url "http://debbugs.gnu.org/cgi/"
64 "Base URL of the GNU bugtracker.
65Used for querying duplicates and linking to existing bugs.")
66
67(defvar report-emacs-bug-orig-text nil 63(defvar report-emacs-bug-orig-text nil
68 "The automatically-created initial text of the bug report.") 64 "The automatically-created initial text of the bug report.")
69 65
@@ -444,91 +440,6 @@ and send the mail again%s."
444 (delete-region pos (field-end (1+ pos))))))) 440 (delete-region pos (field-end (1+ pos)))))))
445 441
446 442
447;; Querying the bug database
448
449(defvar report-emacs-bug-bug-alist nil)
450(make-variable-buffer-local 'report-emacs-bug-bug-alist)
451(defvar report-emacs-bug-choice-widget nil)
452(make-variable-buffer-local 'report-emacs-bug-choice-widget)
453
454(defun report-emacs-bug-create-existing-bugs-buffer (bugs keywords)
455 (switch-to-buffer (get-buffer-create "*Existing Emacs Bugs*"))
456 (setq buffer-read-only t)
457 (let ((inhibit-read-only t))
458 (erase-buffer)
459 (setq report-emacs-bug-bug-alist bugs)
460 (widget-insert (propertize (concat "Already known bugs ("
461 keywords "):\n\n")
462 'face 'bold))
463 (if bugs
464 (setq report-emacs-bug-choice-widget
465 (apply 'widget-create 'radio-button-choice
466 :value (caar bugs)
467 (let (items)
468 (dolist (bug bugs)
469 (push (list
470 'url-link
471 :format (concat "Bug#" (number-to-string (nth 2 bug))
472 ": " (cadr bug) "\n %[%v%]\n")
473 ;; FIXME: Why is only the link of the
474 ;; active item clickable?
475 (car bug))
476 items))
477 (nreverse items))))
478 (widget-insert "No bugs matching your keywords found.\n"))
479 (widget-insert "\n")
480 (widget-create 'push-button
481 :notify (lambda (&rest ignore)
482 ;; TODO: Do something!
483 (message "Reporting new bug!"))
484 "Report new bug")
485 (when bugs
486 (widget-insert " ")
487 (widget-create 'push-button
488 :notify (lambda (&rest ignore)
489 (let ((val (widget-value report-emacs-bug-choice-widget)))
490 ;; TODO: Do something!
491 (message "Appending to bug %s!"
492 (nth 2 (assoc val report-emacs-bug-bug-alist)))))
493 "Append to chosen bug"))
494 (widget-insert " ")
495 (widget-create 'push-button
496 :notify (lambda (&rest ignore)
497 (kill-buffer))
498 "Quit reporting bug")
499 (widget-insert "\n"))
500 (use-local-map widget-keymap)
501 (widget-setup)
502 (goto-char (point-min)))
503
504(defun report-emacs-bug-parse-query-results (status keywords)
505 (goto-char (point-min))
506 (let (buglist)
507 (while (re-search-forward "<a href=\"bugreport\\.cgi\\?bug=\\([[:digit:]]+\\)\">\\([^<]+\\)</a>" nil t)
508 (let ((number (match-string 1))
509 (subject (match-string 2)))
510 (when (not (string-match "^#" subject))
511 (push (list
512 ;; first the bug URL
513 (concat report-emacs-bug-tracker-url
514 "bugreport.cgi?bug=" number)
515 ;; then the subject and number
516 subject (string-to-number number))
517 buglist))))
518 (report-emacs-bug-create-existing-bugs-buffer (nreverse buglist) keywords)))
519
520(defun report-emacs-bug-query-existing-bugs (keywords)
521 "Query for KEYWORDS at `report-emacs-bug-tracker-url', and return the result.
522The result is an alist with items of the form (URL SUBJECT NO)."
523 (interactive "sBug keywords (comma separated): ")
524 (url-retrieve (concat report-emacs-bug-tracker-url
525 "pkgreport.cgi?include=subject%3A"
526 (replace-regexp-in-string "[[:space:]]+" "+" keywords)
527 ";package=emacs")
528 'report-emacs-bug-parse-query-results (list keywords)))
529(make-obsolete 'report-emacs-bug-query-existing-bugs
530 "use the `debbugs' package from GNU ELPA instead." "24.3")
531
532(provide 'emacsbug) 443(provide 'emacsbug)
533 444
534;;; emacsbug.el ends here 445;;; emacsbug.el ends here