GNU bug report logs -
#49877
[Emacs 28.0.50 Trunk] *ERROR*: No applicable method: frame-creation-function
Previous Next
Reported by: Jacob Faibussowitsch <jacob.fai <at> gmail.com>
Date: Wed, 4 Aug 2021 16:04:01 UTC
Severity: normal
Tags: moreinfo
Merged with 49866
Found in version 28.0.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Hello Emacs,
Here is one way to reliably produce the behavior, please excuse
if you think the method or tools that are used are inappropriate,
this is the best i could come up with.
Unfortunatly, for me it isn't reproducible on a docker silex/emacs
image based on Debian. It hit me on my NixOS machine, so i wanted
to create a setup that could be shared to this list.
Bisecting the Github mirror source results in the already mentioned
commit with the message header "Evaluate eql specializers"
> 6535fd1fa9ac21238a168916249ac59677a6118e is the first bad commit
The eval string "(prog1 'counsel (require 'counsel))" is the minimum
piece of code that triggers the bug. This is the stripped down expansion
of the form that is generated by the package leaf.el.
Note that counsel is not the only package that produces the error.
Consequently, some package, e.g. 'package does not invoke it.
Edebugging the scenario leads to frame.el at
(setq frame (let ((window-system w)) ; Hack attack!
(frame-creation-function params)))
where the crash happens.
Maybe the attached Dockerfile and brief usage info is of help for
someone to debug it, i do lack the knowledge to make sense of the behavior.
Also a diff of the config.status from my experiments with the debian
image is available, and if requested or needed, i might provide more
information.
Following command lines might be handy to inspect and observe what
is happening.
To create the image
% docker build -t emacs-49877 .
To run the drafted crash
% docker run --rm -it emacs-49877
To inspect in a shell or run emacs inside the container
% docker run --rm -it --entrypoint /bin/sh --name emacs emacs-49877
To show the build log
# source .env && nix log $BINPATH
To inspect the state of build environment
# source .env && nix show-derivation $BINPATH
To observe the bug while running in an emacsclient in one terminal
% docker run --rm -it --entrypoint /bin/sh --name emacs emacs-49877
# result/bin/emacs -Q --daemon
# result/bin/emacsclient -t
And in another terminal, two times, the second will crash
% docker exec -it emacs /emacs-overlay-master/result/bin/emacsclient -t --eval "(prog1 'counsel (require 'counsel))"
C-x 5 0
Cheers,
Christian
[Dockerfile (plain/text, attachment)]
This bug report was last modified 3 years and 346 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.