I did what you suggested:
(defvar emms-player-mpv-ipc-conn-emacs-26-workaround (> emacs-major-version 26) "Non-nil to enable workaround for issue #31901 in emacs 26.0-26.1 and possibly later versions. These seem to fail to call sentinel function for unix socket network processes that were started with :nowait t, so blocking connections are used there instead.") (message "------ emms-mpv: emacs-major-version on load: %s" emacs-major-version) (message "------ emms-mpv: workaround value init: %s" emms-player-mpv-ipc-conn-emacs-26-workaround) I got the following in the Message buffer ------ emms-mpv: emacs-major-version on load: 26 ------ emms-mpv: workaround value init: nil Also, instead of these two lines i added (debug-watch 'emms-player-mpv-ipc-conn-emacs-26-workaround) The debugger didnot appear, nothing is in the Message buffer. > Got comment on underlying emacs issue, confirming that it might be > accidental bug during refactoring, so might hopefully be fixed without > need for such workarounds in the next emacs version releases. Good. >> Mike, >> >> Yeah i cannot figure out what it is going on. >> >> > You don't have it disabled or overidden manually somewhere, by chance? >> no >> >> (>= emacs-major-version 26) >> gives >> t > > Guess one other option is that something straight-up does: > > (let ((emacs-major-version 25)) ... (require 'emms-player-mpv) ...) > > ...somewhere, maybe as a bad workaround for whatever weird quirk. > > Sorry that it's already a lot of work for issue that you > probably don't particulary care about, but maybe you can edit that elpa > file at /home/reich/.emacs.d/elpa/emms-20180630.945/emms-player-mpv.el > and next to (defvar emms-player-mpv-ipc-conn-emacs-26-workaround ...) > line (e.g. right after it), put something like this: > > (message "------ emms-mpv: emacs-major-version on load: %s" > emacs-major-version) > (message "------ emms-mpv: workaround value init: %s" > emms-player-mpv-ipc-conn-emacs-26-workaround) > > And then restart emacs, make it load/init emms as you'd usually do, and > look into *Messages* afterwards for these two lines. > > First one should show if maybe emacs-major-version is indeed overidden, > while second one might reveal whether variable is initialized to t and > then reset to nil or if latter happens on initialization there. > > And if it's the latter case of something changing variable indeed > (probably is, given that it's defined in the right place and > emacs-major-version hack seems very unlikely), then edit that file > again and instead of these two "message" lines put this one there: > > (debug-watch 'emms-player-mpv-ipc-conn-emacs-26-workaround) > > This should land you in an emacs debugger with a backtrace should > anything ever try to change that variable (nothing in emms code should > afaik), so likely will signal such error upon next restart and emms init. > > Found out about this new feature of emacs-26.1 myself googling for how > to trace variable changes just now. > > Again, thanks and apologies for all the debugging work you've done on > this issue already. > > Got comment on underlying emacs issue, confirming that it might be > accidental bug during refactoring, so might hopefully be fixed without > need for such workarounds in the next emacs version releases. > https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=e09c0972c350e9411683b509414fc598cbf387d3 > _______________________________________________ Emms-help mailing list [email protected] https://lists.gnu.org/mailman/listinfo/emms-help
