PR #4649 merged into devel and 6.8.9 branches

17 views
Skip to first unread message

Edward K. Ream

unread,
Apr 30, 2026, 5:06:24 AM (24 hours ago) Apr 30
to leo-editor
​PR #4649 fixes several regressions related to key handling.

I'm pleased with the results. The PR sets the stage for further improvements to Leo's complex key-handling code.

I found several minor (probably long-standing) quirps during last-minute testing. I've added them to the to-do list in PR #4646.

Please continue testing the devel branch. Thanks.

Edward

P. S.  Yesterday, I read with interest this article about troubleshooting in the American Scientist magazine. It was focused on hardware, but it gave me a new distinction: the "midpoint" of a problem.

I saw that PR #4649 makes LeoKeyEvent.__init__ the midpoint of Leo's key handling code. The "before" part is Qt's event dispatching code, which is controlled by LeoQtEventFilter.eventFilter. The "after" part consists of all of Leo's command-related methods.

This distinction helped isolate the source of the issue. I easily saw that Qt was doing its job. It was calling LeoKeyEvent.__init__ as expected. So there was no need to inspect the Qt "wiring". Otoh, the new quirps probably are the result of missing connections between widgets and eventFilter.

EKR

Viktor Ransmayr

unread,
Apr 30, 2026, 7:30:10 AM (21 hours ago) Apr 30
to leo-editor
Hello Edward,

Edward K. Ream schrieb am Donnerstag, 30. April 2026 um 11:06:24 UTC+2:
​PR #4649 fixes several regressions related to key handling.

I'm pleased with the results. The PR sets the stage for further improvements to Leo's complex key-handling code.

I found several minor (probably long-standing) quirps during last-minute testing. I've added them to the to-do list in PR #4646.

Please continue testing the devel branch. Thanks.

I tested the 'devel' branch in a Debian 13 & a Fedora 43 container.

I performed quick 'find' functionality tests manually - and - did not find any issues.

This time I also ran the 'full_test_leo' script - and - only on Fedora the following issues were reported by 'mypy'. - See attached log

With kind regards,

Viktor

---

<Log>

    📦[user@leo-on-fedora leo-editor]$
    📦[user@leo-on-fedora leo-editor]$ python -m leo.scripts.full_test_leo
    full_test_leo.py
    beautify_all_leo.py
    125 files reformatted, 489 files left unchanged
    flake8_leo.py
    pyflakes_leo.py
    run_test_leo.py
    ................................................................................
    ................................................................................
    ..............................fatal: invalid object name 'master'.
    ...........s....................................................................
    ................................................................................
    ................................................................................
    ................................................................................
    ................................................................................
    .............................................................s..................
    ................................................................................
    ................................................................................
    .........................s.........
    ----------------------------------------------------------------------
    Ran 865 tests in 9.468s

    OK (skipped=3)
    mypy_leo.py
    leo/core/leoQt.py:33: error: Name "Qsci" already defined on line 17  [no-redef]
    leo/core/leoQt.py:71: error: Name "QtWebEngineCore" already defined on line 23  [no-redef]
    leo/core/leoQt.py:77: error: Name "QtWebEngineWidgets" already defined on line 24  [no-redef]
    Found 3 errors in 1 file (checked 257 source files)
    ruff_leo.py
    All checks passed!
    check_leo.py: files: 94 contexts: 6804 attrs: 46572 in 1.81 sec.
    pylint_leo.py
    no pylint configuration file found in
    /home/user/distroboxes/projects/leo-on-fedora/leo-editor/.pylintrc
    /home/user/distroboxes/projects/leo-on-fedora/leo-editor/pylint-leo-rc.txt
    /home/user/distroboxes/projects/leo-on-fedora/.leo/.pylintrc
    /home/user/distroboxes/projects/leo-on-fedora/.leo/pylint-leo-rc.txt
    /home/user/distroboxes/projects/leo-on-fedora/leo/test/.pylintrc
    /home/user/distroboxes/projects/leo-on-fedora/leo/test/pylint-leo-rc.txt
    The config file None doesn't exist!
    📦[user@leo-on-fedora leo-editor]$

</Log>
 

Edward K. Ream

unread,
Apr 30, 2026, 7:55:34 AM (21 hours ago) Apr 30
to leo-e...@googlegroups.com
On Thu, Apr 30, 2026 at 6:30 AM Viktor Ransmayr <viktor....@gmail.com> wrote:

> I tested the 'devel' branch in a Debian 13 & a Fedora 43 container.

> I performed quick 'find' functionality tests manually - and - did not find any issues.

> This time I also ran the 'full_test_leo' script - and - only on Fedora the following issues were reported by 'mypy'. - See attached log

Many thanks for your testing. I'll look into the failures you report.

Edward

Edward K. Ream

unread,
Apr 30, 2026, 8:02:30 AM (21 hours ago) Apr 30
to leo-editor
On Thursday, April 30, 2026 at 6:55:34 AM UTC-5 Edward K. Ream wrote:

>> This time I also ran the 'full_test_leo' script - and - only on Fedora the following issues were reported by 'mypy'. - See attached log
> Many thanks for your testing. I'll look into the failures you report.

The mypy complaints aren't serious. They arise from definitions in an `if 0:` block. I'll remove that block: it has served its purpose.

The unit test message and the reformatted files are harmless.

Thanks again for your testing.

Edward

Edward K. Ream

unread,
Apr 30, 2026, 8:08:33 AM (21 hours ago) Apr 30
to leo-editor
On Thursday, April 30, 2026 at 7:02:30 AM UTC-5 Edward K. Ream wrote:
On Thursday, April 30, 2026 at 6:55:34 AM UTC-5 Edward K. Ream wrote:

>> This time I also ran the 'full_test_leo' script - and - only on Fedora the following issues were reported by 'mypy'. - See attached log
> Many thanks for your testing. I'll look into the failures you report.

The mypy complaints aren't serious. They arise from definitions in an `if 0:` block. I'll remove that block: it has served its purpose.

That didn't work. But I think we can ignore the mypy complaints. Everything is fine on my end.

Edward

Viktor Ransmayr

unread,
Apr 30, 2026, 3:48:41 PM (13 hours ago) Apr 30
to leo-editor

Hello Edward,

I trust your judgement on this one.

However after re-reading the log I attached to my message,  I think that the repository is missing a / the pylint configuration file !

Can you attach / upload the one you are using ?

With kind regards,

Viktor

Reply all
Reply to author
Forward
0 new messages