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"