Subject: 29.3; python-ts-mode navigation fails

From: Tim Loderhose <[email-masked]>
Date: Wed, 10 Jul 2024 09:45:01 +0000

python-nav-forward-defun doesn't work properly in python-ts-mode, for
example with this file:
https://raw.githubusercontent.com/timlod/onset-fingerprinting/6c8f9bd3b82398c9af3519036e0d5a550ad3bae7/onset_fingerprinting/data.py

Specifically, at some point it will stop navigating, even though there
are still function definitions to traverse (other times I saw it skipped
some definitions before stopping altogether). I noticed that this
usually happens after some point in the buffer, but I haven't been able
to nail it down exactly. My hunch is that it could be related to
decorators (e.g. @classmethod) or type hints, or both.

It does work properly using just python-mode. This is tested using
`emacs -q`, so this bug persists just on a clean Emacs 29.3.

I checked previous reports and believe this is probably related to
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60856, which isn't fixed yet.

In GNU Emacs 29.3 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.33,
cairo version 1.16.0) of 2024-06-08 built on pop-os
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Pop!_OS 22.04 LTS

Configured using:
'configure --with-native-compilation --with-json --without-mailutils
--without-pop'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
value of $LANG: en_GB.UTF-8
locale-coding-system: utf-8