Subject: bug#18086: 24.4.50; NEWS entry for `kill-region'

From: Stephen Berman <[email-masked]>
Date: Thu, 24 Jul 2014 00:21:57 +0200

On Wed, 23 Jul 2014 09:16:56 -0700 (PDT) Drew Adams <[email-masked]> wrote:

>> From the beginning, and forever prior to Emacs 24.4, `kill-region' had
>> this signature: (kill-region BEG END).  That includes Emacs 24.3.
>> 
>> Starting with Emacs 24.4, this is the signature:
>> (kill-region BEG END &optional REGION)
>> 
>> 1. This change should be called out in NEWS.
>> 
>> 2. Instead, there is this entry in NEWS for Emacs 24.4, under
>> "Incompatible Lisp changes in Emacs 24.4":
>> 
>> ** `kill-region' has lost its `yank-handler' optional argument.
>> 
>> This is incomprehensible.  It never had a `yank-handler' optional
>> argument.
>
> I was apparently wrong about that last statement (and so too about
> the first statement, that in 24.3 the function accepted only two args).
>
> [However, I do not really understand, and have no time to research
> this now: in Emacs 24.3, emacs -Q, `C-h f kill-region' does NOT
> show parameter YANK-HANDLER.  But in the 24.3 source file simple.el,
> YANK-HANDLER is present.  Perhaps the simple.elc distributed by GNU
> is older than the addition of YANK-HANDLER to simple.el?]

24.3 was released March 11, 2013, but the yank-handler argument was
obsoleted much earlier:

2010-11-18  Stefan Monnier  <[email-masked]>

	* simple.el (kill-new, kill-append, kill-region):
	* comint.el (comint-kill-region): Make the yank-handler argument
	obsolete.

Perhaps that's why the help in 24.3 doesn't show it.

> The NEWS entry should state not that the YANK-HANDLER parameter
> was removed but that it was replaced by the REGION parameter etc.
>
> And of course there SHOULD have been a NEWS entry for 24.3,
> stating that parameter YANK-HANDLER was added.  If it is not too
> late, that should be added now.  Without it, mention of YANK-HANDLER
> in the 24.4 entry makes no sense.

It's in NEWS.22:

*** The functions `kill-new', `kill-append', and `kill-region' now have an
optional argument to specify the `yank-handler' text property to put on
the killed text.

(However, 22.1 was released June 2, 2007, while the yank-handler
parameter was added much earlier:

2003-01-18  Kim F. Storm  <[email-masked]>

	* simple.el (kill-new, kill-append, kill-region):
	New optional parameter yank-handler.

This was even before the release of 21.3 on March 24, 2003, though it
was probably in feature freeze then.  So it could have been added to
the NEWS of 21.4, released on Feb 6, 2005; but, if memory serves, that
was a security release with no new features.)

Steve Berman