Your message dated Sun, 26 Oct 2025 18:38:17 +0000
with message-id <[email protected]>
and subject line Bug#1114703: fixed in napari-console 0.1.4-1
has caused the Debian Bug report #1114703,
regarding napari-console: TypeError: get_theme() got an unexpected keyword 
argument 'as_dict'
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1114703: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1114703
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: napari-console
Version: 0.1.3-5
Severity: important
User: [email protected]
Usertags: numpy2.3
Tags: ftbfs, forky, sid

Dear maintainer,

During a test rebuild for NumPy 2.3, napari-console failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
E        +    where <built-in method hasFocus of QTextEdit object at 
0x7f7ec8f8e570> = <PyQt5.QtWidgets.QTextEdit object at 0x7f7ec8f8e570>.hasFocus
E        +      where <PyQt5.QtWidgets.QTextEdit object at 0x7f7ec8f8e570> = 
<napari_console.qt_console.QtConsole object at 0x7f7ec8f8e4e0>._control

_tests/test_qt_console.py:73: AssertionError

The above exception was the direct cause of the following exception:

qtbot = <pytestqt.qtbot.QtBot object at 0x7f7ec940a490>
make_test_viewer = <function make_test_viewer.<locals>.actual_factory at 
0x7f7ec94753a0>

    def test_console_focus_proxy(qtbot, make_test_viewer):
        """Test setting/clearing focus on a QtConsole sets/clears focus on the 
underlying QTextEdit"""
        viewer = make_test_viewer()
    
        # setFocus does nothing if the widget is not shown
        console = viewer.window._qt_viewer.console
        with qtbot.waitExposed(console):
            viewer.show()
            viewer.window._qt_viewer.toggle_console_visibility()
    
        console.clearFocus()
    
        assert (
            not console._control.hasFocus()
        ), "underlying QTextEdit widget should not have focus after clearing"
    
        console.setFocus()
    
        # timeout (in ms) avoids flaky tests since setting focus takes time
        def control_has_focus():
            assert (
                console._control.hasFocus()
            ), "underlying QTextEdit widget never received focus"
    
>       qtbot.waitUntil(control_has_focus, timeout=30000)
E       pytestqt.exceptions.TimeoutError: waitUntil timed out in 30000 
milliseconds

_tests/test_qt_console.py:77: TimeoutError
----------------------------- Captured stderr call -----------------------------
WARNING: could not determine DPI
------------------------------ Captured log call -------------------------------
WARNING  vispy:_linux.py:68 could not determine DPI
_____________________________ test_ipython_console _____________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f7ec93d2580>
make_test_viewer = <function make_test_viewer.<locals>.actual_factory at 
0x7f7f16cbec00>

    def test_ipython_console(qtbot, make_test_viewer):
        """Test mock-creating a console from within ipython."""
    
        def mock_get_ipython():
            return TerminalInteractiveShell()
    
        with mock.patch(
            'napari_console.qt_console.get_ipython',
            side_effect=mock_get_ipython,
        ):
            viewer = make_test_viewer()
>           console = QtConsole(viewer)
                      ^^^^^^^^^^^^^^^^^

napari_console/_tests/test_qt_console.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
napari_console/qt_console.py:163: in __init__
    self._update_theme(style_sheet=style_sheet)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <napari_console.qt_console.QtConsole object at 0x7f7ec8214050>
event = None, style_sheet = ''

    def _update_theme(self, event=None, style_sheet=''):
        """Update the napari GUI theme."""
        from napari.utils.theme import get_theme
    
        # qtconsole unfortunately won't inherit the parent stylesheet
        # so it needs to be directly set when required.
        if style_sheet:
            # napari >=0.5.5 uses the `style_sheet` kwarg and the `to_rgb_dict` 
theme method
            theme = get_theme(self.viewer.theme).to_rgb_dict()
            self.style_sheet = style_sheet
        else:
            # napari 0.4.x and <0.5.5 doesn't use the `style_sheet` kwarg and 
uses the deprecated
            # `as_dict` kwarg for the `get_theme` function call
            from napari.qt import get_stylesheet
            from napari.utils.theme import template
    
>           theme = get_theme(self.viewer.theme, as_dict=True)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E           TypeError: get_theme() got an unexpected keyword argument 'as_dict'

napari_console/qt_console.py:207: TypeError
----------------------------- Captured stderr call -----------------------------
WARNING: could not determine DPI
------------------------------ Captured log call -------------------------------
WARNING  vispy:_linux.py:68 could not determine DPI
___________________________ test_console_focus_proxy ___________________________

    def control_has_focus():
>       assert (
            console._control.hasFocus()
        ), "underlying QTextEdit widget never received focus"
E       AssertionError: underlying QTextEdit widget never received focus
E       assert False
E        +  where False = <built-in method hasFocus of QTextEdit object at 
0x7f7ec8dcfec0>()
E        +    where <built-in method hasFocus of QTextEdit object at 
0x7f7ec8dcfec0> = <PyQt5.QtWidgets.QTextEdit object at 0x7f7ec8dcfec0>.hasFocus
E        +      where <PyQt5.QtWidgets.QTextEdit object at 0x7f7ec8dcfec0> = 
<napari_console.qt_console.QtConsole object at 0x7f7ec8dcfd10>._control

napari_console/_tests/test_qt_console.py:73: AssertionError

The above exception was the direct cause of the following exception:

qtbot = <pytestqt.qtbot.QtBot object at 0x7f7f16ff67a0>
make_test_viewer = <function make_test_viewer.<locals>.actual_factory at 
0x7f7f198eb9c0>

    def test_console_focus_proxy(qtbot, make_test_viewer):
        """Test setting/clearing focus on a QtConsole sets/clears focus on the 
underlying QTextEdit"""
        viewer = make_test_viewer()
    
        # setFocus does nothing if the widget is not shown
        console = viewer.window._qt_viewer.console
        with qtbot.waitExposed(console):
            viewer.show()
            viewer.window._qt_viewer.toggle_console_visibility()
    
        console.clearFocus()
    
        assert (
            not console._control.hasFocus()
        ), "underlying QTextEdit widget should not have focus after clearing"
    
        console.setFocus()
    
        # timeout (in ms) avoids flaky tests since setting focus takes time
        def control_has_focus():
            assert (
                console._control.hasFocus()
            ), "underlying QTextEdit widget never received focus"
    
>       qtbot.waitUntil(control_has_focus, timeout=30000)
E       pytestqt.exceptions.TimeoutError: waitUntil timed out in 30000 
milliseconds

napari_console/_tests/test_qt_console.py:77: TimeoutError
----------------------------- Captured stderr call -----------------------------
WARNING: could not determine DPI
------------------------------ Captured log call -------------------------------
WARNING  vispy:_linux.py:68 could not determine DPI
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/jupyter_client/connect.py:22
  /usr/lib/python3/dist-packages/jupyter_client/connect.py:22: 
DeprecationWarning: Jupyter is migrating its paths to use standard platformdirs
  given by the platformdirs library.  To remove this warning and
  see the appropriate new directories, set the environment variable
  `JUPYTER_PLATFORM_DIRS=1` and then run `jupyter --paths`.
  The use of platformdirs will be the default in `jupyter_core` v6
    from jupyter_core.paths import jupyter_data_dir, jupyter_runtime_dir, 
secure_write

.pybuild/cpython3_3.13/build/_tests/test_qt_console.py::test_console
  /usr/lib/python3.13/copy.py:152: DeprecationWarning: Pickle, copy, and 
deepcopy support will be removed from itertools in Python 3.14.
    rv = reductor(4)

.pybuild/cpython3_3.13/build/_tests/test_qt_console.py::test_console
  /usr/lib/python3.13/copy.py:262: DeprecationWarning: Pickle, copy, and 
deepcopy support will be removed from itertools in Python 3.14.
    y.__setstate__(state)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED _tests/test_qt_console.py::test_ipython_console - TypeError: get_theme...
FAILED _tests/test_qt_console.py::test_console_focus_proxy - pytestqt.excepti...
FAILED napari_console/_tests/test_qt_console.py::test_ipython_console - TypeE...
FAILED napari_console/_tests/test_qt_console.py::test_console_focus_proxy - p...
============== 4 failed, 6 passed, 3 warnings in 63.66s (0:01:03) ==============
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/build/reproducible-path/napari-console-0.1.3/.pybuild/cpython3_3.13/build; 
python3.13 -m pytest 
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 
returned exit code 13
make: *** [debian/rules:4: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-09-08T03:38:55Z

-------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/debian/developers-roehling.numpy/artifact/2452618/

About the archive rebuild: The build was made on debusine.debian.net,
using sbuild.

You can find the build task here:
https://debusine.debian.net/debian/developers-roehling.numpy/work-request/163563/

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Cheers
Timo

--- End Message ---
--- Begin Message ---
Source: napari-console
Source-Version: 0.1.4-1
Done: Roland Mas <[email protected]>

We believe that the bug you reported is fixed in the latest version of
napari-console, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Roland Mas <[email protected]> (supplier of updated napari-console package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sun, 26 Oct 2025 19:08:12 +0100
Source: napari-console
Architecture: source
Version: 0.1.4-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <[email protected]>
Changed-By: Roland Mas <[email protected]>
Closes: 1114703
Changes:
 napari-console (0.1.4-1) unstable; urgency=medium
 .
   * New upstream release.
   * This fixes: "TypeError: get_theme() got an unexpected keyword argument
     'as_dict'", thanks to [email protected]</a>; (Closes: #1114703).
Checksums-Sha1:
 f3170c8970297e6f0cb8fac60a365e383ffb7cf2 2411 napari-console_0.1.4-1.dsc
 ac4210d3fabcc54817879a217b1ef532c440b875 20152 napari-console_0.1.4.orig.tar.gz
 9fb2b2e1ee7b781a3e006dcb73a3a17686778c18 3556 
napari-console_0.1.4-1.debian.tar.xz
 63aaccee43c0764efc4c65d4a07053ff403f4365 18116 
napari-console_0.1.4-1_amd64.buildinfo
Checksums-Sha256:
 23b08290f6b58efe93bea83e123b7f2268690818e603949ff7006a0bcb414cf5 2411 
napari-console_0.1.4-1.dsc
 e185e4d36d8171ae23ca383dc69c38df76592a984d6c99ad08372d188a1fbb9b 20152 
napari-console_0.1.4.orig.tar.gz
 b6da971b61a281da37cc870068d16084a38b820ab5350330c3f3dfd1d3afa066 3556 
napari-console_0.1.4-1.debian.tar.xz
 501d34ce312098a6727e8e217161ebd4484adeb5906cf4c3fbb68c2ee4a7663d 18116 
napari-console_0.1.4-1_amd64.buildinfo
Files:
 e73b4df6d7b8e394ee287a12ab4e73f4 2411 python optional 
napari-console_0.1.4-1.dsc
 5c3a0956976bea5225d0a5860d27a47d 20152 python optional 
napari-console_0.1.4.orig.tar.gz
 fa49149722dec9ca51cd23580fcbab64 3556 python optional 
napari-console_0.1.4-1.debian.tar.xz
 fd4bdec0ed7bee8c3753843faf37d764 18116 python optional 
napari-console_0.1.4-1_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEtBU2D1kett1zr/uD0w3s0lmTIvwFAmj+ZC4ACgkQ0w3s0lmT
Ivwq7w//cHQT8OMhcV40dyLR2aThyRHr2lfuHWtFX5d/ouLqZx26k4k/6mP8XBB2
Zl9qZcaeFHnNyxe+4W2eyxO97GXXy6P1TOlhXHjQGhiK0uqulQ5kDscmQhfgStL5
drOUj5s53J20y8XCRejdkF/tmJpL/juqvYgSKPgTukKtoduhFcsLebRDIEy/9+1J
mzJwVyuM1H1GNk7rGtq0LaXKbUk6xBthR2xIUi+3GVCMu0DQ7sH1PTDXv1O2He4R
rFPO9nqYBO9hLdfVnQFPtnpJk/QnRyJmu9y/QQBI8mZMdoERB/7hzX0xXfOiQfAY
sgY74CGIhwhyuA7WjC2dg+VyBgCjBWaNx6Sde2iQqV/LCbVYLe1X7FHTpEi/j/1r
8JTduktRR5UH9OQDHQfJjBEuxZNuaUc82iPoPIN8ly9wBirQnDFFGbhU1DSw5R7O
dhMHizPEaCIAbbW6mnuZuKLWxvmT703Wk9bpOcmweFTakuZAY2ZRVo357/zEGz6W
M32IVxOjuG28x0fqzW/HHkflOhXVKvhD20P16vp7EOPOue5VtqkraDikd+4gdy+W
TdeIkGunT4I1PWGxdx1u8JExl3IALEQ4qxgTOs8vcHzHfSd6qlNLwGSkubELVD23
Dcrf3O9QsBsudg3Gln8LOlvKcpeTRcmcj9mAr6pwf4HaLvbjZ54=
=4sD/
-----END PGP SIGNATURE-----

Attachment: pgpn160kZgH_L.pgp
Description: PGP signature


--- End Message ---

Reply via email to