-
Notifications
You must be signed in to change notification settings - Fork 160
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
Improve package.el compatibility #543
Improve package.el compatibility #543
Conversation
Finally someone got down to doing the dirty work :) 🥇 I don't see any issues with the changes. Have you tried it with local melpa install? All works as expected? |
No, and I'm not really sure how to do so. If no one else is, I can read up on how to do this.
As far as I can tell, there's no user-visible changes other than some nicer autoloading of features. Which people won't notice if they're not autoloading ess anyway. |
Hrm... playing around with MELPA is giving me errors. I guess hold off on merging this until I figure out what it's doing. |
I can get this to work correctly with MELPA if I change the melpa "recipe" file to:
so it looks like we might have to coordinate with them in order to change the |
And as a bonus, |
Are the errors due to ess-pkg.el? If so we can leave it empty till new recipe is merged into melpa. |
No, they're because I removed Changing the ess recipe to what I did above solves this by just bringing all the |
I recall that that was a hack before package.el could deal with nested directories.
Ok. I will try to find time to check this locally tomorrow and will send a PR to melpa once it's merged. |
nice! |
Any reason not to merge this? @vspinu |
I couldn't find time to figure this out yet. I want to get into details of package.el on this occasion and check melpa locally. Sorry about the delay :( |
I'll look into it as well to sort out the Makefile issues (cf the other PR). Hopefully there's a way of preventing compilation of some files. |
Because some files depend on macros that only exist in recent Emacsen, e.g. |
Ah, I hadn't thought of that, makes sense. And I see the other PR you referenced earlier. I should've checked that, sorry for making you repeat yourself. As far as I know, there's not an easy solution (other than having the user re-compile, anyway). I'll think about it some more though.... FWIW I don't use the Makefile ESS provides. I just byte compile everything in I wonder if ESS should move to suggesting installation via |
OK to add |
Yes please. I am still struggling to find time for this, sorry. Will do my best to sink into by the end of the week. |
No rush. If it's helpful, here's how I've been working with melpa locally:
that creates If you change
then it will use this branch to build the recipe instead of Let me know if you run into any problems or have questions! |
@vspinu have you had a chance to look at this? |
Not yet. Sorry. I have had a bunch of rough weeks :/ Cannot do it this weekend but for sure on Monday or Tuesday. |
No problem, thanks!
…On Sat, Jun 9, 2018, 4:18 PM Vitalie Spinu ***@***.***> wrote:
Not yet. Sorry. I have had a bunch of rough weeks :/ Cannot do it this
weekend but for sure on Monday or Tuesday.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#543 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ALXMiWLskf1M-gpaNZwy8NAaBYUFLuVRks5t7DuVgaJpZM4T91Nj>
.
|
fa8e5b0
to
2e0a61b
Compare
Just rebased off master and there is a failing test. It's to do with that font lock stuff I mentioned when adding this test yesterday. Weirdly, it only fails on emacs-git. I've no idea why. @lionel- perhaps font lock info should be made optional in these tests? |
Most people won't be able to simply remove (load "ess-site.el") after this. Manipulating any variable or alias (including plenty of recent obsoletes) which is not autoloaded will trigger an error. The good thing is that most people will still have |
What do you have in mind here? I'm assuming most people aren't doing much outside e.g. If they do something more complicated, they can always wrap in in |
I was changing |
I have looked at this and it works as expected in my tests. If there no further proposals I will PR to MELPA tomorrow with the following recipe: (ess
:repo "emacs-ess/ESS"
:fetcher github
:files ("*.el" "lisp/*.el"
"doc/*.texi" "doc/info/dir"
("etc" "etc/*")
("obsolete" "obsolete/*.el")
(:exclude "etc/other"))) |
@jabranham please don't rebase or add anything here. I have pulled your fork locally and already started building on top of it. Will merge once MELPA recipe is accepted. |
Great, thanks! I think we can close #2 after this gets merged? |
There is a pretty long back log for MELPA submissions. It might take a week or two, especially given that our repo is not the cleanest one. They have tightened requirements quite a bit (compilation, checkdoc, package-lint). We are long way from a clean build, but I think 19.04 can be a doable target for an absolutely clean repo. |
I'm guessing they'll be a bit more lenient with ESS since it's an established package. Hopefully we hear back sometime in the next day or two. |
2e0a61b
to
3ef8c5f
Compare
Naming a file this way goes against the Elisp manual, see: (info "(elisp)Multi-file Packages")
If you want to know if something has been loaded, look at the features variable.
We can move obsolete files here and Emacs will automatically warn that they are obsolete whenever they are loaded
3ef8c5f
to
8708bad
Compare
I think the commit messages are self-explanatory, let me know if there are any questions.
Related to #2