el-get icon indicating copy to clipboard operation
el-get copied to clipboard

Synchronize status with package.el

Open jd opened this issue 14 years ago • 3 comments

Currently, if one install an ELPA package via el-get, the status is not synchronized. That means if you "el-get-install " and then remove it via package.el, el-get will be out-of-sync.

Maybe we can improve that and fetch the package status directly from the ELPA backend.

jd avatar Oct 11 '11 16:10 jd

In general, any el-get package dir that is a symlink could have this problem. In particular, install methods that use the system package managet (e.g. apt-get) would also have this problem. I guess a generic way to deal with this is to check the targets of all symlinked packages, and if the link is dead, assume the package has been uninstalled.

However, then you need to think about dependencies, and whether to just reinstall that package, remove those that depend on it, or just leave things in an inconsistent state.

DarwinAwardWinner avatar Oct 11 '11 17:10 DarwinAwardWinner

There's also the problem of versionning with ELPA. We symlink to a package-version directory. What if you upgrade that in ELPA? I don't know what happens with the previous version, but if the directory disappears, you can't follow the symlink anymore yet the package is still installed.

dimitri avatar Oct 12 '11 09:10 dimitri

Maybe el-get methods should have the option of overriding the "get package status" operation by supplying an optional argument to the registration function?

By the way, we might want to consider starting to use cl-style keyword arguments (using defun*) instead of long lists of optional arguments.

DarwinAwardWinner avatar Oct 12 '11 17:10 DarwinAwardWinner