Subject: Re: bug#59935: 29.0.60; project-list-buffers is slow

From: Eli Zaretskii <[email-masked]>
Date: Sun, 11 Dec 2022 21:00:25 +0200

> Date: Sun, 11 Dec 2022 20:35:24 +0200
> Cc: [email-masked], [email-masked]
> From: Dmitry Gutov <[email-masked]>
> 
> On 11/12/2022 20:17, Eli Zaretskii wrote:
> > Why not leave alone that additional PREDICATE
> > argument of list-buffers-noselect, and add a feature where the
> > BUFFER-LIST argument could be a function?  That's be a compatible
> > change.  Just keep the PREDICATE argument and the code which supports
> > it, and document that if PREDICATE is a function, BUFFER-LIST cannot
> > be a function.
> 
> While that should work, that change would *also* change the signature. 
> Though in a safer way, yes.

Indeed.

> Are you worried about some out-of-tree clients that started using the 
> new feature in the meantime?

Yes.  In particular, we never change signatures after the branch point
of a release branch -- the branch point is a de-facto code-freeze
point for the release branch.

> Otherwise, this change could be split into two steps:
> 
> - Rollback that signature to pre-commit 125b5684c (i.e. revert its part 
> in buff-menu.el). This is something we usually considered to be safe.
> 
> - Add new change that allows BUFFER-LIST to be a function.

We can do it safer, so I'd prefer that.