https://bugs.kde.org/show_bug.cgi?id=442027

Francis Herne <m...@flherne.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|m...@svenbrauch.de          |m...@flherne.uk
                 CC|                            |m...@flherne.uk

--- Comment #2 from Francis Herne <m...@flherne.uk> ---
Thank you for the detailed report.

This was a known missing feature - it existed briefly, but had to be disabled
because at that time the parser returned very inaccurate character ranges for
the elements within f-strings, which led to crashes when trying to look up the
variables; see
https://invent.kde.org/kdevelop/kdev-python/-/commit/275775c150a9c5eed5db8ad76fe45da7e273e8f1

I had considered the impact to be relatively small, since f-string expressions
rarely have side-effects and the evaluated type is always `str`, but hadn't
considered the auto-renaming case.


In recent CPython versions, particularly 3.8+, the parser has been improved to
return more range information (which should allow removing many ugly and
unreliable workarounds in kdev-python) and the information is also more
reliable. I'll investigate taking advantage of this to enable proper support of
expressions in f-strings.

P.S. -- kdev-python has been effectively in maintenance mode for a while,
because neither Sven nor I have been able to work on it much. If you'd be
interested in contributing to the project please drop by #kdevelop on
irc.libera.chat and discuss it :-)   My own first non-trivial KDE commit was to
fix a missing Python feature that bugged me; in that case `foo, *bar = ...`
unpacking.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to