Test failures with Python 3.10+

15 views
Skip to first unread message

George Rawlinson

unread,
Apr 18, 2023, 11:07:55 PM4/18/23
to redo
Hi,

I'm a package maintainer for Arch Linux and I've noticed test failures when rebuilding our packages against Python 3.11.

Rebuilding it against Python 3.10.10 also fails in the same way.

Here's the output of `make test`:

./do test
do  bin/all
do    redo/version/all
do      redo/version/vars
do        redo/version/gitvars
do      redo/version/_version.py
do    redo/py
do      redo/whichpython
Trying: intentionally-missing
Trying: python
do    redo/sh
 dash...               missing
 /usr/xpg4/bin/sh...   missing
 ash...                missing
 posh...               missing
 lksh...               missing
 mksh...               missing
 ksh...                missing
 ksh88...              missing
 ksh93...              missing
 pdksh...              missing
 zsh...                missing
 bash...               warnings  W48 W89c W118
 busybox...            missing
 /bin/sh...            warnings  W48 W89c W118
Selected mostly good shell: /usr/bin/bash
do    bin/list
do    bin/redo-always
do    bin/redo-ifchange
do    bin/redo-ifcreate
do    bin/redo-log
do    bin/redo-ood
do    bin/redo
do    bin/redo-sources
do    bin/redo-stamp
do    bin/redo-targets
do    bin/redo-unlocked
do    bin/redo-whichdo
do: Removing stamp files...
Traceback (most recent call last):
  File "/build/redo-python/src/redo-python/bin/redo", line 10, in <module>
    redo.cmd_redo.main()
  File "/build/redo-python/src/redo-python/bin/../redo/cmd_redo.py", line 107, in main
    jobserver.setup(j)
  File "/build/redo-python/src/redo-python/bin/../redo/jobserver.py", line 230, in setup
    (a, b) = arg.split(',', 1)
ValueError: not enough values to unpack (expected 2, got 1)
./do: redo failed self test.
make: *** [Makefile:10: test] Error 42

spacefro...@meterriblecrew.net

unread,
Apr 19, 2023, 4:38:27 AM4/19/23
to redo...@googlegroups.com
I have also noticed these errors lately (on NixOS). The errors are always in the jobserver code. Could there be changes related to I/O buffering (communication with other redo processes is handled via file descriptors) that make some characters go missed?

–Michael

Kevin

unread,
Apr 19, 2023, 4:48:57 AM4/19/23
to Michael Raitza, redo
There is a change in make 4.4 which changed the job server protocol:

> New feature: The --jobserver-style command line option and named pipes
  A new jobserver method is used on systems where mkfifo(3) is supported.


This breaks a test where redo tests make compatibility (203-make).

On Wed, 19 Apr 2023, 10:38 , <spacefro...@meterriblecrew.net> wrote:
I have also noticed these errors lately (on NixOS). The errors are always in the jobserver code. Could there be changes related to I/O buffering (communication with other redo processes is handled via file descriptors) that make some characters go missed?

–Michael

--
You received this message because you are subscribed to the Google Groups "redo" group.
To unsubscribe from this group and stop receiving emails from it, send an email to redo-list+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/redo-list/3e3e8d5b-8c63-42e7-a76d-021354ad37bf%40meterriblecrew.net.
Reply all
Reply to author
Forward
0 new messages