On latest stable Fedora 43 with Python 3.14 (and 2 other workarounds applied - see below) I get fatal error when running trivial example:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 140, in _safe_env_save
env.save()
~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/virttest/utils_env.py", line 108, in save
cPickle.dump(self.data, f, protocol=0)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.14/copyreg.py", line 75, in _reduce_ex
raise TypeError(f"cannot pickle {cls.__name__!r} object")
TypeError: cannot pickle 'count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 143, in _safe_env_save
pickle.dumps(env.data)
~~~~~~~~~~~~^^^^^^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/test.py", line 284, in _runTest
self._safe_env_save(env)
~~~~~~~~~~~~~~~~~~~^^^^^
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 147, in _safe_env_save
stacktrace.str_unpickable_object(env.data),
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/avocado/utils/stacktrace.py", line 115, in str_unpickable_object
pickle.dumps(obj)
~~~~~~~~~~~~^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 140, in _safe_env_save
env.save()
~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/virttest/utils_env.py", line 108, in save
cPickle.dump(self.data, f, protocol=0)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.14/copyreg.py", line 75, in _reduce_ex
raise TypeError(f"cannot pickle {cls.__name__!r} object")
TypeError: cannot pickle 'count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 143, in _safe_env_save
pickle.dumps(env.data)
~~~~~~~~~~~~^^^^^^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/test.py", line 314, in _runTest
self._safe_env_save(env)
~~~~~~~~~~~~~~~~~~~^^^^^
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 147, in _safe_env_save
stacktrace.str_unpickable_object(env.data),
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/avocado/utils/stacktrace.py", line 115, in str_unpickable_object
pickle.dumps(obj)
~~~~~~~~~~~~^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 140, in _safe_env_save
env.save()
~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/virttest/utils_env.py", line 108, in save
cPickle.dump(self.data, f, protocol=0)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.14/copyreg.py", line 75, in _reduce_ex
raise TypeError(f"cannot pickle {cls.__name__!r} object")
TypeError: cannot pickle 'count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 143, in _safe_env_save
pickle.dumps(env.data)
~~~~~~~~~~~~^^^^^^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.14/site-packages/avocado_vt/plugins/vt_runner.py", line 74, in runTest
raise self.__status # pylint: disable-msg=E0702
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/avocado_vt/test.py", line 146, in setUp
self._runTest()
~~~~~~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/avocado_vt/test.py", line 338, in _runTest
self._safe_env_save(env)
~~~~~~~~~~~~~~~~~~~^^^^^
File "/usr/lib/python3.14/site-packages/avocado_vt/utils.py", line 147, in _safe_env_save
stacktrace.str_unpickable_object(env.data),
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/avocado/utils/stacktrace.py", line 115, in str_unpickable_object
pickle.dumps(obj)
~~~~~~~~~~~~^^^^^
TypeError: cannot pickle 'itertools.count' object
when serializing dict item '_index'
when serializing virttest.vt_iothread.PredefinedManager state
when serializing virttest.vt_iothread.PredefinedManager object
when serializing dict item '_DevContainer__iothread_manager'
when serializing virttest.qemu_devices.qcontainer.DevContainer state
when serializing virttest.qemu_devices.qcontainer.DevContainer object
when serializing dict item 'devices'
when serializing virttest.qemu_vm.VM state
when serializing virttest.qemu_vm.VM object
when serializing dict item 'vm__avocado-vt-vm1'
On latest stable Fedora 43 with Python 3.14 (and 2 other workarounds applied - see below) I get fatal error when running trivial example:
Full error details from
~/avocado/job-results/latest/test-results/1-type_specific.io-github-autotest-qemu.hello_ world/stderr:Environment details:
More details:
sudo dnf copr enable @avocado/avocado-vt-latestaexpect(incompatible with python 3.14): Drop the use of pipes aexpect#128 - reported to RedHat on https://bugzilla.redhat.com/show_bug.cgi?id=2414808 but maintainer is not respondingavocado-vtfix for python 3.14: Fix multiprocessing compatibility for Python 3.14 #4244