Function: ediff-submit-report

ediff-submit-report is an interactive and byte-compiled function defined in ediff-util.el.gz.

Signature

(ediff-submit-report)

Documentation

Submit bug report on Ediff.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-util.el.gz
(defun ediff-submit-report ()
  "Submit bug report on Ediff."
  (interactive)
  (ediff-barf-if-not-control-buffer)
  (defvar ediff-buffer-name)
  (let ((reporter-prompt-for-summary-p t)
	(ctl-buf ediff-control-buffer)
	varlist salutation ediff-buffer-name)
    (setq varlist '(ediff-diff-program ediff-diff-options
                    ediff-diff3-program ediff-diff3-options
		    ediff-patch-program ediff-patch-options
		    ediff-shell
		    ediff-use-faces
		    ediff-auto-refine ediff-highlighting-style
		    ediff-buffer-A ediff-buffer-B ediff-control-buffer
		    ediff-forward-word-function
		    ediff-control-frame
		    ediff-control-frame-parameters
		    ediff-control-frame-position-function
		    ediff-prefer-iconified-control-frame
		    ediff-window-setup-function
		    ediff-split-window-function
		    ediff-job-name
		    ediff-word-mode
		    ediff-buffer-name
                    window-system))
    (setq salutation "
Congratulations!  You may have unearthed a bug in Ediff!

Please make a concise and accurate summary of what happened
and mail it to the address above.
-----------------------------------------------------------
")

    (ediff-skip-unsuitable-frames)
    (ediff-reset-mouse)

    (switch-to-buffer ediff-msg-buffer)
    (erase-buffer)
    (delete-other-windows)
    (insert "
Please read this first:
----------------------

Some \"bugs\" may actually be no bugs at all.  For instance, if you are
reporting that certain difference regions are not matched as you think they
should, this is most likely due to the way Unix diff program decides what
constitutes a difference region.  Ediff is an Emacs interface to diff, and
it has nothing to do with those decisions---it only takes the output from
diff and presents it in a way that is better suited for human browsing and
manipulation.

If Emacs happens to dump core, this is NOT an Ediff problem---it is
an Emacs bug.  Report this to Emacs maintainers.

Another popular topic for reports is compilation messages.  Because Ediff
interfaces to several other packages, byte-compilation may produce output
like this:

       While compiling toplevel forms in file ediff.el:
	 ** reference to free variable zzz
	   ........................
       While compiling the end of the data:
	 ** The following functions are not known to be defined:
	   xxx, yyy
	   ........................

These are NOT errors, but inevitable warnings, which ought to be ignored.

Please do not report those and similar things.  However, comments and
suggestions are always welcome.

Mail anyway? (y or n) ")

    (if (y-or-n-p "Mail anyway? ")
	(progn
	  (if (ediff-buffer-live-p ctl-buf)
	      (set-buffer ctl-buf))
	  (setq ediff-buffer-name (buffer-name))
	  (require 'reporter)
	  (reporter-submit-bug-report "kifer@cs.stonybrook.edu, bug-gnu-emacs@gnu.org"
				      (ediff-version)
				      varlist
				      nil
				      'delete-other-windows
				      salutation))
      (bury-buffer)
      (beep 1)(message "Bug report aborted")
      (if (ediff-buffer-live-p ctl-buf)
	  (ediff-with-current-buffer ctl-buf
	    (ediff-recenter 'no-rehighlight))))
    ))