Control: tags 1123359 + patch
Control: tags 1123359 + pending
Dear maintainer,
I've prepared an NMU for timeout-decorator (versioned as 0.5.0-3.1) and
uploaded it to DELAYED/7. Please feel free to tell me if I
should cancel it.
Regards.
diffstat for timeout-decorator-0.5.0 timeout-decorator-0.5.0
changelog | 9 ++
patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch | 34
++++++++++
patches/series | 1
3 files changed, 44 insertions(+)
diff -Nru timeout-decorator-0.5.0/debian/changelog
timeout-decorator-0.5.0/debian/changelog
--- timeout-decorator-0.5.0/debian/changelog 2024-03-02 03:47:57.000000000
-0500
+++ timeout-decorator-0.5.0/debian/changelog 2026-01-23 09:12:46.000000000
-0500
@@ -1,3 +1,12 @@
+timeout-decorator (0.5.0-3.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * debian/patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch:
+ Add patch to avoid behavior changes in the multiprocessing module that
+ cause test failures when using python 3.14+. (Closes: #1123359)
+
+ -- Boyuan Yang <[email protected]> Fri, 23 Jan 2026 09:12:46 -0500
+
timeout-decorator (0.5.0-3) unstable; urgency=medium
[ Debian Janitor ]
diff -Nru timeout-decorator-0.5.0/debian/patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch
timeout-decorator-0.5.0/debian/patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch
---
timeout-decorator-0.5.0/debian/patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch
1969-12-31 19:00:00.000000000 -0500
+++
timeout-decorator-0.5.0/debian/patches/0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch
2026-01-23 09:12:46.000000000 -0500
@@ -0,0 +1,34 @@
+From: Boyuan Yang <[email protected]>
+Date: Fri, 23 Jan 2026 09:10:59 -0500
+Subject: Avoid multiprocessing behavior change in py3.14
+
+Python 3.14 defaults to using forkserver instead of fork
+method when spawning new processes. This causes the default
+testsuites to fail. This patch explicitly specify the fork
+method to keep the old behavior as in Python 3.13 and earlier.
+
+Forwarded: https://github.com/pnpnpn/timeout-decorator/pull/89
+Bug: https://github.com/pnpnpn/timeout-decorator/issues/88
+Bug-Debian: https://bugs.debian.org/1123359
+---
+ timeout_decorator/timeout_decorator.py | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/timeout_decorator/timeout_decorator.py
b/timeout_decorator/timeout_decorator.py
+index 42b6686..2263170 100644
+--- a/timeout_decorator/timeout_decorator.py
++++ b/timeout_decorator/timeout_decorator.py
+@@ -140,9 +140,10 @@ class _Timeout(object):
+ self.__limit = kwargs.pop('timeout', self.__limit)
+ self.__queue = multiprocessing.Queue(1)
+ args = (self.__queue, self.__function) + args
+- self.__process = multiprocessing.Process(target=_target,
+- args=args,
+- kwargs=kwargs)
++ ctx = multiprocessing.get_context('fork')
++ self.__process = ctx.Process(target=_target,
++ args=args,
++ kwargs=kwargs)
+ self.__process.daemon = True
+ self.__process.start()
+ if self.__limit is not None:
diff -Nru timeout-decorator-0.5.0/debian/patches/series
timeout-decorator-0.5.0/debian/patches/series
--- timeout-decorator-0.5.0/debian/patches/series 2024-03-02
03:47:57.000000000 -0500
+++ timeout-decorator-0.5.0/debian/patches/series 2026-01-23
09:12:26.000000000 -0500
@@ -1 +1,2 @@
add-tests.patch
+0002-Avoid-multiprocessing-behavior-change-in-py3.14.patch