New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dropped f dependency #330
Dropped f dependency #330
Conversation
I'm reading the test results, and I have a few comments:
|
I've definitely considered dropping these before because I'd much rather use built-ins then bring in a whole dependency, but in practice, this never worked very well particularly for supporting older versions of emacs. While some are merely better-named aliases for builtins some are doing quite a bit to ensure backward compatibility (if I remember correctly). If you can get all the tests to pass without adding any complicated helper functions into the code base then I am definitely supportive and will merge. I just don't want to add complexity or duplicate (then need to separately maintain) existing code that already exists in these libraries. |
|
Ok, but then Edit: Nevermind, I re-read the old code and noticed that there already was a different handling for included and excluded files. The only issue now is that |
@phikal Thanks for doing this! This is looking good. I am thinking of merging this soon. Do you have any additional concerns before I do? |
No, I have nothing more to add to this pull request. The only caveat would be to mention that I'm close to finishing a near 100% rewrite of the packet. As mention above, I started rewriting the code to drop s and dash, one thing lead to another and now I have a 5000+ line diff. I'm uncertain if submitting it as a pull request even makes sense, so if you're not too interested in that, merging this seems like a good first step. |
Wow, that's quite the change. Since you did the work you might as well open a PR. I'd be very curious to see what all changed, but to be perfectly honest I might not accept that drastic of a change. That said, I'll keep testing this PR and probably merge this one soon. Thanks again! |
I'll open a PR when it's stable. In case you're interesting, here's a snapshot of the current state: https://0x0.st/iQE0.el. It doesn't work yet and I have to still rework |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
A regression was introdcued in jacktasia#330 that caused dumb-jump-file-modified-p to always return nil. This is fixed now.
A regression was introdcued in #330 that caused dumb-jump-file-modified-p to always return nil. This is fixed now.
Hi again,
during my last pull request I was reading through the code, and was a bit disappointed to see how much the f, s and dash libraries are bing used. I personally, consider it bad elisp style, and wanted to suggest dropping them incrementally for the sake of legibility, speed, and good style.
My issue is the following: If one takes a look at how many of the
f-...
functions are defined, they are often just aliases for existing and perfectly good Emacs functions (for examplef-exists?
andfile-exists-p). In other cases they promote an inefficient style that ignores some of the strengths of Elisp, such as using string over buffers (see my
dumb-jump-read-config` rewrite for example).If you're ok with my proposition to stick more to "vanilla" Elsip, I'll submit a few more push requests soon to remove the other two libraries and possibly rewrite a few functions to avoid unnecessary consing where possible. If not, it's no problem at all.