Skip to content
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

Fixes for ELPA support (v2) #1763

Merged
merged 5 commits into from
May 28, 2014
Merged

Fixes for ELPA support (v2) #1763

merged 5 commits into from
May 28, 2014

Conversation

npostavs
Copy link
Collaborator

This extends/replaces/ close #1756.

Basically follows #1756 (comment), with a bit of cleanup.

@npostavs npostavs mentioned this pull request May 26, 2014
@dimitri
Copy link
Owner

dimitri commented May 27, 2014

Please push anything that makes the ELPA situation better!

Rüdiger Sonderfeld and others added 5 commits May 28, 2014 17:55
This also checks if they exist.  Which might even be a problem for
`package-user-dir' on its own for a fresh GNU Emacs install.

* methods/el-get-elpa.el (el-get-elpa-package-directory): Scan all
  package directories and make sure they exist.
This can happen if the package directory is simply deleted but it is
still in the `package-list' and the user tries to re-install the
package.  It is an error but without the patch the error is caused in
`file-relative-name'.

* methods/el-get-elpa.el (el-get-elpa-symlink-package): Gracefully error
  if no directory is found.
In 24.4, simply removing the package directory is no longer enough. This
will only set the package status to `deleted' but package.el will still
think the package is installed and refuse a re-install. Calling
`package-delete' will ensure the right thing is done.

In 24.3 `package-delete' does only remove the directory so we stick with
that, but loading dired is no longer necessary since emacs 23.2 when
`delete-directory' got the optional RECURSIVE parameter.

* methods/el-get-elpa.el (el-get-elpa-post-remove): Call
  `package-delete' to remove packages.
* methods/el-get-elpa.el
  (package-desc-summary, package-desc-version):
  make aliases to the new 24.4 names.
  (el-get-elpa-delete-package, el-get-elpa-descs): new wrapper functions
  to simulate 24.4 behaviour in 24.3 and below.
  (el-get-elpa-build-local-recipes, el-get-elpa-post-remove,
  el-get-elpa-update-available-p): use the new wrappers/aliases.
* methods/el-get-elpa.el (el-get-elpa-package-directory): use
  catch-throw instead of setting helper variable to achieve early loop
  exit.
@npostavs npostavs merged commit 970b927 into dimitri:master May 28, 2014
@ruediger
Copy link
Contributor

👍

@npostavs npostavs deleted the elpa-fix3 branch June 3, 2014 22:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants