all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ryan B <pair@ryanb.org>
To: 58780@debbugs.gnu.org
Subject: bug#58780: python.el infinite loop in info-current-defun
Date: Mon, 5 Dec 2022 12:32:23 -0800	[thread overview]
Message-ID: <CA+caGh_EKYywfzFB9ABkEeSwOCuqc0mYTuGQ_dL9gUY+N+jdJw@mail.gmail.com> (raw)
In-Reply-To: <CA+caGh-X3BY0jJc0bMCXT48S6xtst8Z30OtoJPkgty1s4xbkAQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2044 bytes --]

Advice seems to work better at preventing the hang:

(defun python-nav-end-of-statement--bug-override (orig-fn &optional noend)
  (forward-line 1))
(advice-add 'python-nav-end-of-statement :around
#'python-nav-end-of-statement--bug-override)

On Mon, Dec 5, 2022 at 7:01 AM Ryan B <pair@ryanb.org> wrote:

> I take it back, that override doesn't fully prevent it after all. 😢
>
> On Mon, Dec 5, 2022 at 6:57 AM Ryan B <pair@ryanb.org> wrote:
>
>> Confirmed, probably the same root cause. When I brute force override
>> python-nav-end-of-statement like below, it doesn't happen any more.
>>
>> (defun python-nav-end-of-statement (&optional noend)
>>   (interactive "^")
>>   (forward-line 1))
>>
>>
>> On Mon, Dec 5, 2022 at 6:44 AM Ryan B <pair@ryanb.org> wrote:
>>
>>> I think I have a repro for this with a single quote ' , as opposed to
>>> triple string. I think I started seeing this hang after upgrading to Emacs
>>> 28.2. I now hit it very often, it's pretty painful. I don't know for sure
>>> that it's the same bug, but it seems likely. Reproduces with emacs -Q:
>>>
>>> ======
>>> class Foo():
>>>
>>>   def __init__(self):
>>>     '
>>>
>>>   def bar(self):
>>>     """Fetches posts and converts them to ActivityStreams activities.
>>>     See source.Source.get_activities_response for details. app_id is
>>>     ignored. min_id is translated to Twitter's since_id.
>>>     """
>>>     pass
>>> ======
>>>
>>> The single quote and multiple lines in the docstring are necessary for
>>> the repro. No extra newline at the end needed though.
>>>
>>> JD, do you have a workaround for this? I may look into overriding
>>> python-nav-end-of-defun until it's fixed. Any other ideas?
>>>
>>> My emacs-version: GNU Emacs 28.2 (build 1, aarch64-apple-darwin21.1.0,
>>> NS appkit-2113.00 Version 12.0.1 (Build 21A559)) of 2022-09-12
>>>
>>> --
>>> https://snarfed.org/
>>>
>>
>>
>> --
>> https://snarfed.org/
>>
>
>
> --
> https://snarfed.org/
>


-- 
https://snarfed.org/

[-- Attachment #2: Type: text/html, Size: 3475 bytes --]

  reply	other threads:[~2022-12-05 20:32 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-25 19:06 bug#58780: python.el infinite loop in info-current-defun JD Smith
2022-12-05 14:44 ` Ryan B
2022-12-05 14:57   ` Ryan B
2022-12-05 15:01     ` Ryan B
2022-12-05 20:32       ` Ryan B [this message]
2023-03-05  8:19         ` kobarity
2023-03-09 10:16           ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+caGh_EKYywfzFB9ABkEeSwOCuqc0mYTuGQ_dL9gUY+N+jdJw@mail.gmail.com \
    --to=pair@ryanb.org \
    --cc=58780@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.