GNU bug report logs - #61000
emacs-28.2 hangs on displaying ill-formed python source

Previous Next

Package: emacs;

Reported by: Yoichi Nakayama <yoichi.nakayama <at> gmail.com>

Date: Sun, 22 Jan 2023 07:22:01 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 61000 in the body.
You can then email your comments to 61000 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#61000; Package emacs. (Sun, 22 Jan 2023 07:22:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yoichi Nakayama <yoichi.nakayama <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 22 Jan 2023 07:22:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Yoichi Nakayama <yoichi.nakayama <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: emacs-28.2 hangs on displaying ill-formed python source
Date: Sun, 22 Jan 2023 16:21:02 +0900
Hi,
I found Emacs-28.2 becomes inoperable (hangs at 100% CPU usage)
when displaying certain ill-formed Python source code.

How to reproduce:
(1) prepare python source file
https://raw.githubusercontent.com/sqlfluff/sqlfluff/6071b70ef6a46b19141495ee8d38b41b27750b2c/src/sqlfluff/dialects/dialect_snowflake.py
(2) open it by "emacs -Q dialect_snowflake.py"
(3) jump to line 767 by "M-g g 767 RET".
(4) remove closing triple quotes by "C-k"

class FunctionNameSegment(ansi.FunctionNameSegment):
    """Function name, including any prefix bits, e.g. project or schema.
    Overriding FunctionNameSegment to support Snowflake's IDENTIFIER
pseudo-function.
    """ <== remove this triple quote


I also verified the following:
* The problem doesn't occur with Emacs-28.1
* The problem doesn't occur when I load lisp/progmode/python.el
before 1b77362 between step (2) and (3).
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=1b7736277114bf91012b817a4e2557625b7340a5

> commit 1b7736277114bf91012b817a4e2557625b7340a5
> Author: Lars Ingebrigtsen <larsi <at> gnus.org>
> Date:   Mon Apr 18 13:17:32 2022 +0200
>
>     Avoid hangs in python-mode with debug-on-error set
>
>     * lisp/progmodes/python.el (python-nav-end-of-statement): Avoid
>     using cl-assert here, because this is called from the font-lock
>     machinery, and if debug-on-error is set here, we'll hang Emacs
>     (bug#54996).
>
>     Do not merge to master.

Thanks,
-- 
Yoichi NAKAYAMA




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#61000; Package emacs. (Sun, 22 Jan 2023 10:54:01 GMT) Full text and rfc822 format available.

Message #8 received at 61000 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Yoichi Nakayama <yoichi.nakayama <at> gmail.com>
Cc: 61000 <at> debbugs.gnu.org
Subject: Re: bug#61000: emacs-28.2 hangs on displaying ill-formed python source
Date: Sun, 22 Jan 2023 12:53:09 +0200
> From: Yoichi Nakayama <yoichi.nakayama <at> gmail.com>
> Date: Sun, 22 Jan 2023 16:21:02 +0900
> 
> Hi,
> I found Emacs-28.2 becomes inoperable (hangs at 100% CPU usage)
> when displaying certain ill-formed Python source code.
> 
> How to reproduce:
> (1) prepare python source file
> https://raw.githubusercontent.com/sqlfluff/sqlfluff/6071b70ef6a46b19141495ee8d38b41b27750b2c/src/sqlfluff/dialects/dialect_snowflake.py
> (2) open it by "emacs -Q dialect_snowflake.py"
> (3) jump to line 767 by "M-g g 767 RET".
> (4) remove closing triple quotes by "C-k"
> 
> class FunctionNameSegment(ansi.FunctionNameSegment):
>     """Function name, including any prefix bits, e.g. project or schema.
>     Overriding FunctionNameSegment to support Snowflake's IDENTIFIER
> pseudo-function.
>     """ <== remove this triple quote
> 
> 
> I also verified the following:
> * The problem doesn't occur with Emacs-28.1
> * The problem doesn't occur when I load lisp/progmode/python.el
> before 1b77362 between step (2) and (3).
> https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=1b7736277114bf91012b817a4e2557625b7340a5
> 
> > commit 1b7736277114bf91012b817a4e2557625b7340a5
> > Author: Lars Ingebrigtsen <larsi <at> gnus.org>
> > Date:   Mon Apr 18 13:17:32 2022 +0200
> >
> >     Avoid hangs in python-mode with debug-on-error set
> >
> >     * lisp/progmodes/python.el (python-nav-end-of-statement): Avoid
> >     using cl-assert here, because this is called from the font-lock
> >     machinery, and if debug-on-error is set here, we'll hang Emacs
> >     (bug#54996).
> >
> >     Do not merge to master.

Thanks, I can reproduce this in Emacs 28.2, but not on what will be
soon Emacs 29.1.  So I guess the fact that we didn't merge the above
"fix" to master avoids the problem in Emacs 29.

So I think this problem is limited to Emacs 28.2, and we don't have to
do anything about it, since we don't plan any additional releases from
the macs-28 branch.

Thanks.




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Thu, 26 Jan 2023 08:05:02 GMT) Full text and rfc822 format available.

Notification sent to Yoichi Nakayama <yoichi.nakayama <at> gmail.com>:
bug acknowledged by developer. (Thu, 26 Jan 2023 08:05:02 GMT) Full text and rfc822 format available.

Message #13 received at 61000-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: yoichi.nakayama <at> gmail.com
Cc: 61000-done <at> debbugs.gnu.org
Subject: Re: bug#61000: emacs-28.2 hangs on displaying ill-formed python source
Date: Thu, 26 Jan 2023 10:04:13 +0200
> Cc: 61000 <at> debbugs.gnu.org
> Date: Sun, 22 Jan 2023 12:53:09 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> Thanks, I can reproduce this in Emacs 28.2, but not on what will be
> soon Emacs 29.1.  So I guess the fact that we didn't merge the above
> "fix" to master avoids the problem in Emacs 29.
> 
> So I think this problem is limited to Emacs 28.2, and we don't have to
> do anything about it, since we don't plan any additional releases from
> the emacs-28 branch.

No further comments in a week, so I'm closing this bug as fixed.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 23 Feb 2023 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 60 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.