Erica Qi <ericalin...@proton.me> writes:

> Ok, I've got Emacs 30.1 compiled and configured.
> I built 31 too but haven't proceeded with it yet.
> It's got some things I'd like to try.
>
> There were a couple of warnings about compiling lambdas and I had to remove 
> lexical-let. It's better for it.
>
> 30 is nagging me to add
>  -*-  Lexical-binding: t   -*- 
> to all my Elisp code... 
> EMMS-filters already had it but I had used lexical-let instead.
>
> I also found a couple of typo/bugs and updated the comments and doc to 
> reflect the changes.
>
> It compiles cleanly and it still works!

Are you sure we are talking about the same thing? I pulled to this
commit and it doesn't compile cleanly. I don't mind having a look
through the compiler warnings, but I want to make sure that we are on
the same page first:
https://cgit.git.savannah.gnu.org/cgit/emms.git/commit/?h=Emms-filters&id=dcc6f99d348ea0ed14682e1166dce24279768f3f

>
> Erica
>
> Envoyé depuis Proton Mail pour Android
>
>
> -------- Message d'origine --------
> Le 01/06/2025 00:33, Yoni Rabkin <y...@rabkins.net> a écrit :
>
>>  Erica Qi <ericalin...@proton.me> writes:
>>  
>>  > Hello Yoni,
>>  >
>>  > All those things are fixed.
>>  > Emms-filters is agnostic about the renderer.
>>  >
>>  > The browser requires it and sets some hooks.
>>  > The browser keymap is entirely defined in the browser code.
>>  > Updated the doc.
>>  >
>>  > The emms-browser-filter-changed-hook is deprecated.  EMMS filters has a 
>> replacement defcustom.  Plus two more hooks to make renders happen.
>>  >
>>  > Poking around to see what else I can find.
>>  
>>  Does it compile cleanly on the latest official release (30.1)?
>>  
>>  > Erica
>>  >
>>  >
>>  >
>>  > Envoyé depuis Proton Mail pour Android
>>  >
>>  >
>>  > -------- Message d'origine --------
>>  > Le 30/05/2025 20:39, Yoni Rabkin <y...@rabkins.net> a écrit :
>>  >
>>  >>  Erica Qi <ericalin...@proton.me> writes:
>>  >>
>>  >>  > Hello Yoni,
>>  >>  >
>>  >>  > I'm still learning my way around savannah but I got a branch pushed 
>> tonight.
>>  >>  > Emms-filters.
>>  >>  >
>>  >>  > Let me know what you find.
>>  >>
>>  >>  I would start with:
>>  >>
>>  >>  * The `cl' package is depreciated.
>>  >>
>>  >>  * The code contains references to variables that probably existed during
>>  >>    development (or were in the REPL), but don't anymore. For instance
>>  >>    `tango-filters' versus `filters' in
>>  >>    `emms-filters-add-to-filter-menu-from-filter-list'.
>>  >>
>>  >>  * The dependency relationship between emms-filters and emms-browser
>>  >>    needs to be figured out. emms-filters requires emms-browser, but
>>  >>    emms-browser calls emms-filters functions.
>>  >>
>>  >>  I would start there.
>>  >>
>>  >>  Thank you in advance! I'm looking forward to this feature being added to
>>  >>  Emms.
>>  >>
>>  >>  > Have a nice day,
>>  >>  > Erica
>>  >>  >
>>  >>  > Envoyé depuis Proton Mail pour Android
>>  >>  >
>>  >>  >
>>  >>  > -------- Message d'origine --------
>>  >>  > Le 20/05/2025 19:24, Yoni Rabkin <y...@rabkins.net> a écrit :
>>  >>  >
>>  >>  >>  Erica Qi <ericalin...@proton.me> writes:
>>  >>  >>
>>  >>  >>  > Oh, I thought I had.  When I created it.
>>  >>  >>  > Lost in email somewhere perhaps. Or maybe I failed to send it.
>>  >>  >>  >
>>  >>  >>  > I thought it was strange that I never heard back from you.  I've 
>> been
>>  >>  >>  > sick and super busy otherwise. Feeing good these days but I had a
>>  >>  >>  > rough winter.
>>  >>  >>
>>  >>  >>  I'm sorry to hear that, and I'm hoping you feel better soon.
>>  >>  >>
>>  >>  >>  > Here's the link. There's an Emms filters branch
>>  >>  >>  > With all the changes.  My nickname is Zenie.
>>  >>  >>  >
>>  >>  >>  > https://codeberg.org/ZeniesQis/Emms
>>  >>  >>  >
>>  >>  >>  > Let me know if you have questions or suggestions or needs.
>>  >>  >>
>>  >>  >>  I'll review the code and provide feedback.
>>  >>  >>
>>  >>  >>  > I can still upload it to savannah, I have an account now. :)
>>  >>  >>  >
>>  >>  >>  > Thanks for reaching out. It's been popping up in my mind lately.
>>  >>  >>
>>  >>  >>  You are always welcome to become an Emms developer on Savannah. But
>>  >>  >>  right now I think we have everything we need to move this forward.
>>  >>  >>
>>  >>  >>  > Envoyé depuis Proton Mail pour Android
>>  >>  >>  >
>>  >>  >>  >
>>  >>  >>  > -------- Message d'origine --------
>>  >>  >>  > Le 20/05/2025 17:58, Yoni Rabkin <y...@rabkins.net> a écrit :
>>  >>  >>  >
>>  >>  >>  >>  Erica Qi <ericalin...@proton.me> writes:
>>  >>  >>  >>
>>  >>  >>  >>  > I put the code on codeberg.
>>  >>  >>  >>  >
>>  >>  >>  >>  > I didn't see where to join savannah.
>>  >>  >>  >>  > I can go look again.
>>  >>  >>  >>  >
>>  >>  >>  >>  > It's been pushed and ready a long time now.
>>  >>  >>  >>
>>  >>  >>  >>  In which case we've miscommunicated. I apologies for that.
>>  >>  >>  >>
>>  >>  >>  >>  Can you give me the codeberg url?
>>  >>  >>  >>
>>  >>  >>  >>  > Erica
>>  >>  >>  >>  >
>>  >>  >>  >>  > Envoyé depuis Proton Mail pour Android
>>  >>  >>  >>  >
>>  >>  >>  >>  >
>>  >>  >>  >>  > -------- Message d'origine --------
>>  >>  >>  >>  > Le 20/05/2025 17:39, Yoni Rabkin <y...@rabkins.net> a écrit :
>>  >>  >>  >>  >
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>  Erica Qi <ericalin...@proton.me> writes:
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>  > Those would be easy things to fix. Not sure why they are 
>> requiring each other...
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > I actually haven't pushed this anywhere as a whole. I
>>  >>  >>  >>  >>  > just kept my bits. I just wrote the doc
>>  >>  >>  >>  >>  > The last couple of weeks.
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > I'd be happy to work on it at savannah.
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>  Are you still planning on joining Savannah to work on Emms?
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>  > I just hopped from gitlab to codeberg so my personal 
>> stuff is a bit in limbo.
>>  >>  >>  >>  >>  > I'm in France, so it seemed like a good idea to find a
>>  >>  >>  >>  >>  > git host here. Really didn't like gitlab much.
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > I've been a little sick the last few days so moving a bit 
>> slow.
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > Let me know how to proceed and I'll fix that stuff and we
>>  >>  >>  >>  >>  > can hunt for more.  It should be pretty good.
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > Have a nice evening.
>>  >>  >>  >>  >>  > Erica
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > Envoyé depuis Proton Mail pour Android
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  > -------- Message d'origine --------
>>  >>  >>  >>  >>  > Le 31/03/2025 21:02, Yoni Rabkin <y...@rabkins.net> a 
>> écrit :
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  Erica Qi via <emms-help@gnu.org> writes:
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  > Hello,
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > I apologize in advance for the size of this patch. 
>> Its actually
>>  >>  >>  >>  >>  >>  > more than a year old now, I'm just now getting it 
>> together to give
>>  >>  >>  >>  >>  >>  > to you here. The documentation is fresh and extensive.
>>  >>  >>  >>  >>  >>  > I've been sure to follow along with browser changes
>>  >>  >>  >>  >>  >>  > as the time went by.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > It started with adding Album Artist and Genre to the 
>> browser.
>>  >>  >>  >>  >>  >>  > That led to refactoring the node-tree to make it 
>> easier to use.
>>  >>  >>  >>  >>  >>  > It is now defined by data instead of a function.
>>  >>  >>  >>  >>  >>  > I also fixed a lot doc strings because I hate doc 
>> string warnings.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > That led to frustration with filtering and searching, 
>> album artist and
>>  >>  >>  >>  >>  >>  > genre were also missing there.
>>  >>  >>  >>  >>  >>  > FIlters and searches didn't work together at all, Nor 
>> could they do
>>  >>  >>  >>  >>  >>  > anything more than a single thing at a time. 
>> Narrowing a search
>>  >>  >>  >>  >>  >>  > was impossible without writing more code, for a 
>> specific function
>>  >>  >>  >>  >>  >>  > to do that exact filter or search.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > I wrote the Filter system and refactored the browser 
>> to use it.
>>  >>  >>  >>  >>  >>  > The old browser system still works but is deprecated. 
>> Except in
>>  >>  >>  >>  >>  >>  > the case that someone has code that uses it, there is 
>> no reason
>>  >>  >>  >>  >>  >>  > to use it.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > There is a very thin layer of code which preserves 
>> the Brower's API
>>  >>  >>  >>  >>  >>  > but uses the filter system to do all the work.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > The new system is tremendously more powerful and much 
>> easier
>>  >>  >>  >>  >>  >>  > to extend and use.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > Here is the introductory paragraph from The filter 
>> system chapter in
>>  >>  >>  >>  >>  >>  > the documentation. I'll let the documentation and the 
>> code speak for itself.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > I will say that its actually fun to use, and when I 
>> look at the code,
>>  >>  >>  >>  >>  >>  > I am sometimes stunned by the beauty of it.
>>  >>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>  >>  > The filter system allows you to filter the metadata 
>> cache in order search
>>  >>  >>  >>  >>  >>  > and narrow your track data. It is based on a very 
>> powerful interactive
>>  >>  >>  >>  >>  >>  > system consistenting of filter and cache stacks which 
>> allow
>>  >>  >>  >>  >>  >>  > the creation and manipulation of complex filters and 
>> results caches.
>>  >>  >>  >>  >>  >>  > I hope you like it.
>>  >>  >>  >>  >>  >>  > Erica
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  I'm very happy to see someone working on the browser; 
>> thank you for
>>  >>  >>  >>  >>  >>  that.
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  There would a bit of work that needs to be done in 
>> order to include this
>>  >>  >>  >>  >>  >>  into Emms. But I don't think too much. Two things that 
>> come up with a
>>  >>  >>  >>  >>  >>  cursory glance:
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  The dependencies between `emms-filters' and 
>> `emms-browser' would need to
>>  >>  >>  >>  >>  >>  be figured out. `emms-filter' requires `emms-browser', 
>> but
>>  >>  >>  >>  >>  >>  `emms-browser' calls functions defined in `emms-filter'.
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  We would also need to rename all of the `emf-*' 
>> functions since we
>>  >>  >>  >>  >>  >>  shouldn't step on the `emf-*' "namespace".
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  I'm sure that there are other issues to mop up, but it 
>> also looks like
>>  >>  >>  >>  >>  >>  it wouldn't be anything too difficult.
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  I would like to work on this code in a public branch 
>> until we are happy
>>  >>  >>  >>  >>  >>  with it, then merge into the main git repo.
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  Do you have a public-facing copy of Emms with this code 
>> in a branch? If
>>  >>  >>  >>  >>  >>  not, would you like developer access so that you can 
>> create a branch on
>>  >>  >>  >>  >>  >>  Savannah?
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >>  --
>>  >>  >>  >>  >>  >>     "Cut your own wood and it will warm you twice"
>>  >>  >>  >>  >>  >>
>>  >>  >>  >>  >>  >
>>  >>  >>  >>  >>
>>  >>  >>  >>  >>  --
>>  >>  >>  >>  >>     "Cut your own wood and it will warm you twice"
>>  >>  >>  >>  >>
>>  >>  >>  >>  >
>>  >>  >>  >>
>>  >>  >>  >>  --
>>  >>  >>  >>     "Cut your own wood and it will warm you twice"
>>  >>  >>  >>
>>  >>  >>  >
>>  >>  >>
>>  >>  >>  --
>>  >>  >>     "Cut your own wood and it will warm you twice"
>>  >>  >>
>>  >>  >
>>  >>
>>  >>  --
>>  >>     "Cut your own wood and it will warm you twice"
>>  >>
>>  >
>>  
>>  --
>>     "Cut your own wood and it will warm you twice"
>>  
>

-- 
   "Cut your own wood and it will warm you twice"

Reply via email to