On Wed, Apr 12, 2023 at 4:58 PM Eli Zaretskii<eliz@gnu.org> wrote:
Had another idea: what about this very tiny patch, then? It makes `M-x
package-install` work for installing a :core package. This also rhymes
exactly with Stefan's intution/feeling that :core packages need to be
"installed" to promote them to installable. The current M-x
package-install recommendation could remain flawlessly and then you can
do whatever you think is best for M-x package-update & friends.
This has the same problem: it modifies a function that is called in
too many places. package-installed-p has half a dozen callers in
package.el alone. The change is tiny, but what about its
implications on every use case where it is involved?
What if we only fix 'package-upgrade' (nee package-update) in emacs-29?
I believe that's what João was proposing.
AFAICT, Dmitry was asking only for package-update, not
package-update-all. Stefan was also inclined for that.
In my changes, I changed both. But it is not hard for me to touch
only package-update and to do it with the utmost care for
separation and stability.
For the moment, I'm focusing on M-x package-install, like Philip is.
There seems to be more consensus there that it should offer to update
builtin packages that have never been updated.
I do believe there is high demand for a "upgrade/update" mechanism
that just "updates whatever there is to update, don't care if core
or whatnot" and people looking at package-update-all and
package-menu--mark-upgrades (the "U" command Dmitry brought up)
will eventually be disappointed.