Package Details: python-textual-image 0.13.1-5

Git Clone URL: https://aur.archlinux.org/python-textual-image.git (read-only, click to copy)
Package Base: python-textual-image
Description: Render images in the terminal with Textual and Rich
Upstream URL: https://github.com/lnqs/textual-image
Licenses: LGPL-3.0-only
Submitter: daniel_chesters
Maintainer: Korialo
Last Packager: Korialo
Votes: 1
Popularity: 0.46
First Submitted: 2025-04-06 16:12 (UTC)
Last Updated: 2026-08-11 22:28 (UTC)

Latest Comments

Korialo commented on 2026-07-26 11:26 (UTC) (edited on 2026-07-26 14:02 (UTC) by Korialo)

Adding python-pytest-xdist to the checkdepends should do the trick.

Look like it's a new check-dependency (5-months old) of python-syrupy, the new release adds a fix for when this dependency is not installed. I will add python-pytest-xdist until python-syrupy in extra repo catch-up with upstream, thank you for the report.

P.S: Here's my check's output using pkgctl build -c

==> Starting check()...
============================= test session starts ==============================
platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0
rootdir: /build/python-textual-image/src/textual-image
configfile: pyproject.toml
plugins: asyncio-1.4.0, syrupy-5.5.0, xdist-3.8.0
asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=function, asyncio_default_test_loop_scope=function
collected 93 items

tests/demo/test_renderable.py .                                          [  1%]
tests/demo/test_widget.py .                                              [  2%]
tests/renderable/test_halfcell.py ....                                   [  6%]
tests/renderable/test_init.py .                                          [  7%]
tests/renderable/test_sixel.py .......                                   [ 15%]
tests/renderable/test_tgp.py .......                                     [ 22%]
tests/renderable/test_unicode.py ....                                    [ 26%]
tests/test_geometry.py ...                                               [ 30%]
tests/test_main.py .s                                                    [ 32%]
tests/test_pixeldata.py .........                                        [ 41%]
tests/test_sixel.py .............ssss...                                 [ 63%]
tests/test_terminal.py ..........                                        [ 74%]
tests/test_tmux.py ..                                                    [ 76%]
tests/test_utils.py ...........                                          [ 88%]
tests/widget/test_base.py ...                                            [ 91%]
tests/widget/test_init.py .                                              [ 92%]
tests/widget/test_sixel.py .......                                       [100%]

--------------------------- snapshot report summary ----------------------------
4 snapshots passed.
======================== 88 passed, 5 skipped in 16.79s ========================

Edit: Typos, rewordings.

wheelsbot7 commented on 2026-07-25 16:35 (UTC) (edited on 2026-07-25 16:38 (UTC) by wheelsbot7)

@kseistrup I noticed your output had a lot more plugins than mine, and after testing them I believe xdist was the one causing issues. Indeed, the "unknown hook" error it was throwing mentions "pytest_testnodedown", which is a hook provided by xdist, so I think this is just a case of missing a dependency. Adding python-pytest-xdist to the checkdepends should do the trick.

EDIT: Realized I should probably flag down the maintainer, @Korialo, could you take a look at this?

kseistrup commented on 2026-07-25 11:56 (UTC) (edited on 2026-07-25 12:00 (UTC) by kseistrup)

@wheelsbot7, it “works here“, and the initial output looks different to yours (perhaps because I am just running makepkg -f instead of installing through yay):

==> Starting check()...
===================================================================================== test session starts ======================================================================================
platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0
deltachat-rpc-server: deltachat-rpc-server [2.47.0]
rootdir: /tmp/build/python-textual-image/src/textual-image
configfile: pyproject.toml
plugins: asyncio-1.4.0, syrupy-5.5.0, jaraco.test-5.7.0, anyio-4.14.2, xdist-3.8.0, typeguard-4.5.2, time-machine-3.2.0, cov-7.1.0, xonsh-0.24.0, deltachat-rpc-client-2.57.0.dev0
asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=function, asyncio_default_test_loop_scope=function
collected 93 items

wheelsbot7 commented on 2026-07-25 11:36 (UTC)

I kept getting a pytest error and had to comment out the check() step, can anyone reproduce? Here's the output for reference:

=============================== test session starts ================================
platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0
rootdir: /home/user/.cache/yay/python-textual-image/textual-image
plugins: syrupy-5.5.0, asyncio-1.4.0
asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
collected 0 items                                                                  
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/main.py", line 318, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>                          ~~~~^^^^^^^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/main.py", line 371, in _main
INTERNALERROR>     config.hook.pytest_collection(session=session)
INTERNALERROR>     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__
INTERNALERROR>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
INTERNALERROR>            ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR>            ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall
INTERNALERROR>     raise exception
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR>     teardown.throw(exception)
INTERNALERROR>     ~~~~~~~~~~~~~~^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/logging.py", line 788, in pytest_collection
INTERNALERROR>     return (yield)
INTERNALERROR>             ^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR>     teardown.throw(exception)
INTERNALERROR>     ~~~~~~~~~~~~~~^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/warnings.py", line 98, in pytest_collection
INTERNALERROR>     return (yield)
INTERNALERROR>             ^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR>     teardown.throw(exception)
INTERNALERROR>     ~~~~~~~~~~~~~~^^^^^^^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/config/__init__.py", line 1409, in pytest_collection
INTERNALERROR>     return (yield)
INTERNALERROR>             ^^^^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/main.py", line 382, in pytest_collection
INTERNALERROR>     session.perform_collect()
INTERNALERROR>     ~~~~~~~~~~~~~~~~~~~~~~~^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/_pytest/main.py", line 859, in perform_collect
INTERNALERROR>     self.config.pluginmanager.check_pending()
INTERNALERROR>     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
INTERNALERROR>   File "/usr/lib/python3.14/site-packages/pluggy/_manager.py", line 387, in check_pending
INTERNALERROR>     raise PluginValidationError(
INTERNALERROR>     ...<2 lines>...
INTERNALERROR>     )
INTERNALERROR> pluggy._manager.PluginValidationError: unknown hook 'pytest_testnodedown' in plugin <module 'syrupy' from '/usr/lib/python3.14/site-packages/syrupy/__init__.py'>

lightdot commented on 2025-06-15 00:42 (UTC)

Building in a clean chroot shows that python-setuptools is missing from makedpends.

Thanks for maintaining this PKGBUILD.