[From nobody Sun Apr 19 08:59:05 2026
Received: (at 1131280-done) by bugs.debian.org; 19 Apr 2026 07:56:54 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-107.8 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
 DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FOURLA,
 FROMDEVELOPER,HAS_BUG_NUMBER,HEADER_FROM_DIFFERENT_DOMAINS,
 SPF_HELO_NONE,T_SPF_PERMERROR,UNPARSEABLE_RELAY,
 USER_IN_DKIM_WELCOMELIST autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 9; hammy, 150; neutral, 297; spammy,
 0. spammytokens:
 hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
 0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
 0.000-+--H*RT:311, 0.000-+--H*RT:108
Return-path: &lt;julian@d-and-j.net&gt;
Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:108]:44668)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;julian@d-and-j.net&gt;) id 1wEN1R-001IG6-2g
 for 1131280-done@bugs.debian.org; Sun, 19 Apr 2026 07:56:54 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; 
 s=smtpauto.stravinsky;
 h=X-Debian-User:In-Reply-To:Content-Type:MIME-Version:
 References:Message-ID:Subject:To:From:Date:Reply-To:Cc:
 Content-Transfer-Encoding:Content-ID:Content-Description;
 bh=S5kiIDNHKBdEEKqcwnNy4kwgz0iHJflFRWSd+7CBzLw=; b=LQglLrIc0lEulVQJaZbL2Admb2
 iB/irl4khwXbK8t9cGVwl4LnunxANq4a5wP7wH2XU8t8xGHqNwVgHq52AMmhXYpXNeg6jnaCMzPd9
 4iKEYZj1enHTItM1srterez7z423O+/PWLsWH4mtczEpduM7JS5Wnx8fc6yeZRpx27+rRmXfQ1tX5
 MUpNu2Q4M4q4d0g2u7ifKUUYzbr0SRODC8g9DvKBGnW0QJlpY6uh2ZOj969H91PVxvTVNy3XeuuBB
 yikbA/otMlUAP0e9J5NN2SPeHreytM/J0gg1bgwb5MjGF+gMCelf3QE4d/vje7Q/EEG93SNK1ME9V
 n9um5kxw==;
Received: from authenticated user by stravinsky.debian.org with esmtpsa
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;julian@d-and-j.net&gt;) id 1wEN1P-00Glkn-1j
 for 1131280-done@bugs.debian.org; Sun, 19 Apr 2026 07:56:52 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=d-and-j.net
 ; s=mail;
 h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:
 Subject:To:From:Date:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:
 Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc
 :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe:
 List-Post:List-Owner:List-Archive;
 bh=S5kiIDNHKBdEEKqcwnNy4kwgz0iHJflFRWSd+7CBzLw=; b=EnIa/WfTKHNlMz4FvpLS3apYEP
 rk+dCbEqd4dvUm29vHMIjfjBolxIcGojBCEtnXOKFHZ7x+SSZ3Gvwt37KE6ZuEZlJFqBSA8OWtqe9
 zSnbe4YprMj3gXs6D9/gB24fIifIgdcFlyRiPe6VMyQB3jlpl/+mSlIz3IODs6ax6Adc=;
Received: from jdg by erdos.d-and-j.net with local (Exim 4.98.2)
 (envelope-from &lt;julian@d-and-j.net&gt;) id 1wEN1N-00000000qEs-3xRX
 for 1131280-done@bugs.debian.org; Sun, 19 Apr 2026 08:56:49 +0100
Date: Sun, 19 Apr 2026 08:56:49 +0100
From: Julian Gilbey &lt;jdg@debian.org&gt;
To: 1131280-done@bugs.debian.org
Subject: Re: Bug#1131280: spyder fails its autopkg tests, preventing
 migration to testing
Message-ID: &lt;aeSKwUFAjG6VzPOe@d-and-j.net&gt;
References: &lt;b56990f8-cffd-4dd2-95db-2df923d50a2d@klose.in-berlin.de&gt;
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: &lt;b56990f8-cffd-4dd2-95db-2df923d50a2d@klose.in-berlin.de&gt;
X-Debian-User: jdg

Source: spyder
Source-Version: 6.1.3+ds-5

I forgot to close this in the changelog.

Best wishes,

   Julian

On Thu, Mar 19, 2026 at 05:29:55PM +0100, Matthias Klose (Ubuntu) wrote:
&gt; Package: src:spyder
&gt; Version: 6.1.3+ds-4
&gt; Severity: serious
&gt; Tags: sid forky
&gt; 
&gt; spyder fails its autopkg tests, preventing migration to testing
&gt; 
&gt; [...]
&gt; 1356s spyder/plugins/explorer/widgets/tests/test_explorer.py::test_save_file[ProjectExplorerTest-create_folders_files2]
&gt; ERROR [ 57%]
&gt; 1476s spyder/plugins/explorer/widgets/tests/test_explorer.py::test_delete_file[FileExplorerTest-create_folders_files0]
&gt; +++++++++++++++++++++++++++++++++++ Timeout
&gt; ++++++++++++++++++++++++++++++++++++
&gt; 1476s ~~~~~~~~~~~~~~~ Stack of AsyncDispatcher-test (140090551563968)
&gt; ~~~~~~~~~~~~~~~~
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1044, in _bootstrap
&gt; 1476s     self._bootstrap_inner()
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1082, in
&gt; _bootstrap_inner
&gt; 1476s     self._context.run(self.run)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 448, in run
&gt; 1476s     self.__loop.run_forever()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 488, in run_forever
&gt; 1476s     self._run_once()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 526, in _run_once
&gt; 1476s     event_list = self._selector.select(timeout)
&gt; 1476s   File &quot;/usr/lib/python3.14/selectors.py&quot;, line 452, in select
&gt; 1476s     fd_event_list = self._selector.poll(timeout, max_ev)
&gt; 1476s ~~~~~~~~~~~~~ Stack of AsyncDispatcher-explorer (140090797696704)
&gt; ~~~~~~~~~~~~~~
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1044, in _bootstrap
&gt; 1476s     self._bootstrap_inner()
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1082, in
&gt; _bootstrap_inner
&gt; 1476s     self._context.run(self.run)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 448, in run
&gt; 1476s     self.__loop.run_forever()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 488, in run_forever
&gt; 1476s     self._run_once()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 526, in _run_once
&gt; 1476s     event_list = self._selector.select(timeout)
&gt; 1476s   File &quot;/usr/lib/python3.14/selectors.py&quot;, line 452, in select
&gt; 1476s     fd_event_list = self._selector.poll(timeout, max_ev)
&gt; 1476s ~~~~~~~~~~ Stack of AsyncDispatcher-ipythonconsole (140090818946752)
&gt; ~~~~~~~~~~~
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1044, in _bootstrap
&gt; 1476s     self._bootstrap_inner()
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1082, in
&gt; _bootstrap_inner
&gt; 1476s     self._context.run(self.run)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 448, in run
&gt; 1476s     self.__loop.run_forever()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 488, in run_forever
&gt; 1476s     self._run_once()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 526, in _run_once
&gt; 1476s     event_list = self._selector.select(timeout)
&gt; 1476s   File &quot;/usr/lib/python3.14/selectors.py&quot;, line 452, in select
&gt; 1476s     fd_event_list = self._selector.poll(timeout, max_ev)
&gt; 1476s ~~~~~~~~~~~~~ Stack of AsyncDispatcher-asyncssh (140090827339456)
&gt; ~~~~~~~~~~~~~~
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1044, in _bootstrap
&gt; 1476s     self._bootstrap_inner()
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1082, in
&gt; _bootstrap_inner
&gt; 1476s     self._context.run(self.run)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 448, in run
&gt; 1476s     self.__loop.run_forever()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 488, in run_forever
&gt; 1476s     self._run_once()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 526, in _run_once
&gt; 1476s     event_list = self._selector.select(timeout)
&gt; 1476s   File &quot;/usr/lib/python3.14/selectors.py&quot;, line 452, in select
&gt; 1476s     fd_event_list = self._selector.poll(timeout, max_ev)
&gt; 1476s ~~~~~~~~~~~~~~~ Stack of AsyncDispatcher-None (140090955040448)
&gt; ~~~~~~~~~~~~~~~~
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1044, in _bootstrap
&gt; 1476s     self._bootstrap_inner()
&gt; 1476s   File &quot;/usr/lib/python3.14/threading.py&quot;, line 1082, in
&gt; _bootstrap_inner
&gt; 1476s     self._context.run(self.run)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 448, in run
&gt; 1476s     self.__loop.run_forever()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 488, in run_forever
&gt; 1476s     self._run_once()
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/api/asyncdispatcher.py&quot;,
&gt; line 526, in _run_once
&gt; 1476s     event_list = self._selector.select(timeout)
&gt; 1476s   File &quot;/usr/lib/python3.14/selectors.py&quot;, line 452, in select
&gt; 1476s     fd_event_list = self._selector.poll(timeout, max_ev)
&gt; 1476s ~~~~~~~~~~~~~~~~~~~~ Stack of MainThread (140091426259456)
&gt; ~~~~~~~~~~~~~~~~~~~~~
&gt; 1476s   File
&gt; &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/runtests.py&quot;, line 98,
&gt; in &lt;module&gt;
&gt; 1476s     main()
&gt; 1476s   File
&gt; &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/runtests.py&quot;, line 93,
&gt; in main
&gt; 1476s     run_pytest(run_slow=test_args.run_slow, extra_args=pytest_args,
&gt; 1476s   File
&gt; &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/runtests.py&quot;, line 64,
&gt; in run_pytest
&gt; 1476s     errno = pytest.main(pytest_args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/config/__init__.py&quot;,
&gt; line 199, in main
&gt; 1476s     ret: ExitCode | int =
&gt; config.hook.pytest_cmdline_main(config=config)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_hooks.py&quot;, line 512, in
&gt; __call__
&gt; 1476s     return self._hookexec(self.name, self._hookimpls.copy(), kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_manager.py&quot;, line 120,
&gt; in _hookexec
&gt; 1476s     return self._inner_hookexec(hook_name, methods, kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_callers.py&quot;, line 121,
&gt; in _multicall
&gt; 1476s     res = hook_impl.function(*args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/main.py&quot;, line 365, in
&gt; pytest_cmdline_main
&gt; 1476s     return wrap_session(config, _main)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/main.py&quot;, line 318, in
&gt; wrap_session
&gt; 1476s     session.exitstatus = doit(config, session) or 0
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/main.py&quot;, line 372, in
&gt; _main
&gt; 1476s     config.hook.pytest_runtestloop(session=session)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_hooks.py&quot;, line 512, in
&gt; __call__
&gt; 1476s     return self._hookexec(self.name, self._hookimpls.copy(), kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_manager.py&quot;, line 120,
&gt; in _hookexec
&gt; 1476s     return self._inner_hookexec(hook_name, methods, kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_callers.py&quot;, line 121,
&gt; in _multicall
&gt; 1476s     res = hook_impl.function(*args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/main.py&quot;, line 396, in
&gt; pytest_runtestloop
&gt; 1476s     item.config.hook.pytest_runtest_protocol(item=item,
&gt; nextitem=nextitem)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_hooks.py&quot;, line 512, in
&gt; __call__
&gt; 1476s     return self._hookexec(self.name, self._hookimpls.copy(), kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_manager.py&quot;, line 120,
&gt; in _hookexec
&gt; 1476s     return self._inner_hookexec(hook_name, methods, kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_callers.py&quot;, line 121,
&gt; in _multicall
&gt; 1476s     res = hook_impl.function(*args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/flaky/flaky_pytest_plugin.py&quot;,
&gt; line 89, in pytest_runtest_protocol
&gt; 1476s     self.runner.pytest_runtest_protocol(item, nextitem)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/runner.py&quot;, line 118,
&gt; in pytest_runtest_protocol
&gt; 1476s     runtestprotocol(item, nextitem=nextitem)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/runner.py&quot;, line 137,
&gt; in runtestprotocol
&gt; 1476s     reports.append(call_and_report(item, &quot;call&quot;, log))
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/flaky/flaky_pytest_plugin.py&quot;,
&gt; line 149, in call_and_report
&gt; 1476s     call = _call_runtest_hook(item, when, **kwds)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/flaky/flaky_pytest_plugin.py&quot;,
&gt; line 145, in _call_runtest_hook
&gt; 1476s     return runner.CallInfo.from_call(
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/runner.py&quot;, line 353,
&gt; in from_call
&gt; 1476s     result: TResult | None = func()
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/flaky/flaky_pytest_plugin.py&quot;,
&gt; line 146, in &lt;lambda&gt;
&gt; 1476s     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_hooks.py&quot;, line 512, in
&gt; __call__
&gt; 1476s     return self._hookexec(self.name, self._hookimpls.copy(), kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_manager.py&quot;, line 120,
&gt; in _hookexec
&gt; 1476s     return self._inner_hookexec(hook_name, methods, kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_callers.py&quot;, line 121,
&gt; in _multicall
&gt; 1476s     res = hook_impl.function(*args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/runner.py&quot;, line 179,
&gt; in pytest_runtest_call
&gt; 1476s     item.runtest()
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/python.py&quot;, line 1720,
&gt; in runtest
&gt; 1476s     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_hooks.py&quot;, line 512, in
&gt; __call__
&gt; 1476s     return self._hookexec(self.name, self._hookimpls.copy(), kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_manager.py&quot;, line 120,
&gt; in _hookexec
&gt; 1476s     return self._inner_hookexec(hook_name, methods, kwargs,
&gt; firstresult)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/pluggy/_callers.py&quot;, line 121,
&gt; in _multicall
&gt; 1476s     res = hook_impl.function(*args)
&gt; 1476s   File &quot;/usr/lib/python3/dist-packages/_pytest/python.py&quot;, line 166,
&gt; in pytest_pyfunc_call
&gt; 1476s     result = testfunction(**testargs)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/plugins/explorer/widgets/tests/test_explorer.py&quot;,
&gt; line 148, in test_delete_file
&gt; 1476s     project.explorer.treewidget.delete(fnames=[top_folder])
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/plugins/explorer/widgets/explorer.py&quot;,
&gt; line 1210, in delete
&gt; 1476s     yes_to_all = self.delete_file(fname, multiple, yes_to_all)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/plugins/explorer/widgets/explorer.py&quot;,
&gt; line 1183, in delete_file
&gt; 1476s     self.remove_tree(fname)
&gt; 1476s   File &quot;/tmp/autopkgtest-lxc.ylj125db/downtmp/build.Nuw/src/spyder/plugins/explorer/widgets/explorer.py&quot;,
&gt; line 1154, in remove_tree
&gt; 1476s     while osp.exists(dirname):
&gt; 1476s   File &quot;&lt;frozen genericpath&gt;&quot;, line 22, in exists
&gt; 1476s +++++++++++++++++++++++++++++++++++ Timeout
&gt; ++++++++++++++++++++++++++++++++++++
&gt; 1476s *** END OF RUN 5: NOT ALL TESTS HAVE YET PASSED/XFAILED ***
&gt; 1476s *** SOME TESTS FAILED/ERRORED EVERY RUN, ABORTING ***
&gt; 1477s autopkgtest [16:53:50]: test pytest-rest: -----------------------]
&gt; 1477s autopkgtest [16:53:50]: test pytest-rest:  - - - - - - - - - - results
&gt; - - - - - - - - - -
&gt; 1477s pytest-rest          FAIL non-zero exit status 1


   Julian]