You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@skip_if_windows('os.kill() with SIGINT not supported on Windows')
def test_can_provide_signal_handler_initializers_to_start(self):
manager = self.create_pid_manager()
/usr/lib64/python3.14/multiprocessing/managers.py:565: in start
self._process.start()
/usr/lib64/python3.14/multiprocessing/process.py:121: in start
self._popen = self._Popen(self)
/usr/lib64/python3.14/multiprocessing/context.py:300: in _Popen
return Popen(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_forkserver.py:35: in init
super().init(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_fork.py:20: in init
self._launch(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_forkserver.py:47: in _launch
reduction.dump(process_obj, buf)
def dump(obj, file, protocol=None):
'''Replacement for pickle.dump() using ForkingPickler.'''
ForkingPickler(file, protocol).dump(obj)
E _pickle.PicklingError: Can't pickle local object <class 'tests.unit.test_compat.TestBaseManager.create_pid_manager..PIDManager'>
E when serializing tuple item 0
E when serializing method reconstructor arguments
E when serializing method object
E when serializing dict item '_target'
E when serializing multiprocessing.context.ForkServerProcess state
E when serializing multiprocessing.context.ForkServerProcess object
The default start method (see Contexts and start methods) changed from fork to forkserver on platforms other than macOS & Windows where it was already spawn. If you require the threading incompatible fork start method you must explicitly request it using a context from multiprocessing.get_context() (preferred) or change the default via multiprocessing.set_start_method(). (Contributed by Gregory P. Smith in gh-84559.)
The text was updated successfully, but these errors were encountered:
Thanks for the issue @limburgher. The 3.14 alpha is still relatively new (<1 month old). We generally will not start looking at work to resolve compatibility issues until the build is at least in beta. We can keep this to track the issue for later work.
See: https://bugzilla.redhat.com/show_bug.cgi?id=2326933
=================================== FAILURES ===================================
____ TestBaseManager.test_can_provide_signal_handler_initializers_to_start _____
self = <tests.unit.test_compat.TestBaseManager testMethod=test_can_provide_signal_handler_initializers_to_start>
tests/unit/test_compat.py:97:
/usr/lib64/python3.14/multiprocessing/managers.py:565: in start
self._process.start()
/usr/lib64/python3.14/multiprocessing/process.py:121: in start
self._popen = self._Popen(self)
/usr/lib64/python3.14/multiprocessing/context.py:300: in _Popen
return Popen(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_forkserver.py:35: in init
super().init(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_fork.py:20: in init
self._launch(process_obj)
/usr/lib64/python3.14/multiprocessing/popen_forkserver.py:47: in _launch
reduction.dump(process_obj, buf)
obj =
file = <_io.BytesIO object at 0x7f2b60580630>, protocol = None
E _pickle.PicklingError: Can't pickle local object <class 'tests.unit.test_compat.TestBaseManager.create_pid_manager..PIDManager'>
E when serializing tuple item 0
E when serializing method reconstructor arguments
E when serializing method object
E when serializing dict item '_target'
E when serializing multiprocessing.context.ForkServerProcess state
E when serializing multiprocessing.context.ForkServerProcess object
/usr/lib64/python3.14/multiprocessing/reduction.py:60: PicklingError
According to https://docs.python.org/dev/whatsnew/3.14.html#multiprocessing
The default start method (see Contexts and start methods) changed from fork to forkserver on platforms other than macOS & Windows where it was already spawn. If you require the threading incompatible fork start method you must explicitly request it using a context from multiprocessing.get_context() (preferred) or change the default via multiprocessing.set_start_method(). (Contributed by Gregory P. Smith in gh-84559.)
The text was updated successfully, but these errors were encountered: