Subject: Re: bug#58933: 28.2; project-buffers should take an optional filter

From: Sean Devlin <[email-masked]>
Date: Fri, 4 Nov 2022 12:40:58 -0400

Hi folks,

> On Nov 4, 2022, at 2:47 AM, Philip Kaludercic <[email-masked]> wrote:
> 
> Dmitry Gutov <[email-masked] <mailto:[email-masked]>> writes:
> 
>> On 02.11.2022 16:17, Sean Devlin wrote:
>>> Hi Dmitry,
>>> 
>>>> On Nov 1, 2022, at 7:38 PM, Dmitry Gutov<[email-masked]>  wrote:
>>>> 
>>>> Hi Sean,
>>>> 
>>>> On 01.11.2022 00:04, Sean Devlin wrote:
>>>> 
>>>>> Project.el provides a function project-buffers that returns a list of
>>>>> buffers associated with the given project. The list is unfiltered,
>>>>> meaning any program using it will have to do some work to pick out the
>>>>> buffers of interest. It would be useful if the function had an optional
>>>>> argument to do this work.
>>>>> Project.el already has a function project--buffer-check that validates a
>>>>> buffer against a list of conditions. Maybe it should be wired into
>>>>> project-buffers to do the job of filtering?
>>>> There is also 'match-buffers' and 'buffer-match-p' in the core Emacs starting with Emacs 29 (should also be available with the 'compat' package).
>>>> 
>>>> What do you think about these alternatives?
>>> Thanks for the pointer—I wasn’t aware of these functions. (I’m still on 28.2.)
>>> It looks like these do fit the bill. For example, it looks like I
>>> could write:
>>> (match-buffers condition (project-buffers project))
>>> I can’t see these functions in my local installation of compat
>>> (056e3cc), but maybe definitions from Emacs 29 haven’t been added
>>> yet? In any case, I’m happy to wait a little bit.
>> 
>> Right, I'm not seeing it in there either. Perhaps it'll get there
>> after Emacs 29 is released.
> 
> Right, Emacs 29 support is under development, but hasn't been completed
> yet: https://git.sr.ht/~pkal/compat/tree/emacs-29.1/item/compat-29.el.
> 
>> Philip, is that the plan?
> 
> The plan is to be ready by the time Emacs 29 is released.  If possible
> and I get to it, it might also be released earlier, but at the very
> least I'll be waiting for the feature freeze later this month.

That sounds good to me. I have a workaround in the meantime, so I’m happy to wait for the new release. Thanks both for your help, and feel free to close this at your discretion.