This package failed build from source when test-built against a version of
python3-defaults that includes 3.13 as a supported version.
To reproduce this issue, build against python3-defaults (python3-all-dev etc.)
from Debian experimental.
What's new in Python 3.13:
https://docs.python.org/3.13/whatsnew/3.13.html
Log snippet:
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build; python3.13 -m pytest --ignore=tests/test_clone.py --ignore=tests/test_status.py
============================= test session starts ==============================
platform linux -- Python 3.13.0rc2, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build
configfile: pytest.ini
plugins: typeguard-4.3.0, cov-5.0.0, mock-3.14.0
collected 31 items
tests/test_commit.py F..... [ 19%]
tests/test_env_vars.py . [ 22%]
tests/test_init.py FF. [ 32%]
tests/test_log.py .... [ 45%]
tests/test_pull_push.py ...... [ 64%]
tests/test_remote.py . [ 67%]
tests/test_sync.py .. [ 74%]
tests/test_ys_helpers.py ........ [100%]
=================================== FAILURES ===================================
# call(ys.REPOFILE),
# call().__enter__(),
# call().read(),
# call().__exit__(None, None, None),
# call(commit_log_path, "w"),
call().__enter__(),
call().write(commit_msg + "\n\n"
"When: {}\n".format(time_str) +
"Where: user@myhost"),
call().write('\n'),
call().__exit__(None, None, None),
]
E assert [call().__ent...all().close()] == [call().__ent..., None, None)]
E
E Left contains one more item: call().close()
E Use -v to get more diff
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_commit.py:97: AssertionError
----------------------------- Captured stdout call -----------------------------
mkdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys/commits
rsync -a --link-dest=../../.. --exclude=/.ys '--filter=merge /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys/rsync-filter' --exclude=/.ys/* /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys/commits/2_tmp
mkdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys/logs
commit 2 created
initial commit
When: Thu, 01 Jan 1970 00:00:03 UTC
Where: user@myhost
# call(conffile, "w"), call().__enter__(),
# call().write(CONFIG_EXAMPLE), call().write(''),
# call().__exit__(None, None, None),
call(repofile, "x"), call().__enter__(),
call().__exit__(None, None, None)
]
E AssertionError: assert [call('.ys/re...all().close()] == [call('.ys/re..., None, None)]
E
E Left contains one more item: call().close()
E Use -v to get more diff
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_init.py:44: AssertionError
----------------------------- Captured stdout call -----------------------------
Initialize configuration
.ys already exists, skip
.ys/config.ini already exists, skip
# create configuration file .ys/repo_my_repo.txt
Initialized yarsync configuration in /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys
# mkdir is recorded separately
call(conffile, "w"), call().__enter__(),
call().write(CONFIG_EXAMPLE), call().write(''),
call().__exit__(None, None, None),
call(repofile, "x"), call().__enter__(),
call().__exit__(None, None, None)
]
E AssertionError: assert [call('.ys/co...all().close()] == [call('.ys/co...t', 'x'), ...]
E
E At index 5 diff: call().close() != call('.ys/repo_myhost.txt', 'x')
E Left contains 2 more items, first extra item: call().__exit__(None, None, None)
E Use -v to get more diff
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_init.py:87: AssertionError
----------------------------- Captured stdout call -----------------------------
Initialize configuration for 'myhost'
mkdir .ys
# create configuration file .ys/config.ini
# create configuration file .ys/repo_myhost.txt
Initialized yarsync configuration in /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build/tests/test_dir_empty/.ys
=========================== short test summary info ============================
FAILED tests/test_commit.py::test_commit - assert [call().__ent...all().close...
FAILED tests/test_init.py::test_init_mixed - AssertionError: assert [call('.y...
FAILED tests/test_init.py::test_init_non_existent - AssertionError: assert [c...
========================= 3 failed, 28 passed in 1.67s =========================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_yarsync/build; python3.13 -m pytest --ignore=tests/test_clone.py --ignore=tests/test_status.py
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_yarsync/build; python3.12 -m pytest --ignore=tests/test_clone.py --ignore=tests/test_status.py
============================= test session starts ==============================
platform linux -- Python 3.12.6, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_yarsync/build
configfile: pytest.ini
plugins: typeguard-4.3.0, cov-5.0.0, mock-3.14.0
collected 31 items
tests/test_commit.py ...... [ 19%]
tests/test_env_vars.py . [ 22%]
tests/test_init.py ... [ 32%]
tests/test_log.py .... [ 45%]
tests/test_pull_push.py ...... [ 64%]
tests/test_remote.py . [ 67%]
tests/test_sync.py .. [ 74%]
tests/test_ys_helpers.py ........ [100%]
============================== 31 passed in 1.66s ==============================
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 3.12" returned exit code 13
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T17:00:49Z
Finished
--------
This bug has been filed at "normal" severity, as we haven't started the
transition to add 3.13 as a supported version, yet. This will be raised to RC
as soon as that happens, hopefully well before trixie.
Thanks,
Stefano