Package: src:python-pynvim
Version: 0.5.0-2
Severity: serious
Tags: ftbfs trixie sid
Dear maintainer:
During a rebuild of all packages in unstable, your package failed to build:
--------------------------------------------------------------------------------
[...]
debian/rules clean
dh clean --with python3 --buildsystem=pybuild
dh_auto_clean -O--buildsystem=pybuild
dh_autoreconf_clean -O--buildsystem=pybuild
dh_clean -O--buildsystem=pybuild
debian/rules binary
dh binary --with python3 --buildsystem=pybuild
dh_update_autotools_config -O--buildsystem=pybuild
dh_autoreconf -O--buildsystem=pybuild
dh_auto_configure -O--buildsystem=pybuild
dh_auto_build -O--buildsystem=pybuild
I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build"
module
I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation
--wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pynvim
* Building wheel...
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:270: UserWarning:
Unknown distribution option: 'tests_require'
warnings.warn(msg)
running bdist_wheel
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:124:
SetuptoolsDeprecationWarning: bdist_wheel.universal is deprecated
!!
********************************************************************************
With Python 2.7 end-of-life, support for building universal wheels
(i.e., wheels that support both Python 2 and Python 3)
is being obviated.
Please discontinue using this option, or if you still need it,
file an issue with pypa/setuptools describing your use case.
By 2025-Aug-30, you need to update your project and remove deprecated
calls
or your builds will no longer be supported.
********************************************************************************
!!
self.finalize_options()
running build
running build_py
creating build/lib/pynvim
copying pynvim/_version.py -> build/lib/pynvim
copying pynvim/__init__.py -> build/lib/pynvim
copying pynvim/compat.py -> build/lib/pynvim
copying pynvim/util.py -> build/lib/pynvim
creating build/lib/pynvim/api
copying pynvim/api/nvim.py -> build/lib/pynvim/api
copying pynvim/api/window.py -> build/lib/pynvim/api
copying pynvim/api/__init__.py -> build/lib/pynvim/api
copying pynvim/api/common.py -> build/lib/pynvim/api
copying pynvim/api/tabpage.py -> build/lib/pynvim/api
copying pynvim/api/buffer.py -> build/lib/pynvim/api
creating build/lib/pynvim/msgpack_rpc
copying pynvim/msgpack_rpc/msgpack_stream.py -> build/lib/pynvim/msgpack_rpc
copying pynvim/msgpack_rpc/async_session.py -> build/lib/pynvim/msgpack_rpc
copying pynvim/msgpack_rpc/__init__.py -> build/lib/pynvim/msgpack_rpc
copying pynvim/msgpack_rpc/session.py -> build/lib/pynvim/msgpack_rpc
creating build/lib/pynvim/msgpack_rpc/event_loop
copying pynvim/msgpack_rpc/event_loop/asyncio.py ->
build/lib/pynvim/msgpack_rpc/event_loop
copying pynvim/msgpack_rpc/event_loop/uv.py ->
build/lib/pynvim/msgpack_rpc/event_loop
copying pynvim/msgpack_rpc/event_loop/__init__.py ->
build/lib/pynvim/msgpack_rpc/event_loop
copying pynvim/msgpack_rpc/event_loop/base.py ->
build/lib/pynvim/msgpack_rpc/event_loop
creating build/lib/pynvim/plugin
copying pynvim/plugin/script_host.py -> build/lib/pynvim/plugin
copying pynvim/plugin/host.py -> build/lib/pynvim/plugin
copying pynvim/plugin/__init__.py -> build/lib/pynvim/plugin
copying pynvim/plugin/decorators.py -> build/lib/pynvim/plugin
creating build/lib/neovim
copying neovim/__init__.py -> build/lib/neovim
creating build/lib/neovim/api
copying neovim/api/__init__.py -> build/lib/neovim/api
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/neovim
creating build/bdist.linux-x86_64/wheel/neovim/api
copying build/lib/neovim/api/__init__.py ->
build/bdist.linux-x86_64/wheel/./neovim/api
copying build/lib/neovim/__init__.py -> build/bdist.linux-x86_64/wheel/./neovim
creating build/bdist.linux-x86_64/wheel/pynvim
creating build/bdist.linux-x86_64/wheel/pynvim/api
copying build/lib/pynvim/api/nvim.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
copying build/lib/pynvim/api/window.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
copying build/lib/pynvim/api/__init__.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
copying build/lib/pynvim/api/common.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
copying build/lib/pynvim/api/tabpage.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
copying build/lib/pynvim/api/buffer.py ->
build/bdist.linux-x86_64/wheel/./pynvim/api
creating build/bdist.linux-x86_64/wheel/pynvim/msgpack_rpc
copying build/lib/pynvim/msgpack_rpc/msgpack_stream.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc
copying build/lib/pynvim/msgpack_rpc/async_session.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc
creating build/bdist.linux-x86_64/wheel/pynvim/msgpack_rpc/event_loop
copying build/lib/pynvim/msgpack_rpc/event_loop/asyncio.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc/event_loop
copying build/lib/pynvim/msgpack_rpc/event_loop/uv.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc/event_loop
copying build/lib/pynvim/msgpack_rpc/event_loop/__init__.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc/event_loop
copying build/lib/pynvim/msgpack_rpc/event_loop/base.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc/event_loop
copying build/lib/pynvim/msgpack_rpc/__init__.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc
copying build/lib/pynvim/msgpack_rpc/session.py ->
build/bdist.linux-x86_64/wheel/./pynvim/msgpack_rpc
copying build/lib/pynvim/_version.py -> build/bdist.linux-x86_64/wheel/./pynvim
creating build/bdist.linux-x86_64/wheel/pynvim/plugin
copying build/lib/pynvim/plugin/script_host.py ->
build/bdist.linux-x86_64/wheel/./pynvim/plugin
copying build/lib/pynvim/plugin/host.py ->
build/bdist.linux-x86_64/wheel/./pynvim/plugin
copying build/lib/pynvim/plugin/__init__.py ->
build/bdist.linux-x86_64/wheel/./pynvim/plugin
copying build/lib/pynvim/plugin/decorators.py ->
build/bdist.linux-x86_64/wheel/./pynvim/plugin
copying build/lib/pynvim/__init__.py -> build/bdist.linux-x86_64/wheel/./pynvim
copying build/lib/pynvim/compat.py -> build/bdist.linux-x86_64/wheel/./pynvim
copying build/lib/pynvim/util.py -> build/bdist.linux-x86_64/wheel/./pynvim
running install_egg_info
running egg_info
creating pynvim.egg-info
writing pynvim.egg-info/PKG-INFO
writing dependency_links to pynvim.egg-info/dependency_links.txt
writing requirements to pynvim.egg-info/requires.txt
writing top-level names to pynvim.egg-info/top_level.txt
writing manifest file 'pynvim.egg-info/SOURCES.txt'
reading manifest file 'pynvim.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'pynvim.egg-info/SOURCES.txt'
Copying pynvim.egg-info to
build/bdist.linux-x86_64/wheel/./pynvim-0.5.0.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/pynvim-0.5.0.dist-info/WHEEL
creating
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pynvim/.tmp-9y1vk1nc/pynvim-0.5.0-py2.py3-none-any.whl'
and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'neovim/__init__.py'
adding 'neovim/api/__init__.py'
adding 'pynvim/__init__.py'
adding 'pynvim/_version.py'
adding 'pynvim/compat.py'
adding 'pynvim/util.py'
adding 'pynvim/api/__init__.py'
adding 'pynvim/api/buffer.py'
adding 'pynvim/api/common.py'
adding 'pynvim/api/nvim.py'
adding 'pynvim/api/tabpage.py'
adding 'pynvim/api/window.py'
adding 'pynvim/msgpack_rpc/__init__.py'
adding 'pynvim/msgpack_rpc/async_session.py'
adding 'pynvim/msgpack_rpc/msgpack_stream.py'
adding 'pynvim/msgpack_rpc/session.py'
adding 'pynvim/msgpack_rpc/event_loop/__init__.py'
adding 'pynvim/msgpack_rpc/event_loop/asyncio.py'
adding 'pynvim/msgpack_rpc/event_loop/base.py'
adding 'pynvim/msgpack_rpc/event_loop/uv.py'
adding 'pynvim/plugin/__init__.py'
adding 'pynvim/plugin/decorators.py'
adding 'pynvim/plugin/host.py'
adding 'pynvim/plugin/script_host.py'
adding 'pynvim-0.5.0.dist-info/LICENSE'
adding 'pynvim-0.5.0.dist-info/METADATA'
adding 'pynvim-0.5.0.dist-info/WHEEL'
adding 'pynvim-0.5.0.dist-info/top_level.txt'
adding 'pynvim-0.5.0.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built pynvim-0.5.0-py2.py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with
"installer" module
dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pynvim/build;
python3.13 -m pytest -vv
============================= test session starts ==============================
platform linux -- Python 3.13.2, pytest-8.3.5, pluggy-1.5.0 --
/usr/bin/python3.13
cachedir: .pytest_cache
rootdir: /<<PKGBUILDDIR>>
configfile: setup.cfg
plugins: typeguard-4.4.2
collecting ... collected 74 items
test/test_buffer.py::test_repr PASSED [ 1%]
test/test_buffer.py::test_get_length PASSED [ 2%]
test/test_buffer.py::test_get_set_del_line PASSED [ 4%]
test/test_buffer.py::test_get_set_del_slice PASSED [ 5%]
test/test_buffer.py::test_vars PASSED [ 6%]
test/test_buffer.py::test_api PASSED [ 8%]
test/test_buffer.py::test_options PASSED [ 9%]
test/test_buffer.py::test_number PASSED [ 10%]
test/test_buffer.py::test_name PASSED [ 12%]
test/test_buffer.py::test_valid PASSED [ 13%]
test/test_buffer.py::test_append PASSED [ 14%]
test/test_buffer.py::test_mark PASSED [ 16%]
test/test_buffer.py::test_invalid_utf8 PASSED [ 17%]
test/test_buffer.py::test_get_exceptions PASSED [ 18%]
test/test_buffer.py::test_set_items_for_range PASSED [ 20%]
test/test_buffer.py::test_update_highlights PASSED [ 21%]
test/test_buffer.py::test_buffer_inequality PASSED [ 22%]
test/test_client_rpc.py::test_call_and_reply PASSED [ 24%]
test/test_client_rpc.py::test_call_api_before_reply PASSED [ 25%]
test/test_client_rpc.py::test_async_call PASSED [ 27%]
test/test_client_rpc.py::test_recursion PASSED [ 28%]
test/test_concurrency.py::test_interrupt_from_another_thread PASSED [ 29%]
test/test_concurrency.py::test_exception_in_threadsafe_call PASSED [ 31%]
test/test_decorators.py::test_command_count PASSED [ 32%]
test/test_events.py::test_receiving_events PASSED [ 33%]
test/test_events.py::test_sending_notify PASSED [ 35%]
test/test_events.py::test_async_error PASSED [ 36%]
test/test_events.py::test_broadcast PASSED [ 37%]
test/test_host.py::test_host_imports PASSED [ 39%]
test/test_host.py::test_host_import_rplugin_modules PASSED [ 40%]
test/test_host.py::test_host_clientinfo PASSED [ 41%]
test/test_host.py::test_host_async_error PASSED [ 43%]
test/test_host.py::test_legacy_vim_eval PASSED [ 44%]
test/test_logging.py::test_setup_logging PASSED [ 45%]
test/test_tabpage.py::test_windows PASSED [ 47%]
test/test_tabpage.py::test_vars PASSED [ 48%]
test/test_tabpage.py::test_valid PASSED [ 50%]
test/test_tabpage.py::test_number PASSED [ 51%]
test/test_tabpage.py::test_repr PASSED [ 52%]
test/test_version.py::test_version PASSED [ 54%]
test/test_vim.py::test_clientinfo PASSED [ 55%]
test/test_vim.py::test_command PASSED [ 56%]
test/test_vim.py::test_command_output PASSED [ 58%]
test/test_vim.py::test_command_error PASSED [ 59%]
test/test_vim.py::test_eval PASSED [ 60%]
test/test_vim.py::test_call PASSED [ 62%]
test/test_vim.py::test_api PASSED [ 63%]
test/test_vim.py::test_strwidth PASSED [ 64%]
test/test_vim.py::test_chdir PASSED [ 66%]
test/test_vim.py::test_current_line PASSED [ 67%]
test/test_vim.py::test_current_line_delete PASSED [ 68%]
test/test_vim.py::test_vars PASSED [ 70%]
test/test_vim.py::test_options PASSED [ 71%]
test/test_vim.py::test_local_options PASSED [ 72%]
test/test_vim.py::test_buffers PASSED [ 74%]
test/test_vim.py::test_windows PASSED [ 75%]
test/test_vim.py::test_tabpages PASSED [ 77%]
test/test_vim.py::test_hash PASSED [ 78%]
test/test_vim.py::test_python3 FAILED [ 79%]
test/test_vim.py::test_python3_ex_eval PASSED [ 81%]
test/test_vim.py::test_python_cwd PASSED [ 82%]
test/test_vim.py::test_lua PASSED [ 83%]
test/test_window.py::test_buffer PASSED [ 85%]
test/test_window.py::test_cursor PASSED [ 86%]
test/test_window.py::test_height PASSED [ 87%]
test/test_window.py::test_width PASSED [ 89%]
test/test_window.py::test_vars PASSED [ 90%]
test/test_window.py::test_options PASSED [ 91%]
test/test_window.py::test_position PASSED [ 93%]
test/test_window.py::test_tabpage PASSED [ 94%]
test/test_window.py::test_valid PASSED [ 95%]
test/test_window.py::test_number PASSED [ 97%]
test/test_window.py::test_handle PASSED [ 98%]
test/test_window.py::test_repr PASSED [100%]
=================================== FAILURES ===================================
_________________________________ test_python3 _________________________________
vim = <pynvim.api.nvim.Nvim object at 0x7f15b7c9ed50>
def test_python3(vim: Nvim) -> None:
"""Tests whether python3 host can load."""
> python3_prog = vim.command_output('echom provider#python3#Prog()')
test/test_vim.py:209:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pynvim/api/nvim.py:315: in command_output
return self.request('nvim_command_output', string)
pynvim/api/nvim.py:199: in request
res = self._session.request(name, *args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pynvim.msgpack_rpc.session.Session object at 0x7f15b7c0ce10>
method = 'nvim_command_output', args = ('echom provider#python3#Prog()',)
kwargs = {}, async_ = False
v = ([0, 'nvim_exec2(): Vim(echomsg):E117: Unknown function:
provider#python3#Prog'], None)
err = [0, 'nvim_exec2(): Vim(echomsg):E117: Unknown function:
provider#python3#Prog']
rv = None
def request(self, method: AnyStr, *args: Any, **kwargs: Any) -> Any:
"""Send a msgpack-rpc request and block until as response is received.
If the event loop is running, this method must have been called by a
request or notification handler running on a greenlet. In that case,
send the quest and yield to the parent greenlet until a response is
available.
When the event loop is not running, it will perform a blocking request
like this:
- Send the request
- Run the loop until the response is available
- Put requests/notifications received while waiting into a queue
If the `async_` flag is present and True, a asynchronous notification
is sent instead. This will never block, and the return value or error
is ignored.
"""
async_ = check_async(kwargs.pop('async_', None), kwargs, False)
if async_:
self._async_session.notify(method, args)
return
if kwargs:
raise ValueError("request got unsupported keyword argument(s): {}"
.format(', '.join(kwargs.keys())))
if self._is_running:
v = self._yielding_request(method, args)
else:
v = self._blocking_request(method, args)
if not v:
# EOF
raise OSError('EOF')
err, rv = v
if err:
pass # replaces next logging statement
# info("'Received error: %s", err)
> raise self.error_wrapper(err)
E pynvim.api.common.NvimError: nvim_exec2(): Vim(echomsg):E117:
Unknown function: provider#python3#Prog
pynvim/msgpack_rpc/session.py:139: NvimError
=============================== warnings summary ===============================
.pybuild/cpython3_3.13_pynvim/build/test/test_buffer.py: 17 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_client_rpc.py: 4 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_concurrency.py: 2 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_events.py: 4 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_host.py: 5 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_tabpage.py: 5 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_vim.py: 22 warnings
.pybuild/cpython3_3.13_pynvim/build/test/test_window.py: 12 warnings
/usr/lib/python3.13/asyncio/events.py:842: DeprecationWarning:
'get_child_watcher' is deprecated as of Python 3.12 and will be removed in
Python 3.14.
return get_event_loop_policy().get_child_watcher()
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED test/test_vim.py::test_python3 - pynvim.api.common.NvimError:
nvim_exec2(): Vim(echomsg):E117: Unknown function: provider#python3#Prog
================== 1 failed, 73 passed, 71 warnings in 2.86s ===================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pynvim/build; python3.13 -m pytest -vv
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13
returned exit code 13
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:
https://people.debian.org/~sanvila/build-logs/202503/
About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.
If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.
If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:python-pynvim, so that this is still
visible in the BTS web page for this package.
Thanks.