I'm trying to upgrade from
emacs-30.0.50 under Ubuntu GNU/Linux.
Now, when I use
emacs-30.0.50, I get this error on startup:
Wrong number of arguments: make-obsolete-variable, 2
I understand that this is due to the fact that the
emacs-30.0.50 version of
make-obsolete-variable takes 3 required arguments and one optional argument, while the
emacs-27.2 version of
make-obsolete-variable takes only 2 required argument and 1 optional argument.
make-obsolete-variable appears in numerous emacs packages that I am using, most of them 3rd-party packages. It will be a major headache for me to upgrade all of those packages.
I don't care if
make-obsolete-variable function is a no-op. What I'm hoping for is some sort of way to tell emacs to turn all those existing
make-obsolete-variable calls into do-nothing calls, but I can't figure out a way to make that happen.
I tried putting the following at the top of my
$HOME/.emacs file, but it doesn't help ...
(fmakunbound 'make-obsolete-variable) (unintern 'make-obsolete-variable) (defun make-obsolete-variable (&optional a b c d) )
After doing this, I get numerous errors similar to this one at emacs startup time:
Warning (comp): /usr/local/share/emacs/site-lisp/wl/elmo-date.el: Error: Wrong number of arguments make-obsolete-variable
Is there anything I can do to stop getting these errors under
emacs-30.0.50 without upgrading all of my emacs packages which currently make use the old version of this function call?
To clarify, another reason that I don't want to install all new package versions is that I might end up deciding to go back to
emacs-27.2, in which case I'd have to reinstall all the old packages again. That would be another major headache.